1 #ifndef DataFormats_Common_FwdPtr_h 2 #define DataFormats_Common_FwdPtr_h 114 void const*
product()
const {
return nullptr; }
129 return (lhs.ptr() == rhs.ptr() || lhs.backPtr() == rhs.ptr() || lhs.ptr() == rhs.backPtr() ||
130 lhs.backPtr() == rhs.backPtr());
133 template <
typename T>
135 return !(lhs == rhs);
138 template <
typename T>
139 inline bool operator<(FwdPtr<T>
const& lhs,
FwdPtr<T> const& rhs) {
142 return (lhs.ptr() < rhs.ptr());
bool hasProductCache() const
bool isNonnull() const
Checks for non-null.
ProductID id() const
Accessor for product ID.
RefCore const & refCore() const
T const * operator->() const
Member dereference operator.
EDProductGetter const * productGetter() const
Accessor for product getter.
#define CMS_CLASS_VERSION(_version_)
bool isTransient() const
Checks if this FwdPtr is transient (i.e. not persistable).
bool operator!() const
Checks for null.
T const & operator*() const
Dereference operator.
bool isNonnull() const
Checks for non-null.
bool isNull() const
Checks for null.
void const * product() const
def template(fileName, svg, replaceme="REPLACEME")
Ptr< value_type > const & backPtr() const
constexpr bool operator!=(ELseverityLevel const &e1, ELseverityLevel const &e2) noexcept
T const * get() const
Returns C++ pointer to the item.
bool hasProductCache() const
EDProductGetter const * productGetter() const
Accessor for product getter.
FwdPtr(const Ptr< C > &f, const Ptr< C > &b)
RefCore const & refCore() const
ProductID id() const
Accessor for product ID.
Ptr< value_type > const & ptr() const
friend class FwdPtrVectorBase
Ptr< value_type > backPtr_
bool isTransient() const
Checks if this Ptr is transient (i.e. not persistable).