File indexing completed on 2026-09-08 08:26:22
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 #include <algorithm>
0014
0015 class Event{
0016
0017 public:
0018
0019 void AddTile (Tile*);
0020 void RemoveTile (Tile*);
0021 void ClearTiles (void);
0022
0023 double GetBeamEnergy(void) const;
0024 int GetBeamID (void) const;
0025 TString GetBeamName (void) const;
0026 int GetEventID (void) const;
0027 int GetNTiles (void) const;
0028 ReadOut::Type GetROtype (void) const;
0029 int GetRunNumber (void) const;
0030 Tile* GetTile (int);
0031 Tile* GetTileFromID(int);
0032 double GetTimeStamp (void) const;
0033 double GetVov (void) const;
0034 double GetVop (void) const;
0035 double GetBeamPosX(void);
0036 double GetBeamPosY(void);
0037 const TTimeStamp* GetBeginRunTime(void) const;
0038 TTimeStamp GetBeginRunTimeAlt(void);
0039
0040 void SetBeamEnergy(double);
0041 void SetBeamID (int);
0042 void SetBeamName (TString);
0043 void SetEventID (int);
0044 void SetROtype (ReadOut::Type);
0045 void SetRunNumber (int);
0046 void SetBeginRunTime(TTimeStamp);
0047 void SetVov(double);
0048 void SetVop(double);
0049 void SetBeamPosX(double);
0050 void SetBeamPosY(double);
0051 void SetTimeStamp (double);
0052
0053 bool InspectIfLocalMuonTrigg(int, double, double, double);
0054 bool InspectIfNoiseTrigg(int, double, double);
0055 double CalculateLocalMuonTrigg(Calib, TRandom3*, int, int, double);
0056 bool CheckEventIntegrity( Calib calib, double thLG = 20, double thHG = 150);
0057
0058 private:
0059
0060 double BeamEnergy;
0061 int BeamID;
0062 TString BeamName;
0063 int EventID;
0064 ReadOut::Type ROtype;
0065 int RunNumber;
0066 TTimeStamp BeginRun;
0067 double Vov;
0068 double Vop;
0069 double BeamPosX;
0070 double BeamPosY;
0071 std::map<int, Tile* > Tiles;
0072 std::vector<int> TileIDs;
0073 double TimeStamp;
0074
0075 protected:
0076
0077 };
0078
0079
0080 #endif