CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Classes | Public Member Functions | Private Attributes
edm::WrapperOwningHolder Class Reference

#include <WrapperOwningHolder.h>

Inheritance diagram for edm::WrapperOwningHolder:
edm::WrapperHolder

Classes

struct  EDProductDeleter
 

Public Member Functions

boost::shared_ptr< void const > makeWrapper (void const *wrapper, WrapperInterfaceBase const *interface)
 
boost::shared_ptr< void const > product () const
 
void reset ()
 
 WrapperOwningHolder ()
 
 WrapperOwningHolder (void const *wrapper, WrapperInterfaceBase const *interface)
 
 WrapperOwningHolder (boost::shared_ptr< void const > wrapper, WrapperInterfaceBase const *interface)
 

Private Attributes

boost::shared_ptr< void const > wrapperOwner_
 

Additional Inherited Members

- Private Member Functions inherited from edm::WrapperHolder
std::type_info const & dynamicTypeInfo () const
 
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
 
WrapperInterfaceBase const * interface () const
 
bool isMergeable () const
 
bool isPresent () const
 
bool isProductEqual (void const *newProduct) const
 
bool isValid () const
 
bool mergeProduct (void const *newProduct)
 
void reset ()
 
void setPtr (std::type_info const &iToType, unsigned long iIndex, void const *&oPtr) const
 
std::type_info const & wrappedTypeInfo () const
 
void const * wrapper () const
 
 WrapperHolder ()
 
 WrapperHolder (void const *wrapper, WrapperInterfaceBase const *interface)
 

Detailed Description

Definition at line 13 of file WrapperOwningHolder.h.

Constructor & Destructor Documentation

edm::WrapperOwningHolder::WrapperOwningHolder ( )

Definition at line 11 of file WrapperOwningHolder.cc.

boost::shared_ptr< void const > wrapperOwner_
edm::WrapperOwningHolder::WrapperOwningHolder ( void const *  wrapper,
WrapperInterfaceBase const *  interface 
)

Definition at line 17 of file WrapperOwningHolder.cc.

17  :
20  }
boost::shared_ptr< void const > makeWrapper(void const *wrapper, WrapperInterfaceBase const *interface)
boost::shared_ptr< void const > wrapperOwner_
WrapperInterfaceBase const * interface() const
Definition: WrapperHolder.h:80
void const * wrapper() const
Definition: WrapperHolder.h:76
edm::WrapperOwningHolder::WrapperOwningHolder ( boost::shared_ptr< void const >  wrapper,
WrapperInterfaceBase const *  interface 
)

Definition at line 13 of file WrapperOwningHolder.cc.

13  :
15  }
boost::shared_ptr< void const > wrapperOwner_
WrapperInterfaceBase const * interface() const
Definition: WrapperHolder.h:80
void const * wrapper() const
Definition: WrapperHolder.h:76

Member Function Documentation

boost::shared_ptr< void const > edm::WrapperOwningHolder::makeWrapper ( void const *  wrapper,
WrapperInterfaceBase const *  interface 
)

Definition at line 23 of file WrapperOwningHolder.cc.

23  {
24  return(boost::shared_ptr<void const>(wrapper, EDProductDeleter(interface)));
25  }
WrapperInterfaceBase const * interface() const
Definition: WrapperHolder.h:80
void const * wrapper() const
Definition: WrapperHolder.h:76
boost::shared_ptr<void const> edm::WrapperOwningHolder::product ( ) const
inline

Definition at line 43 of file WrapperOwningHolder.h.

References wrapperOwner_.

Referenced by edm::ProducedProductHolder::putProduct_(), and edm::InputProductHolder::setProduct().

43  {
44  return wrapperOwner_;
45  }
boost::shared_ptr< void const > wrapperOwner_
void edm::WrapperOwningHolder::reset ( void  )
inline

Definition at line 47 of file WrapperOwningHolder.h.

References edm::WrapperHolder::reset(), and wrapperOwner_.

Referenced by edm::principal_get_adapter_detail::deleter::operator()().

47  {
49  wrapperOwner_.reset();
50  }
boost::shared_ptr< void const > wrapperOwner_

Member Data Documentation

boost::shared_ptr<void const> edm::WrapperOwningHolder::wrapperOwner_
private

Definition at line 53 of file WrapperOwningHolder.h.

Referenced by product(), and reset().