 |
ATLAS Offline Software
|
Go to the documentation of this file.
5 #ifndef ATHLINKS_ELEMENTLINKVECTOR_H
6 #define ATHLINKS_ELEMENTLINKVECTOR_H
10 #include <RootMetaSelection.h>
13 #include "AthLinks/ElementLink.h"
14 #include "AthLinks/ElementLinkVectorBase.h"
17 namespace ROOT {
namespace Meta {
namespace Selection {
18 template<
class CONTAINER >
33 template<
class CONTAINER >
58 typedef typename std::vector< ElemLink >::const_reverse_iterator
61 typedef typename std::vector< ElemLink >::size_type
size_type;
159 template<
class InputIterator >
193 namespace ROOT {
namespace Meta {
namespace Selection {
194 template<
class CONTAINER >
203 ROOT::Meta::Selection::MemberAttributes< kTransient >
m_elVec;
210 # include "AthLinks/ElementLinkVector.icc"
211 #endif // not __GCCXML__
213 #endif // ATHLINKS_ELEMENTLINKVECTOR_H
JetConstituentVector::iterator iterator
const ElemLink & const_reference
Type of the constant reference pointing to one element link.
ELVIterator< typename RefVector::iterator > iterator
size_type capacity() const
Get the capacity of the currently allocated object.
ELVIterator< typename RefVector::reverse_iterator > reverse_iterator
ElementLink< CONTAINER > ElemLink
Type of the EL that we have a vector of.
reverse_iterator rbegin()
Get a reverse iterator pointing at the last element.
ELVIterator< typename RefVector::const_iterator > const_iterator
reverse_iterator rend()
Get a reverse iterator pointing at the beginning of the container.
std::vector< ElemLink >::const_iterator const_iterator
Type of the constant iterator for traversing the vector.
void assign(InputIterator first, InputIterator last)
Fill the vector with the contents of another container.
ElementLink< DOBJ > ElemLink
ElemLink value_type
Standard typedef for the type of the held objects.
const_reference operator[](size_type n) const
Get the element at a given index.
std::vector< ElemLink > m_elVec
Transient vector of element links.
ElementLinkVector< CONTAINER > ElemLinkVec
Definition of the current type.
ElementLinkVector implementation for standalone ROOT.
std::vector< size_t > vec
iterator erase(iterator position)
Erase one element from the vector.
size_type max_size() const
Get the maximal size of the object.
void swap(ElemLinkVec &vec)
Swap the container's contents with another object's.
Base class holding the container independent part of ElementLinkVector.
iterator erase(iterator first, iterator last)
Erase a set of elements from the vector.
const_reference at(size_type n) const
Get the element at a given index (with size check)
bool operator!=(const ElementLinkVector &rhs) const
Comparison operator.
std::vector< ElemLink >::const_reverse_iterator const_reverse_iterator
Type of the constant reverse iterator for traversing the vector.
ROOT::Meta::Selection::ElementLinkVector< CONTAINER >::self DictSel
Needed to take the Reflex/Cling specifications into account.
RefVector::size_type size_type
ElementLinkVector(const ElemLinkVec &parent)
Copy constructor.
virtual bool toTransient()
Reset the object's internal cache.
void assign(size_type n, const ElemLink &link)
Fill the vector with N identical links.
void clear()
Clear the object.
void push_back(const ElemLink &el)
Add a new element link at the end of the vector.
bool toPersistent()
Function copying the transient data into the persistent variables.
std::vector< ElemLink >::iterator iterator
Type of the iterator for traversing the vector.
void reserve(size_type sz)
Reserve some slots in the vector.
const_reference front() const
Get the first element.
void pop_back()
Remove the last element from the vector.
bool empty() const
Function checking if the vector is empty.
const_iterator begin() const
Get a constant iterator pointing at the first element.
const_reverse_iterator rbegin() const
Get a constant reverse iterator pointing at the last element.
ElemLink & reference
Type of the reference pointing to one element link.
ElementLinkVector()
Default constructor.
const_reference back() const
Get the last element.
ElementLinkVector(size_type n, const ElemLink &link=ElemLink())
Constructor creating a vector of a given size.
const_reverse_iterator rend() const
Get a constant reverse iterator pointing at the beginning of the container.
std::vector< ElemLink >::reverse_iterator reverse_iterator
Type of the reverse iterator for traversing the vector.
void resize(size_type sz, const ElemLink &link=ElemLink())
Resize the vector to the specified size.
bool operator==(const ElementLinkVector &rhs) const
Comparison operator.
iterator begin()
Get an iterator pointing at the first element.
size_type size() const
Get the size of the vector.
void insert(iterator position, size_type n, const ElemLink &link)
Insert a number of identical links in a certain position.
iterator insert(iterator position, const ElemLink &link)
Insert a link in a certain position.
std::vector< ElemLink >::size_type size_type
Type of the size of the vector.
iterator end()
Get an iterator pointing at the end of the container.
ELVIterator< typename RefVector::const_reverse_iterator > const_reverse_iterator
Selection rules: declare transient members.
const_iterator end() const
Get a constant iterator pointing at the end of the container.
ElemLinkVec & operator=(const ElemLinkVec &rhs)
Assignment operator.