Classes | Public Types | Public Member Functions | Public Attributes | Private Types | Private Member Functions | Private Attributes | List of all members
zmq::generic_mtrie_t< T > Class Template Reference

#include <generic_mtrie.hpp>

Classes

union  _next_t
 
struct  iter
 

Public Types

enum  rm_result { not_found, last_value_removed, values_remain }
 
typedef T value_t
 

Public Member Functions

bool add (prefix_t prefix_, size_t size_, value_t *value_)
 
 generic_mtrie_t ()
 
template<typename Arg >
void match (prefix_t data_, size_t size_, void(*func_)(value_t *pipe_, Arg arg_), Arg arg_)
 
template<typename Arg >
void match (prefix_t data_, size_t size_, void(*func_)(value_t *value_, Arg arg_), Arg arg_)
 
uint32_t num_prefixes () const
 
rm_result rm (prefix_t prefix_, size_t size_, value_t *value_)
 
template<typename Arg >
void rm (value_t *pipe_, void(*func_)(prefix_t data_, size_t size_, Arg arg_), Arg arg_, bool call_on_uniq_)
 
template<typename Arg >
void rm (value_t *value_, void(*func_)(const unsigned char *data_, size_t size_, Arg arg_), Arg arg_, bool call_on_uniq_)
 
 ~generic_mtrie_t ()
 

Public Attributes

const typedef unsigned char * prefix_t
 

Private Types

typedef std::set< value_t * > pipes_t
 

Private Member Functions

bool is_redundant () const
 

Private Attributes

unsigned short _count
 
unsigned short _live_nodes
 
unsigned char _min
 
union zmq::generic_mtrie_t::_next_t _next
 
atomic_counter_t _num_prefixes
 
pipes_t_pipes
 

Detailed Description

template<typename T>
class zmq::generic_mtrie_t< T >

Definition at line 16 of file generic_mtrie.hpp.

Member Typedef Documentation

◆ pipes_t

template<typename T >
typedef std::set<value_t *> zmq::generic_mtrie_t< T >::pipes_t
private

Definition at line 67 of file generic_mtrie.hpp.

◆ value_t

template<typename T >
typedef T zmq::generic_mtrie_t< T >::value_t

Definition at line 19 of file generic_mtrie.hpp.

Member Enumeration Documentation

◆ rm_result

template<typename T >
enum zmq::generic_mtrie_t::rm_result
Enumerator
not_found 
last_value_removed 
values_remain 

Definition at line 22 of file generic_mtrie.hpp.

Constructor & Destructor Documentation

◆ generic_mtrie_t()

template<typename T >
zmq::generic_mtrie_t< T >::generic_mtrie_t

Definition at line 20 of file generic_mtrie_impl.hpp.

◆ ~generic_mtrie_t()

template<typename T >
zmq::generic_mtrie_t< T >::~generic_mtrie_t

Definition at line 25 of file generic_mtrie_impl.hpp.

Member Function Documentation

◆ add()

template<typename T >
bool zmq::generic_mtrie_t< T >::add ( prefix_t  prefix_,
size_t  size_,
value_t value_ 
)

Definition at line 41 of file generic_mtrie_impl.hpp.

◆ is_redundant()

template<typename T >
bool zmq::generic_mtrie_t< T >::is_redundant
private

Definition at line 563 of file generic_mtrie_impl.hpp.

◆ match() [1/2]

template<typename T >
template<typename Arg >
void zmq::generic_mtrie_t< T >::match ( prefix_t  data_,
size_t  size_,
void(*)(value_t *pipe_, Arg arg_)  func_,
Arg  arg_ 
)

Definition at line 523 of file generic_mtrie_impl.hpp.

◆ match() [2/2]

template<typename T >
template<typename Arg >
void zmq::generic_mtrie_t< T >::match ( prefix_t  data_,
size_t  size_,
void(*)(value_t *value_, Arg arg_)  func_,
Arg  arg_ 
)

◆ num_prefixes()

template<typename T >
uint32_t zmq::generic_mtrie_t< T >::num_prefixes ( ) const
inline

Definition at line 62 of file generic_mtrie.hpp.

◆ rm() [1/3]

template<typename T >
generic_mtrie_t< T >::rm_result zmq::generic_mtrie_t< T >::rm ( prefix_t  prefix_,
size_t  size_,
value_t value_ 
)

Definition at line 377 of file generic_mtrie_impl.hpp.

◆ rm() [2/3]

template<typename T >
template<typename Arg >
void zmq::generic_mtrie_t< T >::rm ( value_t pipe_,
void(*)(prefix_t data_, size_t size_, Arg arg_)  func_,
Arg  arg_,
bool  call_on_uniq_ 
)

Definition at line 130 of file generic_mtrie_impl.hpp.

◆ rm() [3/3]

template<typename T >
template<typename Arg >
void zmq::generic_mtrie_t< T >::rm ( value_t value_,
void(*)(const unsigned char *data_, size_t size_, Arg arg_)  func_,
Arg  arg_,
bool  call_on_uniq_ 
)

Member Data Documentation

◆ _count

template<typename T >
unsigned short zmq::generic_mtrie_t< T >::_count
private

Definition at line 73 of file generic_mtrie.hpp.

◆ _live_nodes

template<typename T >
unsigned short zmq::generic_mtrie_t< T >::_live_nodes
private

Definition at line 74 of file generic_mtrie.hpp.

◆ _min

template<typename T >
unsigned char zmq::generic_mtrie_t< T >::_min
private

Definition at line 72 of file generic_mtrie.hpp.

◆ _next

template<typename T >
union zmq::generic_mtrie_t::_next_t zmq::generic_mtrie_t< T >::_next
private

◆ _num_prefixes

template<typename T >
atomic_counter_t zmq::generic_mtrie_t< T >::_num_prefixes
private

Definition at line 70 of file generic_mtrie.hpp.

◆ _pipes

template<typename T >
pipes_t* zmq::generic_mtrie_t< T >::_pipes
private

Definition at line 68 of file generic_mtrie.hpp.

◆ prefix_t

template<typename T >
const typedef unsigned char* zmq::generic_mtrie_t< T >::prefix_t

Definition at line 20 of file generic_mtrie.hpp.


The documentation for this class was generated from the following files:


libaditof
Author(s):
autogenerated on Wed May 21 2025 02:07:11