1 #ifndef DataFormats_GeometrySurface_ReferenceCounted_h
2 #define DataFormats_GeometrySurface_ReferenceCounted_h
22 #include "boost/intrusive_ptr.hpp"
23 #if !defined(__CINT__) && !defined(__MAKECINT__) && !defined(__REFLEX__)
45 #if !defined(__CINT__) && !defined(__MAKECINT__) && !defined(__REFLEX__)
66 #if !defined(__CINT__) && !defined(__MAKECINT__) && !defined(__REFLEX__)
74 public boost::intrusive_ptr<T>
82 public boost::intrusive_ptr<const T>
88 boost::intrusive_ptr<
const T>(&(*other)) {}
void intrusive_ptr_add_ref(const BasicReferenceCounted *iRef)
ConstReferenceCountingPointer()
BasicReferenceCounted(const BasicReferenceCounted &)
const BasicReferenceCounted & operator=(const BasicReferenceCounted &)
BasicReferenceCounted ReferenceCounted
BasicReferenceCounted ReferenceCountedInConditions
ReferenceCountingPointer()
void removeReference() const
ReferenceCountingPointer(T *iT)
std::atomic< unsigned int > referenceCount_
ConstReferenceCountingPointer(const ReferenceCountingPointer< T > &other)
BasicReferenceCounted ReferenceCountedInEvent
unsigned int references() const
void intrusive_ptr_release(const BasicReferenceCounted *iRef)
void addReference() const
virtual ~BasicReferenceCounted()
ConstReferenceCountingPointer(const T *iT)