Go to the documentation of this file. 1 #ifndef SiStripNoises_h
2 #define SiStripNoises_h
47 typedef std::pair<ContainerIterator, ContainerIterator>
Range;
59 void getDetIds(std::vector<uint32_t>& DetIds_)
const;
93 static inline uint16_t
get9bits(
const uint8_t*& ptr, int8_t
skip);
110 uint8_t maskThis = (0xFF <<
skip);
111 uint8_t maskThat = ((2 <<
skip) - 1);
112 uint16_t
ret = (((*ptr) & maskThis) >>
skip);
114 return ret | (((*ptr) & maskThat) << (8 -
skip));
118 const unsigned char*
data = &*(
range.second - 1);
119 static const uint16_t BITS_PER_STRIP = 9;
121 uint32_t lowBit =
strip * BITS_PER_STRIP;
122 uint8_t firstByteBit = (lowBit & 7);
124 uint16_t vin = uint16_t(*(
data - lowBit / 8)) | (uint16_t(*(
data - lowBit / 8 - 1)) << 8);
125 vin = vin >> firstByteBit;
ContainerIterator getDataVectorBegin() const
ret
prodAgent to be discontinued
void printSummary(std::stringstream &ss, const TrackerTopology *trackerTopo) const
static const std::string input
static float getNoiseFast(const uint16_t &strip, const Range &range)
bool put(const uint32_t &detID, const InputVector &input)
std::vector< float > values
#define COND_SERIALIZABLE
RegistryIterator getRegistryVectorEnd() const
const Range getRange(const uint32_t detID) const
void getDetIds(std::vector< uint32_t > &DetIds_) const
std::vector< unsigned char > Container
std::pair< ContainerIterator, ContainerIterator > Range
void setData(float noise_, InputVector &vped)
Range getRangeByPos(unsigned short pos) const
static uint16_t get9bits(const uint8_t *&ptr, int8_t skip)
static void verify(uint16_t strip, const Range &range)
void printDebug(std::stringstream &ss, const TrackerTopology *trackerTopo) const
RegistryIterator getRegistryVectorBegin() const
void allNoises(std::vector< float > &noises, const Range &range) const
bool operator()(const DetRegistry &p, const uint32_t &i) const
std::vector< DetRegistry > Registry
static void encode(const InputVector &Vi, std::vector< unsigned char > &Vo_CHAR)
char data[epos_bytes_allocation]
Registry::const_iterator RegistryIterator
std::vector< uint16_t > InputVector
static uint16_t decode(uint16_t strip, const Range &range)
static float getNoise(uint16_t strip, const Range &range)
std::vector< unsigned char >::const_iterator ContainerIterator
ContainerIterator getDataVectorEnd() const
std::vector< ratioData > operator/(const SiStripNoises &d)