00001 #ifndef artdaq_ArtModules_NetMonTransportServiceInterface_h
00002 #define artdaq_ArtModules_NetMonTransportServiceInterface_h
00003
00004 #include "art/Framework/Services/Registry/ServiceMacros.h"
00005
00006 class TBufferFile;
00007
00011 class NetMonTransportServiceInterface
00012 {
00013 public:
00017 virtual ~NetMonTransportServiceInterface() = default;
00018
00024 virtual void connect() = 0;
00025
00031 virtual void disconnect() = 0;
00032
00038 virtual void listen() = 0;
00039
00046 virtual void sendMessage(uint64_t sequenceId, uint8_t messageType, TBufferFile& msg) = 0;
00047
00052 virtual void receiveMessage(TBufferFile*& msg) = 0;
00053
00058 virtual void receiveInitMessage(TBufferFile*& msg) = 0;
00059 };
00060
00061 DECLARE_ART_SERVICE_INTERFACE(NetMonTransportServiceInterface, LEGACY)
00062 #endif
00063
00064
00065
00066