$treeview $search $mathjax $extrastylesheet
otsdaq
v2_03_00
$projectbrief
|
$projectbrief
|
$searchbox |
00001 #ifndef _ots_ARTDAQProducer_h_ 00002 #define _ots_ARTDAQProducer_h_ 00003 00004 #include "otsdaq-core/ARTDAQReaderCore/ARTDAQReaderProcessorBase.h" 00005 // 00006 //#include "artdaq/Application/BoardReaderApp.hh" 00007 //#include "otsdaq-core/Configurable/Configurable.h" 00008 #include "otsdaq-core/DataManager/DataProducer.h" 00009 // 00010 //#include <future> 00011 //#include <memory> 00012 //#include <string> 00013 00014 namespace ots 00015 { 00016 // ARTDAQProducer 00017 // This class is a Data Producer plugin that 00018 // allows a single artdaq Board Reader to be 00019 // instantiated on the write side of an otsdaq Buffer. 00020 class ARTDAQProducer 00021 : public DataProducer, 00022 public ARTDAQReaderProcessorBase // public DataProducer, public Configurable 00023 { 00024 public: 00025 ARTDAQProducer(std::string supervisorApplicationUID, 00026 std::string bufferUID, 00027 std::string processorUID, 00028 const ConfigurationTree& theXDAQContextConfigTree, 00029 const std::string& configurationPath); 00030 virtual ~ARTDAQProducer(void); 00031 00032 // void initLocalGroup(int rank); 00033 // // void destroy (void); 00034 // 00035 // // void configure (fhicl::ParameterSet const& pset); 00036 // void configure(int rank); 00037 // void halt(void); 00038 void pauseProcessingData(void); 00039 void resumeProcessingData(void); 00040 void startProcessingData(std::string runNumber) override; 00041 void stopProcessingData(void); 00042 // // int universalRead (char *address, char *returnValue) override {;} 00043 // // void universalWrite (char *address, char *writeValue) override {;} 00044 // // artdaq::BoardReaderCore* getFragmentReceiverPtr(){return 00045 // // fragment_receiver_ptr_.get();} void ProcessData_(artdaq::FragmentPtrs & frags) 00046 // // override; 00047 // 00048 private: 00049 bool workLoopThread(toolbox::task::WorkLoop* workLoop) { return false; } 00050 // 00051 // std::unique_ptr<artdaq::BoardReaderApp> fragment_receiver_ptr_; 00052 // std::string name_; 00053 // 00054 // // FIXME These should go... 00055 // std::string report_string_; 00056 // bool external_request_status_; 00057 // fhicl::ParameterSet fhiclConfiguration_; 00058 }; 00059 00060 } // namespace ots 00061 00062 #endif