Initial commit
This commit is contained in:
commit
56f7cd1875
105 changed files with 22109 additions and 0 deletions
38
tests/clap/stream.h
Normal file
38
tests/clap/stream.h
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
#pragma once
|
||||
|
||||
#include "private/std.h"
|
||||
#include "private/macros.h"
|
||||
|
||||
/// @page Streams
|
||||
///
|
||||
/// ## Notes on using streams
|
||||
///
|
||||
/// When working with `clap_istream` and `clap_ostream` objects to load and save
|
||||
/// state, it is important to keep in mind that the host may limit the number of
|
||||
/// bytes that can be read or written at a time. The return values for the
|
||||
/// stream read and write functions indicate how many bytes were actually read
|
||||
/// or written. You need to use a loop to ensure that you read or write the
|
||||
/// entirety of your state. Don't forget to also consider the negative return
|
||||
/// values for the end of file and IO error codes.
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
typedef struct clap_istream {
|
||||
void *ctx; // reserved pointer for the stream
|
||||
|
||||
// returns the number of bytes read; 0 indicates end of file and -1 a read error
|
||||
int64_t(CLAP_ABI *read)(const struct clap_istream *stream, void *buffer, uint64_t size);
|
||||
} clap_istream_t;
|
||||
|
||||
typedef struct clap_ostream {
|
||||
void *ctx; // reserved pointer for the stream
|
||||
|
||||
// returns the number of bytes written; -1 on write error
|
||||
int64_t(CLAP_ABI *write)(const struct clap_ostream *stream, const void *buffer, uint64_t size);
|
||||
} clap_ostream_t;
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
Loading…
Add table
Add a link
Reference in a new issue