X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=include%2Fvlc_block.h;h=673414c43841d0b3471b4a01f32e34634acf3eba;hb=9146b77e2a2764aa1367f5acd69502dd6725203e;hp=fda20ce6434cf440ba271a54156dcd921b2a76d4;hpb=189bc59e7b442c9d898f2d460f4f780d8a079461;p=vlc diff --git a/include/vlc_block.h b/include/vlc_block.h index fda20ce643..673414c438 100644 --- a/include/vlc_block.h +++ b/include/vlc_block.h @@ -21,10 +21,6 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA. *****************************************************************************/ -#if !defined( __LIBVLC__ ) - #error You are not libvlc or one of its plugins. You cannot include this file -#endif - #ifndef _VLC_BLOCK_H #define _VLC_BLOCK_H 1 @@ -104,9 +100,9 @@ struct block_t /**************************************************************************** * Blocks functions: **************************************************************************** - * - block_New : create a new block with the requested size ( >= 0 ), return + * - block_Alloc : create a new block with the requested size ( >= 0 ), return * NULL for failure. - * - block_Release : release a block allocated with block_New. + * - block_Release : release a block allocated with block_Alloc. * - block_Realloc : realloc a block, * i_pre: how many bytes to insert before body if > 0, else how many * bytes of body to skip (the latter can be done without using @@ -121,15 +117,11 @@ VLC_EXPORT( void, block_Init, ( block_t *, void *, size_t ) ); VLC_EXPORT( block_t *, block_Alloc, ( size_t ) ); VLC_EXPORT( block_t *, block_Realloc, ( block_t *, ssize_t i_pre, size_t i_body ) ); -static inline block_t *block_New( void *dummy, size_t size ) -{ - (void)dummy; - return block_Alloc (size); -} +#define block_New( dummy, size ) block_Alloc(size) static inline block_t *block_Duplicate( block_t *p_block ) { - block_t *p_dup = block_New( NULL, p_block->i_buffer ); + block_t *p_dup = block_Alloc( p_block->i_buffer ); if( p_dup == NULL ) return NULL; @@ -148,17 +140,8 @@ static inline void block_Release( block_t *p_block ) p_block->pf_release( p_block ); } -/** - * Creates a block from a virtual address memory mapping (mmap). - * This is provided by LibVLC so that mmap blocks can safely be deallocated - * even after the allocating plugin has been unloaded from memory. - * - * @param addr base address of the mapping (as returned by mmap) - * @param length length (bytes) of the mapping (as passed to mmap) - * @return NULL if addr is MAP_FAILED, or an error occurred (in the later - * case, munmap(addr, length) is invoked before returning). - */ VLC_EXPORT( block_t *, block_mmap_Alloc, (void *addr, size_t length) ); +VLC_EXPORT( block_t *, block_File, (int fd) ); /**************************************************************************** * Chains of blocks functions helper @@ -240,7 +223,7 @@ static inline block_t *block_ChainGather( block_t *p_list ) i_length += b->i_length; } - g = block_New( NULL, i_total ); + g = block_Alloc( i_total ); block_ChainExtract( p_list, g->p_buffer, g->i_buffer ); g->i_flags = p_list->i_flags; @@ -271,8 +254,7 @@ static inline block_t *block_ChainGather( block_t *p_list ) * (this is used to wakeup a thread when there is no data to queue) ****************************************************************************/ -#define block_FifoNew( a ) __block_FifoNew( VLC_OBJECT(a) ) -VLC_EXPORT( block_fifo_t *, __block_FifoNew, ( vlc_object_t * ) ); +VLC_EXPORT( block_fifo_t *, block_FifoNew, ( void ) ); VLC_EXPORT( void, block_FifoRelease, ( block_fifo_t * ) ); VLC_EXPORT( void, block_FifoEmpty, ( block_fifo_t * ) ); VLC_EXPORT( size_t, block_FifoPut, ( block_fifo_t *, block_t * ) );