SND@LHC Software
Loading...
Searching...
No Matches
sndVetoPlane.h
Go to the documentation of this file.
1
#ifndef SND_VETOPLANE_H
2
#define SND_VETOPLANE_H
3
4
#include <vector>
5
6
#include "
MuFilter.h
"
7
#include "
MuFilterHit.h
"
8
#include "
sndConfiguration.h
"
9
10
namespace
snd
{
11
namespace
analysis_tools {
12
class
VetoPlane
13
{
14
public
:
15
16
// right and left side of Veto 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
VetoHit
26
{
27
int
channel_index
;
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)
37
bool
is_right
;
38
39
void
Print
()
const
;
40
};
41
42
VetoPlane
(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
double
GetBarQdc
(
int
bar_to_compute)
const
;
49
const
int
GetBarNHits
(
int
bar_to_compute)
const
;
50
const
std::vector<VetoHit>
GetHits
()
const
{
return
hits_
; };
51
const
int
GetNHitBars
()
const
;
52
53
void
TimeFilter
(
double
min_timestamp,
double
max_timestamp);
54
55
private
:
56
std::vector<VetoHit>
hits_
;
57
Configuration
configuration_
;
58
int
station_
;
59
};
60
}
61
}
62
63
#endif
MuFilterHit.h
MuFilter.h
MuFilter
Definition
MuFilter.h:26
snd::analysis_tools::VetoPlane
Definition
sndVetoPlane.h:13
snd::analysis_tools::VetoPlane::station_
int station_
Definition
sndVetoPlane.h:58
snd::analysis_tools::VetoPlane::TimeFilter
void TimeFilter(double min_timestamp, double max_timestamp)
Definition
sndVetoPlane.cxx:70
snd::analysis_tools::VetoPlane::GetNHitBars
const int GetNHitBars() const
Definition
sndVetoPlane.cxx:78
snd::analysis_tools::VetoPlane::GetStation
const int GetStation() const
Definition
sndVetoPlane.h:45
snd::analysis_tools::VetoPlane::hits_
std::vector< VetoHit > hits_
Definition
sndVetoPlane.h:56
snd::analysis_tools::VetoPlane::GetTotQdc
const double GetTotQdc() const
Definition
sndVetoPlane.cxx:49
snd::analysis_tools::VetoPlane::GetHits
const std::vector< VetoHit > GetHits() const
Definition
sndVetoPlane.h:50
snd::analysis_tools::VetoPlane::configuration_
Configuration configuration_
Definition
sndVetoPlane.h:57
snd::analysis_tools::VetoPlane::GetBarNHits
const int GetBarNHits(int bar_to_compute) const
Definition
sndVetoPlane.cxx:63
snd::analysis_tools::VetoPlane::GetNHits
const int GetNHits() const
Definition
sndVetoPlane.h:44
snd::analysis_tools::VetoPlane::GetBarQdc
const double GetBarQdc(int bar_to_compute) const
Definition
sndVetoPlane.cxx:56
snd
Definition
sndAvgDSFiducialCut.cxx:5
sndConfiguration.h
snd::Configuration
Definition
sndConfiguration.h:9
snd::analysis_tools::VetoPlane::VetoHit
Definition
sndVetoPlane.h:26
snd::analysis_tools::VetoPlane::VetoHit::qdc
double qdc
Definition
sndVetoPlane.h:30
snd::analysis_tools::VetoPlane::VetoHit::z
double z
Definition
sndVetoPlane.h:34
snd::analysis_tools::VetoPlane::VetoHit::x
double x
Definition
sndVetoPlane.h:32
snd::analysis_tools::VetoPlane::VetoHit::y
double y
Definition
sndVetoPlane.h:33
snd::analysis_tools::VetoPlane::VetoHit::channel_index
int channel_index
Definition
sndVetoPlane.h:27
snd::analysis_tools::VetoPlane::VetoHit::bar
int bar
Definition
sndVetoPlane.h:28
snd::analysis_tools::VetoPlane::VetoHit::Print
void Print() const
Definition
sndVetoPlane.cxx:87
snd::analysis_tools::VetoPlane::VetoHit::is_x
bool is_x
Definition
sndVetoPlane.h:36
snd::analysis_tools::VetoPlane::VetoHit::timestamp
double timestamp
Definition
sndVetoPlane.h:31
snd::analysis_tools::VetoPlane::VetoHit::is_right
bool is_right
Definition
sndVetoPlane.h:37
snd::analysis_tools::VetoPlane::rl_pair
Definition
sndVetoPlane.h:19
snd::analysis_tools::VetoPlane::rl_pair::left
T left
Definition
sndVetoPlane.h:21
snd::analysis_tools::VetoPlane::rl_pair::right
T right
Definition
sndVetoPlane.h:20
analysis
tools
sndVetoPlane.h
Generated by
1.9.8