00001 #ifndef SIGEL_ROBOTIO_SIG_ROBOTBUILDER_H 00002 #define SIGEL_ROBOTIO_SIG_ROBOTBUILDER_H 00003 00004 namespace SIGEL_RobotIO { class SIG_RobotBuilder; } 00005 00006 #include <qstring.h> 00007 #include "SIGEL_Robot/SIG_Robot.h" 00008 #include "SIGEL_RobotIO/SIG_RobotFactory.h" 00009 #include "SIGEL_RobotIO/SIG_RobotScanner.h" 00010 #include "SIGEL_RobotIO/SIG_RobotCompilerObjects.h" 00011 #include "SIGEL_RobotIO/SIG_RobotCompilerStructure.h" 00012 00018 namespace SIGEL_RobotIO { 00019 class SIG_RobotBuilder : public SIG_RobotFactory { 00020 private: 00021 QString filename; 00022 public: 00023 SIG_RobotBuilder (QString file); 00024 virtual ~SIG_RobotBuilder (void); 00025 00026 SIG_Robot *build (void); 00027 void buildInto (SIG_Robot & rob); 00028 protected: 00029 QString loadFile (QString name); 00030 void firstPass (void); 00031 void secondPass (void); 00032 }; 00033 } 00034 00035 #endif