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::Const>
69 :
public RawDataProxyBase<typename Utils::ContainerAccessHelper<PhaseII::StripRawDataContainer, accessPolicy>::ContainerType >
92 template <AccessPolicy accessPolicy>
99 template <AccessPolicy accessPolicy=AccessPolicy::Const>
101 accessPolicy>::ContainerType >;
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::StripRawDataTypeTraits< PhaseII::AccessPolicy::Mutable >::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.
Utils::ElementProxyBase< T_RawDataContainer, unsigned int > BASE
const auto & dataWord() const
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
RawDataProxyBase< typename Utils::ContainerAccessHelper< PhaseII::StripRawDataContainer, accessPolicy >::ContainerType > BASE
bool SecondHitError() const
StripRawDataProxy< AccessPolicy::Const > ReadOnlyProxy
RawDataTypeTraits< typename Utils::ContainerAccessHelper< StripRawDataContainer, accessPolicy >::ContainerType > StripRawDataTypeTraits
helper class to define all the proxies for a RDO container.
typename Utils::ContainerAccessHelper< PhaseII::IndexedRanges< ContainerNonConst, std::atomic< PhaseII::DataRange > >, accessPolicy >::ContainerType ContainerCollection
StripRawDataProxy< accessPolicy > RawDataProxy
const ContainerNonConst & container() const