8 #ifndef GPU_RESOURCE_MANAGER_H
9 #define GPU_RESOURCE_MANAGER_H
21 return strcmp(s1, s2) < 0;
30 const char *getName();
39 GPUUsg(
const char *
name,
int numElem,
int numConn,
40 int numCoord,
int *elemList,
int *typeList,
41 int *connList,
float *vertices,
int numElemM,
int numConnM,
int numCoordM);
112 const int numElem,
const int numConn,
const int numCoord,
113 const int *typeList,
const int *elemList,
const int *connList,
114 const float *
x,
const float *
y,
const float *
z,
115 const int numElemM = 0,
const int numConnM = 0,
const int numCoordM = 0);
117 GPUScalar *addScalar(
const char *name,
const int numElem,
const float *
data,
const int numElemM);
118 GPUVector *addVector(
const char *name,
const int numElem,
const float *u,
const float *
v,
const float *
w,
const int numElemM);
119 void deleteObject(
const char *name);
134 virtual GPUUsg *allocUSG(
const char *name,
135 const int numElem,
const int numConn,
136 const int numCoord,
const int *typeList,
137 const int *elemList,
const int *connList,
138 const float *x,
const float *y,
const float *z,
139 const int numElemM = 0,
const int numConnM = 0,
140 const int numCoordM = 0) = 0;
142 virtual GPUScalar *allocScalar(
const char *name,
const int numElem,
143 const float *data,
const int numElemM = 0) = 0;
144 virtual GPUVector *allocVector(
const char *name,
const int numElem,
145 const float *u,
const float *v,
const float *w,
const int numElemM = 0) = 0;
147 virtual void deallocUSG(
GPUUsg *usg) = 0;
148 virtual void deallocScalar(
GPUScalar *scalar) = 0;
149 virtual void deallocVector(
GPUVector *vector) = 0;
std::map< std::string, GPUObject * > objects
Definition: GPUResourceManager.h:151
int numElemM
Definition: GPUResourceManager.h:105
GLubyte GLubyte GLubyte GLubyte w
Definition: khronos-glext.h:6793
Definition: GPUResourceManager.h:36
int numElem
Definition: GPUResourceManager.h:103
int numElemM
Definition: GPUResourceManager.h:87
GLsizei const GLchar *const * string
Definition: khronos-glext.h:6750
int numCoordM
Definition: GPUResourceManager.h:69
GLdouble GLdouble z
Definition: khronos-glext.h:6565
GLsizei GLsizei GLenum GLenum const GLvoid * data
Definition: khronos-glext.h:6354
float * data
Definition: GPUResourceManager.h:86
static const int s2
Definition: SammConv.cpp:38
int numConnM
Definition: GPUResourceManager.h:68
int numConn
Definition: GPUResourceManager.h:59
GLuint const GLchar * name
Definition: khronos-glext.h:6722
int * connList
Definition: GPUResourceManager.h:64
std::map< std::string, int > refCount
Definition: GPUResourceManager.h:152
#define GPUEXPORT
Definition: coExport.h:99
float * data
Definition: GPUResourceManager.h:104
Definition: GPUResourceManager.h:72
int numCoord
Definition: GPUResourceManager.h:60
std::string name
Definition: GPUResourceManager.h:33
int numElem
Definition: GPUResourceManager.h:58
Definition: GPUResourceManager.h:17
std::map< void *, void * > pointers
Definition: GPUResourceManager.h:154
GLint GLint GLint GLint GLint GLint y
Definition: khronos-glext.h:6346
virtual ~GPUUsg()
Definition: GPUResourceManager.h:43
virtual ~GPUScalar()
Definition: GPUResourceManager.h:77
int * elemList
Definition: GPUResourceManager.h:63
GLuint GLfloat GLfloat GLfloat GLfloat GLfloat GLfloat GLfloat GLfloat s1
Definition: khronos-glext.h:13144
int numElem
Definition: GPUResourceManager.h:85
Definition: GPUResourceManager.h:90
int * typeList
Definition: GPUResourceManager.h:62
Definition: GPUResourceManager.h:108
virtual ~GPUVector()
Definition: GPUResourceManager.h:95
bool operator()(const char *s1, const char *s2) const
Definition: GPUResourceManager.h:19
GLint GLint GLint GLint GLint x
Definition: khronos-glext.h:6346
int numElemM
Definition: GPUResourceManager.h:67
const GLdouble * v
Definition: khronos-glext.h:6442
float * vertices
Definition: GPUResourceManager.h:65
Definition: GPUResourceManager.h:25