![]() |
TAPs 0.7.7.3
|
00001 /****************************************************************************** 00002 TAPsCUDA.cu 00003 ******************************************************************************/ 00023 /****************************************************************************** 00024 SUKITTI PUNAK (08/27/2008) 00025 UPDATE (09/22/2009) 00026 ******************************************************************************/ 00027 #ifndef TAPs_CUDA_HPP 00028 #define TAPs_CUDA_HPP 00029 00030 00031 00032 00033 00034 00035 00036 00037 00038 // C 00039 #include <cstdlib> 00040 #include <cstdio> 00041 //#include <cstring> 00042 00043 // CUDA DOESN'T SUPPORT C++! 00044 // C++ 00045 //#include <iostream> 00046 //#include <vector> 00047 00048 // OpenGL 00049 #include <GL/glew.h> 00050 // #if defined (__APPLE__) || defined(MACOSX) 00051 // #include <GLUT/glut.h> 00052 // #else 00053 // #include <GL/glut.h> 00054 // #endif 00055 00056 // CUDA 00057 #include <cuda.h> 00058 #include <cutil.h> 00059 00060 //#include <cuda_runtime.h> 00061 #include <cutil_inline.h> 00063 //#include <cutil_gl_error.h> 00064 //#include <cuda_gl_interop.h> 00065 // #include <vector_types.h> 00066 // #include <rendercheck_gl.h> 00067 00068 //#include <cuda.h> 00069 //#include <cutil.h> 00070 #include <cudaGL.h> 00071 #include <cuda_gl_interop.h> 00072 00073 // TAPs 00074 #include "../Core/TAPsListOfNamespaces.hpp" 00075 #include "../Support/AdvSimCtrl/TAPsListOfAdvSimConsts.hpp" 00076 00077 // TAPs::CUDA 00078 #include "TAPsCUDA_GlobalFns.cu" // for CUDA initialization and so on 00079 #include "TAPsCUDA_UsefulDeviceFns.cu" // for useful device functions and data structures, e.g. Matrix4x4 and Quaternion 00080 00081 #include "TAPsCUDA_GlobalTextureRef.cu" // for the list of CUDA's texture references which have to be global 00082 #include "TAPsCUDA_VertexList.cu" // for vertex list data on CUDA 00083 #include "TAPsCUDA_VertexListPLHM.cu" // for vertex list data on CUDA utilizing CUDA's Page-Locked Host Memory 00084 #include "TAPsCUDA_DataPool.cu" // for CUDA data pool of vertex list 00085 00086 // TAPs::CUDA for Mass-Spring Models 00087 #include "TAPsCUDA_VertexListMSM.cu" // for computing the simulation of mass-spring models 00088 // TAPs::CUDA for Elastic Rod Model 00089 #include "TAPsCUDA_DevFns_ModelElasticRod.cu" // CUDA's device functions for the elastic rod model 00090 #include "TAPsCUDA_GL_ModelElasticRod.cu" // for computing generalized cylinders for drawing the elastic rod model 00091 #include "TAPsCUDA_VertexListModelElasticRod.cu" // for computing the simulation of the elastic rod model 00092 #include "TAPsCUDA_VertexListPLHMModelElasticRod.cu" // for computing the simulation of the elastic rod model utilizing CUDA's Page-Locked Host Memory 00093 00094 #endif 00095 //34567890123456789012345678901234567890123456789012345678901234567890123456789 00096 //--+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----