EM Calorimeter hit.
More...
#include <Doxymodules_basic.h>
EM Calorimeter hit.
It records:
- the cell ID
- the energy deposit
- the cell logical volume, its position and rotation
Definition at line 189 of file Doxymodules_basic.h.
◆ EmCalorimeterHit() [1/3]
B5::EmCalorimeterHit::EmCalorimeterHit |
( |
| ) |
|
|
default |
◆ EmCalorimeterHit() [2/3]
B5::EmCalorimeterHit::EmCalorimeterHit |
( |
G4int |
cellID | ) |
|
◆ EmCalorimeterHit() [3/3]
◆ ~EmCalorimeterHit()
B5::EmCalorimeterHit::~EmCalorimeterHit |
( |
| ) |
|
|
overridedefault |
◆ operator=()
◆ operator==()
◆ operator new()
void * B5::EmCalorimeterHit::operator new |
( |
size_t |
| ) |
|
|
inline |
Definition at line 101 of file EmCalorimeterHit.hh.
102{
105 }
107}
G4ThreadLocal G4Allocator< EmCalorimeterHit > * EmCalorimeterHitAllocator
◆ operator delete()
void B5::EmCalorimeterHit::operator delete |
( |
void * |
aHit | ) |
|
|
inline |
◆ Draw()
void B5::EmCalorimeterHit::Draw |
( |
| ) |
|
|
override |
Definition at line 65 of file EmCalorimeterHit.cc.
66{
67 auto visManager = G4VVisManager::GetConcreteInstance();
68 if ( ! visManager || (
fEdep==0.) )
return;
69
70
71 G4Transform3D trans(
fRot.inverse(),
fPos);
73 auto pVA =
fPLogV->GetVisAttributes();
74 if (pVA) attribs = *pVA;
75 auto rcol =
fEdep/(0.7*GeV);
76 if (rcol>1.) rcol = 1.;
77 if (rcol<0.4) rcol = 0.4;
79 attribs.SetColour(colour);
80 attribs.SetForceSolid(true);
81 visManager->Draw(*
fPLogV,attribs,trans);
82}
const G4LogicalVolume * fPLogV
◆ GetAttDefs()
const std::map< G4String, G4AttDef > * B5::EmCalorimeterHit::GetAttDefs |
( |
| ) |
const |
|
override |
Definition at line 86 of file EmCalorimeterHit.cc.
87{
88 G4bool isNew;
89 auto store = G4AttDefStore::GetInstance("EmCalorimeterHit",isNew);
90
91 if (isNew) {
92 (*store)["HitType"]
93 =
G4AttDef(
"HitType",
"Hit Type",
"Physics",
"",
"G4String");
94
95 (*store)["ID"]
96 =
G4AttDef(
"ID",
"ID",
"Physics",
"",
"G4int");
97
98 (*store)["Energy"]
99 =
G4AttDef(
"Energy",
"Energy Deposited",
"Physics",
"G4BestUnit",
100 "G4double");
101
102 (*store)["Pos"]
103 =
G4AttDef(
"Pos",
"Position",
"Physics",
"G4BestUnit",
104 "G4ThreeVector");
105
106 (*store)["LVol"]
107 =
G4AttDef(
"LVol",
"Logical Volume",
"Physics",
"",
"G4String");
108 }
109 return store;
110}
◆ CreateAttValues()
std::vector< G4AttValue > * B5::EmCalorimeterHit::CreateAttValues |
( |
| ) |
const |
|
override |
Definition at line 114 of file EmCalorimeterHit.cc.
115{
116 auto values = new std::vector<G4AttValue>;
117
118 values
119 ->push_back(
G4AttValue(
"HitType",
"EmCalorimeterHit",
""));
120 values
122 values
124 values
126
129 else
131
132 return values;
133}
◆ Print()
void B5::EmCalorimeterHit::Print |
( |
| ) |
|
|
override |
◆ SetCellID()
void B5::EmCalorimeterHit::SetCellID |
( |
G4int |
z | ) |
|
|
inline |
◆ GetCellID()
G4int B5::EmCalorimeterHit::GetCellID |
( |
| ) |
const |
|
inline |
◆ SetEdep()
void B5::EmCalorimeterHit::SetEdep |
( |
G4double |
de | ) |
|
|
inline |
◆ AddEdep()
void B5::EmCalorimeterHit::AddEdep |
( |
G4double |
de | ) |
|
|
inline |
◆ GetEdep()
G4double B5::EmCalorimeterHit::GetEdep |
( |
| ) |
const |
|
inline |
◆ SetPos()
void B5::EmCalorimeterHit::SetPos |
( |
G4ThreeVector |
xyz | ) |
|
|
inline |
◆ GetPos()
G4ThreeVector B5::EmCalorimeterHit::GetPos |
( |
| ) |
const |
|
inline |
◆ SetRot()
void B5::EmCalorimeterHit::SetRot |
( |
G4RotationMatrix |
rmat | ) |
|
|
inline |
◆ GetRot()
G4RotationMatrix B5::EmCalorimeterHit::GetRot |
( |
| ) |
const |
|
inline |
◆ SetLogV()
◆ GetLogV()
◆ fCellID
G4int B5::EmCalorimeterHit::fCellID = -1 |
|
private |
◆ fEdep
G4double B5::EmCalorimeterHit::fEdep = 0. |
|
private |
◆ fPos
G4ThreeVector B5::EmCalorimeterHit::fPos |
|
private |
◆ fRot
G4RotationMatrix B5::EmCalorimeterHit::fRot |
|
private |
◆ fPLogV
The documentation for this class was generated from the following files: