ATLAS Offline Software
Loading...
Searching...
No Matches
IFormatTool.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef JIVEXML__IFORMATTOOL_H
6#define JIVEXML__IFORMATTOOL_H
7
8#include "GaudiKernel/IAlgTool.h"
9#include "JiveXML/DataType.h"
10
11namespace JiveXML {
12
14 static const InterfaceID IID_IFormatTool("IFormatTool", 1, 0);
15
23 class IFormatTool : virtual public IAlgTool {
24
25 public:
27 static const InterfaceID& interfaceID();
28
30 virtual StatusCode initialize() = 0;
31 virtual StatusCode finalize() = 0;
32
34 virtual StatusCode SetTag( const TagType tag ) = 0;
35
37 virtual StatusCode StartEvent( const unsigned long EventNumber, const unsigned int RunNumber,
38 const std::string& DateTime,
39 const unsigned int lumiBlock,
40 const std::string& eventProperty,
41 const std::string& geometryVersion ) = 0 ;
42
44 virtual StatusCode EndEvent() = 0 ;
45
47 virtual StatusCode AddToEvent( const std::string& component,
48 const std::string& key,
49 const DataMap* aMap) = 0 ;
50
52 virtual const std::ostringstream* getFormattedEvent() const = 0;
53
54 };
55
56 inline const InterfaceID& IFormatTool::interfaceID()
57 {
58 return IID_IFormatTool;
59 }
60
61} //namespace
62
63#endif
64
Abstract interface to event data formatting classes.
Definition IFormatTool.h:23
virtual StatusCode initialize()=0
Pure virtual interface functions.
virtual StatusCode finalize()=0
virtual StatusCode StartEvent(const unsigned long EventNumber, const unsigned int RunNumber, const std::string &DateTime, const unsigned int lumiBlock, const std::string &eventProperty, const std::string &geometryVersion)=0
Start a new event.
static const InterfaceID & interfaceID()
The interface identifier.
Definition IFormatTool.h:56
virtual StatusCode AddToEvent(const std::string &component, const std::string &key, const DataMap *aMap)=0
Append a formatted version of one event component.
virtual StatusCode EndEvent()=0
Finialize this event.
virtual StatusCode SetTag(const TagType tag)=0
Set additional tags.
virtual const std::ostringstream * getFormattedEvent() const =0
Return the formated string.
This header is shared inbetween the C-style server thread and the C++ Athena ServerSvc.
std::map< std::string, DataVect > DataMap
Definition DataType.h:59
std::pair< std::string, std::string > TagType
Defines a tag as a pair of strings.
Definition DataType.h:62
static const InterfaceID IID_IFormatTool("IFormatTool", 1, 0)
Must declare this, with name of interface.