$treeview $search $mathjax $extrastylesheet
otsdaq
v2_03_00
$projectbrief
|
$projectbrief
|
$searchbox |
00001 #ifndef _ots_RawDataVisualizerConsumer_h_ 00002 #define _ots_RawDataVisualizerConsumer_h_ 00003 00004 #include "otsdaq-core/Configurable/Configurable.h" 00005 #include "otsdaq-core/DataManager/DataConsumer.h" 00006 00007 #include <string> 00008 00009 namespace ots 00010 { 00011 class ConfigurationManager; 00012 00013 class RawDataVisualizerConsumer : public DataConsumer, public Configurable 00014 { 00015 public: 00016 RawDataVisualizerConsumer(std::string supervisorApplicationUID, 00017 std::string bufferUID, 00018 std::string processorUID, 00019 const ConfigurationTree& theXDAQContextConfigTree, 00020 const std::string& configurationPath); 00021 virtual ~RawDataVisualizerConsumer(void); 00022 00023 void startProcessingData(std::string runNumber) override; 00024 void stopProcessingData(void) override; 00025 00026 const std::string& getLastRawDataBuffer(void) { return data_; } 00027 00028 private: 00029 bool workLoopThread(toolbox::task::WorkLoop* workLoop); 00030 void fastRead(void); 00031 void slowRead(void); 00032 00033 // For fast read 00034 std::string* dataP_; 00035 std::map<std::string, std::string>* headerP_; 00036 // For slow read 00037 std::string data_; 00038 std::map<std::string, std::string> header_; 00039 }; 00040 } // namespace ots 00041 00042 #endif