1 #ifndef DataFormats_Common_RefVectorBase_h
2 #define DataFormats_Common_RefVectorBase_h
30 template <
typename KEY>
58 void const* prodPtr =
nullptr,
120 keys_.swap(other.keys_);
136 template <
typename KEY>
142 template <
typename KEY>
144 return !(lhs == rhs);
148 template <
typename KEY>
constexpr bool operator==(ELseverityLevel const &e1, ELseverityLevel const &e2) noexcept
void const * cachedMemberPointer(size_type idx) const
RefVectorBase & operator=(RefVectorBase const &rhs)
RefVectorBase(RefVectorBase const &rhs)
void swap(RefCore &) noexcept
bool empty() const
Is vector empty?
keys_type::iterator eraseAtIndex(size_type index)
erase an element from the vector
#define CMS_CLASS_VERSION(_version_)
void swap(Association< C > &lhs, Association< C > &rhs)
std::vector< void const * > const & memberPointers() const
void pushBack(RefCore const &product, KEY const &key)
RefVectorBase()
Default constructor needed for reading from persistent store. Not for direct use. ...
RefVectorMemberPointersHolder memberPointersHolder_
std::vector< void const * > & memberPointers()
size_type capacity() const
Capacity of vector.
RefVectorBase & operator=(RefVectorBase &&rhs) noexcept
std::vector< void const * > const & memberPointers() const
RefCore const & refCore() const
Accessor for product ID and product getter.
void const * productPtr() const
tuple key
prepare the HTCondor submission files and eventually submit them
void clear()
clear the vector
keys_type const & keys() const
Accessor for vector of keys and pointers.
constexpr bool operator!=(ELseverityLevel const &e1, ELseverityLevel const &e2) noexcept
RefVectorMemberPointersHolder()
std::vector< void const * > memberPointers_
RefVectorBase(RefVectorBase &&rhs) noexcept
~RefVectorBase() noexcept
Destructor.
keys_type::size_type size_type
void pushBackRefItem(RefCore const &productToBeInserted)
std::vector< KEY > keys_type
size_type size() const
Size of vector.
RefVectorBase(ProductID const &productID, void const *prodPtr=nullptr, EDProductGetter const *prodGetter=nullptr)
void reserve(size_type n)
Reserve space for vector.
void swap(RefVectorBase< KEY > &other) noexcept
swap two vectors