ATLAS Offline Software
Loading...
Searching...
No Matches
LArG4H6FrontHit.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3*/
4
5//============================================
6// HEC/EMEC TB FrontHit class
7//
8// information stored:
9// - energy deposition in scintillators
10// - hit position
11// - scintillator ID
12// - mwpc IDs
13// - track ID
14// - particle code in F1/F2
15//============================================
16
17#ifndef LArG4H6FrontHit_h
18#define LArG4H6FrontHit_h 1
19
20#include "CLHEP/Vector/ThreeVector.h"
21#include <vector>
23{
24 public:
26 LArG4H6FrontHit(int sc, double ed);
27 LArG4H6FrontHit(int mw, int x1, int y1);
28 LArG4H6FrontHit(const LArG4H6FrontHit &right) = default;
29// ~LArG4H6FrontHit(){;};
30
31 LArG4H6FrontHit& operator=(const LArG4H6FrontHit &right) = default;
32 int operator==(const LArG4H6FrontHit &right);
33// inline void *operator new(size_t, void* aHit = 0);
34// inline void operator delete(void *aHit);
35
36 void Draw(){;};
37 void Print(){;};
38
39// Set- Get- methods
40 // energy deposit
41 inline void SetEdep(double ed) { m_edep = ed; }
42 inline double GetEdep() const { return m_edep; }
43
44 // position
45 inline void SetPos(const CLHEP::Hep3Vector& p) { m_pos = p; }
46 inline CLHEP::Hep3Vector GetPos() const { return m_pos; }
47
48 // scnum
49 inline void SetSC(int sc) { m_scnum = sc; }
50 inline int GetSC() const { return m_scnum; }
51
52 // mwpcnum , x, y
53 inline void SetMWPC(int mw) { m_mwpcnum = mw; }
54 inline int GetMWPC() const { return m_mwpcnum; }
55 inline void SetX(int x1) { m_x = x1; }
56 inline int GetX() const { return m_x; }
57 inline void SetY(int y1) { m_y = y1; }
58 inline int GetY() const { return m_y; }
59
60 // trackID
61 inline void SetTrackID(int id) { m_track_id = id; }
62 inline int GetTrackID() const { return m_track_id; }
63
64 // particle code
65 inline void SetPcode(int code) { m_pcode = code; }
66 inline int GetPcode() const { return m_pcode; }
67
68 private:
69 double m_edep; // deposited energy in G4 internal units
70 CLHEP::Hep3Vector m_pos; // position of the hit
71 int m_scnum, m_mwpcnum, m_x, m_y; // sci. number, mwpc number, x- or y- wire number
72 int m_track_id; // track id
73 int m_pcode; // particle code
74};
75
76typedef std::vector<LArG4H6FrontHit> LArG4H6FrontHitsCollection;
77
78// extern G4Allocator<LArG4H6FrontHit> LArG4H6FrontHitAllocator;
79
80/*
81inline void* LArG4H6FrontHit::operator new(size_t, void* aHit)
82{
83// void *aHit;
84 aHit = (void *) LArG4H6FrontHitAllocator.MallocSingle();
85 return aHit;
86}
87
88inline void LArG4H6FrontHit::operator delete(void* aHit)
89{
90 LArG4H6FrontHitAllocator.FreeSingle( (LArG4H6FrontHit*) aHit);
91}
92*/
93#endif
std::vector< LArG4H6FrontHit > LArG4H6FrontHitsCollection
static Double_t sc
void SetEdep(double ed)
LArG4H6FrontHit(const LArG4H6FrontHit &right)=default
void SetY(int y1)
int GetTrackID() const
CLHEP::Hep3Vector m_pos
void SetMWPC(int mw)
void SetPcode(int code)
int GetMWPC() const
int GetSC() const
void SetSC(int sc)
int GetPcode() const
CLHEP::Hep3Vector GetPos() const
int operator==(const LArG4H6FrontHit &right)
void SetX(int x1)
double GetEdep() const
void SetPos(const CLHEP::Hep3Vector &p)
LArG4H6FrontHit & operator=(const LArG4H6FrontHit &right)=default
void SetTrackID(int id)