1 #ifndef DataFormats_Common_FwdPtr_h
2 #define DataFormats_Common_FwdPtr_h
35 #include "boost/type_traits/is_base_of.hpp"
36 #include "boost/utility/enable_if.hpp"
135 return (lhs.ptr() == rhs.ptr() ||
136 lhs.backPtr() == rhs.ptr() ||
137 lhs.ptr() == rhs.backPtr() ||
138 lhs.backPtr() == rhs.backPtr());
145 return !(lhs == rhs);
154 return (lhs.ptr() < rhs.ptr());
Ptr< value_type > const & ptr() const
T const & operator*() const
Dereference operator.
FwdPtr(Ptr< C > f, Ptr< C > b)
bool operator!=(debugging_allocator< X > const &, debugging_allocator< Y > const &)
#define CMS_CLASS_VERSION(_version_)
Ptr< value_type > const & backPtr() const
bool hasProductCache() const
bool isNonnull() const
Checks for non-null.
RefCore const & refCore() const
T const * get() const
Returns C++ pointer to the item.
ProductID id() const
Accessor for product ID.
bool isNull() const
Checks for null.
RefCore const & refCore() const
void const * product() const
bool isTransient() const
Checks if this FwdPtr is transient (i.e. not persistable).
bool operator!() const
Checks for null.
bool isTransient() const
Checks if this Ptr is transient (i.e. not persistable).
ProductID id() const
Accessor for product ID.
bool hasProductCache() const
EDProductGetter const * productGetter() const
Accessor for product getter.
bool isNonnull() const
Checks for non-null.
friend class FwdPtrVectorBase
T const * operator->() const
Member dereference operator.
EDProductGetter const * productGetter() const
Accessor for product getter.
Ptr< value_type > backPtr_