|
IceFlow NDN-based stream processing library written in C++
|
#include <iceflow.hpp>
Public Member Functions | |
| IceFlow (DAGParser dagParser, const std::string &nodeName, ndn::Face &face) | |
| IceFlow (DAGParser dagParser, const std::string &nodeName, ndn::Face &face, std::shared_ptr< CongestionReporter > congestionReporter) | |
| IceFlow (const std::string &dagFileName, const std::string &nodeName, ndn::Face &face) | |
| IceFlow (const std::string &dagFileName, const std::string &nodeName, ndn::Face &face, std::shared_ptr< CongestionReporter > congestionReporter) | |
| void | run () |
| void | shutdown () |
| const std::string & | getNodePrefix () |
| const std::string & | getSyncPrefix () |
| void | pushData (const std::string &downstreamEdgeName, std::vector< uint8_t > payload) |
| void | registerConsumerCallback (const std::string &upstreamEdgeName, ConsumerCallback consumerCallback) |
| void | registerProsumerCallback (const std::string &upstreamEdgeName, ProsumerCallback prosumerCallback) |
| void | repartitionConsumer (const std::string &upstreamEdgeName, std::vector< uint32_t > partitions) |
| void | repartitionProducer (const std::string &downstreamEdgeName, uint64_t numberOfPartitions) |
| std::unordered_map< std::string, EdgeConsumptionStats > | getConsumerStats () |
| std::unordered_map< std::string, EdgeProductionStats > | getProducerStats () |
| void | reportCongestion (const std::string &edgeName, CongestionReason congestionReason) |
| std::vector< Edge > | getDownstreamEdges () |
| std::optional< Edge > | getDownstreamEdge (uint32_t index) |
| std::vector< Edge > | getUpstreamEdges () |
| std::optional< Edge > | getUpstreamEdge (uint32_t index) |
| nlohmann::json::object_t | getApplicationConfiguration () |
| template<typename T > | |
| std::optional< T > | getApplicationParameter (const std::string &key) |
Central building block for IceFlow-based consumers and producers.
Will act as a consumer if a subTopic is defined and act as a consumer if a pubTopic is defined. If both topics are passed to the constructor, the instantiated IceFlow object will act both as a producer and a consumer.
| iceflow::IceFlow::IceFlow | ( | DAGParser | dagParser, |
| const std::string & | nodeName, | ||
| ndn::Face & | face ) |
Generates a new IceFlow object from a dagParser, a nodeName, and a custom face.