00001 #ifndef _ots_FEOtsUDPProducerTemplateInterface_h_
00002 #define _ots_FEOtsUDPProducerTemplateInterface_h_
00003
00004
00005 #include "otsdaq-core/FECore/FEProducerVInterface.h"
00006 #include "otsdaq-components/DAQHardware/OtsUDPHardware.h"
00007 #include "otsdaq-components/DAQHardware/OtsUDPFirmwareDataGen.h"
00008 #include "otsdaq-core/DataManager/DataProducer.h"
00009
00010 #include <string>
00011
00012 namespace ots
00013 {
00014
00015
00016 class FEOtsUDPProducerTemplateInterface :
00017 public FEProducerVInterface, public OtsUDPHardware, public OtsUDPFirmwareDataGen
00018 {
00019
00020 public:
00021 FEOtsUDPProducerTemplateInterface (const std::string& interfaceUID, const ConfigurationTree& theXDAQContextConfigTree, const std::string& interfaceConfigurationPath);
00022 virtual ~FEOtsUDPProducerTemplateInterface (void);
00023
00024 void configure (void) override;
00025 void halt (void) override;
00026 void pause (void) override;
00027 void resume (void) override;
00028 void start (std::string runNumber) override;
00029 void stop (void) override;
00030 bool running (void) override;
00031
00032 virtual void universalRead (char* address, char* readValue) override;
00033 virtual void universalWrite (char* address, char* writeValue) override;
00034
00035 private:
00036
00037
00038 public:
00039 void varTest (__ARGS__);
00040
00041 public:
00042 void varTest2 (__ARGS__);
00043 };
00044
00045 }
00046
00047 #endif