13#ifndef ML_INTRUSIVE_PTR_BASE_H
14#define ML_INTRUSIVE_PTR_BASE_H
22#include <boost/thread/mutex.hpp>
26#pragma warning( push )
27#pragma warning( disable : 4396 )
35template<
typename Derived>
39template<
typename Derived>
41template<
typename Derived>
47template<
typename Derived>
57 mutable long _referenceCount;
58 mutable boost::mutex _referenceCountMutex;
62template<
typename Derived>
64template<
typename Derived>
A base-class enabling the use of boost::intrusive_ptr in derived classes.
void intrusive_ptr_add_ref(const IntrusivePtrBase< Derived > *ptr)
Provide overloads for reference counting functions used by boost::intrusive_ptr.
void intrusive_ptr_release(const IntrusivePtrBase< Derived > *ptr)
Target mlrange_cast(Source arg)
Generic version of checked ML casts.
#define VESSELGRAPH_END_NAMESPACE
#define VESSELGRAPH_BEGIN_NAMESPACE