1 #ifndef SiStripLatency_h
2 #define SiStripLatency_h
64 Latency(
const uint32_t inputDetIdAndApv,
const uint16_t inputLatency,
const uint16_t inputMode) :
79 typedef std::vector<Latency>::iterator
latIt;
88 bool put(
const uint32_t detId,
const uint16_t apv,
const uint16_t
latency,
const uint16_t
mode );
89 uint16_t
latency(
const uint32_t detId,
const uint16_t apv)
const;
90 uint16_t
mode(
const uint32_t detId,
const uint16_t apv)
const;
91 std::pair<uint16_t, uint16_t>
latencyAndMode(
const uint32_t detId,
const uint16_t apv)
const;
95 void allLatencies(std::vector<uint16_t> & allLatenciesVector)
const;
97 void allModes(std::vector<uint16_t> & allModesVector)
const;
115 void printDebug(std::stringstream & ss)
const;
129 int latencyAndModeSortValue1 = int(lat1.
latency) + 1000*int(lat1.
mode);
130 int latencyAndModeSortValue2 = int(lat2.
latency) + 1000*int(lat2.
mode);
131 return( latencyAndModeSortValue1 < latencyAndModeSortValue2 );
151 uint32_t detIdAndApv = (detId << 3) | apv;
Latency()
Default constructor needed by genreflex.
bool put(const uint32_t detId, const uint16_t apv, const uint16_t latency, const uint16_t mode)
std::vector< Latency > allUniqueLatencyAndModes()
int16_t singleReadOutMode() const
Latency(const uint32_t inputDetIdAndApv, const uint16_t inputLatency, const uint16_t inputMode)
std::vector< Latency >::iterator latIt
bool operator()(const Latency &lat1, const Latency &lat2)
uint16_t mode(const uint32_t detId, const uint16_t apv) const
void allLatencies(std::vector< uint16_t > &allLatenciesVector) const
Fills the passed vector with all the possible latencies in the Tracker.
bool operator()(const Latency &lat1, const uint32_t detIdAndApv) const
uint16_t singleLatency() const
If all the latency values stored are equal return that value, otherwise return -1.
void allModes(std::vector< uint16_t > &allModesVector) const
Fills the passed vector with all the possible modes in the Tracker.
void printSummary(std::stringstream &ss) const
Prints the number of ranges as well as the value of singleLatency and singleMode. ...
uint16_t singleMode() const
const latConstIt position(const uint32_t detId, const uint16_t apv) const
Used to compute the position with the lower_bound binary search.
bool operator()(const Latency &lat1, const Latency &lat2)
uint16_t latency(const uint32_t detId, const uint16_t apv) const
std::vector< Latency > latencies_
void printDebug(std::stringstream &ss) const
Prints the full list of all ranges and corresponding values of latency and mode.
std::vector< Latency >::const_iterator latConstIt
std::vector< Latency > allLatencyAndModes() const
std::pair< uint16_t, uint16_t > latencyAndMode(const uint32_t detId, const uint16_t apv) const