EIC Software
Reference for
EIC
simulation and reconstruction software on GitHub
Home page
Related Pages
Modules
Namespaces
Classes
Files
External Links
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
EicRootSubsystem.h
Go to the documentation of this file.
Or view
the newest version in sPHENIX GitHub for file EicRootSubsystem.h
1
// Tell emacs that this is a C++ source
2
// -*- C++ -*-.
3
#ifndef _EICROOT_SUBSYSTEM_
4
#define _EICROOT_SUBSYSTEM_
5
6
#include <vector>
7
#include <map>
8
9
#include <
g4detectors/PHG4DetectorSubsystem.h
>
10
11
class
EicRootDetector
;
12
class
PHCompositeNode
;
13
class
PHG4Detector
;
14
class
PHG4SteppingAction
;
15
16
class
G4LogicalVolume;
17
class
G4VPhysicalVolume;
18
19
class
EicRootSubsystem
:
public
PHG4DetectorSubsystem
20
{
21
public
:
22
// ctor & dtor;
23
EicRootSubsystem
(
const
std::string&
name
);
24
~EicRootSubsystem
() {};
25
26
// Initialization;
27
int
InitRunSubsystem
(
PHCompositeNode
*)
override
;
28
29
// Event processing;
30
int
process_event
(
PHCompositeNode
*)
override
;
31
32
// Accessor (reimplemented)
33
PHG4Detector
*
GetDetector
()
const override
;
34
35
PHG4SteppingAction
*
GetSteppingAction
()
const override
{
return
m_SteppingAction
; }
36
37
// Print info (from SubsysReco);
38
void
Print
(
const
std::string& what =
"ALL"
)
const override
;
39
40
const
std::string &
GetG4HitName
(
void
)
const
{
return
m_G4HitName
; };
41
42
// These two methods will be available after inheritance from EicGeoParData;
43
virtual
void
PlaceG4Volume
(G4LogicalVolume *mother,
bool
check =
false
,
44
void
*pRot = 0,
void
*tlate = 0) = 0;
45
virtual
const
std::map<G4VPhysicalVolume*, unsigned> &
GetG4SensitiveVolumes
(
void
)
const
= 0;
46
47
protected
:
48
// Sets default parameter values;
49
void
SetDefaultParameters
()
override
;
50
51
private
:
52
// Detector construction;
53
EicRootDetector
*
m_Detector
;
54
55
// G4 hit "name", like G4HIT_VST;
56
std::string
m_G4HitName
;
57
58
// Stepping function;
59
PHG4SteppingAction
*
m_SteppingAction
;
60
};
61
62
#endif
EicToyModel
blob
master
fun4all_with_eicroot
sandbox
EicRootSubsystem.h
Built by
Jin Huang
. updated:
Mon Jan 22 2024 12:43:37
using
1.8.2 with
EIC GitHub integration