/* * Base_DAQ_Observer.h * * Created on: Apr 5, 2023 * Author: valerio */ #pragma once #include // FORWARD DECLARE namespace inaf::oasbo::DAQ { class BaseDAQ; } namespace inaf::oasbo::DAQ_observers{ class BaseDAQ_Observer{ private: inaf::oasbo::DAQ::BaseDAQ * dataAcquisition; public: BaseDAQ_Observer(inaf::oasbo::DAQ::BaseDAQ * dataAcquisition) { this->dataAcquisition = dataAcquisition; this->dataAcquisition->registerObserver(this); } virtual ~BaseDAQ_Observer() { this->dataAcquisition->removeObserver(this); } virtual void updatePacketStats() = 0; virtual void updateArchiverStats() = 0; virtual void updateProviderStats() = 0; virtual void updateReceiverStats() = 0; }; }