00001 #ifndef __OUTLINE_MODEL_BUILDER__ 00002 #define __OUTLINE_MODEL_BUILDER__ 00003 00004 00005 //------------------------------------------------------------------------------------------------------------ 00006 // Includes 00007 //------------------------------------------------------------------------------------------------------------ 00008 #include <iostream> 00009 #include <vector> 00010 #include <string> 00011 00012 00013 #include "ReaderEnvironment.h" 00014 #include "SomeEnvironment.h" 00015 #include "ContourThing.h" 00016 #include "AxeThing.h" 00017 #include "ImageSourceThing.h" 00018 #include "ImageSectionThing.h" 00019 00020 00021 00022 class OutlineModelBuilder{ 00023 00024 //------------------------------------------------------------------------------------------------------------ 00025 // Constructors & Destructors 00026 //------------------------------------------------------------------------------------------------------------ 00027 public: 00028 00037 OutlineModelBuilder(std::string conceptsFile, std::string datadir = "data" );//std::map<std::string, std::string> filesNames, std::map<std::string, ImageSourceThing *> * sources, std::map<std::string, ImageSectionThing *>* sections, std::map<std::string, AxeThing *>* axes, std::map<std::string, ContourThing *>* outlines); 00038 00042 ~OutlineModelBuilder(); 00043 //------------------------------------------------------------------------------------------------------------ 00044 // Methods 00045 //------------------------------------------------------------------------------------------------------------ 00046 00051 SomeEnvironment<ImageSourceThing *> * getImSourceEnv(); 00056 SomeEnvironment<ImageSectionThing *> * getImSectionEnv(); 00061 SomeEnvironment<AxeThing *> * getAxesEnv(); 00066 SomeEnvironment<ContourThing *> * getContourEnv(); 00067 00073 void buildImageSource_Envornment( std::string sourcesFile, std::map<std::string, ImageSourceThing *> * sources ); 00074 00080 void buildImageSection_Envornment( std::string sectionsFile, std::map<std::string, ImageSectionThing *>* sections ); 00081 00087 void buildAxe_Envornment( std::string axesFile, std::map<std::string, AxeThing *>* axes ); 00088 00094 void buildCountour_Envornment( std::string outlinesFile, std::map<std::string, ContourThing *>* outlines ); 00095 00096 private: 00097 //------------------------------------------------------------------------------------------------------------ 00098 // Attributes 00099 //------------------------------------------------------------------------------------------------------------ 00100 00104 ReaderEnvironment<AxeThing *> *axesEnv_Reader; 00105 00109 ReaderEnvironment<ImageSectionThing *> *imagesSectionEnv_Reader; 00110 00114 ReaderEnvironment<ImageSourceThing *> *imageSourceEnv_Reader; 00115 00119 ReaderEnvironment<ContourThing *> * outlinesEnv_Reader; 00120 00121 /* 00122 * 00123 */ 00124 std::string conceptsFile; 00125 00126 std::string imagesSectionEnvOtherConceptsFN; 00127 00128 std::string outlinesEnvOtherConceptsFN; 00129 00130 std::string axesEnvOtherConceptsFN; 00131 00132 00133 }; 00134 #endif 00135