BOSS 7.1.2
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.4 2022/02/17 22:03:24 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
24//static const InterfaceID IID_ICalibXmlSvc("ICalibXmlSvc", 1, 0);
25
26//class ICalibXmlSvc : virtual public IInterface
27class GAUDI_API ICalibXmlSvc : virtual public IInterface
28{
29public:
30 // Re-implemented from IInterface
31 //static const InterfaceID& interfaceID() { return IID_ICalibXmlSvc; }
33 /**
34 * This method parses an xml file and produces the corresponding DOM
35 * document.
36 * @param fileName the name of the file to parse
37 * @return the document issued from the parsing
38 */
39 virtual XERCES_CPP_NAMESPACE_QUALIFIER DOMDocument*
40 parse(const char* filename) = 0;
41
42 // Do we also want a "reset" or "clearDocument" ? Can in any case
43 // do this internally when a new document is to be parsed so might not
44 // be necessary to have explicit public method.
45};
46
47
48#endif
virtual XERCES_CPP_NAMESPACE_QUALIFIER DOMDocument * parse(const char *filename)=0
DeclareInterfaceID(ICalibXmlSvc, 1, 0)