Belle II Software development
SVDTransparentDigit Class Reference

The SVD digit class. More...

#include <SVDTransparentDigit.h>

Inheritance diagram for SVDTransparentDigit:
RelationsInterface< BASE >

Public Member Functions

 SVDTransparentDigit (const VxdID sensorID, const bool isU, const unsigned short fadcID, const unsigned short apvID, const unsigned short nSample=0, const short **adc=nullptr, const short *cmc1=nullptr, const short *cmc2=nullptr, const short **corradc=nullptr, const short **fine_cmc1=nullptr, const short **fine_cmc2=nullptr, const short **fine_corradc=nullptr)
 Useful Constructor.
 
 SVDTransparentDigit ()
 Default constructor for the ROOT IO.
 
VxdID getSensorID () const
 Get the sensor ID.
 
bool isUStrip () const
 Get strip direction.
 
unsigned short getFadcID () const
 Get FADC ID.
 
unsigned short getApvID () const
 Get APV ID.
 
unsigned short getNSample () const
 Get number of samples.
 
const short * getADC (short channel) const
 Get ADC value.
 
short getADC (short channel, short index) const
 Get ADC value.
 
const short * getCMC1 () const
 Get 1st commom-mode correction value.
 
short getCMC1 (short index) const
 Get 1st commom-mode correction value.
 
const short * getCMC2 () const
 Get 2nd commom-mode correction value.
 
short getCMC2 (short index) const
 Get 2nd commom-mode correction value.
 
const short * getCMC () const
 Get total commom-mode correction value.
 
short getCMC (short index) const
 Get total commom-mode correction value.
 
const short * getFineCMC1 (short channel) const
 Get 1st fine commom-mode correction value.
 
short getFineCMC1 (short channel, short index) const
 Get 1st fine commom-mode correction value.
 
const short * getFineCMC2 (short channel) const
 Get 2nd fine commom-mode correction value.
 
short getFineCMC2 (short channel, short index) const
 Get 2nd fine commom-mode correction value.
 
const short * getFineCMC (short channel) const
 Get total fine commom-mode correction value.
 
short getFineCMC (short channel, short index) const
 Get total fine commom-mode correction value.
 
const short * getCorrADC (short channel) const
 Get corrected ADC value with pedestal and common-mode.
 
short getCorrADC (short channel, short index) const
 Get corrected ADC value with pedestal and common-mode.
 
const short * getFineCorrADC (short channel) const
 Get precisely corrected ADC value with pedestal and fine common-mode.
 
short getFineCorrADC (short channel, short index) const
 Get precisely corrected ADC value with pedestal and fine common-mode.
 
void setSensorID (VxdID vxdid)
 Set the sensor ID.
 
void setUStrip (bool isu)
 Set strip direction.
 
void setFadcID (unsigned short fadcID)
 Set FADC ID.
 
void setApvID (unsigned short apvID)
 Set APV ID.
 
void setNSample (unsigned short nSample)
 Set number of samples.
 
void setADC (short **adc)
 Set ADC values.
 
void setADC (short *adc, short channel)
 Set ADC values.
 
void setADC (short adc, short channel, short index)
 Set ADC values.
 
void setCMC1 (short *cmc1)
 Set 1st commom-mode correction value.
 
void setCMC1 (short cmc1, int index)
 Set 1st commom-mode correction value.
 
void setCMC2 (short *cmc2)
 Set 2nd commom-mode correction value.
 
void setCMC2 (short cmc2, int index)
 Set 2nd commom-mode correction value.
 
void setCMC (short *cmc)
 Set Total commom-mode correction value.
 
void setCMC (short cmc, int index)
 Set Total commom-mode correction value.
 
void setFineCMC1 (short **fine_cmc1)
 Set channel-dependent 1st CMC values.
 
void setFineCMC1 (short *fine_cmc1, short channel)
 Set channel-dependent 1st CMC values.
 
void setFineCMC1 (short fine_cmc1, short channel, short index)
 Set channel-dependent 1st CMC values.
 
void setFineCMC2 (short **fine_cmc2)
 Set channel-dependent 2nd CMC values.
 
void setFineCMC2 (short *fine_cmc2, short channel)
 Set channel-dependent 2nd CMC values.
 
void setFineCMC2 (short fine_cmc2, short channel, short index)
 Set channel-dependent 2nd CMC values.
 
void setFineCMC (short **fine_cmc)
 Set CMC values.
 
void setFineCMC (short *fine_cmc, short channel)
 Set channel-dependent CMC values.
 
void setFineCMC (short fine_cmc, short channel, short index)
 Set channel-dependent CMC values.
 
void setCorrADC (short **corradc)
 Set corrected ADC values.
 
void setCorrADC (short *corradc, short channel)
 Set corrected ADC values.
 
void setCorrADC (short corradc, short channel, short index)
 Set corrected ADC values.
 
void setFineCorrADC (short **corradc)
 Set precisely corrected ADC values.
 
void setFineCorrADC (short *corradc, short channel)
 Set precisely corrected ADC values.
 
void setFineCorrADC (short corradc, short channel, short index)
 Set precisely corrected ADC values.
 
std::string print ()
 Display main parameters in this object.
 
void addRelationTo (const RelationsInterface< BASE > *object, float weight=1.0, const std::string &namedRelation="") const
 Add a relation from this object to another object (with caching).
 
void addRelationTo (const TObject *object, float weight=1.0, const std::string &namedRelation="") const
 Add a relation from this object to another object (no caching, can be quite slow).
 
void copyRelations (const RelationsInterface< BASE > *sourceObj)
 Copies all relations of sourceObj (pointing from or to sourceObj) to this object (including weights).
 
template<class TO >
RelationVector< TO > getRelationsTo (const std::string &name="", const std::string &namedRelation="") const
 Get the relations that point from this object to another store array.
 
template<class FROM >
RelationVector< FROM > getRelationsFrom (const std::string &name="", const std::string &namedRelation="") const
 Get the relations that point from another store array to this object.
 
template<class T >
RelationVector< T > getRelationsWith (const std::string &name="", const std::string &namedRelation="") const
 Get the relations between this object and another store array.
 
template<class TO >
TO * getRelatedTo (const std::string &name="", const std::string &namedRelation="") const
 Get the object to which this object has a relation.
 
template<class FROM >
FROM * getRelatedFrom (const std::string &name="", const std::string &namedRelation="") const
 Get the object from which this object has a relation.
 
template<class T >
T * getRelated (const std::string &name="", const std::string &namedRelation="") const
 Get the object to or from which this object has a relation.
 
template<class TO >
std::pair< TO *, float > getRelatedToWithWeight (const std::string &name="", const std::string &namedRelation="") const
 Get first related object & weight of relation pointing to an array.
 
template<class FROM >
std::pair< FROM *, float > getRelatedFromWithWeight (const std::string &name="", const std::string &namedRelation="") const
 Get first related object & weight of relation pointing from an array.
 
template<class T >
std::pair< T *, float > getRelatedWithWeight (const std::string &name="", const std::string &namedRelation="") const
 Get first related object & weight of relation pointing from/to an array.
 
virtual std::string getName () const
 Return a short name that describes this object, e.g.
 
virtual std::string getInfoHTML () const
 Return a short summary of this object's contents in HTML format.
 
std::string getInfo () const
 Return a short summary of this object's contents in raw text format.
 
std::string getArrayName () const
 Get name of array this object is stored in, or "" if not found.
 
int getArrayIndex () const
 Returns this object's array index (in StoreArray), or -1 if not found.
 

Protected Member Functions

TClonesArray * getArrayPointer () const
 Returns the pointer to the raw DataStore array holding this object (protected since these arrays are easy to misuse).
 

Private Member Functions

 ClassDef (RelationsInterface, 0)
 defines interface for accessing relations of objects in StoreArray.
 

Private Attributes

unsigned short m_sensorID
 Compressed sensor identifier.
 
bool m_isU
 True if U, false if V.
 
unsigned short m_fadcID
 FADC ID.
 
unsigned short m_apvID
 APV25 ID.
 
unsigned short m_nSample
 Number of samples.
 
short m_ADC [128][6]
 ADC values of strip signal.
 
short m_cmc1 [6]
 1st common-mode correction values.
 
short m_cmc2 [6]
 2nd common-mode correction values.
 
short m_cmc [6]
 total common-mode correction values.
 
short m_fine_cmc1 [128][6]
 Channel-dependent 1st common-mode correction values.
 
short m_fine_cmc2 [128][6]
 Channel-dependent 2nd common-mode correction values.
 
short m_fine_cmc [128][6]
 Channel-dependent total common-mode correction values.
 
short m_corrADC [128][6]
 ADC values of strip signal corrected by pedestal and commom-mode.
 
short m_fine_corrADC [128][6]
 ADC values of strip signal precisely corrected by pedestal and fine commom-mode.
 
DataStore::StoreEntrym_cacheDataStoreEntry
 Cache of the data store entry to which this object belongs.
 
int m_cacheArrayIndex
 Cache of the index in the TClonesArray to which this object belongs.
 

Detailed Description

The SVD digit class.

The SVDTransparentDigit is an APV25 signal sample. This is a development implementation which is intentionally kept somewhat bulky. I record strip coordinates that won't be kept in future. Also the sensor and ncell IDs could be somewhat compressed, if desired.

Definition at line 34 of file SVDTransparentDigit.h.

Constructor & Destructor Documentation

◆ SVDTransparentDigit() [1/2]

SVDTransparentDigit ( const VxdID  sensorID,
const bool  isU,
const unsigned short  fadcID,
const unsigned short  apvID,
const unsigned short  nSample = 0,
const short **  adc = nullptr,
const short *  cmc1 = nullptr,
const short *  cmc2 = nullptr,
const short **  corradc = nullptr,
const short **  fine_cmc1 = nullptr,
const short **  fine_cmc2 = nullptr,
const short **  fine_corradc = nullptr 
)
inline

Useful Constructor.

Parameters
sensorIDSensor compact ID.
isUTrue if u strip, false if v.
fadcID
apvID
nSample
adc
cmc1
cmc2
corradc
fine_cmc1
fine_cmc2
fine_corradc

Definition at line 52 of file SVDTransparentDigit.h.

63 : m_sensorID(sensorID), m_isU(isU),
64 m_fadcID(fadcID), m_apvID(apvID), m_nSample(nSample)
65 {
66 if (adc != nullptr) {
67 for (int channel = 0; channel < 128; channel++) {
68 //for(int index=0;index<SVDPar::maxSample;index++) {
69 for (int index = 0; index < 6; index++) {
70 m_ADC[channel][index] = adc[channel][index];
71 }
72 }
73 } else {
74 memset(m_ADC, 0, sizeof(m_ADC));
75 }
76
77 if (cmc1 != nullptr) {
78 //for(int index=0;index<SVDPar::maxSample;index++) {
79 for (int index = 0; index < 6; index++) {
80 m_cmc1[index] = cmc1[index];
81 }
82 } else {
83 memset(m_cmc1, 0, sizeof(m_cmc1));
84 }
85
86 if (cmc2 != nullptr) {
87 //for(int index=0;index<SVDPar::maxSample;index++) {
88 for (int index = 0; index < 6; index++) {
89 m_cmc2[index] = cmc2[index];
90 }
91 } else {
92 memset(m_cmc2, 0, sizeof(m_cmc2));
93 }
94
95 if (corradc != nullptr) {
96 for (int channel = 0; channel < 128; channel++) {
97 //for(int index=0;index<SVDPar::maxSample;index++) {
98 for (int index = 0; index < 6; index++) {
99 m_corrADC[channel][index] = corradc[channel][index];
100 }
101 }
102 } else {
103 memset(m_corrADC, 0, sizeof(m_corrADC));
104 }
105
106 if (fine_cmc1 != nullptr) {
107 for (int channel = 0; channel < 128; channel++) {
108 //for(int index=0;index<SVDPar::maxSample;index++) {
109 for (int index = 0; index < 6; index++) {
110 m_fine_cmc1[channel][index] = fine_cmc1[channel][index];
111 }
112 }
113 } else {
114 memset(m_fine_cmc1, 0, sizeof(m_fine_cmc1));
115 }
116
117 if (fine_cmc2 != nullptr) {
118 for (int channel = 0; channel < 128; channel++) {
119 //for(int index=0;index<SVDPar::maxSample;index++) {
120 for (int index = 0; index < 6; index++) {
121 m_fine_cmc2[channel][index] = fine_cmc2[channel][index];
122 }
123 }
124 } else {
125 memset(m_fine_cmc2, 0, sizeof(m_fine_cmc2));
126 }
127
128 if (fine_corradc != nullptr) {
129 for (int channel = 0; channel < 128; channel++) {
130 //for(int index=0;index<SVDPar::maxSample;index++) {
131 for (int index = 0; index < 6; index++) {
132 m_fine_corrADC[channel][index] = fine_corradc[channel][index];
133 }
134 }
135 } else {
136 memset(m_fine_corrADC, 0, sizeof(m_fine_corrADC));
137 }
138 memset(m_cmc, 0, sizeof(m_cmc));
139 memset(m_fine_cmc, 0, sizeof(m_fine_cmc));
140 }
short m_fine_cmc[128][6]
Channel-dependent total common-mode correction values.
unsigned short m_apvID
APV25 ID.
unsigned short m_nSample
Number of samples.
short m_cmc2[6]
2nd common-mode correction values.
bool m_isU
True if U, false if V.
unsigned short m_sensorID
Compressed sensor identifier.
short m_fine_cmc1[128][6]
Channel-dependent 1st common-mode correction values.
unsigned short m_fadcID
FADC ID.
short m_corrADC[128][6]
ADC values of strip signal corrected by pedestal and commom-mode.
short m_fine_corrADC[128][6]
ADC values of strip signal precisely corrected by pedestal and fine commom-mode.
short m_ADC[128][6]
ADC values of strip signal.
short m_cmc1[6]
1st common-mode correction values.
short m_fine_cmc2[128][6]
Channel-dependent 2nd common-mode correction values.
short m_cmc[6]
total common-mode correction values.

◆ SVDTransparentDigit() [2/2]

SVDTransparentDigit ( )
inline

Default constructor for the ROOT IO.

Definition at line 143 of file SVDTransparentDigit.h.

144 : SVDTransparentDigit(0, true, 0, 0, 0, nullptr, nullptr, nullptr, nullptr)
145 {}
SVDTransparentDigit()
Default constructor for the ROOT IO.

Member Function Documentation

◆ addRelationTo() [1/2]

void addRelationTo ( const RelationsInterface< BASE > *  object,
float  weight = 1.0,
const std::string &  namedRelation = "" 
) const
inlineinherited

Add a relation from this object to another object (with caching).

Parameters
objectThe object to which the relation should point.
weightThe weight of the relation.
namedRelationAdditional name for the relation, or "" for the default naming

Definition at line 142 of file RelationsObject.h.

143 {
144 if (object)
146 object, object->m_cacheDataStoreEntry, object->m_cacheArrayIndex, weight, namedRelation);
147 }
void addRelation(const TObject *fromObject, StoreEntry *&fromEntry, int &fromIndex, const TObject *toObject, StoreEntry *&toEntry, int &toIndex, float weight, const std::string &namedRelation)
Add a relation from an object in a store array to another object in a store array.
Definition: DataStore.cc:492
static DataStore & Instance()
Instance of singleton Store.
Definition: DataStore.cc:54
DataStore::StoreEntry * m_cacheDataStoreEntry
Cache of the data store entry to which this object belongs.
int m_cacheArrayIndex
Cache of the index in the TClonesArray to which this object belongs.

◆ addRelationTo() [2/2]

void addRelationTo ( const TObject *  object,
float  weight = 1.0,
const std::string &  namedRelation = "" 
) const
inlineinherited

Add a relation from this object to another object (no caching, can be quite slow).

Parameters
objectThe object to which the relation should point.
weightThe weight of the relation.
namedRelationAdditional name for the relation, or "" for the default naming

Definition at line 155 of file RelationsObject.h.

156 {
157 StoreEntry* toEntry = nullptr;
158 int toIndex = -1;
159 DataStore::Instance().addRelation(this, m_cacheDataStoreEntry, m_cacheArrayIndex, object, toEntry, toIndex, weight, namedRelation);
160 }

◆ copyRelations()

void copyRelations ( const RelationsInterface< BASE > *  sourceObj)
inlineinherited

Copies all relations of sourceObj (pointing from or to sourceObj) to this object (including weights).

Useful if you want to make a complete copy of a StoreArray object to make modifications to it, but retain all information on linked objects.

Note: this only works if sourceObj inherits from the same base (e.g. RelationsObject), and only for related objects that also inherit from the same base.

Definition at line 170 of file RelationsObject.h.

171 {
172 if (!sourceObj)
173 return;
174 auto fromRels = sourceObj->getRelationsFrom<RelationsInterface<BASE>>("ALL");
175 for (unsigned int iRel = 0; iRel < fromRels.size(); iRel++) {
176 fromRels.object(iRel)->addRelationTo(this, fromRels.weight(iRel));
177 }
178
179 auto toRels = sourceObj->getRelationsTo<RelationsInterface<BASE>>("ALL");
180 for (unsigned int iRel = 0; iRel < toRels.size(); iRel++) {
181 this->addRelationTo(toRels.object(iRel), toRels.weight(iRel));
182 }
183 }
void addRelationTo(const RelationsInterface< BASE > *object, float weight=1.0, const std::string &namedRelation="") const
Add a relation from this object to another object (with caching).

◆ getADC() [1/2]

const short * getADC ( short  channel) const
inline

Get ADC value.

Returns
charge collected in the strip.

Definition at line 175 of file SVDTransparentDigit.h.

176 {
177 if (channel < 0 || 128 <= channel) return nullptr;
178 else return m_ADC[channel];
179 }

◆ getADC() [2/2]

short getADC ( short  channel,
short  index 
) const
inline

Get ADC value.

Returns
charge collected in the strip.

Definition at line 184 of file SVDTransparentDigit.h.

185 {
186 //if(index<0||SVDPar::maxSample<=index) return -1;
187 if (index < 0 || 6 <= index) return -9999;
188 if (channel < 0 || 128 <= channel) return -9999;
189 return m_ADC[channel][index];
190 }

◆ getApvID()

unsigned short getApvID ( ) const
inline

Get APV ID.

Returns
APV ID value.

Definition at line 165 of file SVDTransparentDigit.h.

165{ return m_apvID; }

◆ getArrayIndex()

int getArrayIndex ( ) const
inlineinherited

Returns this object's array index (in StoreArray), or -1 if not found.

Definition at line 385 of file RelationsObject.h.

386 {
388 return m_cacheArrayIndex;
389 }
bool findStoreEntry(const TObject *object, StoreEntry *&entry, int &index)
Find an object in an array in the data store.
Definition: DataStore.cc:398

◆ getArrayName()

std::string getArrayName ( ) const
inlineinherited

Get name of array this object is stored in, or "" if not found.

Definition at line 377 of file RelationsObject.h.

◆ getArrayPointer()

TClonesArray * getArrayPointer ( ) const
inlineprotectedinherited

Returns the pointer to the raw DataStore array holding this object (protected since these arrays are easy to misuse).

Definition at line 418 of file RelationsObject.h.

419 {
422 return nullptr;
424 }
TClonesArray * getPtrAsArray() const
Return ptr cast to TClonesArray.
Definition: StoreEntry.cc:83

◆ getCMC() [1/2]

const short * getCMC ( ) const
inline

Get total commom-mode correction value.

Returns
total commom-mode correction value

Definition at line 222 of file SVDTransparentDigit.h.

222{ return m_cmc; }

◆ getCMC() [2/2]

short getCMC ( short  index) const
inline

Get total commom-mode correction value.

Returns
total commom-mode correction value

Definition at line 226 of file SVDTransparentDigit.h.

227 {
228 if (index < 0 || 6 <= index) return -9999;
229 return m_cmc[index] ;
230 }

◆ getCMC1() [1/2]

const short * getCMC1 ( ) const
inline

Get 1st commom-mode correction value.

Returns
1st commom-mode correction value

Definition at line 195 of file SVDTransparentDigit.h.

195{ return m_cmc1; }

◆ getCMC1() [2/2]

short getCMC1 ( short  index) const
inline

Get 1st commom-mode correction value.

Returns
1st commom-mode correction value

Definition at line 200 of file SVDTransparentDigit.h.

201 {
202 if (index < 0 || 6 <= index) return -9999;
203 return m_cmc1[index];
204 }

◆ getCMC2() [1/2]

const short * getCMC2 ( ) const
inline

Get 2nd commom-mode correction value.

Returns
2nd commom-mode correction value

Definition at line 209 of file SVDTransparentDigit.h.

209{ return m_cmc2; }

◆ getCMC2() [2/2]

short getCMC2 ( short  index) const
inline

Get 2nd commom-mode correction value.

Returns
2nd commom-mode correction value

Definition at line 213 of file SVDTransparentDigit.h.

214 {
215 if (index < 0 || 6 <= index) return -9999;
216 return m_cmc2[index];
217 }

◆ getCorrADC() [1/2]

const short * getCorrADC ( short  channel) const
inline

Get corrected ADC value with pedestal and common-mode.

Returns
ADC value corrected with pedestal and common-mode

Definition at line 290 of file SVDTransparentDigit.h.

291 {
292 if (channel < 0 || 128 <= channel) return nullptr;
293 return m_corrADC[channel];
294 }

◆ getCorrADC() [2/2]

short getCorrADC ( short  channel,
short  index 
) const
inline

Get corrected ADC value with pedestal and common-mode.

Returns
ADC value corrected with pedestal and common-mode

Definition at line 298 of file SVDTransparentDigit.h.

299 {
300 //if(index<0||SVDPar::maxSample<=index) return -1;
301 if (index < 0 || 6 <= index) return -9999;
302 if (channel < 0 || 128 <= channel) return -9999;
303 else return m_corrADC[channel][index];
304 }

◆ getFadcID()

unsigned short getFadcID ( ) const
inline

Get FADC ID.

Returns
FADC ID value.

Definition at line 160 of file SVDTransparentDigit.h.

160{ return m_fadcID; }

◆ getFineCMC() [1/2]

const short * getFineCMC ( short  channel) const
inline

Get total fine commom-mode correction value.

Returns
total fine commom-mode correction value

Definition at line 271 of file SVDTransparentDigit.h.

272 {
273 if (channel < 0 || 128 <= channel) return nullptr;
274 return m_fine_cmc[channel];
275 }

◆ getFineCMC() [2/2]

short getFineCMC ( short  channel,
short  index 
) const
inline

Get total fine commom-mode correction value.

Returns
total fine commom-mode correction value

Definition at line 279 of file SVDTransparentDigit.h.

280 {
281 //if(index<0||SVDPar::maxSample<=index) return -1;
282 if (index < 0 || 6 <= index) return -9999;
283 if (channel < 0 || 128 <= channel) return -9999;
284 else return m_fine_cmc[channel][index];
285 }

◆ getFineCMC1() [1/2]

const short * getFineCMC1 ( short  channel) const
inline

Get 1st fine commom-mode correction value.

Returns
1st fine commom-mode correction value

Definition at line 235 of file SVDTransparentDigit.h.

236 {
237 if (channel < 0 || 128 <= channel) return nullptr;
238 return m_fine_cmc1[channel];
239 }

◆ getFineCMC1() [2/2]

short getFineCMC1 ( short  channel,
short  index 
) const
inline

Get 1st fine commom-mode correction value.

Returns
1st fine commom-mode correction value

Definition at line 243 of file SVDTransparentDigit.h.

244 {
245 //if(index<0||SVDPar::maxSample<=index) return -1;
246 if (index < 0 || 6 <= index) return -9999;
247 if (channel < 0 || 128 <= channel) return -9999;
248 else return m_fine_cmc1[channel][index];
249 }

◆ getFineCMC2() [1/2]

const short * getFineCMC2 ( short  channel) const
inline

Get 2nd fine commom-mode correction value.

Returns
2nd fine commom-mode correction value

Definition at line 253 of file SVDTransparentDigit.h.

254 {
255 if (channel < 0 || 128 <= channel) return nullptr;
256 return m_fine_cmc2[channel];
257 }

◆ getFineCMC2() [2/2]

short getFineCMC2 ( short  channel,
short  index 
) const
inline

Get 2nd fine commom-mode correction value.

Returns
2nd fine commom-mode correction value

Definition at line 261 of file SVDTransparentDigit.h.

262 {
263 //if(index<0||SVDPar::maxSample<=index) return -1;
264 if (index < 0 || 6 <= index) return -9999;
265 if (channel < 0 || 128 <= channel) return -9999;
266 else return m_fine_cmc2[channel][index];
267 }

◆ getFineCorrADC() [1/2]

const short * getFineCorrADC ( short  channel) const
inline

Get precisely corrected ADC value with pedestal and fine common-mode.

Returns
ADC value precisely corrected with pedestal and fine common-mode

Definition at line 309 of file SVDTransparentDigit.h.

310 {
311 if (channel < 0 || 128 <= channel) return nullptr;
312 return m_fine_corrADC[channel];
313 }

◆ getFineCorrADC() [2/2]

short getFineCorrADC ( short  channel,
short  index 
) const
inline

Get precisely corrected ADC value with pedestal and fine common-mode.

Returns
ADC value precisely corrected with pedestal and fine common-mode

Definition at line 317 of file SVDTransparentDigit.h.

318 {
319 //if(index<0||SVDPar::maxSample<=index) return -1;
320 if (index < 0 || 6 <= index) return -9999;
321 if (channel < 0 || 128 <= channel) return -9999;
322 else return m_fine_corrADC[channel][index];
323 }

◆ getInfo()

std::string getInfo ( ) const
inlineinherited

Return a short summary of this object's contents in raw text format.

Returns the contents of getInfoHTML() while translating line-breaks etc.

Note
: You don't need to implement this function (it's not virtual), getInfoHTML() is enough.

Definition at line 370 of file RelationsObject.h.

371 {
373 }
virtual std::string getInfoHTML() const
Return a short summary of this object's contents in HTML format.
std::string htmlToPlainText(const std::string &html)
See RelationsObject::getInfo()

◆ getInfoHTML()

virtual std::string getInfoHTML ( ) const
inlinevirtualinherited

Return a short summary of this object's contents in HTML format.

Reimplement this in your own class to provide useful output for display or debugging purposes. For example, you might do something like:

std::stringstream out;
out << "<b>PDG</b>: " << m_pdg << "<br>";
out << "<b>Covariance Matrix</b>: " << HTML::getString(getCovariance5()) << "<br>";
return out.str();
std::string getString(const TMatrixFBase &matrix, int precision=2, bool color=true)
get HTML table representing a matrix.
Definition: HTML.cc:24
See also
Particle::getInfoHTML() for a more complex example.
HTML for some utility functions.
Use getInfo() to get a raw text version of this output.

Reimplemented in Particle, Cluster, MCParticle, PIDLikelihood, SoftwareTriggerResult, Track, TrackFitResult, TRGSummary, and RecoTrack.

Definition at line 362 of file RelationsObject.h.

362{ return ""; }

◆ getName()

virtual std::string getName ( ) const
inlinevirtualinherited

Return a short name that describes this object, e.g.

pi+ for an MCParticle.

Reimplemented in Particle, MCParticle, and SpacePoint.

Definition at line 344 of file RelationsObject.h.

344{ return ""; }

◆ getNSample()

unsigned short getNSample ( ) const
inline

Get number of samples.

Returns
number of samples (1~6).

Definition at line 170 of file SVDTransparentDigit.h.

170{ return m_nSample; }

◆ getRelated()

T * getRelated ( const std::string &  name = "",
const std::string &  namedRelation = "" 
) const
inlineinherited

Get the object to or from which this object has a relation.

Template Parameters
TThe class of objects to or from which the relation points.
Parameters
nameThe name of the store array to or from which the relation points. If empty the default store array name for class T will be used. If the special name "ALL" is given all store arrays containing objects of type T are considered.
namedRelationAdditional name for the relation, or "" for the default naming
Returns
The first related object or a null pointer.

Definition at line 278 of file RelationsObject.h.

279 {
281 T::Class(), name, namedRelation).object);
282 }
@ c_BothSides
Combination of c_FromSide and c_ToSide.
Definition: DataStore.h:79
Belle2::RelationEntry getRelationWith(ESearchSide searchSide, const TObject *object, StoreEntry *&entry, int &index, const TClass *withClass, const std::string &withName, const std::string &namedRelation)
Get the first relation between an object and another object in a store array.
Definition: DataStore.cc:597
TObject * object
Pointer to the object.
Definition: RelationEntry.h:32

◆ getRelatedFrom()

FROM * getRelatedFrom ( const std::string &  name = "",
const std::string &  namedRelation = "" 
) const
inlineinherited

Get the object from which this object has a relation.

Template Parameters
FROMThe class of objects from which the relation points.
Parameters
nameThe name of the store array from which the relation points. If empty the default store array name for class FROM will be used. If the special name "ALL" is given all store arrays containing objects of type FROM are considered.
namedRelationAdditional name for the relation, or "" for the default naming
Returns
The first related object or a null pointer.

Definition at line 263 of file RelationsObject.h.

264 {
266 m_cacheArrayIndex, FROM::Class(), name, namedRelation).object);
267 }
@ c_FromSide
Return relations/objects pointed from (to a given object).
Definition: DataStore.h:77

◆ getRelatedFromWithWeight()

std::pair< FROM *, float > getRelatedFromWithWeight ( const std::string &  name = "",
const std::string &  namedRelation = "" 
) const
inlineinherited

Get first related object & weight of relation pointing from an array.

Template Parameters
FROMThe class of objects from which the relation points.
Parameters
nameThe name of the store array from which the relation points. If empty the default store array name for class FROM will be used. If the special name "ALL" is given all store arrays containing objects of type FROM are considered.
namedRelationAdditional name for the relation, or "" for the default naming
Returns
Pair of first related object and the relation weight, or (NULL, 1.0) if none found.

Definition at line 314 of file RelationsObject.h.

316 {
318 FROM::Class(), name, namedRelation);
319 return std::make_pair(static_cast<FROM*>(entry.object), entry.weight);
320 }

◆ getRelatedTo()

TO * getRelatedTo ( const std::string &  name = "",
const std::string &  namedRelation = "" 
) const
inlineinherited

Get the object to which this object has a relation.

Template Parameters
TOThe class of objects to which the relation points.
Parameters
nameThe name of the store array to which the relation points. If empty the default store array name for class TO will be used. If the special name "ALL" is given all store arrays containing objects of type TO are considered.
namedRelationAdditional name for the relation, or "" for the default naming
Returns
The first related object or a null pointer.

Definition at line 248 of file RelationsObject.h.

249 {
251 TO::Class(), name, namedRelation).object);
252 }
@ c_ToSide
Return relations/objects pointed to (from a given object).
Definition: DataStore.h:78

◆ getRelatedToWithWeight()

std::pair< TO *, float > getRelatedToWithWeight ( const std::string &  name = "",
const std::string &  namedRelation = "" 
) const
inlineinherited

Get first related object & weight of relation pointing to an array.

Template Parameters
TOThe class of objects to which the relation points.
Parameters
nameThe name of the store array to which the relation points. If empty the default store array name for class TO will be used. If the special name "ALL" is given all store arrays containing objects of type TO are considered.
namedRelationAdditional name for the relation, or "" for the default naming
Returns
Pair of first related object and the relation weight, or (NULL, 1.0) if none found.

Definition at line 297 of file RelationsObject.h.

299 {
301 TO::Class(), name, namedRelation);
302 return std::make_pair(static_cast<TO*>(entry.object), entry.weight);
303 }

◆ getRelatedWithWeight()

std::pair< T *, float > getRelatedWithWeight ( const std::string &  name = "",
const std::string &  namedRelation = "" 
) const
inlineinherited

Get first related object & weight of relation pointing from/to an array.

Template Parameters
TThe class of objects to or from which the relation points.
Parameters
nameThe name of the store array to or from which the relation points. If empty the default store array name for class T will be used. If the special name "ALL" is given all store arrays containing objects of type T are considered.
namedRelationAdditional name for the relation, or "" for the default naming
Returns
Pair of first related object and the relation weight, or (NULL, 1.0) if none found.

Definition at line 331 of file RelationsObject.h.

333 {
335 T::Class(), name, namedRelation);
336 return std::make_pair(static_cast<T*>(entry.object), entry.weight);
337 }

◆ getRelationsFrom()

RelationVector< FROM > getRelationsFrom ( const std::string &  name = "",
const std::string &  namedRelation = "" 
) const
inlineinherited

Get the relations that point from another store array to this object.

Template Parameters
FROMThe class of objects from which the relations point.
Parameters
nameThe name of the store array from which the relations point. If empty the default store array name for class FROM will be used. If the special name "ALL" is given all store arrays containing objects of type FROM are considered.
namedRelationAdditional name for the relation, or "" for the default naming
Returns
A vector of relations.

Definition at line 212 of file RelationsObject.h.

214 {
216 m_cacheArrayIndex, FROM::Class(), name, namedRelation));
217 }
RelationVector< T > getRelationsWith(const std::string &name="", const std::string &namedRelation="") const
Get the relations between this object and another store array.

◆ getRelationsTo()

RelationVector< TO > getRelationsTo ( const std::string &  name = "",
const std::string &  namedRelation = "" 
) const
inlineinherited

Get the relations that point from this object to another store array.

Template Parameters
TOThe class of objects to which the relations point.
Parameters
nameThe name of the store array to which the relations point. If empty the default store array name for class TO will be used. If the special name "ALL" is given all store arrays containing objects of type TO are considered.
namedRelationAdditional name for the relation, or "" for the default naming
Returns
A vector of relations.

Definition at line 197 of file RelationsObject.h.

198 {
200 m_cacheArrayIndex, TO::Class(), name, namedRelation));
201 }

◆ getRelationsWith()

RelationVector< T > getRelationsWith ( const std::string &  name = "",
const std::string &  namedRelation = "" 
) const
inlineinherited

Get the relations between this object and another store array.

Relations in both directions are returned.

Template Parameters
TThe class of objects to or from which the relations point.
Parameters
nameThe name of the store array to or from which the relations point. If empty the default store array name for class T will be used. If the special name "ALL" is given all store arrays containing objects of type T are considered.
namedRelationAdditional name for the relation, or "" for the default naming
Returns
A vector of relations.

Definition at line 230 of file RelationsObject.h.

231 {
233 m_cacheArrayIndex, T::Class(), name, namedRelation));
234 }

◆ getSensorID()

VxdID getSensorID ( ) const
inline

Get the sensor ID.

Returns
ID of the sensor.

Definition at line 150 of file SVDTransparentDigit.h.

150{ return m_sensorID; }

◆ isUStrip()

bool isUStrip ( ) const
inline

Get strip direction.

Returns
true if u, false if v.

Definition at line 155 of file SVDTransparentDigit.h.

155{ return m_isU; }

◆ print()

std::string print ( )
inline

Display main parameters in this object.

Definition at line 586 of file SVDTransparentDigit.h.

587 {
588 VxdID thisSensorID = static_cast<VxdID>(m_sensorID);
589 VxdID::baseType id = thisSensorID.getID();
590 VxdID::baseType layer = thisSensorID.getLayerNumber();
591 VxdID::baseType ladder = thisSensorID.getLadderNumber();
592 VxdID::baseType sensor = thisSensorID.getSensorNumber();
593 VxdID::baseType segment = thisSensorID.getSegmentNumber();
594
595 std::ostringstream os;
596 os << std::endl;
597 os << "Sensor ID : " << m_sensorID << ", (VXD ID: " << id << ")" << std::endl;
598 os << "(layer: " << layer << ", ladder: " << ladder
599 << ", sensor: " << sensor << ", segment: " << segment << ")"
600 << std::endl;
601 if (m_isU)
602 os << "Strip side : U" << std::endl;
603 else
604 os << "Strip side : V" << std::endl;
605
606 return os.str();
607 }
unsigned short baseType
The base integer type for VxdID.
Definition: VxdID.h:36

◆ setADC() [1/3]

void setADC ( short **  adc)
inline

Set ADC values.

Definition at line 348 of file SVDTransparentDigit.h.

349 {
350 if (adc != nullptr) {
351 for (int channel = 0; channel < 128; channel++) {
352 //for(int index=0;index<SVDPar::maxSample;index++) {
353 for (int index = 0; index < 6; index++) {
354 m_ADC[channel][index] = adc[channel][index];
355 }
356 }
357 }
358 }

◆ setADC() [2/3]

void setADC ( short *  adc,
short  channel 
)
inline

Set ADC values.

Definition at line 361 of file SVDTransparentDigit.h.

362 {
363 if (adc != nullptr) {
364 //for(int index=0;index<SVDPar::maxSample;index++) {
365 for (int index = 0; index < 6; index++) {
366 m_ADC[channel][index] = adc[index];
367 }
368 }
369 }

◆ setADC() [3/3]

void setADC ( short  adc,
short  channel,
short  index 
)
inline

Set ADC values.

Definition at line 372 of file SVDTransparentDigit.h.

373 {
374 if (0 <= index && index < 6 && 0 <= channel && channel < 128)
375 m_ADC[channel][index] = adc;
376 }

◆ setApvID()

void setApvID ( unsigned short  apvID)
inline

Set APV ID.

Definition at line 340 of file SVDTransparentDigit.h.

340{ m_apvID = apvID; }

◆ setCMC() [1/2]

void setCMC ( short *  cmc)
inline

Set Total commom-mode correction value.

Definition at line 411 of file SVDTransparentDigit.h.

412 {
413 for (int index = 0; index < 6; index++) {
414 m_cmc[index] = cmc[index];
415 }
416 }

◆ setCMC() [2/2]

void setCMC ( short  cmc,
int  index 
)
inline

Set Total commom-mode correction value.

Definition at line 419 of file SVDTransparentDigit.h.

420 {
421 if (0 <= index && index < 6) m_cmc[index] = cmc;
422 }

◆ setCMC1() [1/2]

void setCMC1 ( short *  cmc1)
inline

Set 1st commom-mode correction value.

Definition at line 380 of file SVDTransparentDigit.h.

381 {
382 for (int index = 0; index < 6; index++) {
383 m_cmc1[index] = cmc1[index];
384 }
385 }

◆ setCMC1() [2/2]

void setCMC1 ( short  cmc1,
int  index 
)
inline

Set 1st commom-mode correction value.

Definition at line 389 of file SVDTransparentDigit.h.

390 {
391 if (0 <= index && index < 6) m_cmc1[index] = cmc1;
392 }

◆ setCMC2() [1/2]

void setCMC2 ( short *  cmc2)
inline

Set 2nd commom-mode correction value.

Definition at line 396 of file SVDTransparentDigit.h.

397 {
398 for (int index = 0; index < 6; index++) {
399 m_cmc2[index] = cmc2[index];
400 }
401 }

◆ setCMC2() [2/2]

void setCMC2 ( short  cmc2,
int  index 
)
inline

Set 2nd commom-mode correction value.

Definition at line 404 of file SVDTransparentDigit.h.

405 {
406 if (0 <= index && index < 6) m_cmc2[index] = cmc2;
407 }

◆ setCorrADC() [1/3]

void setCorrADC ( short **  corradc)
inline

Set corrected ADC values.

Definition at line 522 of file SVDTransparentDigit.h.

523 {
524 if (corradc != nullptr) {
525 for (int channel = 0; channel < 128; channel++) {
526 //for(int index=0;index<SVDPar::maxSample;index++) {
527 for (int index = 0; index < 6; index++) {
528 m_corrADC[channel][index] = corradc[channel][index];
529 }
530 }
531 }
532 }

◆ setCorrADC() [2/3]

void setCorrADC ( short *  corradc,
short  channel 
)
inline

Set corrected ADC values.

Definition at line 535 of file SVDTransparentDigit.h.

536 {
537 if (corradc != nullptr) {
538 //for(int index=0;index<SVDPar::maxSample;index++) {
539 for (int index = 0; index < 6; index++) {
540 m_corrADC[channel][index] = corradc[index];
541 }
542 }
543 }

◆ setCorrADC() [3/3]

void setCorrADC ( short  corradc,
short  channel,
short  index 
)
inline

Set corrected ADC values.

Definition at line 546 of file SVDTransparentDigit.h.

547 {
548 if (0 <= index && index < 6 && 0 <= channel && channel < 128)
549 m_corrADC[channel][index] = corradc;
550 }

◆ setFadcID()

void setFadcID ( unsigned short  fadcID)
inline

Set FADC ID.

Definition at line 336 of file SVDTransparentDigit.h.

336{ m_fadcID = fadcID; }

◆ setFineCMC() [1/3]

void setFineCMC ( short **  fine_cmc)
inline

Set CMC values.

Definition at line 490 of file SVDTransparentDigit.h.

491 {
492 if (fine_cmc != nullptr) {
493 for (int channel = 0; channel < 128; channel++) {
494 //for(int index=0;index<SVDPar::maxSample;index++) {
495 for (int index = 0; index < 6; index++) {
496 m_fine_cmc[channel][index] = fine_cmc[channel][index];
497 }
498 }
499 }
500 }

◆ setFineCMC() [2/3]

void setFineCMC ( short *  fine_cmc,
short  channel 
)
inline

Set channel-dependent CMC values.

Definition at line 503 of file SVDTransparentDigit.h.

504 {
505 if (fine_cmc != nullptr) {
506 //for(int index=0;index<SVDPar::maxSample;index++) {
507 for (int index = 0; index < 6; index++) {
508 m_fine_cmc[channel][index] = fine_cmc[index];
509 }
510 }
511 }

◆ setFineCMC() [3/3]

void setFineCMC ( short  fine_cmc,
short  channel,
short  index 
)
inline

Set channel-dependent CMC values.

Definition at line 514 of file SVDTransparentDigit.h.

515 {
516 if (0 <= index && index < 6 && 0 <= channel && channel < 128)
517 m_fine_cmc[channel][index] = fine_cmc;
518 }

◆ setFineCMC1() [1/3]

void setFineCMC1 ( short **  fine_cmc1)
inline

Set channel-dependent 1st CMC values.

Definition at line 426 of file SVDTransparentDigit.h.

427 {
428 if (fine_cmc1 != nullptr) {
429 for (int channel = 0; channel < 128; channel++) {
430 //for(int index=0;index<SVDPar::maxSample;index++) {
431 for (int index = 0; index < 6; index++) {
432 m_fine_cmc1[channel][index] = fine_cmc1[channel][index];
433 }
434 }
435 }
436 }

◆ setFineCMC1() [2/3]

void setFineCMC1 ( short *  fine_cmc1,
short  channel 
)
inline

Set channel-dependent 1st CMC values.

Definition at line 439 of file SVDTransparentDigit.h.

440 {
441 if (fine_cmc1 != nullptr) {
442 //for(int index=0;index<SVDPar::maxSample;index++) {
443 for (int index = 0; index < 6; index++) {
444 m_fine_cmc1[channel][index] = fine_cmc1[index];
445 }
446 }
447 }

◆ setFineCMC1() [3/3]

void setFineCMC1 ( short  fine_cmc1,
short  channel,
short  index 
)
inline

Set channel-dependent 1st CMC values.

Definition at line 450 of file SVDTransparentDigit.h.

451 {
452 if (0 <= index && index < 6 && 0 <= channel && channel < 128)
453 m_fine_cmc1[channel][index] = fine_cmc1;
454 }

◆ setFineCMC2() [1/3]

void setFineCMC2 ( short **  fine_cmc2)
inline

Set channel-dependent 2nd CMC values.

Definition at line 458 of file SVDTransparentDigit.h.

459 {
460 if (fine_cmc2 != nullptr) {
461 for (int channel = 0; channel < 128; channel++) {
462 //for(int index=0;index<SVDPar::maxSample;index++) {
463 for (int index = 0; index < 6; index++) {
464 m_fine_cmc2[channel][index] = fine_cmc2[channel][index];
465 }
466 }
467 }
468 }

◆ setFineCMC2() [2/3]

void setFineCMC2 ( short *  fine_cmc2,
short  channel 
)
inline

Set channel-dependent 2nd CMC values.

Definition at line 471 of file SVDTransparentDigit.h.

472 {
473 if (fine_cmc2 != nullptr) {
474 //for(int index=0;index<SVDPar::maxSample;index++) {
475 for (int index = 0; index < 6; index++) {
476 m_fine_cmc2[channel][index] = fine_cmc2[index];
477 }
478 }
479 }

◆ setFineCMC2() [3/3]

void setFineCMC2 ( short  fine_cmc2,
short  channel,
short  index 
)
inline

Set channel-dependent 2nd CMC values.

Definition at line 482 of file SVDTransparentDigit.h.

483 {
484 if (0 <= index && index < 6 && 0 <= channel && channel < 128)
485 m_fine_cmc2[channel][index] = fine_cmc2;
486 }

◆ setFineCorrADC() [1/3]

void setFineCorrADC ( short **  corradc)
inline

Set precisely corrected ADC values.

Definition at line 554 of file SVDTransparentDigit.h.

555 {
556 if (corradc != nullptr) {
557 for (int channel = 0; channel < 128; channel++) {
558 //for(int index=0;index<SVDPar::maxSample;index++) {
559 for (int index = 0; index < 6; index++) {
560 m_fine_corrADC[channel][index] = corradc[channel][index];
561 }
562 }
563 }
564 }

◆ setFineCorrADC() [2/3]

void setFineCorrADC ( short *  corradc,
short  channel 
)
inline

Set precisely corrected ADC values.

Definition at line 567 of file SVDTransparentDigit.h.

568 {
569 if (corradc != nullptr) {
570 //for(int index=0;index<SVDPar::maxSample;index++) {
571 for (int index = 0; index < 6; index++) {
572 m_fine_corrADC[channel][index] = corradc[index];
573 }
574 }
575 }

◆ setFineCorrADC() [3/3]

void setFineCorrADC ( short  corradc,
short  channel,
short  index 
)
inline

Set precisely corrected ADC values.

Definition at line 578 of file SVDTransparentDigit.h.

579 {
580 if (0 <= index && index < 6 && 0 <= channel && channel < 128)
581 m_fine_corrADC[channel][index] = corradc;
582 }

◆ setNSample()

void setNSample ( unsigned short  nSample)
inline

Set number of samples.

Definition at line 344 of file SVDTransparentDigit.h.

344{ m_nSample = nSample; }

◆ setSensorID()

void setSensorID ( VxdID  vxdid)
inline

Set the sensor ID.

Definition at line 328 of file SVDTransparentDigit.h.

328{ m_sensorID = vxdid.getID(); }

◆ setUStrip()

void setUStrip ( bool  isu)
inline

Set strip direction.

Definition at line 332 of file SVDTransparentDigit.h.

332{ m_isU = isu; }

Member Data Documentation

◆ m_ADC

short m_ADC[128][6]
private

ADC values of strip signal.

Index represents channel index (0~127) and sample index (0~5).

Definition at line 620 of file SVDTransparentDigit.h.

◆ m_apvID

unsigned short m_apvID
private

APV25 ID.

Definition at line 615 of file SVDTransparentDigit.h.

◆ m_cacheArrayIndex

int m_cacheArrayIndex
mutableprivateinherited

Cache of the index in the TClonesArray to which this object belongs.

Definition at line 432 of file RelationsObject.h.

◆ m_cacheDataStoreEntry

DataStore::StoreEntry* m_cacheDataStoreEntry
mutableprivateinherited

Cache of the data store entry to which this object belongs.

Definition at line 429 of file RelationsObject.h.

◆ m_cmc

short m_cmc[6]
private

total common-mode correction values.

Index represents sample index (0~5).

Definition at line 624 of file SVDTransparentDigit.h.

◆ m_cmc1

short m_cmc1[6]
private

1st common-mode correction values.

Index represents sample index (0~5).

Definition at line 622 of file SVDTransparentDigit.h.

◆ m_cmc2

short m_cmc2[6]
private

2nd common-mode correction values.

Index represents sample index (0~5).

Definition at line 623 of file SVDTransparentDigit.h.

◆ m_corrADC

short m_corrADC[128][6]
private

ADC values of strip signal corrected by pedestal and commom-mode.

Index represents channel index (0~127) and sample index (0~5).

Definition at line 630 of file SVDTransparentDigit.h.

◆ m_fadcID

unsigned short m_fadcID
private

FADC ID.

Definition at line 614 of file SVDTransparentDigit.h.

◆ m_fine_cmc

short m_fine_cmc[128][6]
private

Channel-dependent total common-mode correction values.

Index represents channel index (0~127) and sample index (0~5).

Definition at line 628 of file SVDTransparentDigit.h.

◆ m_fine_cmc1

short m_fine_cmc1[128][6]
private

Channel-dependent 1st common-mode correction values.

Index represents channel index (0~127) and sample index (0~5).

Definition at line 626 of file SVDTransparentDigit.h.

◆ m_fine_cmc2

short m_fine_cmc2[128][6]
private

Channel-dependent 2nd common-mode correction values.

Index represents channel index (0~127) and sample index (0~5).

Definition at line 627 of file SVDTransparentDigit.h.

◆ m_fine_corrADC

short m_fine_corrADC[128][6]
private

ADC values of strip signal precisely corrected by pedestal and fine commom-mode.

Index represents channel index (0~127) and sample index (0~5).

Definition at line 631 of file SVDTransparentDigit.h.

◆ m_isU

bool m_isU
private

True if U, false if V.

Definition at line 612 of file SVDTransparentDigit.h.

◆ m_nSample

unsigned short m_nSample
private

Number of samples.

Definition at line 617 of file SVDTransparentDigit.h.

◆ m_sensorID

unsigned short m_sensorID
private

Compressed sensor identifier.

Definition at line 611 of file SVDTransparentDigit.h.


The documentation for this class was generated from the following file: