Data-centric, broker-less publish/subscribe framework. C++ only. More...
Classes | |
| struct | Cloner |
| The Cloner template provides a method to clone user types. More... | |
| struct | Cloner< std::shared_ptr< T >, typename std::enable_if_t< std::is_base_of_v< Ice::Value, T > > > |
| Cloner template specialization to clone shared Ice values using ice_clone. | |
| class | Config |
| The configuration base class holds configuration options common to readers and writers. More... | |
| struct | Decoder |
| The Decoder template provides a method to decode user types. More... | |
| struct | Encoder |
| The Encoder template provides a method to encode decode user types. More... | |
| struct | Filter |
| Filter structure to specify the filter name and criteria value. More... | |
| class | FilteredKeyReader |
| The filtered reader to read data elements whose key match a given filter. More... | |
| class | MultiKeyReader |
| The key reader to read the data element associated with a given set of keys. More... | |
| class | MultiKeyWriter |
| The key writer to write data elements associated with a given set of keys. More... | |
| class | Node |
| The Node class allows creating topic readers and writers. More... | |
| struct | NodeOptions |
| Options to configure a DataStorm node. More... | |
| class | NodeShutdownException |
| The exception that is thrown when a blocking operation is interrupted by the shutdown of the node. More... | |
| class | Reader |
| The Reader class is used to retrieve samples for a data element. More... | |
| class | ReaderConfig |
| The ReaderConfig class specifies configuration options specific to readers. More... | |
| class | Sample |
| A sample provides information about a data element update. More... | |
| class | SingleKeyReader |
| The key reader to read the data element associated with a given key. More... | |
| class | SingleKeyWriter |
| The key writer to write the data element associated with a given key. More... | |
| class | Topic |
| The Topic class. More... | |
| class | Writer |
| The Writer class is used to write samples for a data element. More... | |
| class | WriterConfig |
| The WriterConfig class specifies configuration options specific to writers. More... | |
Typedefs | |
| using | SampleEventSeq = std::vector<SampleEvent> |
| A sequence of sample events. | |
Enumerations | |
| enum struct | CallbackReason { Connect , Disconnect } |
| The callback action enumerator specifies the reason why a callback is called. More... | |
| enum struct | ClearHistoryPolicy { OnAdd , OnRemove , OnAll , OnAllExceptPartialUpdate , Never } |
| The clear history policy specifies when the history is cleared. More... | |
| enum struct | DiscardPolicy { None , SendTime , Priority } |
| The discard policy specifies how samples are discarded by readers upon receive. More... | |
| enum class | SampleEvent : std::uint8_t { Add , Update , PartialUpdate , Remove } |
| Describes the operation used by a data writer to update a data element. More... | |
Functions | |
| template<typename SFC, typename K, typename V, typename UT> | |
| MultiKeyReader< K, V, UT > | makeAnyKeyReader (const Topic< K, V, UT > &topic, const Filter< SFC > &sampleFilter, std::string name=std::string(), const ReaderConfig &config=ReaderConfig()) |
| Creates an any-key reader for the given topic and sample filter. | |
| template<typename K, typename V, typename UT> | |
| MultiKeyReader< K, V, UT > | makeAnyKeyReader (const Topic< K, V, UT > &topic, std::string name=std::string(), const ReaderConfig &config=ReaderConfig()) |
| Creates an any-key reader for the given topic. | |
| template<typename K, typename V, typename UT> | |
| MultiKeyWriter< K, V, UT > | makeAnyKeyWriter (const Topic< K, V, UT > &topic, std::string name=std::string(), const WriterConfig &config=WriterConfig()) |
| Creates an any-key writer for the given topic. | |
| template<typename KFC, typename K, typename V, typename UT> | |
| FilteredKeyReader< K, V, UT > | makeFilteredKeyReader (const Topic< K, V, UT > &topic, const Filter< KFC > &filter, std::string name=std::string(), const ReaderConfig &config=ReaderConfig()) |
| Creates a new filtered reader for the given topic and key filter. | |
| template<typename KFC, typename SFC, typename K, typename V, typename UT> | |
| FilteredKeyReader< K, V, UT > | makeFilteredKeyReader (const Topic< K, V, UT > &topic, const Filter< KFC > &keyFilter, const Filter< SFC > &sampleFilter, std::string name=std::string(), const ReaderConfig &config=ReaderConfig()) |
| Creates a new filter reader for the given topic, key filter and sample filter. | |
| template<typename SFC, typename K, typename V, typename UT> | |
| MultiKeyReader< K, V, UT > | makeMultiKeyReader (const Topic< K, V, UT > &topic, const std::vector< typename Topic< K, V, UT >::KeyType > &keys, const Filter< SFC > &sampleFilter, std::string name=std::string(), const ReaderConfig &config=ReaderConfig()) |
| Creates a multi-key reader for the given topic, keys and sample filter. | |
| template<typename K, typename V, typename UT> | |
| MultiKeyReader< K, V, UT > | makeMultiKeyReader (const Topic< K, V, UT > &topic, const std::vector< typename Topic< K, V, UT >::KeyType > &keys, std::string name=std::string(), const ReaderConfig &config=ReaderConfig()) |
| Creates a multi-key reader for the given topic. | |
| template<typename K, typename V, typename UT> | |
| MultiKeyWriter< K, V, UT > | makeMultiKeyWriter (const Topic< K, V, UT > &topic, const std::vector< typename Topic< K, V, UT >::KeyType > &keys, std::string name=std::string(), const WriterConfig &config=WriterConfig()) |
| Creates a multi-key writer for the given topic and keys. | |
| template<typename SFC, typename K, typename V, typename UT> | |
| SingleKeyReader< K, V, UT > | makeSingleKeyReader (const Topic< K, V, UT > &topic, const typename Topic< K, V, UT >::KeyType &key, const Filter< SFC > &sampleFilter, std::string name=std::string(), const ReaderConfig &config=ReaderConfig()) |
| Creates a key reader for the given topic, key and sample filter. | |
| template<typename K, typename V, typename UT> | |
| SingleKeyReader< K, V, UT > | makeSingleKeyReader (const Topic< K, V, UT > &topic, const typename Topic< K, V, UT >::KeyType &key, std::string name=std::string(), const ReaderConfig &config=ReaderConfig()) |
| Creates a key reader for the given topic and key. | |
| template<typename K, typename V, typename UT> | |
| SingleKeyWriter< K, V, UT > | makeSingleKeyWriter (const Topic< K, V, UT > &topic, const typename Topic< K, V, UT >::KeyType &key, std::string name=std::string(), const WriterConfig &config=WriterConfig()) |
| Creates a key writer for the given topic and key. | |
| template<typename K, typename V, typename U> | |
| std::ostream & | operator<< (std::ostream &os, const Sample< K, V, U > &sample) |
| Converts the given sample to a string and add it to the stream. | |
| std::ostream & | operator<< (std::ostream &os, const SampleEventSeq &types) |
| Converts the given sample type vector to a string and add it to the stream. | |
| std::ostream & | operator<< (std::ostream &os, SampleEvent value) |
| Outputs the enumerator name or underlying value of a SampleEvent to a stream. | |
Data-centric, broker-less publish/subscribe framework. C++ only.