X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=include%2Fvlc_block.h;h=ce8d8e4d4dd24191613e0bb3a32e3755a7832f2d;hb=20692b9c217819421844394feeffd105fb12f00c;hp=4b629fc87d7d41912b6c6c06f02708bd245c70e9;hpb=db2ec1d16bd39eeb5a38ba3e3470a8d425a71258;p=vlc diff --git a/include/vlc_block.h b/include/vlc_block.h index 4b629fc87d..ce8d8e4d4d 100644 --- a/include/vlc_block.h +++ b/include/vlc_block.h @@ -48,7 +48,7 @@ * - p_buffer: pointer over datas. You should never overwrite it, you can * only incremment it to skip datas, in others cases use block_Realloc * (don't duplicate yourself in a bigger buffer, block_Realloc is - * optimised for prehader/postdatas increase) + * optimised for preheader/postdatas increase) ****************************************************************************/ typedef struct block_sys_t block_sys_t; @@ -136,13 +136,13 @@ struct block_t * and decrease are supported). Use it as it is optimised. * - block_Duplicate : create a copy of a block. ****************************************************************************/ -VLC_EXPORT( void, block_Init, ( block_t *, void *, size_t ) ); -VLC_EXPORT( block_t *, block_Alloc, ( size_t ) LIBVLC_USED ); -VLC_EXPORT( block_t *, block_Realloc, ( block_t *, ssize_t i_pre, size_t i_body ) LIBVLC_USED ); +VLC_API void block_Init( block_t *, void *, size_t ); +VLC_API block_t * block_Alloc( size_t ) VLC_USED; +VLC_API block_t * block_Realloc( block_t *, ssize_t i_pre, size_t i_body ) VLC_USED; #define block_New( dummy, size ) block_Alloc(size) -LIBVLC_USED +VLC_USED static inline block_t *block_Duplicate( block_t *p_block ) { block_t *p_dup = block_Alloc( p_block->i_buffer ); @@ -165,9 +165,9 @@ static inline void block_Release( block_t *p_block ) p_block->pf_release( p_block ); } -VLC_EXPORT( block_t *, block_heap_Alloc, (void *, void *, size_t) LIBVLC_USED ); -VLC_EXPORT( block_t *, block_mmap_Alloc, (void *addr, size_t length) LIBVLC_USED ); -VLC_EXPORT( block_t *, block_File, (int fd) LIBVLC_USED ); +VLC_API block_t * block_heap_Alloc(void *, void *, size_t) VLC_USED; +VLC_API block_t * block_mmap_Alloc(void *addr, size_t length) VLC_USED; +VLC_API block_t * block_File(int fd) VLC_USED; static inline void block_Cleanup (void *block) { @@ -180,7 +180,7 @@ static inline void block_Cleanup (void *block) **************************************************************************** * - block_ChainAppend : append a block to the last block of a chain. Try to * avoid using with a lot of data as it's really slow, prefer - * block_ChainLastAppend + * block_ChainLastAppend, p_block can be NULL * - block_ChainLastAppend : use a pointer over a pointer to the next blocks, * and update it. * - block_ChainRelease : release a chain of block @@ -292,6 +292,7 @@ static inline block_t *block_ChainGather( block_t *p_list ) **************************************************************************** * - block_FifoNew : create and init a new fifo * - block_FifoRelease : destroy a fifo and free all blocks in it. + * - block_FifoPace : wait for a fifo to drain to a specified number of packets or total data size * - block_FifoEmpty : free all blocks in a fifo * - block_FifoPut : put a block * - block_FifoGet : get a packet from the fifo (and wait if it is empty) @@ -305,16 +306,15 @@ static inline block_t *block_ChainGather( block_t *p_list ) * block_FifoGet and block_FifoShow are cancellation points. ****************************************************************************/ -VLC_EXPORT( block_fifo_t *, block_FifoNew, ( void ) LIBVLC_USED ); -VLC_EXPORT( void, block_FifoRelease, ( block_fifo_t * ) ); -/* TODO: do we need to export this? */ -void block_FifoPace (block_fifo_t *fifo, size_t max_depth, size_t max_size); -VLC_EXPORT( void, block_FifoEmpty, ( block_fifo_t * ) ); -VLC_EXPORT( size_t, block_FifoPut, ( block_fifo_t *, block_t * ) ); -VLC_EXPORT( void, block_FifoWake, ( block_fifo_t * ) ); -VLC_EXPORT( block_t *, block_FifoGet, ( block_fifo_t * ) LIBVLC_USED ); -VLC_EXPORT( block_t *, block_FifoShow, ( block_fifo_t * ) ); -size_t block_FifoSize( const block_fifo_t *p_fifo ) LIBVLC_USED; -VLC_EXPORT( size_t, block_FifoCount, ( const block_fifo_t *p_fifo ) LIBVLC_USED ); +VLC_API block_fifo_t * block_FifoNew( void ) VLC_USED; +VLC_API void block_FifoRelease( block_fifo_t * ); +VLC_API void block_FifoPace( block_fifo_t *fifo, size_t max_depth, size_t max_size ); +VLC_API void block_FifoEmpty( block_fifo_t * ); +VLC_API size_t block_FifoPut( block_fifo_t *, block_t * ); +VLC_API void block_FifoWake( block_fifo_t * ); +VLC_API block_t * block_FifoGet( block_fifo_t * ) VLC_USED; +VLC_API block_t * block_FifoShow( block_fifo_t * ); +size_t block_FifoSize( const block_fifo_t *p_fifo ) VLC_USED; +VLC_API size_t block_FifoCount( const block_fifo_t *p_fifo ) VLC_USED; #endif /* VLC_BLOCK_H */