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

#pragma once

// FORWARD DECLARE
namespace inaf::oasbo::DAQ {
class BaseDAQ;
}

Valerio Pastore's avatar
Valerio Pastore committed
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;

};
}