Go to the documentation of this file. 1 #ifndef DataFormats_GeometrySurface_ReferenceCounted_h
2 #define DataFormats_GeometrySurface_ReferenceCounted_h
22 #include "boost/intrusive_ptr.hpp"
45 delete const_cast<BasicReferenceCounted*>(
this);
ReferenceCountingPointer()
BasicReferenceCounted ReferenceCounted
unsigned int references() const
ConstReferenceCountingPointer(const T *iT)
BasicReferenceCounted ReferenceCountedInConditions
ReferenceCountingPointer(T *iT)
BasicReferenceCounted(BasicReferenceCounted &&)
BasicReferenceCounted & operator=(const BasicReferenceCounted &)
void addReference() const
std::atomic< unsigned int > referenceCount_
void removeReference() const
void intrusive_ptr_add_ref(const BasicReferenceCounted *iRef)
virtual ~BasicReferenceCounted()
ConstReferenceCountingPointer(const ReferenceCountingPointer< T > &other)
void intrusive_ptr_release(const BasicReferenceCounted *iRef)
BasicReferenceCounted ReferenceCountedInEvent
ConstReferenceCountingPointer()
BasicReferenceCounted(const BasicReferenceCounted &)
BasicReferenceCounted & operator=(BasicReferenceCounted &&)