CMS 3D CMS Logo

Public Member Functions | Private Member Functions

edm::EDProduct Class Reference

#include <EDProduct.h>

Inheritance diagram for edm::EDProduct:
edm::Wrapper< T >

List of all members.

Public Member Functions

std::type_info const & dynamicTypeInfo () const
 EDProduct ()
void fillPtrVector (std::type_info const &iToType, std::vector< unsigned long > const &iIndicies, std::vector< void const * > &oPtr) const
void fillView (ProductID const &id, std::vector< void const * > &view, helper_vector_ptr &helpers) const
bool hasIsProductEqual () const
bool isMergeable () const
bool isPresent () const
bool isProductEqual (EDProduct const *newProduct) const
bool mergeProduct (EDProduct const *newProduct)
void setPtr (std::type_info const &iToType, unsigned long iIndex, void const *&oPtr) const
virtual ~EDProduct ()

Private Member Functions

virtual void do_fillPtrVector (std::type_info const &iToType, std::vector< unsigned long > const &iIndicies, std::vector< void const * > &oPtr) const =0
virtual void do_fillView (ProductID const &id, std::vector< void const * > &pointers, helper_vector_ptr &helpers) const =0
virtual void do_setPtr (std::type_info const &iToType, unsigned long iIndex, void const *&oPtr) const =0
virtual std::type_info const & dynamicTypeInfo_ () const =0
virtual bool hasIsProductEqual_ () const
virtual bool isMergeable_ () const
virtual bool isPresent_ () const
virtual bool isProductEqual_ (EDProduct const *newProduct) const
virtual bool mergeProduct_ (EDProduct const *newProduct)

Detailed Description

Definition at line 17 of file EDProduct.h.


Constructor & Destructor Documentation

edm::EDProduct::EDProduct ( )

Definition at line 9 of file EDProduct.cc.

{}
edm::EDProduct::~EDProduct ( ) [virtual]

Definition at line 11 of file EDProduct.cc.

{}

Member Function Documentation

virtual void edm::EDProduct::do_fillPtrVector ( std::type_info const &  iToType,
std::vector< unsigned long > const &  iIndicies,
std::vector< void const * > &  oPtr 
) const [private, pure virtual]

Implemented in edm::Wrapper< T >.

Referenced by fillPtrVector().

virtual void edm::EDProduct::do_fillView ( ProductID const &  id,
std::vector< void const * > &  pointers,
helper_vector_ptr helpers 
) const [private, pure virtual]

Implemented in edm::Wrapper< T >.

Referenced by fillView().

virtual void edm::EDProduct::do_setPtr ( std::type_info const &  iToType,
unsigned long  iIndex,
void const *&  oPtr 
) const [private, pure virtual]

Implemented in edm::Wrapper< T >.

Referenced by setPtr().

std::type_info const& edm::EDProduct::dynamicTypeInfo ( ) const [inline]

Definition at line 37 of file EDProduct.h.

References dynamicTypeInfo_().

Referenced by edm::GroupData::checkType().

{return dynamicTypeInfo_();}
virtual std::type_info const& edm::EDProduct::dynamicTypeInfo_ ( ) const [private, pure virtual]

Implemented in edm::Wrapper< T >.

Referenced by dynamicTypeInfo().

void edm::EDProduct::fillPtrVector ( std::type_info const &  iToType,
std::vector< unsigned long > const &  iIndicies,
std::vector< void const * > &  oPtr 
) const

Definition at line 33 of file EDProduct.cc.

References do_fillPtrVector().

Referenced by edm::PtrVectorBase::getProduct_().

                                                                  {
    do_fillPtrVector(iToType, iIndicies, oPtr);
  }
void edm::EDProduct::fillView ( ProductID const &  id,
std::vector< void const * > &  view,
helper_vector_ptr helpers 
) const

Definition at line 13 of file EDProduct.cc.

References do_fillView().

Referenced by edm::Event::fillView_(), and edm::RefToBaseProd< T >::operator->().

                                                             {
    // This should never be called with non-empty arguments, or an
    // invalid ID; any attempt to do so is an indication of a coding
    // error.
    assert(id.isValid());
    assert(pointers.empty());
    assert(helpers.get() == 0);

    do_fillView(id, pointers, helpers);
  }
bool edm::EDProduct::hasIsProductEqual ( ) const [inline]

Definition at line 42 of file EDProduct.h.

References hasIsProductEqual_().

{return hasIsProductEqual_();}
virtual bool edm::EDProduct::hasIsProductEqual_ ( ) const [inline, private, virtual]

Reimplemented in edm::Wrapper< T >.

Definition at line 57 of file EDProduct.h.

Referenced by hasIsProductEqual().

{ return true; }
bool edm::EDProduct::isMergeable ( ) const [inline]

Definition at line 40 of file EDProduct.h.

References isMergeable_().

{return isMergeable_();}
virtual bool edm::EDProduct::isMergeable_ ( ) const [inline, private, virtual]

Reimplemented in edm::Wrapper< T >.

Definition at line 55 of file EDProduct.h.

Referenced by isMergeable().

{ return true; }
bool edm::EDProduct::isPresent ( ) const [inline]

Definition at line 21 of file EDProduct.h.

References isPresent_().

Referenced by fwlite::EventBase::getByLabelImpl(), and edm::StreamedProduct::StreamedProduct().

{return isPresent_();}
virtual bool edm::EDProduct::isPresent_ ( ) const [inline, private, virtual]

Reimplemented in edm::Wrapper< T >.

Definition at line 52 of file EDProduct.h.

Referenced by isPresent().

{return true;}
bool edm::EDProduct::isProductEqual ( EDProduct const *  newProduct) const [inline]

Definition at line 43 of file EDProduct.h.

References isProductEqual_().

{return isProductEqual_(newProduct);}
virtual bool edm::EDProduct::isProductEqual_ ( EDProduct const *  newProduct) const [inline, private, virtual]

Reimplemented in edm::Wrapper< T >.

Definition at line 58 of file EDProduct.h.

Referenced by isProductEqual().

{ return true; }
bool edm::EDProduct::mergeProduct ( EDProduct const *  newProduct) [inline]

Definition at line 41 of file EDProduct.h.

References mergeProduct_().

{return mergeProduct_(newProduct);}
virtual bool edm::EDProduct::mergeProduct_ ( EDProduct const *  newProduct) [inline, private, virtual]

Reimplemented in edm::Wrapper< T >.

Definition at line 56 of file EDProduct.h.

Referenced by mergeProduct().

{ return true; }
void edm::EDProduct::setPtr ( std::type_info const &  iToType,
unsigned long  iIndex,
void const *&  oPtr 
) const

Definition at line 26 of file EDProduct.cc.

References do_setPtr().

Referenced by edm::Ptr< pat::MET >::getData_().

                                                  {
    do_setPtr(iToType, iIndex, oPtr);
  }