BmnRoot
Loading...
Searching...
No Matches
BmnFHCal.h
Go to the documentation of this file.
1#ifndef BMNFHCAL_H
2#define BMNFHCAL_H
3
4#include "BmnFHCalGeo.h"
5#include "BmnFHCalGeoPar.h"
6#include "BmnFHCalPoint.h"
7#include "FairDetector.h"
8#include "TClonesArray.h"
9#include "TLorentzVector.h"
10#include "TVector3.h"
11
12#include <map>
13#include <string>
14#include <unordered_map>
15
16class BmnFHCal : public FairDetector
17{
18 public:
20 BmnFHCal();
21
26 BmnFHCal(const char* name, Bool_t active);
27
29 virtual ~BmnFHCal();
30
32 virtual void Initialize() override;
33
38 virtual Bool_t ProcessHits(FairVolume* vol = nullptr) override;
39
41 virtual void EndOfEvent() override;
42
44 virtual void BeginEvent() override;
45
47 virtual void Register() override;
48
53 virtual TClonesArray* GetCollection(Int_t iColl) const override;
54
56 virtual void Print(Option_t*) const override;
57
59 virtual void Reset() override;
60
62 virtual void ConstructGeometry() override;
63
68 virtual Bool_t CheckIfSensitive(std::string name) override;
69
75
81 void UpdateHit(BmnFHCalPoint& existing, const BmnFHCalPoint& update);
82
87 BmnFHCalPoint* GetHit(uint32_t address);
88
94 int GetSurfaceMCTrack(int start_track_id);
95
96 private:
97 TClonesArray* fCollection; // Collection of hits for the event
98 std::unique_ptr<BmnFHCalGeo> fGeoHandler; // Pointer to the geometry handler
99 std::unique_ptr<BmnFHCalPoint> fPoint; // Temp storage for the current hit being processed
100 std::map<uint32_t, FairMultiLinkedData> fMultiLinkMap;
101
102 ClassDefOverride(BmnFHCal, 4)
103};
104
105#endif
int GetSurfaceMCTrack(int start_track_id)
Definition BmnFHCal.cxx:277
BmnFHCalPoint * AddHit(BmnFHCalPoint *point)
Definition BmnFHCal.cxx:237
BmnFHCalPoint * GetHit(uint32_t address)
Definition BmnFHCal.cxx:61
virtual ~BmnFHCal()
Definition BmnFHCal.cxx:35
virtual void Reset() override
Definition BmnFHCal.cxx:182
virtual void Print(Option_t *) const override
Definition BmnFHCal.cxx:168
virtual void ConstructGeometry() override
Definition BmnFHCal.cxx:188
void UpdateHit(BmnFHCalPoint &existing, const BmnFHCalPoint &update)
Definition BmnFHCal.cxx:244
virtual void EndOfEvent() override
Definition BmnFHCal.cxx:136
virtual void Initialize() override
Definition BmnFHCal.cxx:49
virtual void Register() override
Definition BmnFHCal.cxx:143
virtual void BeginEvent() override
Definition BmnFHCal.cxx:55
virtual TClonesArray * GetCollection(Int_t iColl) const override
Definition BmnFHCal.cxx:149
virtual Bool_t ProcessHits(FairVolume *vol=nullptr) override
Definition BmnFHCal.cxx:80
virtual Bool_t CheckIfSensitive(std::string name) override
Definition BmnFHCal.cxx:230