Loading...
Searching...
No Matches
Public Member Functions | Private Attributes | List of all members
LXePMTHit Class Reference

#include <Doxymodules_optical.h>

Inheritance diagram for LXePMTHit:
G4VHit

Public Member Functions

 LXePMTHit ()=default
 
 LXePMTHit (const LXePMTHit &right)
 
 ~LXePMTHit () override=default
 
const LXePMTHitoperator= (const LXePMTHit &right)
 
G4bool operator== (const LXePMTHit &right) const
 
void * operator new (size_t)
 
void operator delete (void *aHit)
 
void Draw () override
 
void Print () override
 
void SetDrawit (G4bool b)
 
G4bool GetDrawit ()
 
void IncPhotonCount ()
 
G4int GetPhotonCount ()
 
void SetPMTNumber (G4int n)
 
G4int GetPMTNumber ()
 
void SetPMTPhysVol (G4VPhysicalVolume *physVol)
 
G4VPhysicalVolumeGetPMTPhysVol ()
 
void SetPMTPos (G4double x, G4double y, G4double z)
 
G4ThreeVector GetPMTPos ()
 

Private Attributes

G4int fPmtNumber = -1
 
G4int fPhotons = 0
 
G4ThreeVector fPos
 
G4VPhysicalVolumefPhysVol = nullptr
 
G4bool fDrawit = false
 

Detailed Description

Definition at line 56 of file Doxymodules_optical.h.

Constructor & Destructor Documentation

◆ LXePMTHit() [1/2]

LXePMTHit::LXePMTHit ( )
default

◆ LXePMTHit() [2/2]

LXePMTHit::LXePMTHit ( const LXePMTHit right)

Definition at line 44 of file LXePMTHit.cc.

45 : G4VHit()
46{
47 fPmtNumber = right.fPmtNumber;
48 fPhotons = right.fPhotons;
49 fPhysVol = right.fPhysVol;
50 fDrawit = right.fDrawit;
51}
G4int fPmtNumber
Definition LXePMTHit.hh:79
G4VPhysicalVolume * fPhysVol
Definition LXePMTHit.hh:82
G4bool fDrawit
Definition LXePMTHit.hh:83
G4int fPhotons
Definition LXePMTHit.hh:80

◆ ~LXePMTHit()

LXePMTHit::~LXePMTHit ( )
overridedefault

Member Function Documentation

◆ operator=()

const LXePMTHit & LXePMTHit::operator= ( const LXePMTHit right)

Definition at line 55 of file LXePMTHit.cc.

56{
57 fPmtNumber = right.fPmtNumber;
58 fPhotons = right.fPhotons;
59 fPhysVol = right.fPhysVol;
60 fDrawit = right.fDrawit;
61 return *this;
62}

◆ operator==()

G4bool LXePMTHit::operator== ( const LXePMTHit right) const

Definition at line 66 of file LXePMTHit.cc.

67{
68 return (fPmtNumber == right.fPmtNumber);
69}

◆ operator new()

void * LXePMTHit::operator new ( size_t  )
inline

Definition at line 90 of file LXePMTHit.hh.

91{
94 return (void*) LXePMTHitAllocator->MallocSingle();
95}
G4ThreadLocal G4Allocator< LXePMTHit > * LXePMTHitAllocator
Definition LXePMTHit.cc:40

◆ operator delete()

void LXePMTHit::operator delete ( void *  aHit)
inline

Definition at line 97 of file LXePMTHit.hh.

98{
99 LXePMTHitAllocator->FreeSingle((LXePMTHit*) aHit);
100}

◆ Draw()

void LXePMTHit::Draw ( )
override

Definition at line 73 of file LXePMTHit.cc.

74{
75 if(fDrawit && fPhysVol)
76 { // Redraw only the PMTs that have hit counts > 0
77 // Also need a physical volume to be able to draw anything
78 G4VVisManager* pVVisManager = G4VVisManager::GetConcreteInstance();
79 if(pVVisManager)
80 { // Make sure that the VisManager exists
81 G4VisAttributes attribs(G4Colour(1., 0., 0.));
82 attribs.SetForceSolid(true);
83 G4RotationMatrix rot;
84 if(fPhysVol->GetRotation()) // If a rotation is defined use it
85 rot = *(fPhysVol->GetRotation());
86 G4Transform3D trans(rot, fPhysVol->GetTranslation()); // Create transform
87 pVVisManager->Draw(*fPhysVol, attribs, trans); // Draw it
88 }
89 }
90}

◆ Print()

void LXePMTHit::Print ( )
override

Definition at line 94 of file LXePMTHit.cc.

94{}

◆ SetDrawit()

void LXePMTHit::SetDrawit ( G4bool  b)
inline

Definition at line 56 of file LXePMTHit.hh.

56{ fDrawit = b; }

◆ GetDrawit()

G4bool LXePMTHit::GetDrawit ( )
inline

Definition at line 57 of file LXePMTHit.hh.

57{ return fDrawit; }

◆ IncPhotonCount()

void LXePMTHit::IncPhotonCount ( )
inline

Definition at line 59 of file LXePMTHit.hh.

59{ ++fPhotons; }

◆ GetPhotonCount()

G4int LXePMTHit::GetPhotonCount ( )
inline

Definition at line 60 of file LXePMTHit.hh.

60{ return fPhotons; }

◆ SetPMTNumber()

void LXePMTHit::SetPMTNumber ( G4int  n)
inline

Definition at line 62 of file LXePMTHit.hh.

62{ fPmtNumber = n; }

◆ GetPMTNumber()

G4int LXePMTHit::GetPMTNumber ( )
inline

Definition at line 63 of file LXePMTHit.hh.

63{ return fPmtNumber; }

◆ SetPMTPhysVol()

void LXePMTHit::SetPMTPhysVol ( G4VPhysicalVolume physVol)
inline

Definition at line 65 of file LXePMTHit.hh.

66 {
67 fPhysVol = physVol;
68 }

◆ GetPMTPhysVol()

G4VPhysicalVolume * LXePMTHit::GetPMTPhysVol ( )
inline

Definition at line 69 of file LXePMTHit.hh.

69{ return fPhysVol; }

◆ SetPMTPos()

void LXePMTHit::SetPMTPos ( G4double  x,
G4double  y,
G4double  z 
)
inline

Definition at line 71 of file LXePMTHit.hh.

72 {
73 fPos = G4ThreeVector(x, y, z);
74 }
G4ThreeVector fPos
Definition LXePMTHit.hh:81

◆ GetPMTPos()

G4ThreeVector LXePMTHit::GetPMTPos ( )
inline

Definition at line 76 of file LXePMTHit.hh.

76{ return fPos; }

Member Data Documentation

◆ fPmtNumber

G4int LXePMTHit::fPmtNumber = -1
private

Definition at line 79 of file LXePMTHit.hh.

◆ fPhotons

G4int LXePMTHit::fPhotons = 0
private

Definition at line 80 of file LXePMTHit.hh.

◆ fPos

G4ThreeVector LXePMTHit::fPos
private

Definition at line 81 of file LXePMTHit.hh.

◆ fPhysVol

G4VPhysicalVolume* LXePMTHit::fPhysVol = nullptr
private

Definition at line 82 of file LXePMTHit.hh.

◆ fDrawit

G4bool LXePMTHit::fDrawit = false
private

Definition at line 83 of file LXePMTHit.hh.


The documentation for this class was generated from the following files:

Applications | User Support | Publications | Collaboration