4#ifndef PHASEII_STRIPRAWDATACONTAINER_H
5#define PHASEII_STRIPRAWDATACONTAINER_H
49 static std::uint32_t
makeWord(
unsigned int group_size,
unsigned int time_bin,
unsigned int errors ) {
67 template <AccessPolicy accessPolicy=AccessPolicy::ReadOnly>
91 template <AccessPolicy accessPolicy>
98 template <AccessPolicy accessPolicy=AccessPolicy::ReadOnly>
macros to associate a CLID to a type
#define CLASS_DEF(NAME, CID, VERSION)
associate a clid and a version to a type eg
declare to which family the container belongs as far as its indexing policy is concerned
PhaseII::StripRawDataContainerCollectionTypes<>::ContainerCollection PhaseIIStripRawDataContainer
Base raw data container which provides coordinates of a certain dimension and a data word per RDO (ra...
static constexpr int unpack(std::uint32_t mask, unsigned int shift, unsigned int word)
static constexpr std::uint32_t pack(std::uint32_t mask, unsigned int shift, int input)
const std::uint32_t & dataWord(unsigned int index) const
Base class for an RDO proxy.
const auto & dataWord() const
typename ContainerProxyBase< PhaseII::StripRawDataContainer, unsigned int, accessPolicy >::template ElementProxyBase< accessPolicy > BASE
The container for strip RDOs The base class is the InDetRawDataContainer with a coordinate dimension ...
static constexpr std::uint32_t MASK_TIMEBIN
static constexpr unsigned int SHIFT_FIRSTHITERROR
static constexpr std::uint32_t MASK_FIRSTHITERROR
static constexpr std::uint32_t MASK_ONTIME
static constexpr std::uint32_t MASK_ERRORS
static int getGroupSize(std::uint32_t dataWord)
Extract the number of consecutive strip hits starting from the coordinates of the corresponding RDO f...
static std::uint32_t makeWord(unsigned int group_size, unsigned int time_bin, unsigned int errors)
Create a bit-packed data word.
static int getErrors(std::uint32_t dataWord)
Extract error information from the data word.
ERawDataType
The data format of the RAW data.
static constexpr unsigned int SHIFT_ERRORS
void setDataType(ERawDataType type)
Set the RAW data type of this container.
static constexpr std::uint32_t MASK_GROUPSIZE
static bool FirstHitError(std::uint32_t dataWord)
static constexpr unsigned int SHIFT_SECONDHITERROR
static constexpr std::uint32_t MASK_SECONDHITERROR
static constexpr unsigned int SHIFT_GROUPSIZE
static bool SecondHitError(std::uint32_t dataWord)
static int getTimeBin(std::uint32_t dataWord)
Extract the time bin from the data word.
static constexpr unsigned int SHIFT_TIMEBIN
static constexpr unsigned int SHIFT_ONTIME
ERawDataType dataType() const
Return the type of the original RAW data the RDO container is based on.
static bool OnTime(std::uint32_t dataWord)
A proxy for a strip RDO which adds convenience methods to interpret the data word to the base proxy.
bool FirstHitError() const
StripRawDataContainer::ERawDataType dataType() const
StripRawDataProxy< AccessPolicy::ReadOnly > ReadOnlyProxy
RawDataProxyBase< PhaseII::StripRawDataContainer, accessPolicy > BASE
bool SecondHitError() const
RawDataCollectionTypes< StripRawDataContainer, accessPolicy > StripRawDataContainerCollectionTypes
helper class to define all the proxies for a RDO container.
PhaseII::IndexedRanges< StripRawDataContainer, std::atomic< PhaseII::DataRange > > ContainerCollection
StripRawDataProxy< accessPolicy > RawDataProxy