![]() |
ATLAS Offline Software
|
Implementation of the interface ILArAutoCorr for MC Derives from LArAutoCorrComplete, and implements the phi-z symmetry. More...
#include <LArAutoCorrMC.h>
Public Member Functions | |
| LArAutoCorrMC () | |
| virtual | ~LArAutoCorrMC () |
| virtual StatusCode | initialize () |
| Initialization done after creation or read back - derived classes may augment the functionality. | |
| virtual AutoCorrRef_t | autoCorr (const HWIdentifier &CellID, int gain) const |
| void | set (const HWIdentifier &CellID, int gain, const std::vector< float > &vAutoCorr) |
| void | setPdata (const HWIdentifier id, const LArAutoCorrP1 &payload, unsigned int gain=0) |
| put payload in persistent data | |
| ConstReference | get (const HWIdentifier id, unsigned int gain=0) const |
| get data with online identifier | |
| unsigned int | coolChannel (const HWIdentifier id, unsigned int gain=0) const |
| Return the COOL channel number for a given online id and gain. | |
| unsigned int | groupingType () const |
| Type of grouping - defined in LArConditionContainerBase.h. | |
| std::string | groupingTypeToString () const |
| Type of grouping - defined in LArConditionContainerBase.h. | |
| unsigned int | groupNumber (unsigned int coolChannel) const |
| Return the group number of a COOL channel (0 - correction group, 1-N for FEB ID groups) | |
| unsigned int | nGroups () const |
| Number of groups - minimum is 2 (1 correction group, 1 FEB ID group) | |
| unsigned int | minGain () const |
| Mininum gain value. | |
| unsigned int | nGains () const |
| Number of gain values. | |
| chan_const_iterator | chan_begin () const |
| Access to Channel numbers via iterators - from MultChanCollection. | |
| chan_const_iterator | chan_end () const |
| chan_size_type | chan_size () const |
| number of channels - from MultChanCollection | |
| iov_const_iterator | iov_begin () const |
| Access to IOVs via iterators - from MultChanCollection. | |
| iov_const_iterator | iov_end () const |
| iov_size_type | iov_size () const |
| number of IOVs - from MultChanCollection | |
| unsigned int | conditionsPerChannel (unsigned int coolChannel) const |
| Statistics: number of conditions per COOL channel. | |
| unsigned int | conditionsPerGroup (unsigned int group) const |
| Statistics: number of conditions per group. | |
| unsigned int | conditionsPerGain (unsigned int gain) const |
| Statistics: number of conditions per gain. | |
| unsigned int | totalNumberOfConditions () const |
| Statistics: total number of conditions. | |
| unsigned int | totalNumberOfCorrections () const |
| Statistics: total number of corrections. | |
| bool | correctionsApplied () const |
| Have corrections been applied? | |
| StatusCode | applyCorrections () |
| apply correction set | |
| StatusCode | undoCorrections () |
| undo corrections that have been already applied | |
| StatusCode | insertCorrection (HWIdentifier id, const LArAutoCorrP1 &cond, unsigned int gain, bool corrChannel=true) |
| access to corrections - | |
| ConstCorrectionIt | undoCorrBegin (unsigned int gain) const |
| get iterator over the Undo-Vector for a certain gain | |
| ConstCorrectionIt | undoCorrEnd (unsigned int gain) const |
| ConstConditionsMapIterator | begin (unsigned int gain) const |
| get iterator for all channels for a gain | |
| ConstConditionsMapIterator | end (unsigned int gain) const |
| end of all channels for this gain | |
| void | removeConditions () |
| Remove conditions leaving the corrections - may be needed to only write out the corrections when both are present. | |
| void | removeConditionsChannel (unsigned int coolChannel) |
| Remove the conditions for a specific cool channel - e.g. | |
| std::vector< unsigned > | completeCorrectionChannels () |
| Fill all non-existing Correction Channels with emtpy subsets This is necessary to terminate the IOV of the previous correction. | |
| bool | merge (const LArConditionsContainer< LArAutoCorrP1 > &other) |
| StatusCode | initializeBase () |
| initialize | |
| void | setGroupingType (GroupingType type) |
| allow group type to be set externally - need to (re)initialize after setting grouping type | |
| StatusCode | setGroupingType (const std::string &groupingStr, MsgStream &logStr) |
| allow group type to be set externally based on a string returns an FAILURE and a message to logStr if unknown string is supplied | |
| const LArOnlineID_Base * | onlineHelper () const |
| provide access to online id helper | |
| const CaloCell_Base_ID * | offlineHelper () const |
| provide access to offline id helper | |
| const FEBIdVector & | febIdVector (unsigned int gain, unsigned int coolChannel) const |
| Access to a FEB ID vector for a given gain and COOL channel. | |
| IOVRange | minRange () const |
| Current minimal IOVRange. | |
| bool | hasUniqueIOV () const |
| Check whether there is a unique IOV for all channels. | |
| void | add (ChanNum chanNum) |
| Adding in channel numbers. | |
| void | addNewStop (const IOVTime &stop) |
| Add new stop time to minRange - make sure that stop is <= to new stop. | |
| void | resetChannelNumbers () |
| Reset channel numbers - needed to allow sorting. | |
| CondMultChanCollImpl * | implementation () |
| Get implementation. | |
Element access. | |
Change the vector capacity to match the current size. Note: this does not affect auxiliary data. | |
| const LArConditionsSubset< LArAutoCorrP1 > * | get (size_type n) const |
| Access an element, as an rvalue. | |
| const LArConditionsSubset< LArAutoCorrP1 > * | operator[] (size_type n) const |
| Access an element, as an rvalue. | |
| const LArConditionsSubset< LArAutoCorrP1 > * | at (size_type n) const |
| Access an element, as an rvalue. | |
| const LArConditionsSubset< LArAutoCorrP1 > * | front () const |
| Access the first element in the collection as an rvalue. | |
| const LArConditionsSubset< LArAutoCorrP1 > * | back () 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. | |
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. | |
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 Member Functions | |
| static bool | applyCorrectionsAtInit (bool setFlag=false, bool flag=true) |
| provide access to flag which determines corrections are applied at initialize, i.e. | |
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. | |
Protected Member Functions | |
| ConstReference | empty () const |
| Access to standard empty value. | |
| StatusCode | initGrouping () |
| void | correctionIndexAndCoolChannel (HWIdentifier id, unsigned int gain, unsigned int &index, unsigned int &coolChannel) |
Protected Attributes | |
| GainMap | m_cached |
| Map indexed by gain providing pointers into the data in the CondMultChanCollection. | |
| GroupingType | m_groupType |
| LArCondFEBIdChanMap | m_febIdChanMap |
| const LArOnlineID_Base * | m_onlineHelper |
| const CaloCell_Base_ID * | m_offlineHelper |
| std::vector< unsigned int > | m_channelToMultChanCollIndex |
| bool | m_isInitialized |
Private Types | |
| typedef std::vector< ConstPointer > | TVector |
| typedef TVector::const_iterator | TVectorIterator |
| typedef std::map< unsigned int, TVector > | TVectorMap |
| typedef TVectorMap::const_iterator | TVectorMapIterator |
| typedef Subset::CorrectionPair | CorrectionPair |
| typedef Subset::CorrectionVec | CorrectionVector |
| typedef Subset::ConstCorrectionVecIt | ConstCorrectionVecIt |
| typedef std::vector< CorrectionVector > | CorrectionVectors |
| typedef DataVector< Subset > | SubsetDV |
| typedef SubsetDV::const_iterator | const_iterator |
| typedef SubsetDV::iterator | iterator |
Private Member Functions | |
| StatusCode | updateConditionsMap (FebId id, unsigned int gain, ConditionsMap &conditionsMap) |
| Update the ConditionsMap for a new FEB ID. | |
| void | sortSubsets () |
| Sort subsets by channel number. | |
Private Attributes | |
| ConstCorrectionIt | m_dummyCorrIt |
| Dummy iterator (returned if requested for invalid gain) | |
| CorrectionVectors | m_correctionsUndo |
| bool | m_correctionsApplied |
| CorrectionVector | m_emptyCorrectionVec |
| CondMultChanCollImpl | m_impl |
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::DVLInfoBase & | dvlinfo_v () const override |
| Return the DV/DL info struct for this class. | |
| const SG::AuxVectorBase & | auxbase () 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. | |
| void | shrink_to_fit () |
| const PtrVector & | stdcont () 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::DVLInfoBase & | dvlinfo () |
| 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. | |
Internal operations. | |
| 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< LArConditionsSubset< LArAutoCorrP1 >, DataVector_BASE >::self | self |
| SG::IsMostDerivedFlag | m_isMostDerived |
| This flag is true if this DV instance is the most-derived one. | |
| 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. | |
| 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. | |
| static int | baseOffset1 (const char *p, const DataVector &dv, const std::type_info &ti) |
Helper for baseOffset. | |
| static const LArConditionsSubset< LArAutoCorrP1 > * | do_cast (const typename PtrVector::value_type p) |
Helper to shorten calls to DataModel_detail::DVLCast. | |
| static LArConditionsSubset< LArAutoCorrP1 > * | do_cast_nc (typename PtrVector::value_type p) |
Helper to shorten calls to DataModel_detail::DVLCast. | |
Implementation of the interface ILArAutoCorr for MC Derives from LArAutoCorrComplete, and implements the phi-z symmetry.
Definition at line 24 of file LArAutoCorrMC.h.
|
inherited |
Definition at line 817 of file DataVector.h.
|
inherited |
Definition at line 33 of file ILArAutoCorr.h.
|
inherited |
Definition at line 854 of file DataVector.h.
|
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.
|
inherited |
Definition at line 807 of file DataVector.h.
|
inherited |
Definition at line 95 of file LArConditionsContainer.h.
|
inherited |
Definition at line 59 of file CondMultChanCollection.h.
|
inherited |
Definition at line 97 of file LArConditionsContainer.h.
|
inherited |
Definition at line 74 of file LArConditionsContainer.h.
|
inherited |
Definition at line 76 of file LArConditionsContainer.h.
|
inherited |
Definition at line 55 of file CondMultChanCollection.h.
|
inherited |
Definition at line 56 of file CondMultChanCollection.h.
|
inherited |
Typedefs for DB.
Definition at line 85 of file LArConditionsContainer.h.
|
inherited |
Definition at line 87 of file LArConditionsContainer.h.
|
privateinherited |
Definition at line 322 of file LArConditionsContainer.h.
|
inherited |
Definition at line 819 of file DataVector.h.
|
inherited |
Definition at line 813 of file DataVector.h.
|
inherited |
Standard const_reverse_iterator.
Definition at line 847 of file DataVector.h.
|
inherited |
Definition at line 821 of file DataVector.h.
|
inherited |
Definition at line 86 of file LArConditionsContainer.h.
|
inherited |
Definition at line 78 of file LArConditionsContainer.h.
|
privateinherited |
Definition at line 319 of file LArConditionsContainer.h.
|
inherited |
Definition at line 90 of file LArConditionsContainer.h.
|
inherited |
Definition at line 82 of file LArConditionsContainer.h.
|
inherited |
Definition at line 80 of file LArConditionsContainer.h.
|
inherited |
Definition at line 32 of file LArAutoCorrComplete.h.
|
privateinherited |
Definition at line 317 of file LArConditionsContainer.h.
|
privateinherited |
Definition at line 318 of file LArConditionsContainer.h.
|
privateinherited |
Definition at line 320 of file LArConditionsContainer.h.
|
inherited |
Definition at line 797 of file DataVector.h.
|
inherited |
Definition at line 857 of file DataVector.h.
|
inherited |
Definition at line 815 of file DataVector.h.
|
inherited |
Definition at line 798 of file DataVector.h.
|
inherited |
This type is used to proxy lvalue accesses to DataVector elements, in order to handle ownership.
Definition at line 833 of file DataVector.h.
|
inherited |
Typedefs for subset.
Definition at line 71 of file LArConditionsContainer.h.
|
inherited |
Definition at line 54 of file LArConditionsContainerBase.h.
|
inherited |
Definition at line 75 of file LArConditionsContainer.h.
|
inherited |
Definition at line 88 of file LArConditionsContainer.h.
|
inherited |
Definition at line 91 of file LArConditionsContainer.h.
|
inherited |
Definition at line 89 of file LArConditionsContainer.h.
|
inherited |
Definition at line 96 of file LArConditionsContainer.h.
|
inherited |
Definition at line 62 of file CondMultChanCollection.h.
|
inherited |
Definition at line 98 of file LArConditionsContainer.h.
|
inherited |
Definition at line 57 of file CondMultChanCollection.h.
|
privateinherited |
Definition at line 323 of file LArConditionsContainer.h.
|
inherited |
Definition at line 31 of file LArAutoCorrComplete.h.
|
inherited |
Typedefs for MultChan access.
Definition at line 94 of file LArConditionsContainer.h.
|
inherited |
Definition at line 81 of file LArConditionsContainer.h.
|
inherited |
Definition at line 818 of file DataVector.h.
|
inherited |
This is the type of the underlying std::vector (what stdcont returns).
Definition at line 806 of file DataVector.h.
|
inherited |
Definition at line 79 of file LArConditionsContainer.h.
|
inherited |
Definition at line 812 of file DataVector.h.
|
inherited |
Standard reverse_iterator.
Note that lvalue references here will yield an ElementProxy, not a reference.
Definition at line 852 of file DataVector.h.
|
privateinherited |
Definition at line 2063 of file DataVector.h.
|
inherited |
Definition at line 77 of file LArConditionsContainer.h.
|
inherited |
Definition at line 72 of file LArConditionsContainer.h.
|
privateinherited |
Definition at line 321 of file LArConditionsContainer.h.
|
inherited |
Definition at line 73 of file LArConditionsContainer.h.
|
privateinherited |
Definition at line 313 of file LArConditionsContainer.h.
|
privateinherited |
Definition at line 314 of file LArConditionsContainer.h.
|
privateinherited |
Definition at line 315 of file LArConditionsContainer.h.
|
privateinherited |
Definition at line 316 of file LArConditionsContainer.h.
|
inherited |
Type of a unique_ptr that can be used to insert elements into this container.
Definition at line 829 of file DataVector.h.
|
inherited |
Definition at line 816 of file DataVector.h.
|
inherited |
Grouping type.
| Enumerator | |
|---|---|
| Unknown | |
| SingleGroup | |
| SubDetectorGrouping | |
| FeedThroughGrouping | |
| ExtendedFTGrouping | |
| ExtendedSubDetGrouping | |
| SuperCells | |
Definition at line 44 of file LArConditionsContainerBase.h.
| LArAutoCorrMC::LArAutoCorrMC | ( | ) |
Definition at line 7 of file LArAutoCorrMC.cxx.
|
virtual |
Definition at line 14 of file LArAutoCorrMC.cxx.
|
inlineinherited |
Adding in channel numbers.
Definition at line 89 of file CondMultChanCollection.h.
|
inlineinherited |
Add new stop time to minRange - make sure that stop is <= to new stop.
Definition at line 96 of file CondMultChanCollection.h.
|
inherited |
apply correction set
|
staticinherited |
provide access to flag which determines corrections are applied at initialize, i.e.
when conditions are read in. Default is true. This is a class (static) variable which applied to ALL conditions in a job! If one wants to change the value of the flag, pass in arguments:
Definition at line 565 of file LArConditionsContainerBase.cxx.
|
inherited |
Assign from iterators.
| first | The start of the range to put in the container. |
| last | The 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.
|
privateinherited |
Handle element assignment from a base pointer.
| pos | Position in the container to assign. |
| newElem | The new element to assign. |
The old element is freed if this container owns elements. Auxiliary data are copied if appropriate.
|
privateinherited |
Handle element assignment.
| pos | Position in the container to assign. |
| newElem | The new element to assign. |
The old element is freed if this container owns elements. Auxiliary data are copied if appropriate.
|
inherited |
Access an element, as an rvalue.
| n | Array index to access. |
Will raise std::out_of_range if the index is out-of-bounds. Note that we return a const T* rather than a reference.
|
virtual |
Reimplemented from LArAutoCorrComplete.
Definition at line 19 of file LArAutoCorrMC.cxx.
|
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.
|
inherited |
Access the last element in the collection as an rvalue.
No checking is done to ensure that the container is not empty. Note that we return a const T* rather than a reference.
|
staticinherited |
Return the offset of a base DataVector class.
| ti | std::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.
|
staticinherited |
Helper for baseOffset.
| p | Pointer to the start of the top-level object. |
| dv | Reference to the DataVector object. |
| ti | std::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.
|
noexceptinherited |
Return a const_iterator pointing at the beginning of the collection.
const_iterator.Note that dereferencing the iterator will yield a const T* rather than a reference.
|
inherited |
get iterator for all channels for a gain
|
noexceptinherited |
Returns the total number of elements that the collection can hold before needing to allocate more memory.
|
noexceptinherited |
Return a const_iterator pointing at the beginning of the collection.
const_iterator.Note that dereferencing the iterator will yield a const T* rather than a reference.
|
noexceptinherited |
Return a const_iterator pointing past the end of the collection.
const_iterator.Note that dereferencing the iterator will yield a const T* rather than a reference.
|
inherited |
Access to Channel numbers via iterators - from MultChanCollection.
|
inherited |
|
inherited |
number of channels - from MultChanCollection
|
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.
| ownPolicy | The new ownership policy of the container. |
| trackIndices | The 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.
|
protectedinherited |
Clear m_isMostDerived for this instance and for all bases.
Called from the constructor after setting m_isMostDerived.
|
inherited |
Fill all non-existing Correction Channels with emtpy subsets This is necessary to terminate the IOV of the previous correction.
|
inherited |
Statistics: number of conditions per COOL channel.
|
inherited |
Statistics: number of conditions per gain.
|
inherited |
Statistics: number of conditions per group.
|
inherited |
Return the COOL channel number for a given online id and gain.
|
protectedinherited |
Definition at line 501 of file LArConditionsContainerBase.cxx.
|
inherited |
Have corrections been applied?
|
noexceptinherited |
Return a const_reverse_iterator pointing past the end of the collection.
const_reverse_iterator.Note that dereferencing the iterator will yield a const T* rather than a reference.
|
noexceptinherited |
Return a const_reverse_iterator pointing at the beginning of the collection.
const_reverse_iterator.Note that dereferencing the iterator will yield a const T* rather than a reference.
|
staticinherited |
Helper to shorten calls to DataModel_detail::DVLCast.
| p | The value to convert. |
const T*.The conversion will be done with static_cast if possible, with dynamic_cast otherwise.
|
staticinherited |
Helper to shorten calls to DataModel_detail::DVLCast.
| p | The value to convert. |
T*.The conversion will be done with static_cast if possible, with dynamic_cast otherwise.
|
overrideprivatevirtualinherited |
Find the most-derived DataVector class in the hierarchy.
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.
|
staticinherited |
Return the DV/DL info struct for this class.
This can be used to make sure that it's instantiated.
|
overridevirtualinherited |
Return the DV/DL info struct for this class.
This can be used to make sure that it's instantiated.
|
inherited |
Add a new element to the collection.
| position | Iterator before which the element will be added. |
| pElem | The 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 just the same as insert. It's included just for interface compatibility with std::vector.
|
inherited |
Add an element to the end of the collection.
| pElem | The 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.
|
protectedinherited |
Access to standard empty value.
|
noexceptinherited |
Return a const_iterator pointing past the end of the collection.
const_iterator.Note that dereferencing the iterator will yield a const T* rather than a reference.
|
inherited |
end of all channels for this gain
|
inherited |
|
inherited |
Access to a FEB ID vector for a given gain and COOL channel.
Definition at line 494 of file LArConditionsContainerBase.cxx.
|
inherited |
Access the first element in the collection as an rvalue.
No checking is done to ensure that the container is not empty. Note that we return a const T* rather than a reference.
|
inherited |
Access an element, as an rvalue.
| n | Array index to access. |
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).
|
inherited |
get data with online identifier
|
inherited |
Type of grouping - defined in LArConditionContainerBase.h.
|
inherited |
Type of grouping - defined in LArConditionContainerBase.h.
|
inherited |
Return the group number of a COOL channel (0 - correction group, 1-N for FEB ID groups)
|
inlineinherited |
Check whether there is a unique IOV for all channels.
Definition at line 86 of file CondMultChanCollection.h.
|
inlineinherited |
Get implementation.
Definition at line 106 of file CondMultChanCollection.h.
|
protectedinherited |
Definition at line 131 of file LArConditionsContainerBase.cxx.
|
virtual |
Initialization done after creation or read back - derived classes may augment the functionality.
Reimplemented from LArConditionsContainer< LArAutoCorrP1 >.
Definition at line 10 of file LArAutoCorrMC.cxx.
|
inherited |
initialize
Definition at line 52 of file LArConditionsContainerBase.cxx.
|
inherited |
Add a new element to the collection.
| position | Iterator before which the element will be added. |
| pElem | The 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.
|
inherited |
access to corrections -
Insert a new channel id / T pair. If new channel id is the same as an existing one, the new T replaces the old T
|
inherited |
Insert the contents of another DataVector, with auxiliary data copied via move semantics.
| position | Iterator before which the new elements will be added. |
| other | The 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.
|
inherited |
Access to IOVs via iterators - from MultChanCollection.
|
inherited |
|
inherited |
number of IOVs - from MultChanCollection
|
staticinherited |
Swap the referents of two DataVector iterators.
| a | The first iterator for the swap. |
| b | The second iterator for the swap. |
|
noexceptinherited |
Returns the size() of the largest possible collection.
|
inherited |
|
inherited |
Mininum gain value.
|
inlineinherited |
Current minimal IOVRange.
Definition at line 83 of file CondMultChanCollection.h.
|
inherited |
Number of gain values.
|
inherited |
Number of groups - minimum is 2 (1 correction group, 1 FEB ID group)
|
inherited |
provide access to offline id helper
Definition at line 487 of file LArConditionsContainerBase.cxx.
|
inherited |
provide access to online id helper
Definition at line 481 of file LArConditionsContainerBase.cxx.
|
inherited |
Access an element, as an rvalue.
| n | Array index to access. |
No bounds checking is done. Note that we return a const T* rather than a reference.
|
inherited |
Return the ownership policy setting for this container.
|
inherited |
Remove the last element from the collection.
If the container owns its elements, then the removed element will be deleted.
|
inherited |
Add an element to the end of the collection.
| pElem | The 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.
|
inherited |
Create and add a number of new elements to the end of the container.
| n | The number of new elements to add. |
| alloc | Functional to call to allocate a new element to push. Should be callable like T* = alloc(); For example: Definition FooBar.h:9 DataPool. |
Note: this method may only be called using the most derived DataVector in the hierarchy.
Returns the original size of the vector.
|
noexceptinherited |
Return a const_reverse_iterator pointing past the end of the collection.
const_reverse_iterator.Note that dereferencing the iterator will yield a const T* rather than a reference.
|
inherited |
Remove conditions leaving the corrections - may be needed to only write out the corrections when both are present.
|
inherited |
Remove the conditions for a specific cool channel - e.g.
in order not to write it out
|
noexceptinherited |
Return a const_reverse_iterator pointing at the beginning of the collection.
const_reverse_iterator.Note that dereferencing the iterator will yield a const T* rather than a reference.
|
inherited |
Attempt to preallocate enough memory for a specified number of elements.
| n | Number of elements required. |
|
inlineinherited |
Reset channel numbers - needed to allow sorting.
Definition at line 103 of file CondMultChanCollection.h.
|
inherited |
Resizes the collection to the specified number of elements.
| sz | The 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().
|
inherited |
Reset indices / reorder aux data after elements have been permuted.
| beg | Start of the range of elements to process. |
| end | End 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.
|
inherited |
Definition at line 13 of file LArAutoCorrComplete.cxx.
|
inherited |
allow group type to be set externally based on a string returns an FAILURE and a message to logStr if unknown string is supplied
Definition at line 96 of file LArConditionsContainerBase.cxx.
|
inherited |
allow group type to be set externally - need to (re)initialize after setting grouping type
Definition at line 89 of file LArConditionsContainerBase.cxx.
|
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.
|
inherited |
put payload in persistent data
|
privateinherited |
Shift the auxiliary elements of the container.
| pos | The starting index for the shift. |
| offs | The (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).
|
inherited |
|
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.
|
inherited |
Sort the container.
This just sorts by pointer value, so it's probably not very useful.
|
privateinherited |
Sort subsets by channel number.
|
inherited |
Return the underlying std::vector of the container.
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.
|
inherited |
Swap this collection with another.
| rhs | The 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.
|
inherited |
Swap one element out of the container.
| index | Index of the element in the container to swap. |
| newElem | New element to put in the container. May be 0. |
| oldElem | Reference 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.
|
inherited |
Test if we can insert; raise an exception if not.
| op | Description 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.
|
inherited |
Test if we can insert; raise an exception if not.
| op | Description 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.
|
inherited |
Statistics: total number of conditions.
|
inherited |
Statistics: total number of corrections.
|
inherited |
get iterator over the Undo-Vector for a certain gain
|
inherited |
undo corrections that have been already applied
|
inherited |
|
privateinherited |
Update the ConditionsMap for a new FEB ID.
|
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.
|
protectedinherited |
Map indexed by gain providing pointers into the data in the CondMultChanCollection.
Definition at line 286 of file LArConditionsContainer.h.
|
protectedinherited |
Definition at line 114 of file LArConditionsContainerBase.h.
|
privateinherited |
Definition at line 327 of file LArConditionsContainer.h.
|
privateinherited |
Definition at line 326 of file LArConditionsContainer.h.
|
privateinherited |
Dummy iterator (returned if requested for invalid gain)
Definition at line 291 of file LArConditionsContainer.h.
|
privateinherited |
Definition at line 328 of file LArConditionsContainer.h.
|
protectedinherited |
Definition at line 108 of file LArConditionsContainerBase.h.
|
protectedinherited |
Definition at line 107 of file LArConditionsContainerBase.h.
|
privateinherited |
Definition at line 110 of file CondMultChanCollection.h.
|
protectedinherited |
Definition at line 115 of file LArConditionsContainerBase.h.
|
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.
|
protectedinherited |
Definition at line 110 of file LArConditionsContainerBase.h.
|
protectedinherited |
Definition at line 109 of file LArConditionsContainerBase.h.
|
staticconstexprinherited |
If true, then this type must own its contents.
Definition at line 860 of file DataVector.h.