Analysis Software
Documentation for
sPHENIX
simulation software
Home page
Related Pages
Modules
Namespaces
Classes
Files
Examples
External Links
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
MicromegasMapping.h
Go to the documentation of this file.
Or view
the newest version in sPHENIX GitHub for file MicromegasMapping.h
1
#ifndef MICROMEGAS_MICROMEGASMAPPING_H
2
#define MICROMEGAS_MICROMEGASMAPPING_H
3
9
#include "
MicromegasDefs.h
"
10
11
#include <
trackbase/TrkrDefs.h
>
12
13
#include <array>
14
#include <map>
15
#include <string>
16
#include <vector>
17
19
class
MicromegasMapping
20
{
21
public
:
22
24
MicromegasMapping
();
25
27
std::vector<int>
get_fee_id_list
()
const
;
28
30
TrkrDefs::hitsetkey
get_hitsetkey
(
int
/*fee_id*/
)
const
;
31
33
34
std::string
get_detname_saclay
(
int
/*fee_id*/
)
const
;
35
37
38
std::string
get_detname_sphenix
(
int
/*fee_id*/
)
const
;
39
41
46
int
get_physical_strip
(
int
/*fee_id*/
,
int
/*channel_id*/
)
const
;
47
49
std::string
get_detname_saclay_from_hitsetkey
(
TrkrDefs::hitsetkey
)
const
;
50
52
std::string
get_detname_sphenix_from_hitsetkey
(
TrkrDefs::hitsetkey
)
const
;
53
54
private
:
55
57
void
construct_channel_mapping
();
58
60
63
class
DetectorId
64
{
65
public
:
66
68
DetectorId
(
69
int
fee_id,
TrkrDefs::hitsetkey
hitsetkey
,
70
const
std::string
&fibername,
const
std::string
&breakoutname,
71
const
std::string
& detname_saclay,
const
std::string
& detname_sphenix ):
72
m_fee_id
( fee_id ),
73
m_hitsetkey
( hitsetkey ),
74
m_fibername
( fibername ),
75
m_breakoutname
( breakoutname ),
76
m_detname_saclay
( detname_saclay ),
77
m_detname_sphenix
( detname_sphenix )
78
{}
79
81
int
m_fee_id
= 0;
82
84
TrkrDefs::hitsetkey
m_hitsetkey
= 0;
85
87
std::string
m_fibername
;
88
90
std::string
m_breakoutname
;
91
93
std::string
m_detname_saclay
;
94
96
std::string
m_detname_sphenix
;
97
};
98
100
std::vector<DetectorId>
m_detectors
;
101
103
std::map<int, DetectorId>
m_detector_map
;
104
106
std::array<int, MicromegasDefs::m_nchannels_fee>
m_fee_to_strip_mapping_z
= {{0}};
107
109
std::array<int, MicromegasDefs::m_nchannels_fee>
m_fee_to_strip_mapping_phi
= {{0}};
110
111
};
112
113
#endif
coresoftware
blob
master
offline
packages
micromegas
MicromegasMapping.h
Built by
Jin Huang
. updated:
Sat Feb 17 2024 22:18:07
using
1.8.2 with
sPHENIX GitHub integration