ECCE @ EIC Software
Reference for
ECCE @ 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
PHG4ConeSubsystem.h
Go to the documentation of this file.
Or view
the newest version in sPHENIX GitHub for file PHG4ConeSubsystem.h
1
// Tell emacs that this is a C++ source
2
// -*- C++ -*-.
3
#ifndef G4DETECTORS_PHG4CONESUBSYSTEM_H
4
#define G4DETECTORS_PHG4CONESUBSYSTEM_H
5
6
#include "
PHG4DetectorSubsystem.h
"
7
8
#include <array>
// for array
9
#include <string>
// for string
10
11
class
PHCompositeNode
;
12
class
PHG4ConeDetector
;
13
class
PHG4Detector
;
14
class
PHG4DisplayAction
;
15
class
PHG4SteppingAction
;
16
17
class
PHG4ConeSubsystem
:
public
PHG4DetectorSubsystem
18
{
19
public
:
21
PHG4ConeSubsystem
(
const
std::string&
name
=
"CONE"
,
const
int
layer
= 0);
22
24
~PHG4ConeSubsystem
(
void
)
override
;
25
27
32
int
InitRunSubsystem
(
PHCompositeNode
*)
override
;
33
35
39
int
process_event
(
PHCompositeNode
*)
override
;
40
42
PHG4Detector
*
GetDetector
(
void
)
const override
;
43
PHG4SteppingAction
*
GetSteppingAction
(
void
)
const override
{
return
m_SteppingAction
; };
44
45
PHG4DisplayAction
*
GetDisplayAction
()
const override
{
return
m_DisplayAction
; }
46
void
set_color
(
const
double
red,
const
double
green,
const
double
blue,
const
double
alpha
= 1.)
47
{
48
m_ColorArray
[0] = red;
49
m_ColorArray
[1] = green;
50
m_ColorArray
[2] = blue;
51
m_ColorArray
[3] =
alpha
;
52
}
53
55
void
SetR1
(
const
double
min
,
const
double
max
);
56
58
void
SetR2
(
const
double
min
,
const
double
max
);
59
61
void
SetZlength
(
const
double
a
);
62
64
void
SetPhi
(
const
double
a
,
const
double
b
);
65
67
void
Set_eta_range
(
double
etaMin,
double
etaMax);
68
69
void
SetPlaceZ
(
const
double
dbl);
70
void
SetPlace
(
const
double
place_x,
const
double
place_y,
const
double
place_z
);
71
72
void
SetZRot
(
const
double
dbl);
73
void
SetMaterial
(
const
std::string&
mat
);
74
75
// this method is used to check if it can be used as mothervolume
76
// Subsystems which can be mothervolume need to implement this
77
// and return true
78
bool
CanBeMotherSubsystem
()
const override
{
return
true
; }
79
80
private
:
81
void
SetDefaultParameters
()
override
;
82
84
85
PHG4ConeDetector
*
m_Detector
=
nullptr
;
86
88
89
PHG4SteppingAction
*
m_SteppingAction
=
nullptr
;
90
92
93
PHG4DisplayAction
*
m_DisplayAction
=
nullptr
;
94
96
std::array<double, 4>
m_ColorArray
;
97
};
98
99
#endif // G4DETECTORS_PHG4CONESUBSYSTEM_H
coresoftware
blob
master
simulation
g4simulation
g4detectors
PHG4ConeSubsystem.h
Built by
Jin Huang
. updated:
Wed Jun 29 2022 17:24:41
using
1.8.2 with
ECCE GitHub integration