80 #include "StMemoryPool.hh"
87 unsigned int,
float,
unsigned char = 0);
92 void*
operator new(
size_t sz,
void *p) {
return p;}
93 void*
operator new(size_t) {
return mPool.alloc(); }
94 void operator delete(
void* p) { mPool.free(p); }
96 unsigned int layer()
const;
97 static unsigned int layer(
unsigned int barrel,
unsigned int ladder);
98 unsigned int ladder()
const;
99 unsigned int wafer()
const;
100 unsigned int barrel()
const;
101 unsigned int hybrid()
const;
102 unsigned int index()
const;
104 float timebucket()
const;
105 float peakADC()
const;
106 float localPosition(
unsigned int)
const;
107 int numberOfAnodes()
const;
108 int numberOfPixels()
const;
110 static unsigned int shell(
unsigned int barrel,
unsigned int ladder);
111 unsigned int shell()
const;
114 void setAnode(
float);
115 void setTimebucket(
float);
116 void setLocalPosition(
float,
float);
117 virtual int volumeID()
const;
118 void setNumberOfAnodes(
unsigned short);
119 void setNumberOfPixels(
unsigned short);
120 void Print(Option_t *option=
"")
const;
122 StDetectorId detector()
const;
129 Float_t mLocalPosition[2];
130 UShort_t mNumberOfAnodes;
131 UShort_t mNumberOfPixels;
139 StSvtHit::index()
const
142 return (mHardwarePosition>>4)&((1L<<9)-1);
145 inline StDetectorId StSvtHit::detector()
const {
return kSvtId;}
146 inline float StSvtHit::timebucket()
const {
return mTimebucket; }
147 inline void StSvtHit::setPeak(
float val) { mPeak = val; }
148 inline void StSvtHit::setAnode(
float val) { mAnode = val; }
149 inline void StSvtHit::setTimebucket(
float val) { mTimebucket = val; }
150 ostream& operator<<(ostream& os,
StSvtHit const & v);