1 #ifndef __OUTLINE_MODEL_BUILDER__
2 #define __OUTLINE_MODEL_BUILDER__
5 //------------------------------------------------------------------------------------------------------------
7 //------------------------------------------------------------------------------------------------------------
13 #include "ReaderEnvironment.h"
14 #include "SomeEnvironment.h"
15 #include "ContourThing.h"
17 #include "ImageSourceThing.h"
18 #include "ImageSectionThing.h"
22 class OutlineModelBuilder{
24 //------------------------------------------------------------------------------------------------------------
25 // Constructors & Destructors
26 //------------------------------------------------------------------------------------------------------------
30 * Creates an OutlineModelBuilder
31 * @ param filesNames Paired set of files with the names of the files to read ConceptsFileName, ImageSourcesFile, ImageSectionsFile, AxeThingsFile, ContoursFile
32 * @ param sources Paired set of sourceKeyName-ImageSourceThing
33 * @ param sections Paired set of sectionKeyName-ImageSectionThing
34 * @ param axes Paired set of axeKeyName-AxeThing
35 * @ param outlines Paired set of contoKeyName-ContourThing
37 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);
40 * Destroys an AxeThing
42 ~OutlineModelBuilder();
43 //------------------------------------------------------------------------------------------------------------
45 //------------------------------------------------------------------------------------------------------------
48 * Gets the ImageSourceThing environment
51 SomeEnvironment<ImageSourceThing *> * getImSourceEnv();
53 * Gets the ImageSectionThing environment
56 SomeEnvironment<ImageSectionThing *> * getImSectionEnv();
58 * Gets the AxeThing environment
61 SomeEnvironment<AxeThing *> * getAxesEnv();
63 * Gets the ContourThing environment
66 SomeEnvironment<ContourThing *> * getContourEnv();
69 * Builds the ImageSourceThing * environment
70 * @param sourcesFile File path with the object key names and specific instants for each one
71 * @param sources The sources to include in the enivorment
73 void buildImageSource_Envornment( std::string sourcesFile, std::map<std::string, ImageSourceThing *> * sources );
76 * Builds the ImageSectionThing * environment
77 * @param sectionsFile File path with the object key names and specific instants for each one
78 * @param sections The sections to include in the enivorment
80 void buildImageSection_Envornment( std::string sectionsFile, std::map<std::string, ImageSectionThing *>* sections );
83 * Builds the AxeThing * environment
84 * @param axesFile File path with the object key names and specific instants for each one
85 * @param axes The axes to include in the enivorment
87 void buildAxe_Envornment( std::string axesFile, std::map<std::string, AxeThing *>* axes );
90 * Builds the CountourThing * environment
91 * @param outlinesFile File path with the object key names and specific instants for each one
92 * @param outlines The outlines to include in the enivorment
94 void buildCountour_Envornment( std::string outlinesFile, std::map<std::string, ContourThing *>* outlines );
97 //------------------------------------------------------------------------------------------------------------
99 //------------------------------------------------------------------------------------------------------------
102 * Represents the environment builder based of reading files of axes
104 ReaderEnvironment<AxeThing *> *axesEnv_Reader;
107 * Represents the environment builder based of reading files of section images
109 ReaderEnvironment<ImageSectionThing *> *imagesSectionEnv_Reader;
112 * Represents the environment builder based of reading files of source images (Generally a complete volume data per image)
114 ReaderEnvironment<ImageSourceThing *> *imageSourceEnv_Reader;
117 * Represents the environment builder based of reading files of outlines (outlines)
119 ReaderEnvironment<ContourThing *> * outlinesEnv_Reader;
124 std::string conceptsFile;
126 std::string imagesSectionEnvOtherConceptsFN;
128 std::string outlinesEnvOtherConceptsFN;
130 std::string axesEnvOtherConceptsFN;