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
TrkrClusterv4.h
Go to the documentation of this file.
Or view
the newest version in sPHENIX GitHub for file TrkrClusterv4.h
1
7
#ifndef TRACKBASE_TRKRCLUSTERV4_H
8
#define TRACKBASE_TRKRCLUSTERV4_H
9
10
#include "
TrkrCluster.h
"
11
#include "
TrkrDefs.h
"
12
#include <iostream>
13
14
class
PHObject
;
15
22
class
TrkrClusterv4
:
public
TrkrCluster
23
{
24
public
:
25
27
TrkrClusterv4
();
28
30
~TrkrClusterv4
()
override
=
default
;
31
32
// PHObject virtual overloads
33
34
void
identify
(std::ostream&
os
= std::cout)
const override
;
35
void
Reset
()
override
{}
36
int
isValid
()
const override
;
37
PHObject
*
CloneMe
()
const override
{
return
new
TrkrClusterv4
(*
this
); }
38
40
using
PHObject::CopyFrom
;
41
43
void
CopyFrom
(
const
TrkrCluster
& )
override
;
44
46
void
CopyFrom
(
TrkrCluster
*
source
)
override
47
{
CopyFrom
( *source ); }
48
49
//
50
// cluster position
51
//
52
float
getPosition
(
int
coor)
const override
{
return
m_local
[coor]; }
53
void
setPosition
(
int
coor,
float
xi)
override
{
m_local
[coor] = xi; }
54
float
getLocalX
()
const override
{
return
m_local
[0]; }
55
void
setLocalX
(
float
loc0
)
override
{
m_local
[0] =
loc0
; }
56
float
getLocalY
()
const override
{
return
m_local
[1]; }
57
void
setLocalY
(
float
loc1)
override
{
m_local
[1] = loc1; }
58
59
TrkrDefs::subsurfkey
getSubSurfKey
()
const override
{
return
m_subsurfkey
; }
60
void
setSubSurfKey
(
TrkrDefs::subsurfkey
id
)
override
{
m_subsurfkey
=
id
; }
61
62
//
63
// cluster info
64
//
65
unsigned
int
getAdc
()
const override
{
66
uint8_t
tmp
=
m_adc
;
67
return
tmp
;
68
69
}
70
71
void
setAdc
(
unsigned
int
adc)
override
{
72
uint16_t
tmp
=0;
73
if
(adc>0xff)
74
tmp=0xff;
75
else
76
tmp = adc;
77
m_adc
|=
tmp
;
78
}
79
80
unsigned
int
getMaxAdc
()
const override
{
81
uint8_t
tmp
= (
m_adc
>> 8);
82
unsigned
int
out
= 0;
83
out |=
tmp
;
84
return
out
;
85
}
86
87
void
setMaxAdc
(uint16_t maxadc)
override
{
88
if
(maxadc>0xff)maxadc=0xff;
89
uint16_t
tmp
= (maxadc << 8);
90
m_adc
|=
tmp
;
91
}
92
93
//
94
// convenience interface
95
//
96
float
getRPhiError
()
const override
97
{ std::cout <<
"Deprecated getRPhiError trkrcluster function!"
<<std::endl;
return
NAN;}
98
float
getZError
()
const override
99
{ std::cout <<
"Deprecated getZError trkrcluster function!"
<<std::endl;
return
NAN;}
100
102
float
getX
()
const override
103
{ std::cout <<
"Deprecated getx trkrcluster function!"
<<std::endl;
return
NAN;}
104
float
getY
()
const override
105
{ std::cout <<
"Deprecated gety trkrcluster function!"
<<std::endl;
return
NAN;}
106
float
getZ
()
const override
107
{ std::cout <<
"Deprecated getz trkrcluster function!"
<<std::endl;
return
NAN;}
108
void
setX
(
float
)
override
109
{ std::cout <<
"Deprecated setx trkrcluster function!"
<<std::endl;}
110
void
setY
(
float
)
override
111
{ std::cout <<
"Deprecated sety trkrcluster function!"
<<std::endl;}
112
void
setZ
(
float
)
override
113
{ std::cout <<
"Deprecated setz trkrcluster function!"
<<std::endl;}
114
float
getSize
(
unsigned
int
,
unsigned
int
)
const override
115
{std::cout <<
"Deprecated getsize trkrcluster function!"
<< std::endl;
return
NAN;}
116
void
setSize
(
unsigned
int
,
unsigned
int
,
float
)
override
117
{std::cout <<
"Deprecated setsize trkrcluster function!"
<< std::endl;}
118
float
getError
(
unsigned
int
,
unsigned
int
)
const override
119
{std::cout <<
"Deprecated geterr trkrcluster function!"
<< std::endl;
return
NAN;}
120
void
setError
(
unsigned
int
,
unsigned
int
,
float
)
override
121
{ std::cout <<
"Deprecated seterr trkrcluster function!"
<< std::endl; }
122
123
char
getSize
()
const override
{
return
m_phisize
*
m_zsize
; }
124
// void setSize(char size) { m_size = size; }
125
126
float
getPhiSize
()
const override
{
return
(
float
)
m_phisize
; }
127
void
setPhiSize
(
char
phisize
) {
m_phisize
=
phisize
; }
128
129
float
getZSize
()
const override
{
return
(
float
)
m_zsize
; }
130
void
setZSize
(
char
zsize
) {
m_zsize
=
zsize
; }
131
132
char
getOverlap
()
const override
{
return
m_overlap
; }
133
void
setOverlap
(
char
overlap)
override
{
m_overlap
= overlap; }
134
135
char
getEdge
()
const override
{
return
m_edge
; }
136
void
setEdge
(
char
edge
)
override
{
m_edge
= edge; }
137
138
//float getPhiSize() const override
139
//{ std::cout << "Deprecated size function"<< std::endl; return NAN;}
140
//float getZSize() const override
141
//{std::cout << "Deprecated size function" << std::endl; return NAN;}
142
//float getPhiError() const override
143
//{ std::cout << "Deprecated getPhiError function"<< std::endl; return NAN;}
144
145
protected
:
146
147
float
m_local
[2];
//< 2D local position [cm] 2 * 32 64bit - cumul 1*64
148
TrkrDefs::subsurfkey
m_subsurfkey
;
//< unique identifier for hitsetkey-surface maps 16 bit
149
unsigned
short
int
m_adc
;
//< cluster sum adc 16
150
char
m_phisize
;
// 8bit
151
char
m_zsize
;
// 8bit
152
char
m_overlap
;
// 8bit
153
char
m_edge
;
// 8bit - cumul 2*64
154
155
ClassDefOverride(
TrkrClusterv4
, 2)
156
};
157
158
#endif //TRACKBASE_TRKRCLUSTERV4_H
coresoftware
blob
master
offline
packages
trackbase
TrkrClusterv4.h
Built by
Jin Huang
. updated:
Sat Feb 17 2024 22:18:09
using
1.8.2 with
sPHENIX GitHub integration