SND@LHC Software
Loading...
Searching...
No Matches
sndEventDeltat.cxx
Go to the documentation of this file.
1#include "sndEventDeltat.h"
2
3#include <iostream>
4
5namespace snd::analysis_cuts {
6
7 eventDeltatCut::eventDeltatCut(int delta_event, int delta_timestamp, TChain * ch) : EventHeaderBaseCut(ch) {
8 delta_e = delta_event;
9 delta_t = delta_timestamp;
10
11 cutName = std::to_string(delta_e)+" event more than "+std::to_string(delta_t)+" clock cycles away";
12
13 shortName = "EventDeltat_";
14 shortName += std::to_string(delta_event);
15 shortName += "_";
16 shortName += std::to_string(delta_timestamp);
17 nbins = std::vector<int>{1000};
18 range_start = std::vector<double>{0};
19 range_end = std::vector<double>{1000};
20 plot_var = std::vector<double>{-1};
21
22 }
23
25 unsigned long int current_entry = tree->GetReadEntry();
26 long int current_time = header->GetEventTime();
27
28 bool passes = true;
29 tree->GetEntry(current_entry + delta_e);
30
31 int sign = (delta_e > 0) - (delta_e < 0);
32
33 if (-sign*(current_time - header->GetEventTime()) <= delta_t) passes = false;
34
35 plot_var[0] = abs(current_time - header->GetEventTime());
36
37 // Get current entry back
38 tree->GetEntry(current_entry);
39 return passes;
40 }
41}
std::vector< double > plot_var
Definition sndBaseCut.h:14
std::vector< double > range_end
Definition sndBaseCut.h:13
std::vector< double > range_start
Definition sndBaseCut.h:12
std::vector< int > nbins
Definition sndBaseCut.h:11
eventDeltatCut(int delta_event, int delta_timestamp, TChain *ch)