tcpflow  1.6.1
About: tcpflow is a TCP/IP packet demultiplexer that captures data transmitted as part of TCP connections (flows), and stores the data in a way that is convenient for protocol analysis and debugging.
  Fossies Dox: tcpflow-1.6.1.tar.gz  ("unofficial" and yet experimental doxygen-generated source code documentation)  

intrusive_list< T > Class Template Reference

#include <intrusive_list.h>

Collaboration diagram for intrusive_list< T >:
[legend]

Public Types

typedef std::list< T * >::iterator iterator
 

Public Member Functions

 intrusive_list ()
 
void push_back (T *node)
 
void erase (T *node)
 
void move_to_end (T *node)
 
void reset (T *node)
 
bool empty ()
 
size_t size ()
 
iterator begin ()
 
iterator end ()
 

Private Member Functions

bool is_linked (T *node)
 

Private Attributes

std::list< T * > li
 
size_t len
 

Detailed Description

template<class T>
class intrusive_list< T >

Definition at line 10 of file intrusive_list.h.

Member Typedef Documentation

◆ iterator

template<class T >
typedef std::list<T*>::iterator intrusive_list< T >::iterator

Definition at line 14 of file intrusive_list.h.

Constructor & Destructor Documentation

◆ intrusive_list()

template<class T >
intrusive_list< T >::intrusive_list ( )
inline

Definition at line 12 of file intrusive_list.h.

Member Function Documentation

◆ begin()

template<class T >
iterator intrusive_list< T >::begin ( )
inline

Definition at line 50 of file intrusive_list.h.

References intrusive_list< T >::li.

Referenced by tcpdemux::close_oldest_fd().

◆ empty()

template<class T >
bool intrusive_list< T >::empty ( )
inline

Definition at line 40 of file intrusive_list.h.

References intrusive_list< T >::li.

◆ end()

template<class T >
iterator intrusive_list< T >::end ( )
inline

Definition at line 54 of file intrusive_list.h.

References intrusive_list< T >::li.

◆ erase()

template<class T >
void intrusive_list< T >::erase ( T node)
inline

◆ is_linked()

template<class T >
bool intrusive_list< T >::is_linked ( T node)
inlineprivate

◆ move_to_end()

template<class T >
void intrusive_list< T >::move_to_end ( T node)
inline

Definition at line 30 of file intrusive_list.h.

References intrusive_list< T >::is_linked(), and intrusive_list< T >::li.

Referenced by tcpdemux::process_tcp().

◆ push_back()

template<class T >
void intrusive_list< T >::push_back ( T node)
inline

Definition at line 16 of file intrusive_list.h.

References intrusive_list< T >::len, and intrusive_list< T >::li.

Referenced by tcpip::open_file().

◆ reset()

template<class T >
void intrusive_list< T >::reset ( T node)
inline

Definition at line 36 of file intrusive_list.h.

References intrusive_list< T >::li.

Referenced by tcpdemux::create_tcpip(), and intrusive_list< T >::erase().

◆ size()

template<class T >
size_t intrusive_list< T >::size ( )
inline

Definition at line 44 of file intrusive_list.h.

References intrusive_list< T >::len.

Referenced by main(), tcpip::open_file(), and tcpdemux::retrying_open().

Member Data Documentation

◆ len

template<class T >
size_t intrusive_list< T >::len
private

◆ li


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