Functions
schro_memory_domain_alloc ()
void *
schro_memory_domain_alloc (SchroMemoryDomain *domain
,
int size
);
schro_memory_domain_alloc_2d ()
void *
schro_memory_domain_alloc_2d (SchroMemoryDomain *domain
,
int depth
,
int width
,
int height
);
schro_memory_domain_free ()
void
schro_memory_domain_free (SchroMemoryDomain *domain
);
schro_memory_domain_memfree ()
void
schro_memory_domain_memfree (SchroMemoryDomain *domain
,
void *ptr
);
schro_memory_domain_new_cuda ()
SchroMemoryDomain *
schro_memory_domain_new_cuda (void
);
schro_memory_domain_new_local ()
SchroMemoryDomain *
schro_memory_domain_new_local (void
);
Types and Values
SchroExecDomain
typedef int SchroExecDomain;
struct SchroMemoryDomain
struct SchroMemoryDomain {
SchroMutex * mutex;
unsigned int flags;
void *(*alloc) (int size);
void *(*alloc_2d) (int depth, int width, int height);
void (*free) (void *ptr, int size);
struct {
unsigned int flags;
void *ptr;
int size;
void *priv;
} slots[SCHRO_MEMORY_DOMAIN_SLOTS];
};
SCHRO_EXEC_DOMAIN_CPU
#define SCHRO_EXEC_DOMAIN_CPU 0x0001
SCHRO_EXEC_DOMAIN_CUDA
#define SCHRO_EXEC_DOMAIN_CUDA 0x0002
SCHRO_EXEC_DOMAIN_OPENGL
#define SCHRO_EXEC_DOMAIN_OPENGL 0x0003
SCHRO_MEMORY_DOMAIN_CPU
#define SCHRO_MEMORY_DOMAIN_CPU 0x0001
SCHRO_MEMORY_DOMAIN_CUDA
#define SCHRO_MEMORY_DOMAIN_CUDA 0x0002
SCHRO_MEMORY_DOMAIN_OPENGL
#define SCHRO_MEMORY_DOMAIN_OPENGL 0x0004
SCHRO_MEMORY_DOMAIN_SLOTS
#define SCHRO_MEMORY_DOMAIN_SLOTS 1000
SCHRO_MEMORY_DOMAIN_SLOT_ALLOCATED
#define SCHRO_MEMORY_DOMAIN_SLOT_ALLOCATED 0x0001
SCHRO_MEMORY_DOMAIN_SLOT_IN_USE
#define SCHRO_MEMORY_DOMAIN_SLOT_IN_USE 0x0002