Jpp  18.0.1-rc.1
the software that should make you happy
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Static Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
InBufferCollector Class Reference

#include <input_buffer_collector.hh>

Public Member Functions

CLBDataGramgetEmptyDataGram ()
 
void putDataGram (CLBDataGram *p)
 

Static Public Member Functions

static InBufferCollectorgetCollector ()
 

Private Types

typedef std::deque< CLBDataGram * > datagram_collector_t
 

Private Member Functions

 InBufferCollector ()
 

Private Attributes

datagram_collector_t m_collector
 
boost::mutex m_mutex
 

Detailed Description

Author
cpellegrino

Definition at line 14 of file input_buffer_collector.hh.

Member Typedef Documentation

Definition at line 16 of file input_buffer_collector.hh.

Constructor & Destructor Documentation

InBufferCollector::InBufferCollector ( )
inlineprivate

Definition at line 22 of file input_buffer_collector.hh.

23  {}

Member Function Documentation

static InBufferCollector& InBufferCollector::getCollector ( )
inlinestatic

Definition at line 27 of file input_buffer_collector.hh.

28  {
29  static InBufferCollector istance;
30 
31  return istance;
32  }
CLBDataGram* InBufferCollector::getEmptyDataGram ( )
inline

Definition at line 34 of file input_buffer_collector.hh.

35  {
36  CLBDataGram* temp;
37 
38  boost::mutex::scoped_lock lock(m_mutex);
39 
40  if (m_collector.empty()) {
41  temp = new CLBDataGram;
42  } else {
43  temp = m_collector.back();
44 
45  m_collector.pop_back();
46  temp->clear();
47  }
48 
50  return temp;
51  }
void chrono_reset(chronometrable &chr)
void clear()
Definition: clb_datagram.hh:60
datagram_collector_t m_collector
void InBufferCollector::putDataGram ( CLBDataGram p)
inline

Definition at line 53 of file input_buffer_collector.hh.

54  {
55  boost::mutex::scoped_lock lock(m_mutex);
56 
57  if (m_collector.size() > 40000)
58  {
59  delete p;
60  }
61  else
62  {
63  m_collector.push_back(p);
64  }
65  }
datagram_collector_t m_collector

Member Data Documentation

datagram_collector_t InBufferCollector::m_collector
private

Definition at line 18 of file input_buffer_collector.hh.

boost::mutex InBufferCollector::m_mutex
private

Definition at line 20 of file input_buffer_collector.hh.


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