diff options
Diffstat (limited to 'src/libw32dll/DirectShow/allocator.h')
-rw-r--r-- | src/libw32dll/DirectShow/allocator.h | 51 |
1 files changed, 16 insertions, 35 deletions
diff --git a/src/libw32dll/DirectShow/allocator.h b/src/libw32dll/DirectShow/allocator.h index 1d37dd920..855637063 100644 --- a/src/libw32dll/DirectShow/allocator.h +++ b/src/libw32dll/DirectShow/allocator.h @@ -1,51 +1,32 @@ #ifndef DS_ALLOCATOR_H #define DS_ALLOCATOR_H -/* -#ifndef NOAVIFILE_HEADERS -#include "default.h" -#else -#include "../wine/libwin32.h" -#endif -*/ - #include "interfaces.h" #include "cmediasample.h" -#include "iunk.h" -typedef struct _CMediaSample_vector -{ - CMediaSample** m_Type; - int m_uiSize; - int m_uiAlloc; -} CMediaSample_vector; +typedef struct avm_list_t +{ + struct avm_list_t* next; + struct avm_list_t* prev; + void* member; +} avm_list_t; -typedef struct _MemAllocator +typedef struct _MemAllocator MemAllocator; +struct _MemAllocator { - IMemAllocator_vt *vt; - + IMemAllocator_vt* vt; + DECLARE_IUNKNOWN(); ALLOCATOR_PROPERTIES props; - - CMediaSample_vector * used_list; - CMediaSample_vector * free_list; - + avm_list_t* used_list; + avm_list_t* free_list; char* new_pointer; CMediaSample* modified_sample; GUID interfaces[2]; - DECLARE_IUNKNOWN(MemAllocator); - - /* - MemAllocator(); - ~MemAllocator(); - static long CreateAllocator(GUID* clsid, GUID* iid, void** ppv); - */ -} MemAllocator; -MemAllocator * MemAllocator_Create(); -void MemAllocator_Destroy(MemAllocator *this); + void ( *SetPointer )(MemAllocator* This, char* pointer); + void ( *ResetPointer )(MemAllocator* This); +}; -long MemAllocator_CreateAllocator(GUID* clsid, GUID* iid, void** ppv); -void MemAllocator_SetPointer(MemAllocator*this, char* pointer); -void MemAllocator_ResetPointer(MemAllocator*this); +MemAllocator* MemAllocatorCreate(); #endif /* DS_ALLOCATOR_H */ |