3 #include <Poco/AtomicCounter.h>
4 #include <Poco/Event.h>
5 #include <Poco/Mutex.h>
6 #include <Poco/SharedPtr.h>
7 #include <Poco/Timespan.h>
8 #include <Poco/Timestamp.h>
10 #include "core/AbstractDistributor.h"
11 #include "core/ExporterQueue.h"
12 #include "loop/StoppableRunnable.h"
13 #include "model/SensorData.h"
22 void registerExporter(Poco::SharedPtr<Exporter> exporter)
override;
23 void exportData(
const SensorData &sensorData)
override;
25 void setQueueCapacity(
int capacity);
26 void setQueueTreshold(
int treshold);
27 void setQueueBatchSize(
int batchSize);
45 std::vector<ExporterQueue::Ptr> m_queues;
46 Poco::Event m_newData;
47 Poco::AtomicCounter m_stop;
48 Poco::Timespan m_deadTimeout;
49 Poco::Timespan m_idleTimeout;
Definition: SensorData.h:20
Definition: AbstractDistributor.h:17
Definition: QueuingDistributor.h:17
void stop() override
Definition: QueuingDistributor.cpp:125
Definition: StoppableRunnable.h:8
void setDeadTimeout(const Poco::Timespan &timeout)
Definition: QueuingDistributor.cpp:68
void setIdleTimeout(const Poco::Timespan &timeout)
Definition: QueuingDistributor.cpp:76