Master Core  v0.0.9 - 2abfd2849db8ba7a83957c64eb976b406713c123
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
Public Types | Public Member Functions | Protected Attributes | List of all members
mruset< T > Class Template Reference

STL-like set container that only keeps the most recent N elements. More...

#include <mruset.h>

+ Collaboration diagram for mruset< T >:

Public Types

typedef T key_type
 
typedef T value_type
 
typedef std::set< T >::iterator iterator
 
typedef std::set< T >::const_iterator const_iterator
 
typedef std::set< T >::size_type size_type
 

Public Member Functions

 mruset (size_type nMaxSizeIn=0)
 
iterator begin () const
 
iterator end () const
 
size_type size () const
 
bool empty () const
 
iterator find (const key_type &k) const
 
size_type count (const key_type &k) const
 
void clear ()
 
bool friend operator== (const mruset< T > &a, const mruset< T > &b)
 
bool friend operator== (const mruset< T > &a, const std::set< T > &b)
 
bool friend operator< (const mruset< T > &a, const mruset< T > &b)
 
std::pair< iterator, bool > insert (const key_type &x)
 
size_type max_size () const
 
size_type max_size (size_type s)
 

Protected Attributes

std::set< T > set
 
std::deque< T > queue
 
size_type nMaxSize
 

Detailed Description

template<typename T>
class mruset< T >

STL-like set container that only keeps the most recent N elements.

Definition at line 13 of file mruset.h.

Member Typedef Documentation

template<typename T>
typedef std::set<T>::const_iterator mruset< T >::const_iterator

Definition at line 19 of file mruset.h.

template<typename T>
typedef std::set<T>::iterator mruset< T >::iterator

Definition at line 18 of file mruset.h.

template<typename T>
typedef T mruset< T >::key_type

Definition at line 16 of file mruset.h.

template<typename T>
typedef std::set<T>::size_type mruset< T >::size_type

Definition at line 20 of file mruset.h.

template<typename T>
typedef T mruset< T >::value_type

Definition at line 17 of file mruset.h.

Constructor & Destructor Documentation

template<typename T>
mruset< T >::mruset ( size_type  nMaxSizeIn = 0)
inline

Definition at line 28 of file mruset.h.

Member Function Documentation

template<typename T>
iterator mruset< T >::begin ( ) const
inline

Definition at line 29 of file mruset.h.

template<typename T>
void mruset< T >::clear ( )
inline

Definition at line 35 of file mruset.h.

Referenced by SendMessages().

+ Here is the caller graph for this function:

template<typename T>
size_type mruset< T >::count ( const key_type k) const
inline

Definition at line 34 of file mruset.h.

Referenced by ProcessGetData(), CNode::PushAddress(), CNode::PushInventory(), and SendMessages().

+ Here is the caller graph for this function:

template<typename T>
bool mruset< T >::empty ( ) const
inline

Definition at line 32 of file mruset.h.

template<typename T>
iterator mruset< T >::end ( ) const
inline

Definition at line 30 of file mruset.h.

template<typename T>
iterator mruset< T >::find ( const key_type k) const
inline

Definition at line 33 of file mruset.h.

template<typename T>
std::pair<iterator, bool> mruset< T >::insert ( const key_type x)
inline

Definition at line 39 of file mruset.h.

Referenced by CNode::AddAddressKnown(), CNode::AddInventoryKnown(), and SendMessages().

+ Here is the caller graph for this function:

template<typename T>
size_type mruset< T >::max_size ( ) const
inline

Definition at line 53 of file mruset.h.

Referenced by CNode::CNode().

+ Here is the caller graph for this function:

template<typename T>
size_type mruset< T >::max_size ( size_type  s)
inline

Definition at line 54 of file mruset.h.

template<typename T>
bool friend mruset< T >::operator< ( const mruset< T > &  a,
const mruset< T > &  b 
)
inline

Definition at line 38 of file mruset.h.

template<typename T>
bool friend mruset< T >::operator== ( const mruset< T > &  a,
const mruset< T > &  b 
)
inline

Definition at line 36 of file mruset.h.

template<typename T>
bool friend mruset< T >::operator== ( const mruset< T > &  a,
const std::set< T > &  b 
)
inline

Definition at line 37 of file mruset.h.

template<typename T>
size_type mruset< T >::size ( ) const
inline

Definition at line 31 of file mruset.h.

Member Data Documentation

template<typename T>
size_type mruset< T >::nMaxSize
protected

Definition at line 25 of file mruset.h.

Referenced by mruset< CAddress >::insert(), and mruset< CAddress >::max_size().

template<typename T>
std::deque<T> mruset< T >::queue
protected

Definition at line 24 of file mruset.h.

template<typename T>
std::set<T> mruset< T >::set
protected

Definition at line 23 of file mruset.h.

Referenced by mruset< CAddress >::operator<(), and mruset< CAddress >::operator==().


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