00001 #ifndef IMPORTER_H 00002 #define IMPORTER_H 00003 00004 #include <list> 00005 #include <matrix/newmatio.h> 00006 #include <matrix/newmat.h> 00007 #include <matrix/newmatap.h> 00008 00009 00010 #include <vector> 00011 #include <ExampleModel.h> 00012 #include <tinyxml/tinyxml.h> 00013 00014 using namespace std; 00015 using namespace model; 00016 00017 namespace functions{ 00018 00038 class Importer { 00039 private: 00040 char* m_dir; 00041 int globalCIndex, globalNIndex; 00042 vector<int> globalCoordIndexs; 00043 vector<int> globalNormalIndexs; 00044 vector<float> translation, rotation, scale, scaleOrientation, center; 00045 00046 void readElements(TiXmlNode* doc, ExampleModel* em); 00047 void readAttributes(TiXmlElement* pElement, ExampleModel* em); 00048 public: 00049 Importer(); 00065 ~Importer() {}; 00066 00067 bool importModel(const char* filename, ExampleModel* am); 00068 bool importDirectory(const char* dirname, vector<ExampleModel*> vem); 00069 }; 00070 00075 } 00076 00077 #endif //IMPORTER_H