00001 00013 #ifndef __DIME_READER_H__ 00014 #define __DIME_READER_H__ 00015 00016 #include <reader/dxf_reader.h> 00017 #include <reader/dime_help.h> 00018 00019 #include <dime/Model.h> 00020 #include <dime/entities/Entity.h> 00021 00026 class DimeReader : public DxfReader { 00027 public: 00034 DimeReader(const char* dxfFile) 00035 throw (ReadFileException*, FileFormatException*); 00036 00040 virtual ~DimeReader(); 00041 00042 virtual CadModel* getCadModel(Color color, bool splitQuad); 00043 virtual const char* getFileFormatVersion(); 00044 00049 virtual const char* getLibVersion(); 00050 00051 virtual void print(); 00052 00053 private: 00062 static const char* dimeParam2str(dimeParam param, int groupCode); 00063 00076 static bool generateCadModel(const dimeState* const state, 00077 dimeEntity *entity, void *data); 00078 00090 static bool printEntity(const dimeState* const state, 00091 dimeEntity *entity, void *data); 00092 00100 dimeModel* getDimeModel(); 00101 00107 CadModel* cadModel; 00108 00115 Color color; 00116 00121 dimeModel* model; 00122 00123 }; // class DimeReader 00124 00125 #endif // ! __DIME_READER_H__