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:
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)
virtual ~BmnFHCal()
BmnFHCalPoint * AddHit(BmnFHCalPoint *point)
virtual void BeginEvent() override
BmnFHCalPoint * GetHit(uint32_t address)
virtual Bool_t ProcessHits(FairVolume *vol=nullptr) override
virtual void Initialize() override
virtual void Print(Option_t *) const override
virtual Bool_t CheckIfSensitive(std::string name) override
void UpdateHit(BmnFHCalPoint &existing, const BmnFHCalPoint &update)
BmnFHCal(const char *name, Bool_t active)
virtual void ConstructGeometry() override
virtual void Register() override
virtual void EndOfEvent() override
virtual void Reset() override
virtual TClonesArray * GetCollection(Int_t iColl) const override