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.
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.
FwdPtr(const Ptr< C > &f, const Ptr< C > &b)
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_