Open PaperOpt
OpenPaperOpt/Input.h
Go to the documentation of this file.
00001 
00004 #ifndef INPUT_H
00005 #define INPUT_H
00006 
00007 // INCLUDES
00008 #include <exception>
00009 #include <string>
00010 #include "XMLParser.h"
00011 #include "SurfaceParser.h"
00012 #include "BulkParser.h"
00013 #include "LightSourceParser.h"
00014 #include "DetectorParser.h"
00015 #include "SimVolume.h"
00016 
00017 
00018 using namespace irr;
00019 using namespace io;
00020 using namespace std;
00021 
00022 //Global variable this should be moved to inside IO namespace but doesn't work currently.
00023 
00024 
00025 namespace IO{
00026         
00027         enum xmlroot{SIMULATION, BULKGENERATION};
00028 
00029 
00038         class Input
00039         {
00040         public:
00050                 Input(string file);
00051                 ~Input(void);
00052 
00057                 SimVolume* parseSimulation(void);
00058 
00063                 void parseBulkGeneration(void);
00064 
00070                 xmlroot mRoot; 
00071                 string mResultsDirectory;               
00072 
00073         private:
00074                 void checkendian( void );
00075 
00076                 XMLParser mParser;
00077                 string mInputFile;
00078                 SurfaceParser mSurfaceParser;
00079                 BulkParser mBulkParser;
00080                 LightSourceParser mLightSourceParser;
00081                 DetectorParser mDetectorParser;
00082         
00083         };
00084 }
00085 #endif //INPUT_H