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

◆ RefHolderBase()

edm::reftobase::RefHolderBase::RefHolderBase ( )

Definition at line 6 of file RefHolder.cc.

6 {}

◆ ~RefHolderBase()

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

Definition at line 61 of file RefHolderBase.h.

61 {}

Member Function Documentation

◆ clone()

virtual RefHolderBase* edm::reftobase::RefHolderBase::clone ( ) const
pure virtual

◆ fillRefIfMyTypeMatches()

virtual bool edm::reftobase::RefHolderBase::fillRefIfMyTypeMatches ( RefHolderBase ref,
std::string &  msg 
) const
pure virtual

◆ getPtr()

template<class T >
T const * edm::reftobase::RefHolderBase::getPtr ( ) const

Definition at line 64 of file RefHolderBase.h.

64  {
65  return static_cast<T const*>(pointerToType(typeid(T)));
66  }

References pointerToType().

◆ id()

virtual ProductID edm::reftobase::RefHolderBase::id ( ) const
pure virtual

◆ isAvailable()

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().

◆ isEqualTo()

virtual bool edm::reftobase::RefHolderBase::isEqualTo ( RefHolderBase const &  rhs) const
pure virtual

◆ isTransient()

virtual bool edm::reftobase::RefHolderBase::isTransient ( ) const
pure virtual

◆ key()

virtual size_t edm::reftobase::RefHolderBase::key ( ) const
pure virtual

◆ makeVectorHolder()

virtual std::unique_ptr<RefVectorHolderBase> edm::reftobase::RefHolderBase::makeVectorHolder ( ) const
pure virtual

◆ pointerToType()

virtual void const* edm::reftobase::RefHolderBase::pointerToType ( std::type_info const &  toType) const
privatepure virtual

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

Referenced by getPtr().

◆ productGetter()

virtual EDProductGetter const* edm::reftobase::RefHolderBase::productGetter ( ) const
pure virtual
edm::reftobase::RefHolderBase::pointerToType
virtual void const * pointerToType(std::type_info const &toType) const =0
T
long double T
Definition: Basic3DVectorLD.h:48