SND@LHC Software
Loading...
Searching...
No Matches
sndDSPlane.h
Go to the documentation of this file.
1#ifndef SND_DSPLANE_H
2#define SND_DSPLANE_H
3
4#include <vector>
5
6#include "MuFilter.h"
7#include "MuFilterHit.h"
8#include "sndConfiguration.h"
9
10namespace snd {
11 namespace analysis_tools {
12 class DSPlane
13 {
14 public:
15
16 // right and left side of DS bars
17 template <class T>
18 struct rl_pair
19 {
20 T right{};
21 T left{};
22 };
23
24 // hits vector, each hit has info about timestamp, qdc and position
25 struct DSHit
26 {
28 int bar;
29
30 double qdc;
31 double timestamp;
32 double x;
33 double y;
34 double z;
35
36 bool is_x; // true if vertical (measures x)
38
39 void Print() const;
40 };
41
42 DSPlane(std::vector<MuFilterHit*> snd_hits, const Configuration &configuration, MuFilter *muon_filter_geometry, int station);
43
44 const int GetNHits() const { return hits_.size(); };
45 const int GetStation() const { return station_; }
46
47 const double GetTotQdc() const;
48 const std::vector<DSHit> GetHits() const { return hits_; };
49 const int GetBarNHits(int bar_to_compute) const;
50
51 void TimeFilter(double min_timestamp, double max_timestamp);
52 const int GetNHitBars() const;
53
54 private:
55 std::vector<DSHit> hits_;
58 };
59 }
60}
61
62#endif
const int GetNHits() const
Definition sndDSPlane.h:44
std::vector< DSHit > hits_
Definition sndDSPlane.h:55
void TimeFilter(double min_timestamp, double max_timestamp)
const double GetTotQdc() const
const int GetStation() const
Definition sndDSPlane.h:45
const int GetBarNHits(int bar_to_compute) const
const std::vector< DSHit > GetHits() const
Definition sndDSPlane.h:48
const int GetNHitBars() const