CMS 3D CMS Logo

List of all members | Public Member Functions | Private Member Functions
edm::reftobase::RefHolderBase Class Referenceabstract

#include <RefHolderBase.h>

Inheritance diagram for edm::reftobase::RefHolderBase:
edm::reftobase::RefHolder< REF >

Public Member Functions

virtual RefHolderBaseclone () const =0
 
virtual bool fillRefIfMyTypeMatches (RefHolderBase &ref, std::string &msg) const =0
 
template<class T >
T const * getPtr () const
 
virtual ProductID id () const =0
 
virtual bool isAvailable () const =0
 
virtual bool isEqualTo (RefHolderBase const &rhs) const =0
 
virtual bool isTransient () const =0
 
virtual size_t key () const =0
 
virtual std::unique_ptr< RefVectorHolderBasemakeVectorHolder () const =0
 
virtual EDProductGetter const * productGetter () const =0
 
 RefHolderBase ()
 
virtual ~RefHolderBase ()
 

Private Member Functions

virtual void const * pointerToType (std::type_info const &toType) const =0
 

Detailed Description

Definition at line 17 of file RefHolderBase.h.

Constructor & Destructor Documentation

edm::reftobase::RefHolderBase::RefHolderBase ( )
inline
edm::reftobase::RefHolderBase::~RefHolderBase ( )
inlinevirtual

Definition at line 62 of file RefHolderBase.h.

Referenced by RefHolderBase().

63  { }

Member Function Documentation

virtual RefHolderBase* edm::reftobase::RefHolderBase::clone ( ) const
pure virtual
virtual bool edm::reftobase::RefHolderBase::fillRefIfMyTypeMatches ( RefHolderBase ref,
std::string &  msg 
) const
pure virtual
template<class T >
T const * edm::reftobase::RefHolderBase::getPtr ( ) const

Definition at line 67 of file RefHolderBase.h.

References pointerToType().

Referenced by RefHolderBase().

68  {
69  return static_cast<T const*>(pointerToType(typeid(T)));
70  }
virtual void const * pointerToType(std::type_info const &toType) const =0
long double T
virtual ProductID edm::reftobase::RefHolderBase::id ( ) const
pure virtual
virtual bool edm::reftobase::RefHolderBase::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::RefHolder< REF >.

Referenced by edm::reftobase::IndirectHolder< T >::isAvailable(), and RefHolderBase().

virtual bool edm::reftobase::RefHolderBase::isEqualTo ( RefHolderBase const &  rhs) const
pure virtual
virtual bool edm::reftobase::RefHolderBase::isTransient ( ) const
pure virtual
virtual size_t edm::reftobase::RefHolderBase::key ( ) const
pure virtual
virtual std::unique_ptr<RefVectorHolderBase> edm::reftobase::RefHolderBase::makeVectorHolder ( ) const
pure virtual
virtual void const* edm::reftobase::RefHolderBase::pointerToType ( std::type_info const &  toType) const
privatepure virtual

Implemented in edm::reftobase::RefHolder< REF >.

Referenced by getPtr(), and RefHolderBase().

virtual EDProductGetter const* edm::reftobase::RefHolderBase::productGetter ( ) const
pure virtual