BOSS 7.0.8
BESIII Offline Software System
Loading...
Searching...
No Matches
ICalibXmlSvc.h
Go to the documentation of this file.
1// $Header: /bes/bes/BossCvs/Calibration/CalibSvc/CalibDataSvc/CalibDataSvc/ICalibXmlSvc.h,v 1.3 2020/05/25 22:17:38 maqm Exp $
2
3#ifndef IXMLSvc_h
4#define IXMLSvc_h
5
6/** @class ICalibXmlSvc
7 Abstract interface to be satisfied by any XML conversion implementation.
8
9 Will parse a file, making its DOM rep. available
10
11 Maybe also provide layer over "raw" access to the DOM to insulate
12 converters from changes moving from one xml parser version (or even
13 parser) to another.
14 ...or do we just depend on things in calibUtil?
15
16*/
17#include "GaudiKernel/IInterface.h"
18// #include <xercesc/dom/DOM_Document.hpp>
19#include <xercesc/util/XercesDefs.hpp>
20XERCES_CPP_NAMESPACE_BEGIN
21class DOMDocument;
22XERCES_CPP_NAMESPACE_END
23
24static const InterfaceID IID_ICalibXmlSvc("ICalibXmlSvc", 1, 0);
25
26class ICalibXmlSvc : virtual public IInterface
27{
28public:
29 // Re-implemented from IInterface
30 static const InterfaceID& interfaceID() { return IID_ICalibXmlSvc; }
31
32 /**
33 * This method parses an xml file and produces the corresponding DOM
34 * document.
35 * @param fileName the name of the file to parse
36 * @return the document issued from the parsing
37 */
38 virtual XERCES_CPP_NAMESPACE_QUALIFIER DOMDocument*
39 parse(const char* filename) = 0;
40
41 // Do we also want a "reset" or "clearDocument" ? Can in any case
42 // do this internally when a new document is to be parsed so might not
43 // be necessary to have explicit public method.
44};
45
46
47#endif
virtual XERCES_CPP_NAMESPACE_QUALIFIER DOMDocument * parse(const char *filename)=0
static const InterfaceID & interfaceID()
Definition: ICalibXmlSvc.h:30