Logo ROOT   6.30.04
Reference Guide
 All Namespaces Files Pages
TSAXParser.h
Go to the documentation of this file.
1 // @(#)root/xmlparser:$Id$
2 // Author: Jose Lo 12/1/2005
3 
4 /*************************************************************************
5  * Copyright (C) 1995-2005, Rene Brun and Fons Rademakers. *
6  * All rights reserved. *
7  * *
8  * For the licensing terms see $ROOTSYS/LICENSE. *
9  * For the list of contributors see $ROOTSYS/README/CREDITS. *
10  *************************************************************************/
11 
12 #ifndef ROOT_TSAXParser
13 #define ROOT_TSAXParser
14 
15 #include "TXMLParser.h"
16 
17 
18 class TList;
19 class TSAXParserCallback;
20 struct _xmlSAXHandler;
21 
22 
23 class TSAXParser : public TXMLParser {
24 
25 friend class TSAXParserCallback;
26 
27 private:
28  _xmlSAXHandler *fSAXHandler; ///< libxml2 SAX handler
29 
30  virtual Int_t Parse();
31 
32  TSAXParser(const TSAXParser&); // Not implemented
33  TSAXParser& operator=(const TSAXParser&); // Not implemented
34 
35 public:
36  TSAXParser();
37  virtual ~TSAXParser();
38 
39  virtual Int_t ParseFile(const char *filename);
40  virtual Int_t ParseBuffer(const char *contents, Int_t len);
41 
42  virtual void OnStartDocument(); //*SIGNAL*
43  virtual void OnEndDocument(); //*SIGNAL*
44  virtual void OnStartElement(const char *name, const TList *attr); //*SIGNAL*
45  virtual void OnEndElement(const char *name); //*SIGNAL*
46  virtual void OnCharacters(const char *characters); //*SIGNAL*
47  virtual void OnComment(const char *text); //*SIGNAL*
48  virtual void OnWarning(const char *text); //*SIGNAL*
49  virtual Int_t OnError(const char *text); //*SIGNAL*
50  virtual Int_t OnFatalError(const char *text); //*SIGNAL*
51  virtual void OnCdataBlock(const char *text, Int_t len); //*SIGNAL*
52 
53  virtual void ConnectToHandler(const char *handlerName, void *handler);
54 
55  ClassDef(TSAXParser,0); // SAX Parser
56 };
57 
58 #endif