//$$CDS-header$$
-#ifndef __CDS_UNIT_ELLEN_BINTREE_UPDATE_DESC_POOL_H
-#define __CDS_UNIT_ELLEN_BINTREE_UPDATE_DESC_POOL_H
+#ifndef CDSUNIT_ELLEN_BINTREE_UPDATE_DESC_POOL_H
+#define CDSUNIT_ELLEN_BINTREE_UPDATE_DESC_POOL_H
#include <cds/urcu/general_instant.h>
-#include <cds/container/ellen_bintree_base.h>
+#include <cds/container/details/ellen_bintree_base.h>
#include <cds/memory/vyukov_queue_pool.h>
#include <cds/memory/pool_allocator.h>
namespace ellen_bintree_pool {
- typedef cds::container::ellen_bintree::node_types< cds::urcu::gc< cds::urcu::general_instant<> >, int > node_types ; // fake
+ typedef cds::container::ellen_bintree::node_types< cds::urcu::gc< cds::urcu::general_instant<> >, int > node_types; // fake
typedef node_types::leaf_node_type leaf_node;
typedef node_types::internal_node_type internal_node;
typedef node_types::update_desc_type update_desc;
// Update descriptor pool based on Vyukov's queue
- typedef cds::memory::vyukov_queue_pool<
- update_desc,
- cds::opt::buffer< cds::opt::v::static_buffer< cds::any_type, 4096 > >
- > update_desc_pool_type;
+ struct update_desc_pool_traits : public cds::memory::vyukov_queue_pool_traits
+ {
+ typedef cds::opt::v::static_buffer< cds::any_type, 4096 > buffer;
+ };
+ typedef cds::memory::vyukov_queue_pool< update_desc, update_desc_pool_traits > update_desc_pool_type;
extern update_desc_pool_type s_UpdateDescPool;
struct update_desc_pool_accessor {
};
// Update descriptor pool based on bounded Vyukov's queue
- typedef cds::memory::bounded_vyukov_queue_pool<
- update_desc,
- cds::opt::buffer< cds::opt::v::static_buffer< cds::any_type, 4096 > >
- > bounded_update_desc_pool_type;
-
+ struct bounded_update_desc_pool_traits : public cds::memory::vyukov_queue_pool_traits
+ {
+ typedef cds::opt::v::static_buffer< cds::any_type, 4096 > buffer;
+ };
+ typedef cds::memory::bounded_vyukov_queue_pool< update_desc, bounded_update_desc_pool_traits > bounded_update_desc_pool_type;
extern bounded_update_desc_pool_type s_BoundedUpdateDescPool;
struct bounded_update_desc_pool_accessor {
typedef internal_node_allocator< Other, Alloc > other;
};
- T * allocate( size_t n, void const * pHint = NULL )
+ T * allocate( size_t n, void const * pHint = nullptr )
{
internal_node_counter::onAlloc();
return base_class::allocate( n, pHint );
} // namespace ellen_bintree_pool
-#endif // #ifndef __CDS_UNIT_ELLEN_BINTREE_UPDATE_DESC_POOL_H
+#endif // #ifndef CDSUNIT_ELLEN_BINTREE_UPDATE_DESC_POOL_H