/[PAMELA software]/yoda/event/EventCounter.h
ViewVC logotype

Contents of /yoda/event/EventCounter.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2.3 - (show annotations) (download)
Thu Dec 9 08:47:42 2004 UTC (20 years, 1 month ago) by kusanagi
Branch: MAIN
Changes since 2.2: +5 -1 lines
File MIME type: text/plain
Fixed bug of Stack overflow in case of Log CRCError
Added S4Init & S4Alarm packets

1 /** @file
2 * $Source: /home/cvsmanager/yoda/event/EventCounter.h,v $
3 * $Id: EventCounter.h,v 2.2 2004/12/03 22:04:04 kusanagi Exp $
4 * $Author: kusanagi $
5 *
6 * Header file for the EventCounter class.
7 */
8 #ifndef EVENTCOUNTER_H
9 #define EVENTCOUNTER_H
10
11 #include <map>
12 #include "Exception.h"
13 #include "PscuHeader.h"
14
15 namespace pamela {
16 /**
17 * Event counter. Contains the event numbers of the last read event of
18 * each event type.
19 */
20 class EventCounter : public TObject {
21 private:
22 int RunNumber; /**< Run number */
23
24 int Pscu;
25 int PhysEndRun;
26 int CalibCalPulse1;
27 int CalibCalPulse2;
28 int Physics;
29 int CalibTrkBoth;
30 int Calib_Trk1;
31 int Calib_Trk2;
32 int Calib_Cal;
33 int Calib_Trd;
34 int Calib_Tof;
35 int Calib_S4;
36 int Calib_CalPed;
37 int Calib_Ac;
38 int Run_Header;
39 int Run_Trailer;
40 int CalibHeader;
41 int CalibTrailer;
42 int InitHeader;
43 int InitTrailer;
44 int EventTrk;
45 int TestTrk;
46 int TestTof;
47 int Log;
48 int VarDump;
49 int ArrDump;
50 int TabDump;
51 int Tmtc;
52 int Mcmd;
53 int ForcedFECmd;
54 int AcInit;
55 int CalInit;
56 int TrkInit;
57 int TofInit;
58 int TrgInit;
59 int NdInit;
60 int S4Init;
61 int CalAlarm;
62 int AcAlarm;
63 int TrkAlarm;
64 int TrgAlarm;
65 int TofAlarm;
66 int S4Alarm;
67
68 typedef std::map<const pamela::PacketType *, int *> CounterMap;
69 CounterMap CMap; //!
70
71 public:
72 EventCounter(int = 0);
73 /** Get the run number for the last read event of this type. */
74 int getPscu() const { return Pscu; };
75 /** Get the run number for the last read event of this type. */
76 int Get(pamela::PacketType const *) const throw (NotExistingCounterException);
77 /** Get the run number for the next event of this type. */
78 int Next(pamela::PacketType const *) const throw (NotExistingCounterException);
79 int GetRunNumber(void) const { return RunNumber; }
80 void Increment(pamela::PacketType const *) throw (NotExistingCounterException);
81 void PrintCounters() const ;
82 ClassDef(EventCounter, 1)
83 };
84 }
85
86 #endif /* EVENTCOUNTER_H */
87
88

  ViewVC Help
Powered by ViewVC 1.1.23