Falaise  4.0.1
SuperNEMO Software Toolkit
base_trajectory_pattern.h
Go to the documentation of this file.
1 /// \file falaise/snemo/datamodels/base_trajectory_pattern.h
2 /* Author(s) : François Mauger <mauger@lpccaen.in2p3.fr>
3  * Creation date: 2012-03-19
4  * Last modified: 2014-01-27
5  *
6  * Description: The base class of trajectory patterns
7  */
8 
9 #ifndef FALAISE_SNEMO_DATAMODEL_BASE_TRAJECTORY_PATTERN_H
10 #define FALAISE_SNEMO_DATAMODEL_BASE_TRAJECTORY_PATTERN_H 1
11 
12 // Standard library:
13 #include <string>
14 
15 // Third party:
16 // - Bayeux/datatools:
18 // - Bayeux/geomtools:
19 #include <geomtools/i_shape_1d.h>
20 
21 namespace snemo {
22 
23 namespace datamodel {
24 
25 /// \brief The base class of fitted trajectory pattern
27  public:
28  /// Check if a valid pattern ID exists
29  bool has_pattern_id() const;
30 
31  /// Return the pattern ID
32  const std::string& get_pattern_id() const;
33 
34  /// Return the reference to the 1D shape associated to the trajectory
35  virtual const geomtools::i_shape_1d& get_shape() const = 0;
36 
37  /// Constructor
38  base_trajectory_pattern(const std::string& pattern_id_ = "");
39 
40  /// Destructor
41  virtual ~base_trajectory_pattern();
42 
43  protected:
44  /// Set the pattern ID
45  void _set_pattern_id(const std::string& pattern_id_);
46 
47  private:
48  std::string _pattern_id_; //!< The pattern identifier
49 
51 };
52 
53 } // end of namespace datamodel
54 
55 } // end of namespace snemo
56 
57 #endif // FALAISE_SNEMO_DATAMODEL_BASE_TRAJECTORY_PATTERN_H
58 
59 /*
60 ** Local Variables: --
61 ** mode: c++ --
62 ** c-file-style: "gnu" --
63 ** tab-width: 2 --
64 ** End: --
65 */
virtual ~base_trajectory_pattern()
Destructor.
#define DATATOOLS_SERIALIZATION_DECLARATION()
base_trajectory_pattern(const std::string &pattern_id_="")
Constructor.
void _set_pattern_id(const std::string &pattern_id_)
Set the pattern ID.
bool has_pattern_id() const
Check if a valid pattern ID exists.
The base class of fitted trajectory pattern.
Definition: base_trajectory_pattern.h:26
Definition: calo_tapered_scin_box_model.h:54
virtual const geomtools::i_shape_1d & get_shape() const =0
Return the reference to the 1D shape associated to the trajectory.
const std::string & get_pattern_id() const
Return the pattern ID.