COVISE Core
CUDAResourceManager.h
Go to the documentation of this file.
1/* This file is part of COVISE.
2
3 You can use it under the terms of the GNU Lesser General Public License
4 version 2.1 or later, see lgpl-2.1.txt.
5
6 * License: LGPL 2+ */
7
8#ifndef CUDARESOURCEMANAGER_H
9#define CUDARESOURCEMANAGER_H
10
11#include "GPUResourceManager.h"
12
17{
18public:
19 static CUDAResourceManager *getInstance();
20 virtual ~CUDAResourceManager();
21
22 /*
23 virtual GPUUsg *replaceUSG(GPUUsg *usg,
24 const int numElem, const int numConn,
25 const int numCoord, const int *typeList,
26 const int *elemList, const int *connList,
27 const float *x, const float *y, const float *z,
28 const int numElemM = 0, const int numConnM = 0,
29 const int numCoordM = 0);
30*/
31 virtual GPUUsg *allocUSG(const char *name,
32 const int numElem, const int numConn,
33 const int numCoord, const int *typeList,
34 const int *elemList, const int *connList,
35 const float *x, const float *y, const float *z,
36 const int numElemM = 0, const int numConnM = 0,
37 const int numCoordM = 0);
38
39 virtual GPUScalar *allocScalar(const char *name, const int numElem,
40 const float *data, const int numElemM = 0);
41
42 virtual GPUVector *allocVector(const char *name, const int numElem,
43 const float *u, const float *v, const float *w, const int numElemM = 0);
44
45 virtual void deallocUSG(GPUUsg *usg);
46 virtual void deallocScalar(GPUScalar *scalar);
47 virtual void deallocVector(GPUVector *vector);
48
49private:
52};
53
54#endif
#define GPUEXPORT
Definition: coExport.h:111
GLdouble GLdouble z
Definition: khronos-glext.h:6565
const GLdouble * v
Definition: khronos-glext.h:6442
GLint GLint GLint GLint GLint GLint y
Definition: khronos-glext.h:6346
GLuint const GLchar * name
Definition: khronos-glext.h:6722
GLubyte GLubyte GLubyte GLubyte w
Definition: khronos-glext.h:6793
GLsizei GLsizei GLenum GLenum const GLvoid * data
Definition: khronos-glext.h:6354
GLint GLint GLint GLint GLint x
Definition: khronos-glext.h:6346
Definition: CUDAResourceManager.h:17
static CUDAResourceManager * instance
Definition: CUDAResourceManager.h:51
Definition: GPUResourceManager.h:37
Definition: GPUResourceManager.h:73
Definition: GPUResourceManager.h:91
Definition: GPUResourceManager.h:109
virtual void deallocVector(GPUVector *vector)=0
virtual GPUVector * allocVector(const char *name, const int numElem, const float *u, const float *v, const float *w, const int numElemM=0)=0
virtual GPUScalar * allocScalar(const char *name, const int numElem, const float *data, const int numElemM=0)=0
Definition: GPUResourceManager_dummy.cpp:17
virtual GPUUsg * allocUSG(const char *name, const int numElem, const int numConn, const int numCoord, const int *typeList, const int *elemList, const int *connList, const float *x, const float *y, const float *z, const int numElemM=0, const int numConnM=0, const int numCoordM=0)=0
Definition: GPUResourceManager_dummy.cpp:10
virtual void deallocUSG(GPUUsg *usg)=0
Definition: GPUResourceManager_dummy.cpp:22
virtual void deallocScalar(GPUScalar *scalar)=0
Definition: GPUResourceManager_dummy.cpp:26