|
ATLAS Offline Software
|
Go to the documentation of this file.
81 #ifndef LARRAWCONDITIONS_LARCOMPACTSUBSET_H
82 #define LARRAWCONDITIONS_LARCOMPACTSUBSET_H
872 template <
class T,
class OTHERIT,
class COPIER>
917 #endif // not LARRAWCONDITIONS_LARCOMPACTSUBSET_H
std::vector< float > m_data
The wave data.
LArCompactSubsetChannelProxy(unsigned int chan, LArCompactSubsetVector &subset)
Constructor.
size_t size() const
Return the size of this vector (number of channels for this FEB).
iterator begin()
Begin iterator.
const_iterator operator-(size_t delta) const
Adjust iterator backwards.
LArVectorProxy getData(unsigned int which, size_t tbin) const
Return one set of wave data from this channel.
const_iterator(unsigned int chan, const LArCompactSubsetVector &subset)
Constructor from channel index and subset reference.
LArCompactSubsetConstChannelVector second
ILArOFC::OFCRef_t OFC_b(size_t tbin) const
unsigned int FebId
Type for FEB IDs. Would be better to get this from somewhere common...
LArCompactSubsetConstChannelProxy operator[](size_t i) const
Vector indexing.
void setData(unsigned int which, unsigned int chan, size_t tbin, size_t chanSize, const LArVectorProxy &from)
Set wave data for a channel.
size_t size() const
Return the size of this vector.
size_t getSize() const
Return the number of time bins for this channel.
This acts as a pointer to a LArCompactSubsetChannelProxy.
const LArCompactSubsetVector & m_subset
The subset within which we live.
size_t getChanSize() const
Return the number of time bins used in this subset.
LArCompactSubsetConstChannelProxy operator*() const
Iterator dereference.
LArCompactSubsetChannelVectorPointer(const LArCompactSubsetChannelVector *p)
Constructor.
LArCompactSubsetConstChannelVector(size_t febIndex, const LArCompactSubsetVector *subset)
Constructor.
size_t m_febIndex
Index we're currently referencing.
LArCompactSubsetChannelProxy()
Default constructor.
LArCompactSubsetConstFebPair operator*()
‘Dereference’ the iterator.
unsigned int m_nSamples
Number of samples per wave. 0 before any waves have been added.
LArCompactSubsetVector & m_subset
The subset within which we live.
void resize(size_t sz)
Change the size of the vector.
const_iterator & operator++()
Advance iterator.
float timeBinWidth() const
Return the time bin width for this channel.
size_t shapeDerSize() const
const_iterator end() const
End iterator.
static void copySubset(OTHERIT otherBeg, OTHERIT otherEnd, LArCompactSubsetVector &to, COPIER copier)
Helper used by LArConditionsSubset::assign.
This acts like a FEB ID/channel vector pair.
bool operator!=(const const_iterator &other) const
Iterator inequality test.
LArCompactSubsetFebPair operator*()
‘Dereference’ the iterator.
unsigned int m_chan
Channel index to which we're referring.
LArCompactSubsetChannelVector(size_t febIndex, LArCompactSubsetVector *subset)
Constructor.
This acts like a vector of channel objects.
This acts like a FEB ID/channel vector pair.
LArCompactSubsetConstFebPair(size_t febIndex, const LArCompactSubsetVector &subset)
Constructor.
const LArCompactSubsetVector * m_subset
The subset within which we live.
iterator operator+(size_t delta)
Adjust iterator.
size_t getSize(unsigned int chan) const
Return the number of time bins for channel index CHAN.
const_iterator(size_t febIndex, const LArCompactSubsetVector &subset)
Constructor.
LArCompactSubsetConstChannelProxy()
Default constructor.
LArCompactSubsetChannelVector operator*()
‘Dereference’ the pointer.
const_iterator end() const
End iterator.
LArCompactSubsetVector * m_subset_nc
Subset within which we live (non-const). Null for an invalid proxy.
LArVectorProxy getData(unsigned int which, unsigned int chan, size_t tbin) const
Retrieve wave data.
std::vector< int > m_slots
Map from channel indices to wave slots.
void resize(size_t sz)
Resize this vector.
unsigned int chanIndex(unsigned int febIndex) const
Return the index of the first channel for a FEB index.
A more compact way of storing shape/ofc data — const portion.
unsigned int m_chan
Channel index at which we're currently pointing.
ILArShape::ShapeRef_t shapeDer(size_t tbin) const
const_iterator()
Default constructor.
static const unsigned int nWaves
Number of wave types we store.
size_t size() const
Return the size of this vector (number of channels for this FEB).
LArCompactSubsetFebPair operator[](size_t i)
Vector indexing.
ILArShape::ShapeRef_t shape(size_t tbin) const
bool operator==(const const_iterator &other) const
Compare iterators for equality.
float m_timeOffset
Time parameters.
LArCompactSubsetChannelPointer(const LArCompactSubsetChannelProxy *p)
Constructor.
const LArCompactSubsetVector * m_subset
Subset within which we live. Null for an invalid proxy.
size_t m_febIndex
The index of the FEB with which this vector is associated.
bool operator!=(const const_iterator &other) const
Compare iterators for inequality.
const_iterator & operator++()
Iterator increment.
const FebId & febIdRef(size_t febIndex) const
Return a reference to a FEB ID variable.
iterator & operator++()
Advance iterator.
size_t febSize(unsigned int febIndex) const
Return the number of channels for a given FEB index.
This acts like a vector of channel objects — const version.
const LArCompactSubsetVector * m_subset
Subset within which we live.
ILArOFC::OFCRef_t OFC_a(size_t tbin) const
const_iterator iterator
No separate non-const iterator.
const_iterator begin() const
Begin iterator.
difference_type operator-(const const_iterator &other) const
Iterator difference.
This acts like a vector of FEB ID / channel vector pairs.
void assign(const LAr2DWaveBase &other)
Initialize the referenced data from a standalone object.
Iterator for LArCompactSubsetChannelVector.
void shrink_to_fit()
Release any allocated but unused storage.
void resizeChanVec(size_t febIndex, size_t sz)
Resize one channel vector.
bool operator==(const iterator &other) const
Compare iterators for equality.
float timeOffset(unsigned int chan) const
Return the time offset for channel index CHAN.
const_iterator operator+(size_t delta) const
Adjust iterator.
LArCompactSubsetChannelVectorPointer()
Default constructor.
FebId & febIdRef(size_t febIndex)
Return a reference to a FEB ID variable.
A more compact way of storing shape/ofc data — non-const portion.
size_t m_febIndex
The index of the FEB with which this vector is associated.
iterator end()
End iterator.
LArCompactSubsetChannelProxy & operator=(const LAr2DWaveBase &other)
Initialize the referenced data from a standalone object.
LArCompactSubsetConstChannelVector operator*() const
‘Dereference’ the pointer.
bool operator!=(const iterator &other) const
Compare iterators for inequality.
Per-channel class holding wave information in time bins.
std::vector< unsigned int > m_indices
Map from FEB indices to channel indices.
const LArCompactSubsetChannelVector * operator->() const
‘Dereference’ the pointer.
bool operator==(const const_iterator &other) const
Iterator equality test.
LArCompactSubsetVector(size_t nfeb=0)
Constructor.
float timeOffset() const
Return the time offset for this channel.
LArCompactSubsetVector * m_subset
The subset within which we live.
float timeBinWidth(unsigned int chan) const
Return the time bin width for channel index CHAN.
void setTimings(unsigned int chan, float timeOffset, float timeBinWidth)
Set timing information for a channel.
difference_type operator-(const iterator &other)
Iterator difference.
LArCompactSubsetChannelVector second
LArCompactSubsetFebPair(size_t febIndex, LArCompactSubsetVector &subset)
Constructor.
LArCompactSubsetChannelProxy operator[](size_t i)
Vector indexing.
iterator(size_t febIndex, LArCompactSubsetVector &subset)
Constructor.
const_iterator begin() const
Begin iterator.
setBGCode setTAP setLVL2ErrorBits bool
LArCompactSubsetConstChannelProxy(unsigned int chan, const LArCompactSubsetVector &subset)
Constructor.
LArCompactSubsetChannelProxy operator*() const
‘Dereference’ the pointer.
size_t m_febIndex
Index we're currently referencing.
This acts as a pointer to a LArCompactSubsetChannelVector.
std::vector< FebId > m_febids
Vector of stored FebIds.
unsigned int m_chanSize
Number of time bins per channels. 0 before any waves have been added.
Proxy for accessing a range of float values like a vector.
bool isValid() const
Test to see if the proxy is valid.