Code_TYMPAN  4.4.0
Industrial site acoustic simulation
data_model_common.hpp
Go to the documentation of this file.
1 
9 #ifndef TYMPAN__DATA_MODEL_COMMON_HPP__INCLUDED
10 #define TYMPAN__DATA_MODEL_COMMON_HPP__INCLUDED
11 
12 #include "std_boost_utils.hpp"
13 
16 
17 // This section import some types from CommonTools
18 // under a more generic name into the tympan namespace. Indeed,
19 // there must be no dependency to TY-classes and no direct
20 // ones to O-classes from within the solver data model.
21 namespace tympan
22 {
23 typedef OPoint3D Point;
24 typedef OVector3D Vector;
25 typedef OSpectre Spectrum;
27 
28 typedef std::deque<Point> nodes_pool_t;
29 typedef size_t node_idx;
30 } // namespace tympan
31 
32 namespace tympan
33 {
34 
42 {
43 protected:
44  BaseEntity(){};
45 
46 public:
47  virtual ~BaseEntity(){};
48 
49  // virtual tympan::shared_ptr<BaseEntity> ptr_any() = 0;
50  // virtual tympan::shared_ptr<BaseEntity const> ptr_any() const = 0;
51  //
52  // template <class T>
53  // tympan::shared_ptr<T> ptr()
54  // { return boost::dynamic_pointer_cast<T>(ptr_any()); }
55  //
56  // template <class T>
57  // tympan::shared_ptr<T const> ptr() const
58  // { return boost::dynamic_pointer_cast<T const>(ptr_any()); }
59 };
60 
61 } /* namespace tympan */
62 
63 #endif /* TYMPAN__DATA_MODEL_COMMON_HPP__INCLUDED */
All base classes related to 3D manipulation.
The 3D point class.
Definition: 3d.h:487
The 3D vector class.
Definition: 3d.h:298
The base of all entity classes.
virtual ~BaseEntity()
Constructor.
OSpectreComplex ComplexSpectrum
OSpectre Spectrum
OPoint3D Point
std::deque< Point > nodes_pool_t
OVector3D Vector
size_t node_idx
Misc utilities used by SolverDataModel.