SND@LHC Software
Loading...
Searching...
No Matches
MuFilterHit.h
Go to the documentation of this file.
1#ifndef MUFILTERHIT_H
2#define MUFILTERHIT_H 1
3
4#include "SndlhcHit.h"
5#include "MuFilterPoint.h"
6#include "TObject.h"
7#include "TVector3.h"
8#include "MuFilter.h"
9#include <map>
10
11class MuFilterHit : public SndlhcHit
12{
13 public:
14
17 explicit MuFilterHit(Int_t detID);
19 MuFilterHit(Int_t detID,Int_t nP,Int_t nS);
20 MuFilterHit(const MuFilterHit& hit) = default;
21 MuFilterHit& operator=(const MuFilterHit& hit) = default;
22
23 // Constructor from MuFilterPoint
24 MuFilterHit(Int_t detID,std::vector<MuFilterPoint*>);
25
27 virtual ~MuFilterHit();
28
30 void Print() const;
31 Float_t GetEnergy(Bool_t use_small_sipms=kFALSE);
32 std::map<TString,Float_t> SumOfSignals(Bool_t mask=kTRUE);
33 std::map<Int_t,Float_t> GetAllSignals(Bool_t mask=kTRUE, Bool_t positive=kTRUE, Bool_t use_small_sipms=kFALSE, Bool_t use_calibration=kFALSE);
34 std::map<Int_t,Float_t> GetAllTimes(Bool_t mask=kTRUE,Bool_t positive=kTRUE,Bool_t use_small_sipms=kFALSE);
35 Float_t GetDeltaT(Bool_t mask=kTRUE,Bool_t positive=kTRUE,Bool_t use_small_sipms=kFALSE);
36 Float_t GetFastDeltaT(Bool_t mask=kTRUE,Bool_t positive=kTRUE,Bool_t use_small_sipms=kFALSE);
37 Float_t GetImpactT(Bool_t mask=kTRUE,Bool_t positive=kTRUE,Bool_t use_small_sipms=kFALSE);
38 Float_t GetImpactXpos(Bool_t mask=kTRUE,Bool_t positive=kTRUE,Bool_t use_small_sipms=kFALSE,Bool_t isMC=kFALSE);
39 bool isValid() const {return flag;}
40 bool isMasked(Int_t i) const {return fMasked[i];}
41 void SetMasked(Int_t i) {fMasked[i]=kTRUE;}
42 int GetSystem(){return floor(fDetectorID/10000);}
43 int GetPlane(){return int(fDetectorID/1000)%10;}
44 bool isVertical();
45 bool isShort(Int_t);// short==small sipm
46
47 private:
48
49 Float_t flag;
50 Float_t fMasked[16];
51
53};
54
55#endif
MuFilterHit & operator=(const MuFilterHit &hit)=default
std::map< TString, Float_t > SumOfSignals(Bool_t mask=kTRUE)
Float_t GetImpactT(Bool_t mask=kTRUE, Bool_t positive=kTRUE, Bool_t use_small_sipms=kFALSE)
std::map< Int_t, Float_t > GetAllTimes(Bool_t mask=kTRUE, Bool_t positive=kTRUE, Bool_t use_small_sipms=kFALSE)
Float_t GetImpactXpos(Bool_t mask=kTRUE, Bool_t positive=kTRUE, Bool_t use_small_sipms=kFALSE, Bool_t isMC=kFALSE)
MuFilterHit(const MuFilterHit &hit)=default
bool isValid() const
Definition MuFilterHit.h:39
Float_t GetFastDeltaT(Bool_t mask=kTRUE, Bool_t positive=kTRUE, Bool_t use_small_sipms=kFALSE)
int GetPlane()
Definition MuFilterHit.h:43
virtual ~MuFilterHit()
Float_t fMasked[16]
Definition MuFilterHit.h:50
bool isShort(Int_t)
bool isMasked(Int_t i) const
Definition MuFilterHit.h:40
int GetSystem()
Definition MuFilterHit.h:42
bool isVertical()
Float_t flag
flag
Definition MuFilterHit.h:49
ClassDef(MuFilterHit, 6)
masked signal
Float_t GetDeltaT(Bool_t mask=kTRUE, Bool_t positive=kTRUE, Bool_t use_small_sipms=kFALSE)
void Print() const
Float_t GetEnergy(Bool_t use_small_sipms=kFALSE)
std::map< Int_t, Float_t > GetAllSignals(Bool_t mask=kTRUE, Bool_t positive=kTRUE, Bool_t use_small_sipms=kFALSE, Bool_t use_calibration=kFALSE)
void SetMasked(Int_t i)
Definition MuFilterHit.h:41
Int_t fDetectorID
Detector unique identifier.
Definition SndlhcHit.h:72