#include <RefProd.h>
Public Types | |
typedef C | product_type |
typedef C | value_type |
Public Member Functions | |
product_type const * | get () const |
bool | hasCache () const |
Checks if product is in memory. | |
bool | hasProductCache () const |
Checks if product is in memory. | |
ProductID | id () const |
Accessor for product ID. | |
bool | isAvailable () const |
bool | isNonnull () const |
Checks for non-null. | |
bool | isNull () const |
Checks for null. | |
bool | isTransient () const |
Checks if this RefProd is transient (i.e. not persistable). | |
bool | operator! () const |
Checks for null. | |
product_type const & | operator* () const |
Dereference operator. | |
product_type const * | operator-> () const |
Member dereference operator. | |
product_type const * | product () const |
EDProductGetter const * | productGetter () const |
Accessor for product getter. | |
RefCore const & | refCore () const |
RefProd (Handle< C > const &handle) | |
General purpose constructor from handle. | |
RefProd (OrphanHandle< C > const &handle) | |
General purpose constructor from orphan handle. | |
RefProd (C const *product) | |
Constructor for ref to object that is not in an event. | |
RefProd () | |
Default constructor needed for reading from persistent store. Not for direct use. | |
template<typename T , typename F > | |
RefProd (RefVector< C, T, F > const &ref) | |
Constructor from RefVector<C,T,F> | |
RefProd (ProductID const &productID, EDProductGetter const *prodGetter) | |
RefProd (TestHandle< C > const &handle) | |
General purpose constructor from test handle. | |
template<typename T , typename F > | |
RefProd (Ref< C, T, F > const &ref) | |
Constructor from Ref<C,T,F> | |
void | swap (RefProd< C > &) |
~RefProd () | |
Destructor. | |
Private Member Functions | |
void | checkTypeAtCompileTime (C const *ptr) |
Private Attributes | |
RefCore | product_ |
typedef C edm::RefProd< C >::product_type |
typedef C edm::RefProd< C >::value_type |
edm::RefProd< C >::RefProd | ( | ) | [inline] |
edm::RefProd< C >::RefProd | ( | Handle< C > const & | handle | ) | [inline, explicit] |
General purpose constructor from handle.
Definition at line 61 of file RefProd.h.
: product_(handle.id(), handle.product(), 0, false) { checkTypeAtCompileTime(handle.product()); }
edm::RefProd< C >::RefProd | ( | OrphanHandle< C > const & | handle | ) | [inline, explicit] |
edm::RefProd< C >::RefProd | ( | C const * | product | ) | [inline] |
edm::RefProd< C >::RefProd | ( | TestHandle< C > const & | handle | ) | [inline, explicit] |
edm::RefProd< C >::RefProd | ( | Ref< C, T, F > const & | ref | ) | [inline, explicit] |
edm::RefProd< C >::RefProd | ( | RefVector< C, T, F > const & | ref | ) | [inline, explicit] |
edm::RefProd< C >::RefProd | ( | ProductID const & | productID, |
EDProductGetter const * | prodGetter | ||
) | [inline] |
Definition at line 103 of file RefProd.h.
: product_(productID, 0, mustBeNonZero(prodGetter, "RefProd", productID), false) { }
edm::RefProd< C >::~RefProd | ( | ) | [inline] |
void edm::RefProd< C >::checkTypeAtCompileTime | ( | C const * | ptr | ) | [inline, private] |
Definition at line 168 of file RefProd.h.
Referenced by edm::RefProd< TrackingRecHitCollection >::RefProd().
{}
product_type const* edm::RefProd< C >::get | ( | void | ) | const [inline] |
Returns C++ pointer to the product Will attempt to retrieve product
Definition at line 118 of file RefProd.h.
Referenced by pat::TriggerEvent::algorithms(), l1extra::L1ParticleMap::candidateInCombo(), pat::TriggerEvent::conditions(), l1extra::L1ParticleMap::etMissParticleInCombo(), pat::TriggerEvent::filters(), pat::TriggerEvent::objects(), and pat::TriggerEvent::paths().
{ return isNull() ? 0 : this->operator->(); }
bool edm::RefProd< C >::hasCache | ( | ) | const [inline] |
Checks if product is in memory.
Definition at line 148 of file RefProd.h.
Referenced by edm::RefProd< TrackingRecHitCollection >::hasProductCache().
{return product_.productPtr() != 0;}
bool edm::RefProd< C >::hasProductCache | ( | ) | const [inline] |
ProductID edm::RefProd< C >::id | ( | void | ) | const [inline] |
Accessor for product ID.
Definition at line 142 of file RefProd.h.
Referenced by GenParticleProducer::produce(), pat::GenPlusSimParticleProducer::produce(), edm::RefToBaseProd< T >::RefToBaseProd(), ClusterRemovalRefSetter::reKey(), and edm::Association< C >::setRef().
{return product_.id();}
bool edm::RefProd< C >::isAvailable | ( | ) | const [inline] |
bool edm::RefProd< C >::isNonnull | ( | ) | const [inline] |
Checks for non-null.
Definition at line 136 of file RefProd.h.
Referenced by reco::ClusterRemovalInfo::hasPixel(), reco::ClusterRemovalInfo::hasStrip(), and edm::RefProd< TrackingRecHitCollection >::isNull().
{return product_.isNonnull();}
bool edm::RefProd< C >::isNull | ( | ) | const [inline] |
Checks for null.
Definition at line 133 of file RefProd.h.
Referenced by edm::RefProd< TrackingRecHitCollection >::get(), edm::RefProd< TrackingRecHitCollection >::operator!(), edm::RefProd< TrackingRecHitCollection >::product(), and edm::Association< C >::setRef().
{return !isNonnull();}
bool edm::RefProd< C >::isTransient | ( | ) | const [inline] |
bool edm::RefProd< C >::operator! | ( | ) | const [inline] |
C const & edm::RefProd< C >::operator* | ( | ) | const [inline] |
Dereference operator.
Definition at line 200 of file RefProd.h.
References svgfig::template().
{ return *(edm::template getProduct<C>(product_)); }
C const * edm::RefProd< C >::operator-> | ( | ) | const [inline] |
Member dereference operator.
Definition at line 207 of file RefProd.h.
References svgfig::template().
Referenced by edm::RefProd< TrackingRecHitCollection >::get(), and edm::RefProd< TrackingRecHitCollection >::product().
{ return edm::template getProduct<C>(product_); }
product_type const* edm::RefProd< C >::product | ( | ) | const [inline] |
Returns C++ pointer to the product Will attempt to retrieve product
Definition at line 124 of file RefProd.h.
Referenced by edm::RefToBaseProd< T >::RefToBaseProd().
{ return isNull() ? 0 : this->operator->(); }
EDProductGetter const* edm::RefProd< C >::productGetter | ( | ) | const [inline] |
RefCore const& edm::RefProd< C >::refCore | ( | ) | const [inline] |
void edm::RefProd< C >::swap | ( | RefProd< C > & | other | ) | [inline] |
Definition at line 214 of file RefProd.h.
References edm::RefProd< C >::product_, and edm::swap().
Referenced by edm::swap(), edm::Association< C >::swap(), and reco::ClusterRemovalInfo::swap().
RefCore edm::RefProd< C >::product_ [private] |
Definition at line 170 of file RefProd.h.
Referenced by edm::RefProd< TrackingRecHitCollection >::hasCache(), edm::RefProd< TrackingRecHitCollection >::id(), edm::RefProd< TrackingRecHitCollection >::isAvailable(), edm::RefProd< TrackingRecHitCollection >::isNonnull(), edm::RefProd< TrackingRecHitCollection >::isTransient(), edm::RefProd< TrackingRecHitCollection >::productGetter(), edm::RefProd< TrackingRecHitCollection >::refCore(), and edm::RefProd< C >::swap().