1 #ifndef MPLAYER_ALLOCATOR_H
2 #define MPLAYER_ALLOCATOR_H
3 
4 #include "interfaces.h"
5 #include "cmediasample.h"
6 
7 typedef struct avm_list_t avm_list_t;
8 typedef struct MemAllocator MemAllocator;
9 
10 struct MemAllocator
11 {
12     IMemAllocator_vt* vt;
13     DECLARE_IUNKNOWN();
14     ALLOCATOR_PROPERTIES props;
15     avm_list_t* used_list;
16     avm_list_t* free_list;
17     char* new_pointer;
18     CMediaSample* modified_sample;
19     GUID interfaces[2];
20 
21     void ( *SetPointer )(MemAllocator* This, char* pointer);
22     void ( *ResetPointer )(MemAllocator* This);
23 };
24 
25 MemAllocator* MemAllocatorCreate(void);
26 
27 #endif /* MPLAYER_ALLOCATOR_H */
28