5#ifndef JIVEXML_ONCRPCSERVERSVC_H
6#define JIVEXML_ONCRPCSERVERSVC_H
10#include "GaudiKernel/ServiceHandle.h"
11#include "GaudiKernel/MsgStream.h"
53 virtual StatusCode
finalize()
override;
59 virtual int GetState()
const override;
76 void Message(
const MSG::Level level,
const std::string& mesg )
const override;
78 virtual MSG::Level
LogLevel()
const override;
Define macros for attributes used to control the static checker.
For the client-server communication, each event is uniquely identified by the run number,...
Pure abstract interface for all full server implementations.
virtual int GetState() const override
get the Status of the application
virtual MSG::Level LogLevel() const override
Get the logging level.
virtual const EventStreamID GetEventStreamID(const std::string &streamName) const override
get the current EventStreamID for a particular stream
virtual bool GetRunServerFlag() const override
The server thread will stop once this flag is set to false.
virtual std::vector< std::string > GetStreamNames() const override
get the names of all the streams
ONCRPCServerSvc(const std::string &name, ISvcLocator *sl)
Default constructor.
virtual void Message(const MSG::Level level, const std::string &mesg) const override
This function is exposed to allow using athena messaging service from other threads.
StatusCode StopServer()
Stop the server thread.
EventStreamMap m_eventStreamMap
virtual StatusCode finalize() override
Finalize - called once at the end.
virtual const std::string GetEvent(const EventStreamID &evtStreamID) const override
get the current event for a particular stream
pthread_t m_ServerThreadHandle
virtual StatusCode UpdateEventForStream(const EventStreamID &evtStreamID, const std::string &event) override
Put this event as new current event for stream given by name.
virtual ~ONCRPCServerSvc()
Destructor.
virtual void ServerThreadStopped() override
Callback when server thread terminates.
virtual StatusCode initialize() override
Gaudi default methods.
pthread_mutex_t m_accessLock ATLAS_THREAD_SAFE
StatusCode StartServer()
Start the server thread.
This class handles a collection of threads.
This header is shared inbetween the C-style server thread and the C++ Athena ServerSvc.
std::map< const EventStreamID, const std::string > EventStreamMap