00001 /* model.h represents data model 00002 (Inventor model and RAPID model) 00003 Physical Based Simulation, ETH Zuerich 00004 Rene Mueller, April 14th 2003 */ 00005 00006 #include <Inventor/nodes/SoSeparator.h> 00007 #include <Inventor/nodes/SoMaterial.h> 00008 #include <RAPID.H> 00009 00010 #ifndef _MODEL_H_ 00011 #define _MODEL_H_ 00012 00014 00022 class Model 00023 { 00024 public: 00025 00027 00032 Model(const char* filename); 00033 00035 ~Model(); 00036 00038 SoSeparator* getModel() { 00039 return model; 00040 } 00041 00043 SoSeparator* getRootModel() { 00044 return rootModel; 00045 } 00046 00048 SoMaterial* getMaterial() { 00049 return material; 00050 } 00051 00053 RAPID_model* getRAPIDModel() { 00054 return rapidModel; 00055 } 00056 00058 RAPID_model* rapidModel; 00059 00060 private: 00061 00063 SoSeparator* model; 00064 00066 SoSeparator* rootModel; 00067 00069 SoMaterial* material; 00070 00071 }; 00072 00073 #endif // _MODEL_H_