CMS 3D CMS Logo

Classes | Public Types | Public Member Functions | Private Member Functions

edm::reftobase::RefVectorHolderBase Class Reference

#include <RefVectorHolderBase.h>

Inheritance diagram for edm::reftobase::RefVectorHolderBase:
edm::reftobase::RefVectorHolder< REFV >

List of all members.

Classes

struct  const_iterator
struct  const_iterator_imp

Public Types

typedef size_t size_type
typedef RefHolderBase value_type

Public Member Functions

virtual const_iterator begin () const =0
virtual void clear ()=0
virtual RefVectorHolderBaseclone () const =0
virtual RefVectorHolderBasecloneEmpty () const =0
virtual bool empty () const =0
virtual const_iterator end () const =0
template<class T >
RefToBase< TgetRef (size_t idx) const
virtual ProductID id () const =0
virtual bool isAvailable () const =0
virtual size_t keyForIndex (size_t idx) const =0
virtual const void * product () const =0
virtual EDProductGetter const * productGetter () const =0
virtual void push_back (const RefHolderBase *r)=0
virtual void reallyFillView (const void *, const ProductID &, std::vector< void const * > &)=0
virtual void reserve (size_type n)=0
virtual size_type size () const =0
void swap (RefVectorHolderBase &other)
virtual ~RefVectorHolderBase ()

Private Member Functions

virtual boost::shared_ptr
< reftobase::RefHolderBase
refBase (size_t idx) const =0

Detailed Description

Definition at line 10 of file RefVectorHolderBase.h.


Member Typedef Documentation

Definition at line 13 of file RefVectorHolderBase.h.

Definition at line 14 of file RefVectorHolderBase.h.


Constructor & Destructor Documentation

virtual edm::reftobase::RefVectorHolderBase::~RefVectorHolderBase ( ) [inline, virtual]

Definition at line 12 of file RefVectorHolderBase.h.

{}

Member Function Documentation

virtual const_iterator edm::reftobase::RefVectorHolderBase::begin ( ) const [pure virtual]
virtual void edm::reftobase::RefVectorHolderBase::clear ( ) [pure virtual]
virtual RefVectorHolderBase* edm::reftobase::RefVectorHolderBase::clone ( ) const [pure virtual]
virtual RefVectorHolderBase* edm::reftobase::RefVectorHolderBase::cloneEmpty ( ) const [pure virtual]
virtual bool edm::reftobase::RefVectorHolderBase::empty ( ) const [pure virtual]
virtual const_iterator edm::reftobase::RefVectorHolderBase::end ( ) const [pure virtual]
template<class T >
RefToBase< T > edm::reftobase::RefVectorHolderBase::getRef ( size_t  idx) const

Definition at line 169 of file RefVectorHolderBase.h.

References refBase().

                                                               {
      boost::shared_ptr<reftobase::RefHolderBase> rb = refBase(idx);
      return RefToBase<T>( rb );
    }
virtual ProductID edm::reftobase::RefVectorHolderBase::id ( ) const [pure virtual]
virtual bool edm::reftobase::RefVectorHolderBase::isAvailable ( ) const [pure virtual]

Checks if product collection is in memory or available in the Event. No type checking is done.

Implemented in edm::reftobase::RefVectorHolder< REFV >.

Referenced by edm::reftobase::IndirectVectorHolder< T >::isAvailable().

virtual size_t edm::reftobase::RefVectorHolderBase::keyForIndex ( size_t  idx) const [pure virtual]
virtual const void* edm::reftobase::RefVectorHolderBase::product ( ) const [pure virtual]
virtual EDProductGetter const* edm::reftobase::RefVectorHolderBase::productGetter ( ) const [pure virtual]
virtual void edm::reftobase::RefVectorHolderBase::push_back ( const RefHolderBase r) [pure virtual]
virtual void edm::reftobase::RefVectorHolderBase::reallyFillView ( const void *  ,
const ProductID ,
std::vector< void const * > &   
) [pure virtual]
virtual boost::shared_ptr<reftobase::RefHolderBase> edm::reftobase::RefVectorHolderBase::refBase ( size_t  idx) const [private, pure virtual]

Implemented in edm::reftobase::RefVectorHolder< REFV >.

Referenced by getRef().

virtual void edm::reftobase::RefVectorHolderBase::reserve ( size_type  n) [pure virtual]
virtual size_type edm::reftobase::RefVectorHolderBase::size ( ) const [pure virtual]
void edm::reftobase::RefVectorHolderBase::swap ( RefVectorHolderBase other) [inline]

Definition at line 15 of file RefVectorHolderBase.h.

Referenced by edm::reftobase::RefVectorHolder< REFV >::swap(), and edm::reftobase::swap().

{} // nothing to swap