Skip to content
Base_DAQ_Observer.h 711 B
Newer Older
Valerio Pastore's avatar
Valerio Pastore committed
/*
 * Base_DAQ_Observer.h
 *
 *  Created on: Apr 5, 2023
 *      Author: valerio
 */

#pragma once

Valerio Pastore's avatar
Valerio Pastore committed
#include <Base_DAQ.h>
Valerio Pastore's avatar
Valerio Pastore committed
namespace inaf::oasbo::DAQ_observers{

class BaseDAQ_Observer{
protected:
Valerio Pastore's avatar
Valerio Pastore committed
	inaf::oasbo::DAQ::BaseDAQ *dataAcquisition;
Valerio Pastore's avatar
Valerio Pastore committed

public:
Valerio Pastore's avatar
Valerio Pastore committed
  BaseDAQ_Observer(inaf::oasbo::DAQ::BaseDAQ &dataAcquisition) {
    this->dataAcquisition = &dataAcquisition;
Valerio Pastore's avatar
Valerio Pastore committed
  }

 virtual ~BaseDAQ_Observer() {
    this->dataAcquisition->removeObserver(this);
  }

  virtual void updatePacketStats() = 0;
  virtual void updateArchiverStats() = 0;
  virtual void updateProviderStats() = 0;
  virtual void updateReceiverStats() = 0;
astri's avatar
astri committed
  virtual void updateAll() = 0;
  virtual void start() = 0;
  virtual void stop() = 0;
Valerio Pastore's avatar
Valerio Pastore committed

};
}