DataStorm
0.1
Data Distribution Service
|
The Reader class is used to retrieve samples for a data element. More...
#include <DataStorm/DataStorm.h>
Public Types | |
using | KeyType = Key |
The key type. More... | |
using | ValueType = Value |
The value type. More... | |
Public Member Functions | |
Reader (Reader &&reader) noexcept | |
Transfers the given reader to this reader. More... | |
~Reader () | |
Destruct the reader. More... | |
Reader & | operator= (Reader &&reader) noexcept |
Move assignement operator. More... | |
bool | hasWriters () const noexcept |
Indicates whether or not writers are online. More... | |
void | waitForWriters (unsigned int count=1) const |
Wait for given number of writers to be online. More... | |
void | waitForNoWriters () const |
Wait for readers to be offline. More... | |
std::vector< std::string > | getConnectedWriters () const noexcept |
Get the connected writers. More... | |
std::vector< Key > | getConnectedKeys () const noexcept |
Get the keys for which writers are connected to this reader. More... | |
std::vector< Sample< Key, Value, UpdateTag > > | getAllUnread () noexcept |
Returns all the unread samples. More... | |
void | waitForUnread (unsigned int count=1) const |
Wait for given number of unread samples to be available. More... | |
bool | hasUnread () const noexcept |
Returns wether or not unread samples are available. More... | |
Sample< Key, Value, UpdateTag > | getNextUnread () |
Returns the next unread sample. More... | |
void | onConnectedKeys (std::function< void(std::vector< Key >)> init, std::function< void(CallbackReason, Key)> update) noexcept |
Calls the given functions to provide the initial set of connected keys and when a key is added or removed from the set of connected keys. More... | |
void | onConnectedWriters (std::function< void(std::vector< std::string >)> init, std::function< void(CallbackReason, std::string)> update) noexcept |
Calls the given functions to provide the initial set of connected writers and when a new writer connects or disconnects. More... | |
void | onSamples (std::function< void(std::vector< Sample< Key, Value, UpdateTag >>)> init, std::function< void(Sample< Key, Value, UpdateTag >)> queue) noexcept |
Calls the given function to provide the initial set of unread samples and when new samples are queued. More... | |
The Reader class is used to retrieve samples for a data element.
using DataStorm::Reader< Key, Value, UpdateTag >::KeyType = Key |
The key type.
using DataStorm::Reader< Key, Value, UpdateTag >::ValueType = Value |
The value type.
|
noexcept |
Transfers the given reader to this reader.
reader | The reader. |
DataStorm::Reader< Key, Value, UpdateTag >::~Reader | ( | ) |
Destruct the reader.
The destruction of the reader disconnects the reader from the writers.
|
noexcept |
Returns all the unread samples.
|
noexcept |
Get the keys for which writers are connected to this reader.
|
noexcept |
Get the connected writers.
Sample< Key, Value, UpdateTag > DataStorm::Reader< Key, Value, UpdateTag >::getNextUnread | ( | ) |
Returns the next unread sample.
The node shutdown will cause this method to raise NodeShutdownException.
|
noexcept |
Returns wether or not unread samples are available.
|
noexcept |
Indicates whether or not writers are online.
|
noexcept |
Calls the given functions to provide the initial set of connected keys and when a key is added or removed from the set of connected keys.
If callback functions are already set, they will be replaced.
The connected keys represent the set of keys for which writers are connected to this reader.
The init callback is always called after this method returns to provide the initial set of connected keys. The update callback is called when new keys are added or removed from the set of connected keys.
init | The function to call with the initial set of connected keys. |
update | The function to call when a key is added or removed from the set. |
|
noexcept |
Calls the given functions to provide the initial set of connected writers and when a new writer connects or disconnects.
If callback functions are already set, they will be replaced.
The init callback is always called after this method returns to provide the initial set of connected writers. The update callback is called when new writers connect or disconnect.
init | The function to call with the initial set of connected writers. |
update | The function to call when a new writer connects or disconnects. |
|
noexcept |
Calls the given function to provide the initial set of unread samples and when new samples are queued.
If a function is already set, it will be replaced.
The init callback is always called after this method returns to provide the initial set of unread samples. The queue callback is called when a new sample is received.
init | The function to call with the initial set of unread samples. |
queue | The function to call when a new sample is received. |
|
noexcept |
Move assignement operator.
reader | The reader. |
void DataStorm::Reader< Key, Value, UpdateTag >::waitForNoWriters | ( | ) | const |
Wait for readers to be offline.
The node shutdown will cause this method to raise NodeShutdownException.
void DataStorm::Reader< Key, Value, UpdateTag >::waitForUnread | ( | unsigned int | count = 1 | ) | const |
Wait for given number of unread samples to be available.
The node shutdown will cause this method to raise NodeShutdownException.
void DataStorm::Reader< Key, Value, UpdateTag >::waitForWriters | ( | unsigned int | count = 1 | ) | const |
Wait for given number of writers to be online.
The node shutdown will cause this method to raise NodeShutdownException.
count | The number of writers to wait. |