35 std::string fFileWithTimes;
38 Long_t fTimeOffsetInSeconds;
39 Long_t fTimeStartMarginInSeconds;
40 Long_t fTimeEndMarginInSeconds;
41 std::vector<Interval> fStartEndTimes;
42 Bool_t fUseRunStartAndEndTimes;
47 Int_t fNEventsSelected;
48 Double_t fTotalTimeInSeconds;
68 const char* GetProcessName()
const override {
return "EventTimeSelectionProcess"; }
70 std::string GetFileWithTimes()
const {
return fFileWithTimes; }
72 Bool_t GetIsActiveTime()
const {
return fIsActiveTime; }
73 Char_t GetDelimiter()
const {
return fDelimiter; }
75 std::vector<Interval> GetStartEndTimes()
const {
return fStartEndTimes; }
76 std::string
GetTimeStampCut(std::string timeStampObsName =
"timeStamp", Bool_t useOffset =
true,
77 Bool_t useMargins =
true, Int_t nTimes = -1);
79 Int_t GetNEventsSelected()
const {
return fNEventsSelected; }
80 Double_t GetTotalTimeInSeconds()
const {
return fTotalTimeInSeconds; }
81 Long_t GetTimeOffsetInSeconds()
const {
return fTimeOffsetInSeconds; }
82 Long_t GetTimeStartMarginInSeconds()
const {
return fTimeStartMarginInSeconds; }
83 Long_t GetTimeEndMarginInSeconds()
const {
return fTimeEndMarginInSeconds; }
86 static std::vector<Interval> ReadFileWithTimes(std::string fileWithTimes, Char_t delimiter =
',');
87 void ApplyStartRunTime(
const TTimeStamp& runStartTime);
88 void ApplyEndRunTime(
const TTimeStamp& runEndTime);
90 void SetAsActiveTime() { fIsActiveTime =
true; }
91 void SetAsDeadTime() { fIsActiveTime =
false; }
92 void SetFileWithTimes(
const std::string& fileWithTimes) { fFileWithTimes = fileWithTimes; }
93 void SetIsActiveTime(Bool_t isActiveTime) { fIsActiveTime = isActiveTime; }
94 void SetDelimiter(Char_t delimiter) { fDelimiter = delimiter; }
95 void SetStartEndTimes(
const std::vector<Interval>& startEndTimes) { fStartEndTimes = startEndTimes; }
96 void SetTimeOffsetInSeconds(Long_t timeOffsetInSeconds) { fTimeOffsetInSeconds = timeOffsetInSeconds; }
97 void SetTimeStartMarginInSeconds(Long_t timeStartMarginInSeconds) {
98 fTimeStartMarginInSeconds = timeStartMarginInSeconds;
100 void SetTimeEndMarginInSeconds(Long_t timeEndMarginInSeconds) {
101 fTimeEndMarginInSeconds = timeEndMarginInSeconds;
std::string GetTimeStampCut(std::string timeStampObsName="timeStamp", Bool_t useOffset=true, Bool_t useMargins=true, Int_t nTimes=-1)
Function to get the cut string that reproduce the time selection done by this process (useful for TRe...