source: trunk/source/visualization/HepRep/include/cheprep/AbstractXMLWriter.h @ 834

Last change on this file since 834 was 834, checked in by garnier, 16 years ago

import all except CVS

  • Property svn:executable set to *
File size: 1.9 KB
Line 
1// Copyright FreeHEP, 2005.
2#ifndef ABSTRACTXMLWRITER_H
3#define ABSTRACTXMLWRITER_H 1
4
5#include "cheprep/config.h"
6
7#include <string>
8
9/**
10 * @author Mark Donszelmann
11 * @version $Id: AbstractXMLWriter.h,v 1.3 2005/06/02 21:28:45 duns Exp $
12 */
13namespace cheprep {
14   
15    class AbstractXMLWriter {
16   
17        public:
18            AbstractXMLWriter(std::string defaultNameSpace) : defaultNameSpace(defaultNameSpace) {
19            }
20            virtual ~AbstractXMLWriter() {
21            }
22
23            virtual void openTag(std::string ns, std::string name) = 0;
24            virtual void printTag(std::string ns, std::string name) = 0;
25            virtual void setAttribute(std::string ns, std::string name, std::string value) = 0;
26            virtual void setAttribute(std::string ns, std::string name, double value) = 0;
27                       
28            virtual void close() = 0;
29            virtual void openDoc(std::string version = "1.0", std::string encoding = "", bool standalone = false) = 0;
30            virtual void closeDoc(bool force = false) = 0;
31            virtual void openTag(std::string name) = 0;
32            virtual void closeTag() = 0;
33            virtual void printTag(std::string name) = 0;
34            virtual void setAttribute(std::string name, char* value) = 0;
35            virtual void setAttribute(std::string name, std::string value) = 0;
36            virtual void setAttribute(std::string name, std::vector<double> value) = 0;
37            virtual void setAttribute(std::string name, int64 value) = 0;
38            virtual void setAttribute(std::string name, int value) = 0;
39            virtual void setAttribute(std::string name, bool value) = 0;
40            virtual void setAttribute(std::string name, double value) = 0;
41       
42        protected:
43            std::string defaultNameSpace;
44    };
45
46} // cheprep
47
48#endif  // ABSTRACTXMLWRITER_H
Note: See TracBrowser for help on using the repository browser.