MEvent/Scintillator.h
Go to the documentation of this file.
1 #ifndef _mevt_Scintillator_h_
2 #define _mevt_Scintillator_h_
3 
4 #include <evt/ComponentGroup.h>
5 #include <mevt/ScintillatorSimData.h>
6 #include <mevt/ScintillatorRecData.h>
7 #include <utl/ShadowPtr.h>
8 
9 
10 namespace mevt {
11 
21  class Scintillator {
22 
23  public:
24  // Rely on implicit ones.
25  //Scintillator(const Scintillator& scint);
26  //Scintillator& operator=(const Scintillator& scint);
32 
33  const ScintillatorSimData& GetSimData() const { return *fSimData; }
34 
35  void MakeSimData();
36 
37  bool HasSimData() const { return bool(fSimData); }
38 
40 
45 
46  const ScintillatorRecData& GetRecData() const { return *fRecData; }
47 
48  void MakeRecData();
49 
50  bool HasRecData() const { return bool(fRecData); }
51  //@
52 
53  int GetId() const { return fId; }
54 
55  private:
58 
62  Scintillator(const int sId) : fId(sId) { }
63 
65 
70  template<class T>
71  friend void boost::checked_delete(T*) BOOST_NOEXCEPT;
72 
73  int fId = 0;
74  utl::ShadowPtr<ScintillatorSimData> fSimData;
75  utl::ShadowPtr<ScintillatorRecData> fRecData;
76 
77  };
78 
79 }
80 
81 
82 #endif
utl::ShadowPtr< ScintillatorSimData > fSimData
utl::ShadowPtr< ScintillatorRecData > fRecData
const ScintillatorRecData & GetRecData() const
Scintillator level event data.
Common class for groups of components of the Event hierarchy.
ScintillatorRecData & GetRecData()
Scintillator level simulation data.
bool HasRecData() const
friend void boost::checked_delete(T *) BOOST_NOEXCEPT
Friendship for destruction. Depends on evt::ComponentGroup innards.
Scintillator level reconstruction data.
const ScintillatorSimData & GetSimData() const
Scintillator(const int sId)
Constructs the Scintillator with the given identificator.
bool HasSimData() const
ScintillatorSimData & GetSimData()

, generated on Tue Sep 26 2023.