Diana Software
MCoincidenceMultiplicity.hh
Go to the documentation of this file.
1 #ifndef _M_COINCIDENCE_MULTIPLICITY_HH_
2 #define _M_COINCIDENCE_MULTIPLICITY_HH_
3 
50 #include "QModule.hh"
51 #include <map>
52 #include <set>
53 #include <string>
54 #include <vector>
55 
56 class MCoincidenceMultiplicity : public QModule {
57 
58  public:
61 
64 
66  void Init();
67 
69  QEvent* Do(QEvent* ev);
70 
72  void Done();
73  private:
74  class EventInfo {
75  public:
76  int fEventNumber;
77  int fChannel;
78  double fEnergy;
79  double fTime;
80 
81  int fMultiplicity;
82  int fOrderInMultiple;
84  double fTotalEnergy;
85  };
86 
88  std::set<int> fChannels;
89 
91  double fCoincidenceWindow;
92 
94  std::vector<EventInfo> fEventInfos;
95 
97  std::map<int, int> fEventInfosIndex;
98 
100  std::string fPrefix;
101 
103  std::string fRelativeChannelsSource;
104 
106  std::string fThermistorRankingVariable;
107 
109  bool fUseRunningWindow;
110 };
111 
112 #endif
113 
Puts multiplicities and total energies in events.
std::set< int > fChannels
List of channels to use.
std::string fPrefix
AuxData variable prefix string.
std::string fRelativeChannelsSource
Source file name or 'DB' for relative channels.
void Done()
Done method.
std::string fThermistorRankingVariable
AuxData variable containing thermistor rankings.
std::map< int, int > fEventInfosIndex
map from EventNumber to fEventInfos index
std::vector< EventInfo > fEventInfos
time ordered vector of event info
bool fUseRunningWindow
Flag to use running or fixed window.
void Do(Diana::QEvent &ev)
Do method.
double fCoincidenceWindow
Maximum time (in seconds) between coincident events.
MCoincidenceMultiplicity(QSequence *s)
constructor
diana event
Definition: QEvent.hh:46
Base class for diana modules.
Definition: QModule.hh:54
Diana Reconstruction program.
Definition: QSequence.hh:40