Jpp 19.3.0-rc.2
the software that should make you happy
Loading...
Searching...
No Matches
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

◆ datagram_collector_t

Definition at line 16 of file input_buffer_collector.hh.

Constructor & Destructor Documentation

◆ InBufferCollector()

InBufferCollector::InBufferCollector ( )
inlineprivate

Definition at line 22 of file input_buffer_collector.hh.

23 {}

Member Function Documentation

◆ getCollector()

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 }

◆ getEmptyDataGram()

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 }
datagram_collector_t m_collector
void chrono_reset(chronometrable &chr)

◆ putDataGram()

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 }

Member Data Documentation

◆ m_collector

datagram_collector_t InBufferCollector::m_collector
private

Definition at line 18 of file input_buffer_collector.hh.

◆ m_mutex

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: