File indexing completed on 2025-07-06 07:55:59
0001 #ifndef EVENT_H
0002 #define EVENT_H
0003
0004 #include "TString.h"
0005 #include "TTimeStamp.h"
0006 #include <map>
0007 #include <iostream>
0008 #include "Caen.h"
0009 #include "HGCROC.h"
0010 #include "Setup.h"
0011 #include "Calib.h"
0012 #include "TRandom3.h"
0013
0014 class Event{
0015
0016 public:
0017
0018 void AddTile (Tile*);
0019 void RemoveTile (Tile*);
0020 void ClearTiles (void);
0021
0022 double GetBeamEnergy(void) const;
0023 int GetBeamID (void) const;
0024 TString GetBeamName (void) const;
0025 int GetEventID (void) const;
0026 int GetNTiles (void) const;
0027 ReadOut::Type GetROtype (void) const;
0028 int GetRunNumber (void) const;
0029 Tile* GetTile (int);
0030 Tile* GetTileFromID(int);
0031 int GetTimeStamp (void) const;
0032 double GetVov (void) const;
0033 double GetVop (void) const;
0034 double GetBeamPosX(void);
0035 double GetBeamPosY(void);
0036 const TTimeStamp* GetBeginRunTime(void) const;
0037 TTimeStamp GetBeginRunTimeAlt(void);
0038
0039 void SetBeamEnergy(double);
0040 void SetBeamID (int);
0041 void SetBeamName (TString);
0042 void SetEventID (int);
0043 void SetROtype (ReadOut::Type);
0044 void SetRunNumber (int);
0045 void SetBeginRunTime(TTimeStamp);
0046 void SetVov(double);
0047 void SetVop(double);
0048 void SetBeamPosX(double);
0049 void SetBeamPosY(double);
0050 void SetTimeStamp (int);
0051
0052 bool InspectIfLocalMuonTrigg(int, double, double, double);
0053 bool InspectIfNoiseTrigg(int, double, double);
0054 double CalculateLocalMuonTrigg(Calib, TRandom3*, int, int, double);
0055
0056 private:
0057
0058 double BeamEnergy;
0059 int BeamID;
0060 TString BeamName;
0061 int EventID;
0062 ReadOut::Type ROtype;
0063 int RunNumber;
0064 TTimeStamp BeginRun;
0065 double Vov;
0066 double Vop;
0067 double BeamPosX;
0068 double BeamPosY;
0069 std::map<int, Tile* > Tiles;
0070 std::vector<int> TileIDs;
0071 int TimeStamp;
0072
0073 protected:
0074
0075 };
0076
0077
0078 #endif