#include <IdentifiedSharedQueue.h>
|
| boost::interprocess::message_queue * | operator-> () |
Definition at line 14 of file IdentifiedSharedQueue.h.
◆ IdentifiedSharedQueue() [1/2]
| AthenaInterprocess::IdentifiedSharedQueue::IdentifiedSharedQueue |
( |
| ) |
|
◆ IdentifiedSharedQueue() [2/2]
| AthenaInterprocess::IdentifiedSharedQueue::IdentifiedSharedQueue |
( |
const std::string & | name, |
|
|
int | max_msg = SHAREDQUEUE_MAX_MSG, |
|
|
std::size_t | max_size = MAX_MSG_SIZE, |
|
|
bool | do_unlink = true ) |
◆ copy()
| void AthenaInterprocess::SharedQueue::copy |
( |
const SharedQueue & | other | ) |
|
|
privateinherited |
Definition at line 53 of file SharedQueue.cxx.
54{
55 if (
other.m_count ) {
60 } else {
64 }
65}
boost::interprocess::message_queue * m_queue
◆ destroy()
| void AthenaInterprocess::SharedQueue::destroy |
( |
| ) |
|
|
privateinherited |
◆ do_receive_basic()
template<typename T>
| bool AthenaInterprocess::SharedQueue::do_receive_basic |
( |
T & | data, |
|
|
bool | block ) |
|
privateinherited |
Definition at line 98 of file SharedQueue.h.
99{
101 std::size_t recvd_size = 0;
102 bool receive_ok = true;
103
104 try {
105 if(block) {
106 m_queue->receive(&
data,
sizeof(T),recvd_size,priority);
107 }
108 else {
109 receive_ok =
m_queue->try_receive(&
data,
sizeof(T),recvd_size,priority);
110 }
111 }
112 catch(boost::interprocess::interprocess_exception&) {
113 return false;
114 }
115
116 return receive_ok;
117}
char data[hepevt_bytes_allocation_ATLAS]
◆ do_send_basic()
template<typename T>
| bool AthenaInterprocess::SharedQueue::do_send_basic |
( |
T | data, |
|
|
bool | block ) |
|
privateinherited |
Definition at line 71 of file SharedQueue.h.
72{
73 bool send_ok = true;
74
75 try {
76 if(block)
78 else
80 }
81 catch(boost::interprocess::interprocess_exception&) {
82 send_ok = false;
83 }
84
85 return send_ok;
86}
◆ name()
| std::string AthenaInterprocess::SharedQueue::name |
( |
| ) |
const |
|
inherited |
◆ operator bool()
| AthenaInterprocess::SharedQueue::operator bool |
( |
| ) |
const |
|
inlineinherited |
◆ operator->()
| boost::interprocess::message_queue * AthenaInterprocess::SharedQueue::operator-> |
( |
| ) |
|
|
inlineprotectedinherited |
◆ receive() [1/2]
| std::string AthenaInterprocess::IdentifiedSharedQueue::receive |
( |
| ) |
|
|
virtual |
◆ receive() [2/2]
| std::string AthenaInterprocess::IdentifiedSharedQueue::receive |
( |
pid_t & | id | ) |
|
|
virtual |
Definition at line 79 of file IdentifiedSharedQueue.cxx.
80{
83}
virtual std::string receive()
std::string get_pid(const std::string &buf, pid_t &pid)
◆ receive_basic()
template<typename T>
| bool AthenaInterprocess::SharedQueue::receive_basic |
( |
T & | data | ) |
|
|
inherited |
Definition at line 124 of file SharedQueue.h.
125{
127}
bool do_receive_basic(T &, bool)
◆ send()
| bool AthenaInterprocess::IdentifiedSharedQueue::send |
( |
const std::string & | buf | ) |
|
|
virtual |
◆ send_basic()
template<typename T>
| bool AthenaInterprocess::SharedQueue::send_basic |
( |
T | data | ) |
|
|
inherited |
Definition at line 93 of file SharedQueue.h.
94{
96}
bool do_send_basic(T, bool)
◆ try_receive() [1/2]
| std::string AthenaInterprocess::IdentifiedSharedQueue::try_receive |
( |
| ) |
|
|
virtual |
◆ try_receive() [2/2]
| std::string AthenaInterprocess::IdentifiedSharedQueue::try_receive |
( |
pid_t & | id | ) |
|
|
virtual |
◆ try_receive_basic()
template<typename T>
| bool AthenaInterprocess::SharedQueue::try_receive_basic |
( |
T & | data | ) |
|
|
inherited |
◆ try_send()
| bool AthenaInterprocess::IdentifiedSharedQueue::try_send |
( |
const std::string & | buf | ) |
|
|
virtual |
◆ try_send_basic()
template<typename T>
| bool AthenaInterprocess::SharedQueue::try_send_basic |
( |
T | data | ) |
|
|
inherited |
◆ m_count
| int* AthenaInterprocess::SharedQueue::m_count |
|
privateinherited |
◆ m_name
| std::string* AthenaInterprocess::SharedQueue::m_name |
|
privateinherited |
◆ m_queue
| boost::interprocess::message_queue* AthenaInterprocess::SharedQueue::m_queue |
|
privateinherited |
The documentation for this class was generated from the following files: