Boost logo

Boost Users :

Subject: Re: [Boost-users] How are template arguments to rbtree_best_fit resolved
From: Ion Gaztañaga (igaztanaga_at_[hidden])
Date: 2010-03-18 11:58:19


El 15/03/2010 23:26, Eric Whitcombe escribió:
> I am stepping through interprocess shared memory code and I was a
> little confused by the offset_ptr code that I was hitting. I cannot
> figure out how that is specified to the template of rbtree_best_fit. I
> see in boost/interprocess/interprocess_fwd.hpp declaring
> managed_shared_memory by typedef'ing basic_managed_shared_memory with
> rbtree_best_fit<mutex_family> as the AllocationAlgorithm argument but I
> can't figure out how offset_ptr is is supplied as the VoidPointer
> argument to the rbtree_best_fit template. That template has 3 arguments
> but the forward declaration only provides one. Are the other two somehow
> inferred? If so, how?

There is a predeclaration for rbtree_best_fit in interprocess_fwd.hpp
specifying default arguments

//////////////////////////////////////////////////
// Memory allocation algorithms
//////////////////////////////////////////////////

//...

template<class MutexFamily, class VoidMutex = offset_ptr<void>,
std::size_t MemAlignment = 0>
class rbtree_best_fit;

Best,

Ion


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net