ATLAS Offline Software
Loading...
Searching...
No Matches
CscRawDataCollection Class Reference

Collection of CSC Raw Hits, arranged according to CSC Detector Elements Author: Ketevi A. More...

#include <CscRawDataCollection.h>

Inheritance diagram for CscRawDataCollection:
Collaboration diagram for CscRawDataCollection:

Public Types

typedef uint16_t ID
 typedef required by container
typedef CscRawData DIGIT
typedef typename DataVectorBase< CscRawData >::Base DataVector_BASE
typedef typename DataVectorBase< CscRawData >::Base DVL_BASE
typedef typename DataVectorBase< CscRawData >::Base::PtrVector PtrVector
 This is the type of the underlying std::vector (what stdcont returns).
typedef typename DataVectorBase< CscRawData >::Base::PtrVector BaseContainer
typedef CscRawData *& reference
typedef CscRawData *const & const_reference
typedef typename DataVectorBase< CscRawData >::Base::size_type size_type
typedef typename DataVectorBase< CscRawData >::Base::difference_type difference_type
typedef CscRawDatavalue_type
typedef typename DataVectorBase< CscRawData >::Base::allocator_type allocator_type
typedef CscRawData ** pointer
typedef CscRawData *const * const_pointer
typedef const CscRawDataconst_value_type
typedef CscRawData base_value_type
 The T value used as the template parameter.
typedef std::unique_ptr< base_value_typeunique_type
 Type of a unique_ptr that can be used to insert elements into this container.
typedef DataModel_detail::ElementProxy< DataVectorElementProxy
 This type is used to proxy lvalue accesses to DataVector elements, in order to handle ownership.
typedef DataModel_detail::const_iterator< DataVectorconst_iterator
 Standard const_iterator.
typedef DataModel_detail::iterator< DataVectoriterator
 Standard iterator.
typedef std::reverse_iterator< const_iteratorconst_reverse_iterator
 Standard const_reverse_iterator.
typedef std::reverse_iterator< iteratorreverse_iterator
 Standard reverse_iterator.
typedef DataVector base_data_vector
using Deleter

Public Member Functions

 CscRawDataCollection (uint32_t id)
 Default constructor.
 CscRawDataCollection ()
virtual ~CscRawDataCollection ()
uint16_t identify () const
 access methods
IdentifierHash identifyHash () const
 Returns the OFFLINE identifier hash for this collection.
uint16_t rodId () const
uint16_t subDetectorId () const
uint16_t numRPU () const
const std::vector< uint16_t > & rpuID () const
const std::vector< uint8_t > & dataType () const
bool samplingPhase () const
bool triggerType () const
uint8_t firstBitSummary () const
uint32_t eventType () const
uint8_t calAmplitude () const
 Calibration pulser amplitude.
uint8_t calLayer () const
 Calibration layer.
uint32_t scaAddress () const
uint16_t numSamples () const
uint16_t latency () const
uint8_t rate () const
 the rate could be 25 or 50 ns
bool sparsified () const
 is sparsified data?
bool neutron () const
 is neutron rejection ON?
bool calEnabled () const
 is calibration enabled?
uint16_t spuCount (unsigned int i) const
 return the SPU cluster counts For all the non-precision layers,
const std::vector< uint16_t > & spuCount () const
void setRodId (uint16_t rodId)
 set methods - the name should be self-descriptive
void setSubDetectorId (uint16_t subDetectorId)
void setOnlineId (uint16_t id)
void setIdentifyHash (const IdentifierHash &idHash)
 sets the OFFLINE IdentifierHash for this collection
void set_samplingPhase ()
void set_samplingPhase (bool flag)
void set_triggerType ()
void set_triggerType (bool flag)
void set_firstBitSummary (const uint8_t summary)
void set_eventType (const uint32_t eventType)
void set_scaAddress (const uint32_t sca)
void set_spuCount (unsigned int i, uint16_t count)
void set_spuCount (const std::vector< uint16_t > &spuCount)
void setSamplingRate (const uint16_t rate)
 insert the rate into the detector event type word - the rate can 20 or 40 MHz
void setNumSamples (const uint16_t n)
 insert the number of samples into the detector event type word
void setLatency (const uint16_t latency)
 insert the latency into the detector event type word
void setNumDPU (const uint16_t numDPU)
 obsolete - just backward compatibility with old data
void set_sparsified ()
 is this sparsified data?
void set_neutron ()
 is neutron rejection applied?
void set_enableCal ()
 is calibration enabled
void set_calAmplitude (const uint8_t calAmp)
 set the calibration amplitude
void set_calLayer (const uint8_t calLay)
 set the layer number where the calibration is been done
void setRPUID (const std::vector< uint16_t > &rpuID)
void addRPU (const uint16_t rpuID)
void addDataType (const uint8_t dataType)
void set_dataType (const unsigned int i, const uint8_t dataType)
void set_dataType (const std::vector< uint8_t > &dataType)
Constructors, destructors, assignment.
void assign (InputIterator first, InputIterator last)
 Assign from iterators.
Size and capacity.
size_type size () const noexcept
 Returns the number of elements in the collection.
void resize (size_type sz)
 Resizes the collection to the specified number of elements.
void reserve (size_type n)
 Attempt to preallocate enough memory for a specified number of elements.
Element access.

Change the vector capacity to match the current size.

Note: this does not affect auxiliary data.

const CscRawDataoperator[] (size_type n) const
 Access an element, as an rvalue.
const CscRawDataget (size_type n) const
 Access an element, as an rvalue.
const CscRawDataat (size_type n) const
 Access an element, as an rvalue.
const CscRawDatafront () const
 Access the first element in the collection as an rvalue.
const CscRawDataback () const
 Access the last element in the collection as an rvalue.
Iterator creation.
const_iterator begin () const noexcept
 Return a const_iterator pointing at the beginning of the collection.
const_iterator end () const noexcept
 Return a const_iterator pointing past the end of the collection.
const_reverse_iterator rbegin () const noexcept
 Return a const_reverse_iterator pointing past the end of the collection.
const_reverse_iterator rend () const noexcept
 Return a const_reverse_iterator pointing at the beginning of the collection.
const_iterator cbegin () const noexcept
 Return a const_iterator pointing at the beginning of the collection.
const_iterator cend () const noexcept
 Return a const_iterator pointing past the end of the collection.
const_reverse_iterator crbegin () const noexcept
 Return a const_reverse_iterator pointing past the end of the collection.
const_reverse_iterator crend () const noexcept
 Return a const_reverse_iterator pointing at the beginning of the collection.
Insertion operations.
value_type push_back (value_type pElem)
 Add an element to the end of the collection.
size_type push_new (size_type n, F alloc)
 Create and add a number of new elements to the end of the container.
value_type emplace_back (value_type pElem)
 Add an element to the end of the collection.
iterator insert (iterator position, value_type pElem)
 Add a new element to the collection.
iterator emplace (iterator position, value_type pElem)
 Add a new element to the collection.
void insertMove (iterator position, DataVector &other)
 Insert the contents of another DataVector, with auxiliary data copied via move semantics.
Erasure operations.
iterator erase (iterator position)
 Remove element at a given position.
void pop_back ()
 Remove the last element from the collection.
void clear ()
 Erase all the elements in the collection.

Static Public Attributes

static const bool has_virtual
 This is true for any DataVector class if we need to use virtual derivation to get to the base DataVector class.
static constexpr bool must_own
 If true, then this type must own its contents.

Private Attributes

uint32_t m_id
 Identifier of this collection.
IdentifierHash m_idHash
 Offline IdentifierHash for this collection.
uint16_t m_rodId
 online ROD Identifier
uint16_t m_subDetectorId
uint16_t m_numRPU
 number of RPU
bool m_samplingPhase
 sampling phase
bool m_triggerType
 trigger Type
uint8_t m_firstBitSummary
 First Bit Summary.
uint32_t m_eventType
 event type/data type
std::vector< uint16_t > m_rpuID
 RPU ID and data type.
std::vector< uint8_t > m_dataType
std::vector< uint16_t > m_spuCount
 cluster counts for 10 SPU: 5 SPU in each chamber or RPU!
uint32_t m_scaAddress
 SCA Address.

Internal operations.

SG::IsMostDerivedFlag m_isMostDerived
 This flag is true if this DV instance is the most-derived one.
void resortAux (iterator beg, iterator end)
 Reset indices / reorder aux data after elements have been permuted.
void testInsert (const char *op)
 Test if we can insert; raise an exception if not.
void testInsertOol (const char *op)
 Test if we can insert; raise an exception if not.
typedef ROOT::Meta::Selection::DataVector< CscRawData, DataVector_BASE >::self self
static int baseOffset1 (const char *p, const DataVector &dv, const std::type_info &ti)
 Helper for baseOffset.
static const CscRawDatado_cast (const typename PtrVector::value_type p)
 Helper to shorten calls to DataModel_detail::DVLCast.
static CscRawDatado_cast_nc (typename PtrVector::value_type p)
 Helper to shorten calls to DataModel_detail::DVLCast.
void assignElement (typename BaseContainer::iterator pos, value_type newElem)
 Handle element assignment.
void assignBaseElement (typename BaseContainer::iterator pos, typename BaseContainer::value_type newElem)
 Handle element assignment from a base pointer.
void shift (size_t pos, ptrdiff_t offs)
 Shift the auxiliary elements of the container.
virtual const std::type_info & dv_typeid () const override
 Find the most-derived DataVector class in the hierarchy.
void clearMostDerived ()
 Clear m_isMostDerived for this instance and for all bases.
virtual void setMostDerived () override
 Set m_isMostDerived for this instance and clear it for all bases.

Swap and sort.

void swap (DataVector &rhs)
 Swap this collection with another.
void sort ()
 Sort the container.
static void iter_swap (iterator a, iterator b)
 Swap the referents of two DataVector iterators.

Non-standard operations.

void swapElement (size_type index, value_type newElem, reference oldElem)
 Swap one element out of the container.
virtual const DataModel_detail::DVLInfoBasedvlinfo_v () const override
 Return the DV/DL info struct for this class.
const SG::AuxVectorBaseauxbase () const
 Convert to AuxVectorBase.
size_type max_size () const noexcept
 Returns the size() of the largest possible collection.
size_type capacity () const noexcept
 Returns the total number of elements that the collection can hold before needing to allocate more memory.
bool empty () const noexcept
 Returns true if the collection is empty.
void shrink_to_fit ()
const PtrVectorstdcont () const
 Return the underlying std::vector of the container.
SG::OwnershipPolicy ownPolicy () const
 Return the ownership policy setting for this container.
static const DataModel_detail::DVLInfoBasedvlinfo ()
 Return the DV/DL info struct for this class.
static int baseOffset (const std::type_info &ti)
 Return the offset of a base DataVector class.

Detailed Description

Collection of CSC Raw Hits, arranged according to CSC Detector Elements Author: Ketevi A.

Assamagan BNL December 24, 2003

Definition at line 23 of file CscRawDataCollection.h.

Member Typedef Documentation

◆ allocator_type

typedef typename DataVectorBase<CscRawData>::Base::allocator_type DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::allocator_type
inherited

Definition at line 817 of file DataVector.h.

◆ base_data_vector

typedef DataVector DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::base_data_vector
inherited

Definition at line 854 of file DataVector.h.

◆ base_value_type

typedef CscRawData DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::base_value_type
inherited

The T value used as the template parameter.

Note that this is different from value_type (that's T*).

Definition at line 825 of file DataVector.h.

◆ BaseContainer

typedef typename DataVectorBase<CscRawData>::Base::PtrVector DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::BaseContainer
inherited

Definition at line 807 of file DataVector.h.

◆ const_iterator

◆ const_pointer

typedef CscRawData* const* DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::const_pointer
inherited

Definition at line 819 of file DataVector.h.

◆ const_reference

typedef CscRawData* const& DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::const_reference
inherited

Definition at line 813 of file DataVector.h.

◆ const_reverse_iterator

typedef std::reverse_iterator<const_iterator> DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::const_reverse_iterator
inherited

Standard const_reverse_iterator.

Definition at line 847 of file DataVector.h.

◆ const_value_type

typedef const CscRawData* DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::const_value_type
inherited

Definition at line 821 of file DataVector.h.

◆ DataVector_BASE

typedef typename DataVectorBase<CscRawData>::Base DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::DataVector_BASE
inherited

Definition at line 797 of file DataVector.h.

◆ Deleter

using DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::Deleter
inherited

Definition at line 857 of file DataVector.h.

◆ difference_type

typedef typename DataVectorBase<CscRawData>::Base::difference_type DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::difference_type
inherited

Definition at line 815 of file DataVector.h.

◆ DIGIT

Definition at line 70 of file CscRawDataCollection.h.

◆ DVL_BASE

typedef typename DataVectorBase<CscRawData>::Base DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::DVL_BASE
inherited

Definition at line 798 of file DataVector.h.

◆ ElementProxy

This type is used to proxy lvalue accesses to DataVector elements, in order to handle ownership.

Definition at line 833 of file DataVector.h.

◆ ID

typedef uint16_t CscRawDataCollection::ID

typedef required by container

Definition at line 69 of file CscRawDataCollection.h.

◆ iterator

Standard iterator.

Note that lvalue references here will yield an ElementProxy, not a reference.

Definition at line 842 of file DataVector.h.

◆ pointer

typedef CscRawData** DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::pointer
inherited

Definition at line 818 of file DataVector.h.

◆ PtrVector

typedef typename DataVectorBase<CscRawData>::Base::PtrVector DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::PtrVector
inherited

This is the type of the underlying std::vector (what stdcont returns).

Definition at line 806 of file DataVector.h.

◆ reference

Definition at line 812 of file DataVector.h.

◆ reverse_iterator

typedef std::reverse_iterator<iterator> DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::reverse_iterator
inherited

Standard reverse_iterator.

Note that lvalue references here will yield an ElementProxy, not a reference.

Definition at line 852 of file DataVector.h.

◆ self

Definition at line 2063 of file DataVector.h.

◆ size_type

typedef typename DataVectorBase<CscRawData>::Base::size_type DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::size_type
inherited

Definition at line 814 of file DataVector.h.

◆ unique_type

typedef std::unique_ptr<base_value_type> DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::unique_type
inherited

Type of a unique_ptr that can be used to insert elements into this container.

Definition at line 829 of file DataVector.h.

◆ value_type

Definition at line 816 of file DataVector.h.

Constructor & Destructor Documentation

◆ CscRawDataCollection() [1/2]

CscRawDataCollection::CscRawDataCollection ( uint32_t id)
inline

Default constructor.

Definition at line 73 of file CscRawDataCollection.h.

75 m_numRPU = 0;
76 m_samplingPhase = false;
77 m_triggerType = false;
79 m_eventType = 0x0;
80 m_rpuID.clear();
81 m_dataType.clear();
82 m_spuCount.resize(10,0);
83 m_scaAddress = 0x0;
84 m_idHash = m_id;
85 m_rodId = 0;
87 }
uint32_t m_id
Identifier of this collection.
uint32_t m_eventType
event type/data type
std::vector< uint16_t > m_spuCount
cluster counts for 10 SPU: 5 SPU in each chamber or RPU!
uint16_t m_numRPU
number of RPU
std::vector< uint8_t > m_dataType
IdentifierHash m_idHash
Offline IdentifierHash for this collection.
std::vector< uint16_t > m_rpuID
RPU ID and data type.
uint8_t m_firstBitSummary
First Bit Summary.
bool m_triggerType
trigger Type
bool m_samplingPhase
sampling phase
uint16_t m_rodId
online ROD Identifier
uint32_t m_scaAddress
SCA Address.
DataVector(SG::OwnershipPolicy ownPolicy=SG::OWN_ELEMENTS, SG::IndexTrackingPolicy trackIndices=SG::DEFAULT_TRACK_INDICES)

◆ CscRawDataCollection() [2/2]

CscRawDataCollection::CscRawDataCollection ( )
inline

Definition at line 89 of file CscRawDataCollection.h.

91 m_numRPU = 0;
92 m_samplingPhase = false;
93 m_triggerType = false;
95 m_eventType = 0x0;
96 m_rpuID.clear();
97 m_dataType.clear();
98 m_spuCount.resize(10,0);
99 m_scaAddress = 0x0;
100 m_rodId = 0;
101 m_subDetectorId = 0;
102 }

◆ ~CscRawDataCollection()

virtual CscRawDataCollection::~CscRawDataCollection ( )
inlinevirtual

Definition at line 104 of file CscRawDataCollection.h.

104{}

Member Function Documentation

◆ addDataType()

void CscRawDataCollection::addDataType ( const uint8_t dataType)
inline

Definition at line 189 of file CscRawDataCollection.h.

189{ m_dataType.push_back(dataType); }
const std::vector< uint8_t > & dataType() const

◆ addRPU()

void CscRawDataCollection::addRPU ( const uint16_t rpuID)
inline

Definition at line 188 of file CscRawDataCollection.h.

188{ m_rpuID.push_back(rpuID); }
const std::vector< uint16_t > & rpuID() const

◆ assign()

void DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::assign ( InputIterator first,
InputIterator last )
inherited

Assign from iterators.

Parameters
firstThe start of the range to put in the container.
lastThe end of the range to put in the container.

Any existing owned elements will be released. The DataVector's ownership policy determines whether it will take ownership of the new elements.

◆ assignBaseElement()

void DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::assignBaseElement ( typename BaseContainer::iterator pos,
typename BaseContainer::value_type newElem )
privateinherited

Handle element assignment from a base pointer.

Parameters
posPosition in the container to assign.
newElemThe new element to assign.

The old element is freed if this container owns elements. Auxiliary data are copied if appropriate.

◆ assignElement()

void DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::assignElement ( typename BaseContainer::iterator pos,
value_type newElem )
privateinherited

Handle element assignment.

Parameters
posPosition in the container to assign.
newElemThe new element to assign.

The old element is freed if this container owns elements. Auxiliary data are copied if appropriate.

◆ at()

const CscRawData * DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::at ( size_type n) const
inherited

Access an element, as an rvalue.

Parameters
nArray index to access.
Returns
The element at n.

Will raise std::out_of_range if the index is out-of-bounds. Note that we return a const T* rather than a reference.

◆ auxbase()

const SG::AuxVectorBase & DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::auxbase ( ) const
inherited

Convert to AuxVectorBase.

Needed to get AuxVectorBase from a ConstDataVector. Present in DataVector as well for consistency. We only really need it in the base class; however, root6 fails constructing a TMethodCall for this if there is virtual derivation. A workaround is to redeclare this in the derived classes too.

◆ back()

const CscRawData * DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::back ( ) const
inherited

Access the last element in the collection as an rvalue.

Returns
The last element in the collection.

No checking is done to ensure that the container is not empty. Note that we return a const T* rather than a reference.

◆ baseOffset()

int DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::baseOffset ( const std::type_info & ti)
staticinherited

Return the offset of a base DataVector class.

Parameters
tistd::type_info of the desired class.

If ti represents a DataVector base class of this one, then return the offset of that base class. Otherwise, return -1.

This function is here due to limitations of root 6, which can't calculate these offsets correctly from the dictionary if virtual derivation is used.

◆ baseOffset1()

int DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::baseOffset1 ( const char * p,
const DataVector< CscRawData > & dv,
const std::type_info & ti )
staticinherited

Helper for baseOffset.

Parameters
pPointer to the start of the top-level object.
dvReference to the DataVector object.
tistd::type_info of the desired class.

If ti represents a DataVector base class of this one, then return the offset of that base class. Otherwise, return -1.

◆ begin()

const_iterator DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::begin ( ) const
noexceptinherited

Return a const_iterator pointing at the beginning of the collection.

Returns
A const_iterator.

Note that dereferencing the iterator will yield a const T* rather than a reference.

◆ calAmplitude()

uint8_t CscRawDataCollection::calAmplitude ( ) const

Calibration pulser amplitude.

Definition at line 39 of file CscRawDataCollection.cxx.

39 {
40 return (m_eventType >> 24) & 0x3F;
41}

◆ calEnabled()

bool CscRawDataCollection::calEnabled ( ) const

is calibration enabled?

Definition at line 54 of file CscRawDataCollection.cxx.

54 {
55 return (m_eventType >> 30) & 0x1;
56}

◆ calLayer()

uint8_t CscRawDataCollection::calLayer ( ) const

Calibration layer.

Definition at line 34 of file CscRawDataCollection.cxx.

34 {
35 return (m_eventType >> 16) & 0x3F;
36}

◆ capacity()

size_type DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::capacity ( ) const
noexceptinherited

Returns the total number of elements that the collection can hold before needing to allocate more memory.

◆ cbegin()

const_iterator DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::cbegin ( ) const
noexceptinherited

Return a const_iterator pointing at the beginning of the collection.

Returns
A const_iterator.

Note that dereferencing the iterator will yield a const T* rather than a reference.

◆ cend()

const_iterator DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::cend ( ) const
noexceptinherited

Return a const_iterator pointing past the end of the collection.

Returns
A const_iterator.

Note that dereferencing the iterator will yield a const T* rather than a reference.

◆ clear()

void DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::clear ( )
inherited

Erase all the elements in the collection.

Erase all the elements in the collection, and reset the ownership mode.

If the container owns its elements, then the removed elements will be deleted. Any duplicates will be removed in this process, but don't rely on this.

Parameters
ownPolicyThe new ownership policy of the container.
trackIndicesThe index tracking policy.

If the container owns its elements, then the removed elements will be deleted. Any duplicates will be removed in this process, but don't rely on this.

◆ clearMostDerived()

void DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::clearMostDerived ( )
protectedinherited

Clear m_isMostDerived for this instance and for all bases.

Called from the constructor after setting m_isMostDerived.

◆ crbegin()

const_reverse_iterator DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::crbegin ( ) const
noexceptinherited

Return a const_reverse_iterator pointing past the end of the collection.

Returns
A const_reverse_iterator.

Note that dereferencing the iterator will yield a const T* rather than a reference.

◆ crend()

const_reverse_iterator DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::crend ( ) const
noexceptinherited

Return a const_reverse_iterator pointing at the beginning of the collection.

Returns
A const_reverse_iterator.

Note that dereferencing the iterator will yield a const T* rather than a reference.

◆ dataType()

const std::vector< uint8_t > & CscRawDataCollection::dataType ( ) const
inline

Definition at line 116 of file CscRawDataCollection.h.

116{ return m_dataType; }

◆ do_cast()

const CscRawData * DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::do_cast ( const typename PtrVector::value_type p)
staticinherited

Helper to shorten calls to DataModel_detail::DVLCast.

Parameters
pThe value to convert.
Returns
The value as a const T*.

The conversion will be done with static_cast if possible, with dynamic_cast otherwise.

◆ do_cast_nc()

CscRawData * DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::do_cast_nc ( typename PtrVector::value_type p)
staticinherited

Helper to shorten calls to DataModel_detail::DVLCast.

Parameters
pThe value to convert.
Returns
The value as a T*.

The conversion will be done with static_cast if possible, with dynamic_cast otherwise.

◆ dv_typeid()

virtual const std::type_info & DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::dv_typeid ( ) const
overrideprivatevirtualinherited

Find the most-derived DataVector class in the hierarchy.

Returns
The type_info for the class for which this method gets run.

This is used to generate a nice error message when the most-derived check for insertions fails. Every DataVector defines this virtual method, so when it's called, the one corresponding to the most-derived DataVector gets run.

◆ dvlinfo()

const DataModel_detail::DVLInfoBase & DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::dvlinfo ( )
staticinherited

Return the DV/DL info struct for this class.

This can be used to make sure that it's instantiated.

◆ dvlinfo_v()

virtual const DataModel_detail::DVLInfoBase & DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::dvlinfo_v ( ) const
overridevirtualinherited

Return the DV/DL info struct for this class.

This can be used to make sure that it's instantiated.

◆ emplace()

iterator DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::emplace ( iterator position,
value_type pElem )
inherited

Add a new element to the collection.

Parameters
positionIterator before which the element will be added.
pElemThe element to add to the collection.
Returns
An iterator that points to the inserted data.

The container's ownership policy will determine if it takes ownership of the new element.

Note: this method may only be called using the most derived DataVector in the hierarchy.

For DataVector, this is just the same as insert. It's included just for interface compatibility with std::vector.

◆ emplace_back()

value_type DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::emplace_back ( value_type pElem)
inherited

Add an element to the end of the collection.

Parameters
pElemThe element to add to the collection.

The container's ownership policy will determine if it takes ownership of the new element.

Note: this method may only be called using the most derived DataVector in the hierarchy.

For DataVector, this is like the same as push_back, and it returns the pushed element. It's included just for interface compatibility with std::vector.

◆ empty()

bool DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::empty ( ) const
nodiscardnoexceptinherited

Returns true if the collection is empty.

◆ end()

const_iterator DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::end ( ) const
noexceptinherited

Return a const_iterator pointing past the end of the collection.

Returns
A const_iterator.

Note that dereferencing the iterator will yield a const T* rather than a reference.

◆ erase()

iterator DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::erase ( iterator position)
inherited

Remove element at a given position.

Parameters
positionIterator pointing to the element to be removed.
Returns
An iterator pointing to the next element (or end()).

If the container owns its elements, then the pointed-to element will be deleted.

◆ eventType()

uint32_t CscRawDataCollection::eventType ( ) const
inline

Definition at line 120 of file CscRawDataCollection.h.

120{ return m_eventType; }

◆ firstBitSummary()

uint8_t CscRawDataCollection::firstBitSummary ( ) const
inline

Definition at line 119 of file CscRawDataCollection.h.

119{ return m_firstBitSummary; }

◆ front()

const CscRawData * DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::front ( ) const
inherited

Access the first element in the collection as an rvalue.

Returns
The first element in the collection.

No checking is done to ensure that the container is not empty. Note that we return a const T* rather than a reference.

◆ get()

const CscRawData * DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::get ( size_type n) const
inherited

Access an element, as an rvalue.

Parameters
nArray index to access.
Returns
The element at n.

This is a synonym for operator[] const, to be used when calling from root (where we can't readily call just the const version of a method).

◆ identify()

uint16_t CscRawDataCollection::identify ( ) const
inline

access methods

Definition at line 107 of file CscRawDataCollection.h.

107{return m_id;}

◆ identifyHash()

IdentifierHash CscRawDataCollection::identifyHash ( ) const
inline

Returns the OFFLINE identifier hash for this collection.

Definition at line 110 of file CscRawDataCollection.h.

110{return m_idHash;}

◆ insert()

iterator DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::insert ( iterator position,
value_type pElem )
inherited

Add a new element to the collection.

Parameters
positionIterator before which the element will be added.
pElemThe element to add to the collection.
Returns
An iterator that points to the inserted data.

The container's ownership policy will determine if it takes ownership of the new element.

Note: this method may only be called using the most derived DataVector in the hierarchy.

◆ insertMove()

void DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::insertMove ( iterator position,
DataVector< CscRawData > & other )
inherited

Insert the contents of another DataVector, with auxiliary data copied via move semantics.

Parameters
positionIterator before which the new elements will be added.
otherThe vector to add.

The ownership mode of this vector must be the same as other; otherwise, an exception will be thrown.

If both vectors are view vectors, then this is the same as insert (position, other.begin(), other.end()) .

Otherwise, the elements from other will be inserted into this vector. This vector will take ownership of the elements, and the ownership mode of other will be changed to VIEW_ELEMENTS. Auxiliary data for these elements will be transferred, using move semantics if possible. (Thus, the auxiliary store for other may be modified and must not be locked.) Finally, the auxiliary store pointer for other will be cleared (but the store itself will not be deleted since it's not owned by the vector).

Note: this method may only be called using the most derived DataVector in the hierarchy.

◆ iter_swap()

void DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::iter_swap ( iterator a,
iterator b )
staticinherited

Swap the referents of two DataVector iterators.

Parameters
aThe first iterator for the swap.
bThe second iterator for the swap.

◆ latency()

uint16_t CscRawDataCollection::latency ( ) const

latency - from the detector Event Type

Definition at line 16 of file CscRawDataCollection.cxx.

16 {
17
19 return (m_eventType >> 8) & 0xFF;
20
21}

◆ max_size()

size_type DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::max_size ( ) const
noexceptinherited

Returns the size() of the largest possible collection.

◆ neutron()

bool CscRawDataCollection::neutron ( ) const

is neutron rejection ON?

Definition at line 49 of file CscRawDataCollection.cxx.

49 {
50 return (m_eventType >> 23) & 0x1;
51}

◆ numRPU()

uint16_t CscRawDataCollection::numRPU ( ) const
inline

Definition at line 114 of file CscRawDataCollection.h.

114{ return m_rpuID.size(); }

◆ numSamples()

uint16_t CscRawDataCollection::numSamples ( ) const

expected number of samples this is the first word in the ROD data block

Definition at line 8 of file CscRawDataCollection.cxx.

8 {
9
12 return (m_eventType & 0xFF);
13
14}

◆ operator[]()

const CscRawData * DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::operator[] ( size_type n) const
inherited

Access an element, as an rvalue.

Parameters
nArray index to access.
Returns
The element at n.

No bounds checking is done. Note that we return a const T* rather than a reference.

◆ ownPolicy()

SG::OwnershipPolicy DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::ownPolicy ( ) const
inherited

Return the ownership policy setting for this container.

◆ pop_back()

void DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::pop_back ( )
inherited

Remove the last element from the collection.

If the container owns its elements, then the removed element will be deleted.

◆ push_back()

value_type DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::push_back ( value_type pElem)
inherited

Add an element to the end of the collection.

Parameters
pElemThe element to add to the collection.

The container's ownership policy will determine if it takes ownership of the new element.

Note: this method may only be called using the most derived DataVector in the hierarchy.

Returns the pushed pointer.

◆ push_new()

size_type DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::push_new ( size_type n,
F alloc )
inherited

Create and add a number of new elements to the end of the container.

Parameters
nThe number of new elements to add.
allocFunctional to call to allocate a new element to push. Should be callable like T* = alloc(); For example:
dv.push_new (n, [](){ return new Foo; });
Definition FooBar.h:9
It may also be useful to allocate from a DataPool.

Note: this method may only be called using the most derived DataVector in the hierarchy.

Returns the original size of the vector.

◆ rate()

uint8_t CscRawDataCollection::rate ( ) const

the rate could be 25 or 50 ns

the sampling rate - 50 or 25 ns depending on the last bit of EventType

Definition at line 24 of file CscRawDataCollection.cxx.

24 {
25
27 bool rateBit = (m_eventType >> 31) & 0x1;
28 uint8_t samplingRate = 50;
29 if ( rateBit ) samplingRate = 25;
30 return samplingRate;
31}

◆ rbegin()

const_reverse_iterator DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::rbegin ( ) const
noexceptinherited

Return a const_reverse_iterator pointing past the end of the collection.

Returns
A const_reverse_iterator.

Note that dereferencing the iterator will yield a const T* rather than a reference.

◆ rend()

const_reverse_iterator DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::rend ( ) const
noexceptinherited

Return a const_reverse_iterator pointing at the beginning of the collection.

Returns
A const_reverse_iterator.

Note that dereferencing the iterator will yield a const T* rather than a reference.

◆ reserve()

void DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::reserve ( size_type n)
inherited

Attempt to preallocate enough memory for a specified number of elements.

Parameters
nNumber of elements required.

◆ resize()

void DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::resize ( size_type sz)
inherited

Resizes the collection to the specified number of elements.

Parameters
szThe new size of the collection.

Note that this function differs from the standard in that it does not allow specifying the value of any inserted elements. They will always be 0.

If the container is shrunk, elements will be deleted as with erase().

◆ resortAux()

void DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::resortAux ( iterator beg,
iterator end )
inherited

Reset indices / reorder aux data after elements have been permuted.

Parameters
begStart of the range of elements to process.
endEnd of the range of elements to process.

Call this after some operation that has permuted the elements in the container (such as sort). The index information in the elements will be used to permute all auxiliary data in the same way. Finally, all the indices will be reset in the correct order.

◆ rodId()

uint16_t CscRawDataCollection::rodId ( ) const
inline

Definition at line 112 of file CscRawDataCollection.h.

112{return m_rodId;}

◆ rpuID()

const std::vector< uint16_t > & CscRawDataCollection::rpuID ( ) const
inline

Definition at line 115 of file CscRawDataCollection.h.

115{ return m_rpuID; }

◆ samplingPhase()

bool CscRawDataCollection::samplingPhase ( ) const
inline

Definition at line 117 of file CscRawDataCollection.h.

117{return m_samplingPhase; }

◆ scaAddress()

uint32_t CscRawDataCollection::scaAddress ( ) const
inline

Definition at line 123 of file CscRawDataCollection.h.

123{ return m_scaAddress; }

◆ set_calAmplitude()

void CscRawDataCollection::set_calAmplitude ( const uint8_t calAmp)

set the calibration amplitude

Definition at line 97 of file CscRawDataCollection.cxx.

97 {
98 uint32_t la = m_eventType & 0xC0FFFFFF;
99 m_eventType = la | (calAmp << 24);
100}
setEventNumber uint32_t

◆ set_calLayer()

void CscRawDataCollection::set_calLayer ( const uint8_t calLay)

set the layer number where the calibration is been done

set the chamber layer number where calibration is being done

Definition at line 103 of file CscRawDataCollection.cxx.

103 {
104 uint32_t la = m_eventType & 0xFFC0FFFF;
105 m_eventType = la | (calLay << 16);
106
107}

◆ set_dataType() [1/2]

void CscRawDataCollection::set_dataType ( const std::vector< uint8_t > & dataType)
inline

Definition at line 193 of file CscRawDataCollection.h.

194 { m_dataType = dataType; }

◆ set_dataType() [2/2]

void CscRawDataCollection::set_dataType ( const unsigned int i,
const uint8_t dataType )
inline

Definition at line 190 of file CscRawDataCollection.h.

190 {
191 if ( i < m_dataType.size() ) m_dataType[i] = dataType;
192 }

◆ set_enableCal()

void CscRawDataCollection::set_enableCal ( )

is calibration enabled

calibration data?

Definition at line 91 of file CscRawDataCollection.cxx.

91 {
92 uint32_t en = m_eventType & 0xBFFFFFFF;
93 m_eventType = en | (1 << 30);
94}

◆ set_eventType()

void CscRawDataCollection::set_eventType ( const uint32_t eventType)
inline

Definition at line 159 of file CscRawDataCollection.h.

◆ set_firstBitSummary()

void CscRawDataCollection::set_firstBitSummary ( const uint8_t summary)
inline

◆ set_neutron()

void CscRawDataCollection::set_neutron ( )

is neutron rejection applied?

neutron rejection applied

Definition at line 85 of file CscRawDataCollection.cxx.

85 {
86 uint32_t ne = m_eventType & 0xFFBFFFFF;
87 m_eventType = ne | (1 << 23);
88}

◆ set_samplingPhase() [1/2]

void CscRawDataCollection::set_samplingPhase ( )
inline

Definition at line 154 of file CscRawDataCollection.h.

154{ m_samplingPhase = true; }

◆ set_samplingPhase() [2/2]

void CscRawDataCollection::set_samplingPhase ( bool flag)
inline

Definition at line 155 of file CscRawDataCollection.h.

bool flag
Definition master.py:29

◆ set_scaAddress()

void CscRawDataCollection::set_scaAddress ( const uint32_t sca)
inline

Definition at line 161 of file CscRawDataCollection.h.

161{ m_scaAddress = sca; }

◆ set_sparsified()

void CscRawDataCollection::set_sparsified ( )

is this sparsified data?

Definition at line 79 of file CscRawDataCollection.cxx.

79 {
80 uint32_t sp = m_eventType & 0xFFDFFFFF;
81 m_eventType = sp | (1 << 22);
82}
static Double_t sp

◆ set_spuCount() [1/2]

void CscRawDataCollection::set_spuCount ( const std::vector< uint16_t > & spuCount)
inline

Definition at line 164 of file CscRawDataCollection.h.

165 { m_spuCount = spuCount; }
uint16_t spuCount(unsigned int i) const
return the SPU cluster counts For all the non-precision layers,

◆ set_spuCount() [2/2]

void CscRawDataCollection::set_spuCount ( unsigned int i,
uint16_t count )
inline

Definition at line 162 of file CscRawDataCollection.h.

163 { if ( i<10 ) m_spuCount[i]=count; }
int count(std::string s, const std::string &regx)
count how many occurances of a regx are in a string
Definition hcg.cxx:146

◆ set_triggerType() [1/2]

void CscRawDataCollection::set_triggerType ( )
inline

Definition at line 156 of file CscRawDataCollection.h.

156{ m_triggerType = true; }

◆ set_triggerType() [2/2]

void CscRawDataCollection::set_triggerType ( bool flag)
inline

Definition at line 157 of file CscRawDataCollection.h.

157{ m_triggerType = flag; }

◆ setIdentifyHash()

void CscRawDataCollection::setIdentifyHash ( const IdentifierHash & idHash)
inline

sets the OFFLINE IdentifierHash for this collection

Definition at line 153 of file CscRawDataCollection.h.

153{ m_idHash=idHash;}

◆ setLatency()

void CscRawDataCollection::setLatency ( const uint16_t latency)

insert the latency into the detector event type word

Definition at line 73 of file CscRawDataCollection.cxx.

73 {
74 uint32_t lt = m_eventType & 0xFFFF00FF;
75 m_eventType = lt | latency;
76}

◆ setMostDerived()

virtual void DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::setMostDerived ( )
overrideprotectedvirtualinherited

Set m_isMostDerived for this instance and clear it for all bases.

Called from testInsert if the test fails. The flag may not have been set if this container was made via copy construction, so set it appropriately now so we can test again.

◆ setNumDPU()

void CscRawDataCollection::setNumDPU ( const uint16_t numDPU)

obsolete - just backward compatibility with old data

Definition at line 110 of file CscRawDataCollection.cxx.

110 {
111 m_numRPU = numDPU;
112}

◆ setNumSamples()

void CscRawDataCollection::setNumSamples ( const uint16_t n)

insert the number of samples into the detector event type word

Definition at line 67 of file CscRawDataCollection.cxx.

67 {
68 uint32_t ns = m_eventType & 0xFFFFFF00;
69 m_eventType = ns | n;
70}

◆ setOnlineId()

void CscRawDataCollection::setOnlineId ( uint16_t id)
inline

◆ setRodId()

void CscRawDataCollection::setRodId ( uint16_t rodId)
inline

set methods - the name should be self-descriptive

Definition at line 148 of file CscRawDataCollection.h.

148{m_rodId = rodId;}

◆ setRPUID()

void CscRawDataCollection::setRPUID ( const std::vector< uint16_t > & rpuID)
inline

Definition at line 187 of file CscRawDataCollection.h.

187{ m_rpuID = rpuID; }

◆ setSamplingRate()

void CscRawDataCollection::setSamplingRate ( const uint16_t rate)

insert the rate into the detector event type word - the rate can 20 or 40 MHz

Definition at line 59 of file CscRawDataCollection.cxx.

59 {
60 uint32_t rt = ( rate == 20 ) ? 0x0 : 0x1;
61 uint32_t rateWord = 0x7FFF & m_eventType;
62 m_eventType = rateWord | ( rt << 31 );
63
64}
uint8_t rate() const
the rate could be 25 or 50 ns

◆ setSubDetectorId()

void CscRawDataCollection::setSubDetectorId ( uint16_t subDetectorId)
inline

Definition at line 149 of file CscRawDataCollection.h.

◆ shift()

void DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::shift ( size_t pos,
ptrdiff_t offs )
privateinherited

Shift the auxiliary elements of the container.

Parameters
posThe starting index for the shift.
offsThe (signed) amount of the shift.

The elements in the container should have already been shifted; this operation will then adjust the element indices and also shift the elements in the vectors for all aux data items. offs may be either positive or negative.

If offs is positive, then the container is growing. The container size should be increased by offs, the element at pos moved to pos + offs, and similarly for following elements. The elements between pos and pos + offs should be default-initialized.

If offs is negative, then the container is shrinking. The element at pos should be moved to pos + offs, and similarly for following elements. The container should then be shrunk by -offs elements (running destructors as appropriate).

◆ shrink_to_fit()

void DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::shrink_to_fit ( )
inherited

◆ size()

size_type DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::size ( ) const
noexceptinherited

Returns the number of elements in the collection.

Could in principle be inherited from the base class, but redeclared in the derived class to avoid root6 bugs.

◆ sort()

void DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::sort ( )
inherited

Sort the container.

This just sorts by pointer value, so it's probably not very useful.

◆ sparsified()

bool CscRawDataCollection::sparsified ( ) const

is sparsified data?

is neutron rejection ON? is calibration enabled?

Definition at line 44 of file CscRawDataCollection.cxx.

44 {
45 return (m_eventType >> 22) & 0x1;
46}

◆ spuCount() [1/2]

const std::vector< uint16_t > & CscRawDataCollection::spuCount ( ) const
inline

Definition at line 145 of file CscRawDataCollection.h.

145{ return m_spuCount; }

◆ spuCount() [2/2]

uint16_t CscRawDataCollection::spuCount ( unsigned int i) const
inline

return the SPU cluster counts For all the non-precision layers,

Definition at line 139 of file CscRawDataCollection.h.

140 {
141 if (i<10) return m_spuCount[i];
142 else return 0x0;
143 }

◆ stdcont()

const PtrVector & DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::stdcont ( ) const
inherited

Return the underlying std::vector of the container.

Returns
Reference to the std::vector actually holding the collection.

Note that DataVector<T>::stdcont does not necessarily return a std::vector<T*> if DataVector inheritance is being used.

◆ subDetectorId()

uint16_t CscRawDataCollection::subDetectorId ( ) const
inline

Definition at line 113 of file CscRawDataCollection.h.

113{return m_subDetectorId;}

◆ swap()

void DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::swap ( DataVector< CscRawData > & rhs)
inherited

Swap this collection with another.

Parameters
rhsThe collection with which to swap.

Ownership is swapped along with the collection content.

Note: this method may only be called using the most-derived DataVector in the hierarchy. The rhs must also be referenced using the most-derived DataVector.

◆ swapElement()

void DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::swapElement ( size_type index,
value_type newElem,
reference oldElem )
inherited

Swap one element out of the container.

Parameters
indexIndex of the element in the container to swap.
newElemNew element to put in the container. May be 0.
oldElemReference to receive the element removed from the container.

Reference oldElem is initialized with element index of the collection (no bounds checking). Then element index is set to newElem. If the collection owns its elements, then it will take ownership of newElem and release (without deleting) the element returned through oldElem.

Note: this method may only be called using the most derived DataVector in the hierarchy.

◆ testInsert()

void DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::testInsert ( const char * op)
inherited

Test if we can insert; raise an exception if not.

Parameters
opDescription of the attempted operation.

In order to maintain type-safety, we can only allow insertions using the most-derived instance of DataVector. This checks this by testing the m_isMostDerived, which is set by the constructors to true only for the most-derived instance. If the test fails, we call to potentially out-of-line code to continue.

◆ testInsertOol()

void DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::testInsertOol ( const char * op)
inherited

Test if we can insert; raise an exception if not.

Parameters
opDescription of the attempted operation.

This continues the test of testInsert. There is one case where m_isMostDerived may not be set correctly. If this container was made via copy construction, then all the m_isMostDerived flags will be false. So we call setMostDerived to set the flags correctly and test again. If the test fails again, then we raise an exception.

◆ triggerType()

bool CscRawDataCollection::triggerType ( ) const
inline

Definition at line 118 of file CscRawDataCollection.h.

118{ return m_triggerType; }

Member Data Documentation

◆ has_virtual

const bool DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::has_virtual
staticinherited

This is true for any DataVector class if we need to use virtual derivation to get to the base DataVector class.

Definition at line 802 of file DataVector.h.

◆ m_dataType

std::vector<uint8_t> CscRawDataCollection::m_dataType
private

Definition at line 55 of file CscRawDataCollection.h.

◆ m_eventType

uint32_t CscRawDataCollection::m_eventType
private

event type/data type

Definition at line 51 of file CscRawDataCollection.h.

◆ m_firstBitSummary

uint8_t CscRawDataCollection::m_firstBitSummary
private

First Bit Summary.

Definition at line 48 of file CscRawDataCollection.h.

◆ m_id

uint32_t CscRawDataCollection::m_id
private

Identifier of this collection.

Definition at line 29 of file CscRawDataCollection.h.

◆ m_idHash

IdentifierHash CscRawDataCollection::m_idHash
private

Offline IdentifierHash for this collection.

Definition at line 32 of file CscRawDataCollection.h.

◆ m_isMostDerived

SG::IsMostDerivedFlag DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::m_isMostDerived
privateinherited

This flag is true if this DV instance is the most-derived one.

We set this to true in the top-level constructor; the constructor then calls clearMostDerived on the base classes.

Definition at line 2059 of file DataVector.h.

◆ m_numRPU

uint16_t CscRawDataCollection::m_numRPU
private

number of RPU

Definition at line 39 of file CscRawDataCollection.h.

◆ m_rodId

uint16_t CscRawDataCollection::m_rodId
private

online ROD Identifier

Definition at line 35 of file CscRawDataCollection.h.

◆ m_rpuID

std::vector<uint16_t> CscRawDataCollection::m_rpuID
private

RPU ID and data type.

Definition at line 54 of file CscRawDataCollection.h.

◆ m_samplingPhase

bool CscRawDataCollection::m_samplingPhase
private

sampling phase

Definition at line 42 of file CscRawDataCollection.h.

◆ m_scaAddress

uint32_t CscRawDataCollection::m_scaAddress
private

SCA Address.

Definition at line 64 of file CscRawDataCollection.h.

◆ m_spuCount

std::vector<uint16_t> CscRawDataCollection::m_spuCount
private

cluster counts for 10 SPU: 5 SPU in each chamber or RPU!

For Chamber CSS, RPU ID = 5 and for CSL RPU ID = 11 For CSS, SPU ID goes from 0-4 and 5-9 for CSS The non-precision SPU are at index 4 and 9 in the list

Definition at line 61 of file CscRawDataCollection.h.

◆ m_subDetectorId

uint16_t CscRawDataCollection::m_subDetectorId
private

Definition at line 36 of file CscRawDataCollection.h.

◆ m_triggerType

bool CscRawDataCollection::m_triggerType
private

trigger Type

Definition at line 45 of file CscRawDataCollection.h.

◆ must_own

bool DataVector< CscRawData, typename DataVectorBase<CscRawData>::Base >::must_own
staticconstexprinherited

If true, then this type must own its contents.

Definition at line 860 of file DataVector.h.


The documentation for this class was generated from the following files: