ATLAS Offline Software
|
This header is shared inbetween the C-style server thread and the C++ Athena ServerSvc. More...
Namespaces | |
MuonFullIDHelper | |
SiSpacePointRetrieverHelpers | |
TrackParticleRetrieverHelpers | |
TrackRetrieverHelpers | |
Namespace for all helper functions. | |
Classes | |
class | AlgoJiveXML |
Converts Reconstructed Event Data objects into XML files which can be read by, for example, the Atlantis graphics package. More... | |
class | AODCaloClusterRetriever |
Retrieves all Calo Cluster objects . More... | |
class | AODJetRetriever |
Retrieves all Jet objects (JetEvent/Jet) More... | |
class | BadLArRetriever |
Retrieves all Calo Cluster objects . More... | |
class | BadTileRetriever |
Retrieves all Tile Calo Cell objects . More... | |
class | BeamSpotRetriever |
Retrieve the BeamSpot information (official ID s/w result) More... | |
class | BJetRetriever |
Retrieves Jet objects , filter from weight for BJet (JetEvent/Jet) More... | |
class | CaloClusterRetriever |
Retrieves all Calo Cluster objects . More... | |
class | CaloFCalRetriever |
Retrieves all Calo Cluster objects . More... | |
class | CaloHECRetriever |
Retrieves all Calo Cluster objects . More... | |
class | CaloLArRetriever |
Retrieves all Calo Cluster objects . More... | |
class | CaloMBTSRetriever |
Retrieves all Calo Cluster objects . More... | |
class | CaloTileRetriever |
Retrieves all Tile Calo Cell objects . More... | |
class | CompositeParticleRetriever |
Retrieves all CompositeParticle objects (AllObjects) More... | |
class | CSCClusterRetriever |
class | CscPrepDataRetriever |
class | CTPDecisionRetriever |
class | DataType |
Templated class to convert any object that is streamable in a ostringstream in a string. More... | |
struct | DispatchThreadArguments_t |
class | ElectronRetriever |
Retrieves all Electron objects (ElectronAODCollection etc.) More... | |
class | EmTauROIRetriever |
struct | Event_t |
struct | EventRequest_t |
class | EventStreamID |
For the client-server communication, each event is uniquely identified by the run number, the event number and a string determining which stream it belongs to. More... | |
class | ExternalONCRPCServerSvc |
This athena service will provide a link to an external ONCRPC server, e.g running as standalone application or in another athena application. More... | |
class | GeometryWriter |
Writes the inner detector and calorimeter geometry to an XML file for use with Atlantis. More... | |
class | IDataRetriever |
Interface for all DataRetriever classes, that extract event data from StoreGate and pass them on to a IFormatTool The interface will only hold the methods that have to be implemented by all DataRetrievers. More... | |
class | IEventReceiver |
Pure abstract interface for all event serving classes that provide events, streams and status information to the serving threads. More... | |
class | IEventServer |
Pure abstract interface for all event serving classes that provide events, streams and status information to the serving threads. More... | |
class | IFormatTool |
Abstract interface to event data formatting classes. More... | |
class | IGeometryWriter |
class | IInDetGeoModelTool |
Interface for the InDetGeoModelTool. More... | |
class | IMessage |
Pure abstract interface to provide some athena-indepandant messaging Note that only MSG::Level enum is used from IMessageSvc. More... | |
class | InDetGeoModelTool |
Provides easy access to the geometry model managers and identifier helpers for all JiveXML::IDataRetriever implemenations in InDetJiveXML . More... | |
class | IServer |
Pure abstract interface for all full server implementations. More... | |
class | IServerSvc |
Athena interface for all ServerSvc implementations. More... | |
class | IStreamTool |
Abstract interface to JiveXML event streaming classes. More... | |
class | JetROIRetriever |
Retrieves ROI objects, default mode uses HLT/Offline object LVL1_ROI::jets_type. More... | |
class | JiveXMLServer |
class | LArDigitRetriever |
Retrieves all Tile Calo Cell objects . More... | |
class | LVL1JetElementRetriever |
class | LVL1ResultRetriever |
class | LVL1TrigTowerRetriever |
class | MdtPrepDataRetriever |
class | MMPrepDataRetriever |
class | MuonGeometryWriter |
Writes the GeoModel muon geometry to an XML file for use with Atlantis. More... | |
class | MuonRetriever |
Retrieves all Muon objects (StacoMuonCollection etc.) More... | |
class | MuonROIRetriever |
Retrieves ROI objects, default mode uses HLT/Offline object LVL1_ROI::emtaus_type. More... | |
class | ONCRPCServerSvc |
This athena service will create an ONC/RPC (aka SunRPC) server, that can provide the athena status as well as data strings from events. More... | |
class | PhotonRetriever |
Retrieves all Photon objects (PhotonAODCollection) More... | |
class | PixelClusterRetriever |
Retrieves all InDet::SiCluster objects. More... | |
class | PixelRDORetriever |
Retrieve all PixelRDORawData information (pixel raw hits) More... | |
class | RpcPrepDataRetriever |
class | SCTRDORetriever |
Retrieve all SCT_RDORawData information (SCT raw hits) More... | |
class | SegmentRetriever |
Retrieves all Trk::SegmentCollection objects. More... | |
struct | ServerThreadArguments_t |
class | SiClusterRetriever |
Retrieves all InDet::SiCluster objects. More... | |
class | SiSpacePointRetriever |
Retrieves all InDet::SpacePoint data for Pixel and SCT. More... | |
class | sTgcPrepDataRetriever |
struct | Streams_t |
class | StreamToFileTool |
Stream JiveXML event information into a file. More... | |
class | StreamToServerTool |
Stream event to an IServerSvc, which typically is a network server run from and controlled by the Athena application. More... | |
class | TauJetRetriever |
Retrieves all TauJet objects . More... | |
class | TgcPrepDataRetriever |
class | ThreadCollection |
This class handles a collection of threads. More... | |
class | TrackParticleRetriever |
Retrieves all TrackParticle (AOD) Collection objects This is a chopped version of the full (RDO/ESD) Trk::Track retriever TrigJiveXML/TrackRetriever. More... | |
class | TrackRetriever |
Retrieves all Trk::TrackCollection objects. More... | |
class | TrigEMClusterRetriever |
class | TriggerInfoRetriever |
class | TrigMuonROIRetriever |
class | TrigRpcDataRetriever |
class | TrigSiSpacePointRetriever |
class | TRTRetriever |
Retrieves all InDet::TRT_DriftCircle objects. More... | |
class | TruthMuonTrackRetriever |
Retrieves the muons information from the TrackRecordCollection . More... | |
class | TruthParticleRetriever |
class | TruthTrackRetriever |
Retrieves the McEventCollection or the TrackRecordCollection in simulated cosmics. More... | |
class | VertexRetriever |
Retrieves all Trk::VxCandidate objects. More... | |
class | xAODCaloClusterRetriever |
Retrieves all Calo Cluster objects . More... | |
class | xAODElectronRetriever |
Retrieves all Electron objects (ElectronAODCollection etc.) More... | |
class | xAODEmTauROIRetriever |
class | xAODJetRetriever |
Retrieves all Jet objects (JetAODCollection etc.) More... | |
class | xAODJetROIRetriever |
class | xAODMissingETRetriever |
Retrieves all MissingET objects (MissingETAODCollection etc.) More... | |
class | xAODMuonRetriever |
Retrieves all Muon objects (MuonAODCollection etc.) More... | |
class | xAODMuonROIRetriever |
class | xAODPhotonRetriever |
Retrieves all Photon objects (PhotonAODCollection etc.) More... | |
class | xAODTauRetriever |
Retrieves all Tau objects (TauAODCollection etc.) More... | |
class | xAODTrackParticleRetriever |
Retrieves all TrackParticle objects (TrackParticleAODCollection etc.) More... | |
class | xAODTrigDecisionRetriever |
class | xAODTriggerTowerRetriever |
Retrieves TriggerTower xAOD objects. More... | |
class | xAODVertexRetriever |
Retrieves all Vertex objects (VertexAODCollection etc.) More... | |
class | XMLFormatTool |
Writes data stored in a DataMap into an XML stream in the format required by the Atlantis event display. More... | |
Typedefs | |
typedef std::vector< DataType > | DataVect |
Defines a map with a key and a vector of DataType objects e.g. More... | |
typedef std::map< std::string, DataVect > | DataMap |
typedef std::pair< std::string, std::string > | TagType |
Defines a tag as a pair of strings. More... | |
typedef std::pair< const EventStreamID, const std::string > | EventStreamPair |
A map that stores events according to their EventStreamID Due to the way EventStreamID is build, events will be sorted by their stream name. More... | |
typedef std::map< const EventStreamID, const std::string > | EventStreamMap |
typedef struct Streams_t | Streams |
Data structures for GetStreams functions. More... | |
typedef struct EventRequest_t | EventRequest |
Data structures for GetEvent functions. More... | |
typedef struct Event_t | Event |
typedef struct ServerThreadArguments_t | ServerThreadArguments |
Arguments handed over fromt the main (Athena) thread to the server thread. More... | |
typedef struct DispatchThreadArguments_t | DispatchThreadArguments |
Arguments handed over fromt the main server thread to the thread dispatching the request (one for each request) More... | |
Functions | |
std::ostream & | operator<< (std::ostream &os, const DataType &dt) |
Allow this to be streamed in an ostream. More... | |
bool | checkResult (const int RetVal, const std::string &Module, IMessage *const ServerSvc) |
Simple result checking routine, that will output an errorMsg throught the ServerSvc if there was an error. More... | |
void | ReturnNull (SVCXPRT *transp, IServer *const ServerSvc) |
Implementation of NULLPROC Return nothing - server has just been pinged. More... | |
void | ReturnState (SVCXPRT *transp, IServer *const ServerSvc) |
Implementation of ONCRPC_ATHENASTATUS_PROC Return the current athena status in XDR representation. More... | |
void | ReturnStreams (SVCXPRT *transp, IServer *const ServerSvc) |
Implementation of ONCRPC_GETSTREAMS_PROC Return the currently available event streams. More... | |
void | ReturnEvent (SVCXPRT *transp, const EventRequest *eventReq, IServer *const ServerSvc) |
Implementation of ONCRPC_GETEVENT_PROC Return an event from a certain streams. More... | |
void | SetNewEvent (SVCXPRT *transp, const Event *event, IServer *const ServerSvc) |
Implementation of ONCRPC_SETEVENT_PROC Set a new event for a certain streams. More... | |
void * | ONCRPCServerThread (void *args) |
This is the actual server thread, which takes above arguments. More... | |
void * | ONCRPCDispatchThread (void *args) |
This is the thread handling the request - one thread per request. More... | |
void | ONCRPCRequestHandler (struct svc_req *rqstp, SVCXPRT *transp) |
The Request handler is called from the RPC kernel routines - hence extern C It creates a new dispatch thread and returns. More... | |
bool_t | xdr_streams (XDR *xdrsp, Streams *streams) |
De- and Encoding of Streams_t. More... | |
bool_t | xdr_event_req (XDR *xdrsp, EventRequest *eventReq) |
De-/Encoding of EventRequest_t. More... | |
bool_t | xdr_event (XDR *xdrsp, Event *event) |
De-/Encoding of Event_t. More... | |
void | ONCRPCCleanupHandler (void *args) |
This cleanup handler is called whenever the server thread exits. More... | |
void | manualPerigeeMatch (const Trk::Perigee *per1, const Trk::Perigee *per2, bool &matched) |
Manually match measured perigee d0,z0,phi0 of Trk::Track and Rec::TrackParticle, some problem with direct match depite identical values (maybe worth trying again). More... | |
Variables | |
const unsigned int | NSTREAMMAX = 1024 |
const unsigned int | NBYTESMAX = 0x1u << (sizeof( unsigned int )*8 - 1) |
ThreadCollection *const | dispatchThreads = new ThreadCollection() |
pthread_key_t ServerSvcKey | ATLAS_THREAD_SAFE |
This header is shared inbetween the C-style server thread and the C++ Athena ServerSvc.
Migrated to new TrigDecisionTool described here https://twiki.cern.ch/twiki/bin/view/Atlas/TrigDecisionTool15.
These are the XDR procedures that are used to encode/decode the data which is transfered inbetween client and server in the XDR (eXternal Data Representation).
It defines
format. This format is platform independant ( see standards RFC 1832 and RFC 4506).
typedef std::map<std::string, DataVect > JiveXML::DataMap |
Definition at line 59 of file DataType.h.
typedef std::vector<DataType> JiveXML::DataVect |
Defines a map with a key and a vector of DataType objects e.g.
"CellID" and a vector of cell IDs
Definition at line 58 of file DataType.h.
typedef struct DispatchThreadArguments_t JiveXML::DispatchThreadArguments |
Arguments handed over fromt the main server thread to the thread dispatching the request (one for each request)
Definition at line 34 of file ONCRPCServerThreads.h.
typedef struct Event_t JiveXML::Event |
Definition at line 40 of file ONCRPCServer.h.
typedef struct EventRequest_t JiveXML::EventRequest |
Data structures for GetEvent functions.
Definition at line 40 of file ONCRPCServer.h.
typedef std::map< const EventStreamID, const std::string> JiveXML::EventStreamMap |
Definition at line 87 of file EventStream.h.
typedef std::pair< const EventStreamID, const std::string> JiveXML::EventStreamPair |
A map that stores events according to their EventStreamID Due to the way EventStreamID is build, events will be sorted by their stream name.
std::map::find(key) and operator[] will return the event that belongs to this stream. In order to compare for identity of events use EventStreamID::isSameEvent()
Definition at line 86 of file EventStream.h.
typedef struct ServerThreadArguments_t JiveXML::ServerThreadArguments |
Arguments handed over fromt the main (Athena) thread to the server thread.
Definition at line 17 of file ONCRPCServerThreads.h.
typedef struct Streams_t JiveXML::Streams |
Data structures for GetStreams functions.
Definition at line 40 of file ONCRPCServer.h.
typedef std::pair<std::string,std::string> JiveXML::TagType |
Defines a tag as a pair of strings.
Definition at line 62 of file DataType.h.
bool JiveXML::checkResult | ( | const int | RetVal, |
const std::string & | Module, | ||
IMessage *const | ServerSvc | ||
) |
Simple result checking routine, that will output an errorMsg throught the ServerSvc if there was an error.
Returns false on error;
Definition at line 24 of file ONCRPCServerProcs.cxx.
void JiveXML::manualPerigeeMatch | ( | const Trk::Perigee * | per1, |
const Trk::Perigee * | per2, | ||
bool & | matched | ||
) |
Manually match measured perigee d0,z0,phi0 of Trk::Track and Rec::TrackParticle, some problem with direct match depite identical values (maybe worth trying again).
Definition at line 61 of file VertexRetriever.cxx.
void JiveXML::ONCRPCCleanupHandler | ( | void * | args | ) |
This cleanup handler is called whenever the server thread exits.
Definition at line 241 of file ONCRPCServerThreads.cxx.
void * JiveXML::ONCRPCDispatchThread | ( | void * | args | ) |
This is the thread handling the request - one thread per request.
This is the dispatch function, which does the actual calls of the ServerSvc routines.
Many of these dispatch requests may be running at the same time, each in its own thread.
Definition at line 42 of file ONCRPCServerThreads.cxx.
void JiveXML::ONCRPCRequestHandler | ( | struct svc_req * | rqstp, |
SVCXPRT * | |||
) |
The Request handler is called from the RPC kernel routines - hence extern C It creates a new dispatch thread and returns.
This function handles all the requests that are received from the server by creating a new thread for each request.
For request with an input value the input parameters are extracted first, as svc_getreqset is not thread safe.
Definition at line 116 of file ONCRPCServerThreads.cxx.
void * JiveXML::ONCRPCServerThread | ( | void * | args | ) |
This is the actual server thread, which takes above arguments.
Main server therad.
Check wether the the portmapper is up and if it already has another instance of this server registered
Check wether the the portmapper is up and if it already has another instance of this server registered
Definition at line 252 of file ONCRPCServerThreads.cxx.
void JiveXML::ReturnEvent | ( | SVCXPRT * | transp, |
const EventRequest * | eventReq, | ||
IServer *const | ServerSvc | ||
) |
Implementation of ONCRPC_GETEVENT_PROC Return an event from a certain streams.
Return the actual event for a requested stream, only if.
Definition at line 105 of file ONCRPCServerProcs.cxx.
Implementation of NULLPROC Return nothing - server has just been pinged.
Definition at line 45 of file ONCRPCServerProcs.cxx.
Implementation of ONCRPC_ATHENASTATUS_PROC Return the current athena status in XDR representation.
Implementation of ONCRPC_GETSTATUS_PROC Return the current athena status in XDR representation.
Definition at line 63 of file ONCRPCServerProcs.cxx.
Implementation of ONCRPC_GETSTREAMS_PROC Return the currently available event streams.
Return the names of all the streams that are available at the server.
Definition at line 73 of file ONCRPCServerProcs.cxx.
Implementation of ONCRPC_SETEVENT_PROC Set a new event for a certain streams.
Set a new event for a given stream.
Definition at line 182 of file ONCRPCServerProcs.cxx.
bool_t JiveXML::xdr_event | ( | XDR * | xdrsp, |
Event * | event | ||
) |
bool_t JiveXML::xdr_event_req | ( | XDR * | xdrsp, |
EventRequest * | eventReq | ||
) |
De-/Encoding of EventRequest_t.
Implementation of XDR converters for ONCRPC_GETEVENT_PROC Return the currently available eventRequest or event in XDR representation.
Definition at line 32 of file ONCRPCXDRProcs.cxx.
bool_t JiveXML::xdr_streams | ( | XDR * | xdrsp, |
Streams * | streams | ||
) |
De- and Encoding of Streams_t.
Implementation of XDR converters for ONCRPC_GETSTREAMS_PROC Return the currently available event streams in XDR representation.
Definition at line 19 of file ONCRPCXDRProcs.cxx.
pthread_key_t ServerSvcKey JiveXML::ATLAS_THREAD_SAFE |
Definition at line 35 of file ONCRPCServerThreads.cxx.
ThreadCollection *const JiveXML::dispatchThreads = new ThreadCollection() |
Definition at line 31 of file ONCRPCServerThreads.cxx.
const unsigned int JiveXML::NBYTESMAX = 0x1u << (sizeof( unsigned int )*8 - 1) |
Definition at line 40 of file ONCRPCServer.h.
const unsigned int JiveXML::NSTREAMMAX = 1024 |
Definition at line 38 of file ONCRPCServer.h.