DUNE-DAQ
DUNE Trigger and Data Acquisition software
|
#include <FollyQueue.hpp>
Public Types | |
using | value_t = T |
using | duration_t = typename Queue<T>::duration_t |
![]() | |
using | value_t = T |
Type stored in the Queue. | |
using | duration_t = std::chrono::milliseconds |
Base duration type for timeouts. | |
![]() | |
using | NodePtr = std::weak_ptr<MonitorableObject> |
using | NewNodePtr = std::shared_ptr<MonitorableObject> |
using | ElementId = std::string |
Public Member Functions | |
FollyQueue (const std::string &name, size_t capacity) | |
size_t | get_capacity () const noexcept override |
Get the capacity (max size) of the queue. | |
size_t | get_num_elements () const noexcept override |
bool | can_pop () const noexcept override |
Determine whether the Queue may be popped from. | |
void | pop (value_t &val, const duration_t &dur) override |
Pop the first value off of the queue. | |
bool | try_pop (value_t &val, const duration_t &dur) override |
bool | can_push () const noexcept override |
Determine whether the Queue may be pushed onto. | |
void | push (value_t &&t, const duration_t &dur) override |
Push a value onto the Queue. | |
bool | try_push (value_t &&t, const duration_t &dur) override |
FollyQueue (const FollyQueue &)=delete | |
FollyQueue & | operator= (const FollyQueue &)=delete |
FollyQueue (FollyQueue &&)=delete | |
FollyQueue & | operator= (FollyQueue &&)=delete |
![]() | |
Queue (const std::string &name) | |
Queue Constructor. | |
![]() | |
QueueBase (const std::string &name) | |
QueueBase Constructor. | |
![]() | |
NamedObject (const std::string &name) | |
NamedObject Constructor. | |
NamedObject (NamedObject const &)=delete | |
NamedObject is not copy-constructible. | |
NamedObject (NamedObject &&)=default | |
NamedObject is move-constructible. | |
NamedObject & | operator= (NamedObject const &)=delete |
NamedObject is not copy-assignable. | |
NamedObject & | operator= (NamedObject &&)=default |
NamedObject is move-assignable. | |
virtual | ~NamedObject ()=default |
Default virtual destructor. | |
const std::string & | get_name () const final |
Get the name of this NamedObejct. | |
![]() | |
Named ()=default | |
Named Constructor. | |
Named (Named const &)=delete | |
Named is not copy-constructible. | |
Named (Named &&)=default | |
Named is move-constructible. | |
Named & | operator= (Named const &)=delete |
Named is not copy-assignable. | |
Named & | operator= (Named &&)=default |
Named is move-assignable. | |
virtual | ~Named ()=default |
Default virtual destructor. | |
![]() | |
MonitorableObject (const MonitorableObject &)=delete | |
MonitorableObject & | operator= (const MonitorableObject &)=delete |
MonitorableObject (MonitorableObject &&)=delete | |
MonitorableObject & | operator= (MonitorableObject &&)=delete |
virtual | ~MonitorableObject ()=default |
auto | get_opmon_id () const noexcept |
auto | get_opmon_level () const noexcept |
Private Attributes | |
FollyQueueType< T, true > | m_queue |
size_t | m_capacity |
Additional Inherited Members | |
![]() | |
static bool | publishable_metric (OpMonLevel entry, OpMonLevel system) noexcept |
![]() | |
void | generate_opmon_data () override |
Method to retrieve information (occupancy) from queues. | |
![]() | |
MonitorableObject ()=default | |
void | register_node (ElementId name, NewNodePtr) |
void | publish (google::protobuf::Message &&, CustomOrigin &&co={}, OpMonLevel l=to_level(EntryOpMonLevel::kDefault)) const noexcept |
Definition at line 29 of file FollyQueue.hpp.
using dunedaq::iomanager::FollyQueue< T, FollyQueueType >::duration_t = typename Queue<T>::duration_t |
Definition at line 33 of file FollyQueue.hpp.
using dunedaq::iomanager::FollyQueue< T, FollyQueueType >::value_t = T |
Definition at line 32 of file FollyQueue.hpp.
|
inlineexplicit |
Definition at line 35 of file FollyQueue.hpp.
|
delete |
|
delete |
|
inlineoverridevirtualnoexcept |
Determine whether the Queue may be popped from.
Reimplemented from dunedaq::iomanager::Queue< T >.
Definition at line 45 of file FollyQueue.hpp.
|
inlineoverridevirtualnoexcept |
Determine whether the Queue may be pushed onto.
Reimplemented from dunedaq::iomanager::Queue< T >.
Definition at line 62 of file FollyQueue.hpp.
|
inlineoverridevirtualnoexcept |
Get the capacity (max size) of the queue.
Implements dunedaq::iomanager::QueueBase.
Definition at line 41 of file FollyQueue.hpp.
|
inlineoverridevirtualnoexcept |
|
delete |
|
delete |
|
inlineoverridevirtual |
Pop the first value off of the queue.
val | Reference to the value that is popped from the queue |
timeout | Timeout for the pop operation |
This is a pure virtual function If pop takes longer than the timeout, implementations should throw an exception
Implements dunedaq::iomanager::Queue< T >.
Definition at line 47 of file FollyQueue.hpp.
|
inlineoverridevirtual |
Push a value onto the Queue.
val | Value to push (rvalue) |
timeout | Timeout for the push operation. |
This is a pure virtual function. If push takes longer than the timeout, implementations should throw an exception.
Implements dunedaq::iomanager::Queue< T >.
Definition at line 64 of file FollyQueue.hpp.
|
inlineoverridevirtual |
Implements dunedaq::iomanager::Queue< T >.
Definition at line 54 of file FollyQueue.hpp.
|
inlineoverridevirtual |
Implements dunedaq::iomanager::Queue< T >.
Definition at line 71 of file FollyQueue.hpp.
|
private |
Definition at line 92 of file FollyQueue.hpp.
|
private |
Definition at line 91 of file FollyQueue.hpp.