view loader/dshow/allocator.h @ 32969:ad1a232df994

Make slabel work. It is amazing that so far no skin is using a slabel (static label), but the reason is quite simple. Former versions of the GUI crashed when rendering a slabel. The current GUI recognizes the malloc error but can't render the slabel due to (probable) lack of memory. An item that shall be fnt-rendered must have a valid item width. Additionally, a break was missing which caused a slabel that would have been already handled to erroneously run through the dlabel handling as well.
author ib
date Tue, 08 Mar 2011 15:29:19 +0000
parents a8ea87c71d18
children
line wrap: on
line source

#ifndef MPLAYER_ALLOCATOR_H
#define MPLAYER_ALLOCATOR_H

#include "interfaces.h"
#include "cmediasample.h"

typedef struct avm_list_t avm_list_t;
typedef struct MemAllocator MemAllocator;

struct MemAllocator
{
    IMemAllocator_vt* vt;
    DECLARE_IUNKNOWN();
    ALLOCATOR_PROPERTIES props;
    avm_list_t* used_list;
    avm_list_t* free_list;
    char* new_pointer;
    CMediaSample* modified_sample;
    GUID interfaces[2];

    void ( *SetPointer )(MemAllocator* This, char* pointer);
    void ( *ResetPointer )(MemAllocator* This);
};

MemAllocator* MemAllocatorCreate(void);

#endif /* MPLAYER_ALLOCATOR_H */