Bayeux  3.4.1
Core Foundation library for SuperNEMO
model_tools.h
Go to the documentation of this file.
1 // -*- mode: c++ ; -*-
2 /* model_tools.h
3  * Author (s) : Francois Mauger <mauger@lpccaen.in2p3.fr>
4  * Creation date: 2010-02-12
5  * Last modified: 2010-02-12
6  *
7  * License:
8  *
9  * Description:
10  *
11  * History:
12  *
13  */
14 
15 #ifndef GEOMTOOLS_DETAIL_MODEL_TOOLS_H
16 #define GEOMTOOLS_DETAIL_MODEL_TOOLS_H
17 
18 // Standard library:
19 #include <string>
20 #include <map>
21 
22 // Third party:
23 // - Bayeux/datatools:
24 #include <datatools/properties.h>
25 
26 namespace geomtools {
27 
28  // Forward declaration:
29  class i_model;
30 
32  typedef std::map<std::string, i_model *> models_col_type;
33 
34  typedef i_model * (*model_creator_type) (const std::string & name_,
35  const datatools::properties & configuration_,
36  models_col_type * models_);
37 
38  typedef std::map<std::string, model_creator_type> model_creator_dict_type;
39 
40 } // end of namespace geomtools
41 
42 #endif // GEOMTOOLS_DETAIL_MODEL_TOOLS_H
The base class for geometry models.
Definition: i_model.h:45
std::map< std::string, i_model * > models_col_type
Type alias for dictionary of geometry model plain handles.
Definition: model_tools.h:29
std::map< std::string, model_creator_type > model_creator_dict_type
Definition: model_tools.h:38
Top-level namespace of the Bayeux/geomtools module library.
Definition: electromagnetic_field_manager.h:39
A dictionary of arbitrary properties.
Definition: properties.h:125