Schroedinger Reference Manual | ||||
---|---|---|---|---|
Top | Description |
typedef SchroExecDomain; struct SchroMemoryDomain; #define SCHRO_EXEC_DOMAIN_CPU #define SCHRO_EXEC_DOMAIN_CUDA #define SCHRO_EXEC_DOMAIN_OPENGL #define SCHRO_MEMORY_DOMAIN_CPU #define SCHRO_MEMORY_DOMAIN_CUDA #define SCHRO_MEMORY_DOMAIN_OPENGL #define SCHRO_MEMORY_DOMAIN_SLOTS #define SCHRO_MEMORY_DOMAIN_SLOT_ALLOCATED #define SCHRO_MEMORY_DOMAIN_SLOT_IN_USE void * schro_memory_domain_alloc (SchroMemoryDomain *domain
,int size
); void * schro_memory_domain_alloc_2d (SchroMemoryDomain *domain
,int depth
,int width
,int height
); void schro_memory_domain_free (SchroMemoryDomain *domain
); void schro_memory_domain_memfree (SchroMemoryDomain *domain
,void *ptr
); SchroMemoryDomain * schro_memory_domain_new (void
); SchroMemoryDomain * schro_memory_domain_new_cuda (void
); SchroMemoryDomain * schro_memory_domain_new_local (void
);
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]; };
void * schro_memory_domain_alloc (SchroMemoryDomain *domain
,int size
);
void * schro_memory_domain_alloc_2d (SchroMemoryDomain *domain
,int depth
,int width
,int height
);
void schro_memory_domain_memfree (SchroMemoryDomain *domain
,void *ptr
);