00001 #ifndef artdaq_core_Core_SimpleMemoryReader_hh
00002 #define artdaq_core_Core_SimpleMemoryReader_hh 1
00003
00004 #include "artdaq-core/Core/SharedMemoryEventReceiver.hh"
00005 #include <thread>
00006 #include <memory>
00007
00008 namespace artdaq
00009 {
00020 int SimpleMemoryReaderApp(int argc, char** argv);
00021
00026 class SimpleMemoryReader
00027 {
00028 public:
00035 explicit SimpleMemoryReader( uint32_t shm_key, uint32_t broadcast_key, std::size_t expectedEventCount = 0);
00036
00042 void run();
00043
00044 private:
00048 std::shared_ptr<SharedMemoryEventReceiver> incoming_events_;
00052 std::size_t expectedEventCount_;
00053 };
00054 }
00055
00056 #endif