BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
Simulation/BOOST/EmcSim/include/EmcSim/BesEmcDigi.hh
Go to the documentation of this file.
1//---------------------------------------------------------------------------//
2// BOOST --- BESIII Object_Oriented Simulation Tool //
3//---------------------------------------------------------------------------//
4// Description:
5// Author: Hemiao
6// Created: Sep, 2004
7// Modified:
8// Comment:
9//---------------------------------------------------------------------------//
10// $Id: BesEmcDigi.hh
11
12#ifndef BesEmcDigi_h
13#define BesEmcDigi_h 1
14
15#include "BesEmcWaveform.hh"
16#include "G4Allocator.hh"
17#include "G4TDigiCollection.hh"
18#include "G4VDigi.hh"
19
20class BesEmcDigi : public G4VDigi {
21public:
23 virtual ~BesEmcDigi();
24
27
28 virtual BesEmcDigi& operator+=( const BesEmcDigi& );
29 virtual G4int operator==( const BesEmcDigi& ) const;
30 inline void* operator new( size_t );
31 inline void operator delete( void* );
32
33 virtual void Draw();
34 virtual void Print();
35
36public:
38
39public:
40 void SetPartId( G4int id ) { m_partId = id; };
41 void SetThetaNb( G4int nTheta ) { m_nTheta = nTheta; };
42 void SetPhiNb( G4int nPhi ) { m_nPhi = nPhi; };
43 void SetEnergy( G4double energy ) { m_energy = energy; };
44 void SetTime( G4double time ) { m_time = time; };
45 void SetTrackIndex( G4int index ) { m_trackIndex = index; };
46 void SetWaveform( BesEmcWaveform* wave ) { digiWaveform = wave; };
47
48 G4int GetPartId() { return m_partId; };
49 G4int GetThetaNb() { return m_nTheta; };
50 G4int GetPhiNb() { return m_nPhi; };
51 G4double GetEnergy() { return m_energy; };
52 G4double GetTime() { return m_time; };
53 G4int GetTrackIndex() { return m_trackIndex; };
54 BesEmcWaveform* GetWaveform() { return digiWaveform; };
55
56private:
57 BesEmcWaveform* digiWaveform;
58
59private:
60 G4int m_partId;
61 G4int m_nTheta;
62 G4int m_nPhi;
63 G4double m_energy;
64 G4double m_time;
65 G4int m_trackIndex;
66};
67
68typedef G4TDigiCollection<BesEmcDigi> BesEmcDigitsCollection;
69
70extern G4Allocator<BesEmcDigi> BesEmcDigiAllocator;
71
72inline void* BesEmcDigi::operator new( size_t ) {
73 void* aDigi;
74 aDigi = (void*)BesEmcDigiAllocator.MallocSingle();
75 return aDigi;
76}
77
78inline void BesEmcDigi::operator delete( void* aDigi ) {
79 BesEmcDigiAllocator.FreeSingle( (BesEmcDigi*)aDigi );
80}
81
82#endif
Double_t time
G4TDigiCollection< BesEmcDigi > BesEmcDigitsCollection
G4Allocator< BesEmcDigi > BesEmcDigiAllocator
Definition BesEmcDigi.cc:14
************Class m_ypar INTEGER m_KeyWgt INTEGER m_KeyIHVP INTEGER m_KeyGPS INTEGER m_IsBeamPolarized INTEGER m_EvtGenInterface DOUBLE PRECISION m_Emin DOUBLE PRECISION m_sphot DOUBLE PRECISION m_Xenph DOUBLE PRECISION m_q2 DOUBLE PRECISION m_PolBeam2 DOUBLE PRECISION m_xErrPb *COMMON c_KK2f $ !CMS energy average $ !Spin Polarization vector first beam $ !Spin Polarization vector second beam $ !Beam energy spread[GeV] $ !minimum hadronization energy[GeV] $ !input READ never touch them !$ !debug facility $ !maximum weight $ !inverse alfaQED $ !minimum real photon energy
Definition KK2f.h:50
virtual ~BesEmcDigi()
BesEmcDigi(const BesEmcDigi &)
virtual void Print()
const BesEmcDigi & operator=(const BesEmcDigi &)
void MakeWaveform()
virtual void Draw()
virtual BesEmcDigi & operator+=(const BesEmcDigi &)
virtual G4int operator==(const BesEmcDigi &) const