MCorcMultipleCoincidences.hh

Go to the documentation of this file.
00001 #ifndef _M_CORC_MULTIPLE_COINCIDENCES_HH_
00002 #define _M_CORC_MULTIPLE_COINCIDENCES_HH_
00003 
00029 #include "QCorcModule.hh"
00030 #include <set>
00031 #include <string>
00032 #include <vector>
00033 
00034 class MCorcMultipleCoincidences : public QCorcModule {
00035 
00036     public:
00038         MCorcMultipleCoincidences(QSequence* s);
00039 
00041         ~MCorcMultipleCoincidences();
00042 
00044         void Init();
00045 
00047         QEvent* Do(QEvent* ev);
00048 
00050         void Done();
00051         
00052     private:
00054         bool ParseCoincidences();
00055         
00057         void Write();
00058         
00059         class EventInfo {
00060             public:
00061                 int    fChannel;
00062                 int    fRun;
00063                 double fTime;
00064         };
00065         
00066         class Coincidence {
00067             public:
00068                 std::set<int> fChannels;
00069                 unsigned int fNumberOfCrystals;
00070                 double fTime;
00071         };
00072         
00074         std::vector<Coincidence> fCoincidences;
00075         
00077         std::vector<EventInfo> fCoincidentEvents;
00078         
00080         double fCoincidenceWindow;
00081         
00083         unsigned int fMaxCoincidentEvents;
00084         
00086         std::string fRelativeChannelsSource;
00087         
00088 };
00089 
00090 #endif

Generated on Tue Nov 16 10:49:57 2010 for CUORE Software by  doxygen 1.5.6