creaContours_lib
OutlineModelBuilder.h
Go to the documentation of this file.
1 /*# ---------------------------------------------------------------------
2 #
3 # Copyright (c) CREATIS (Centre de Recherche en Acquisition et Traitement de l'Image
4 # pour la Sant�)
5 # Authors : Eduardo Davila, Frederic Cervenansky, Claire Mouton
6 # Previous Authors : Laurent Guigues, Jean-Pierre Roux
7 # CreaTools website : www.creatis.insa-lyon.fr/site/fr/creatools_accueil
8 #
9 # This software is governed by the CeCILL-B license under French law and
10 # abiding by the rules of distribution of free software. You can use,
11 # modify and/ or redistribute the software under the terms of the CeCILL-B
12 # license as circulated by CEA, CNRS and INRIA at the following URL
13 # http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
14 # or in the file LICENSE.txt.
15 #
16 # As a counterpart to the access to the source code and rights to copy,
17 # modify and redistribute granted by the license, users are provided only
18 # with a limited warranty and the software's author, the holder of the
19 # economic rights, and the successive licensors have only limited
20 # liability.
21 #
22 # The fact that you are presently reading this means that you have had
23 # knowledge of the CeCILL-B license and that you accept its terms.
24 # ------------------------------------------------------------------------ */
25 
26 #ifndef __OUTLINE_MODEL_BUILDER__
27 #define __OUTLINE_MODEL_BUILDER__
28 
29 
30 //------------------------------------------------------------------------------------------------------------
31 // Includes
32 //------------------------------------------------------------------------------------------------------------
33 #include <iostream>
34 #include <vector>
35 #include <string>
36 
37 
38 #include "ReaderEnvironment.h"
39 #include "SomeEnvironment.h"
40 #include "ContourThing.h"
41 #include "AxeThing.h"
42 #include "ImageSourceThing.h"
43 #include "ImageSectionThing.h"
44 
45 
46 
48 
49 //------------------------------------------------------------------------------------------------------------
50 // Constructors & Destructors
51 //------------------------------------------------------------------------------------------------------------
52 public:
53 
62  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);
63 
68 //------------------------------------------------------------------------------------------------------------
69 // Methods
70 //------------------------------------------------------------------------------------------------------------
71 
76  SomeEnvironment<ImageSourceThing *> * getImSourceEnv();
81  SomeEnvironment<ImageSectionThing *> * getImSectionEnv();
86  SomeEnvironment<AxeThing *> * getAxesEnv();
91  SomeEnvironment<ContourThing *> * getContourEnv();
92 
98  void buildImageSource_Envornment( std::string sourcesFile, std::map<std::string, ImageSourceThing *> * sources );
99 
105  void buildImageSection_Envornment( std::string sectionsFile, std::map<std::string, ImageSectionThing *>* sections );
106 
112  void buildAxe_Envornment( std::string axesFile, std::map<std::string, AxeThing *>* axes );
113 
119  void buildCountour_Envornment( std::string outlinesFile, std::map<std::string, ContourThing *>* outlines );
120 
121 private:
122 //------------------------------------------------------------------------------------------------------------
123 // Attributes
124 //------------------------------------------------------------------------------------------------------------
125 
129  ReaderEnvironment<AxeThing *> *axesEnv_Reader;
130 
134  ReaderEnvironment<ImageSectionThing *> *imagesSectionEnv_Reader;
135 
139  ReaderEnvironment<ImageSourceThing *> *imageSourceEnv_Reader;
140 
144  ReaderEnvironment<ContourThing *> * outlinesEnv_Reader;
145 
146  /*
147  *
148  */
149  std::string conceptsFile;
150 
152 
154 
156 
157 
158 };
159 #endif
160