Elm  2
ELM is a library providing generic data structures, OS-independent interface, plugins and XML.
Builder.h
1 /*
2  * $Id$
3  * Copyright (c) 2006, IRIT UPS.
4  *
5  * elm/xom/Builder.h -- XOM Builder class interface.
6  */
7 #ifndef ELM_XOM_BUILDER_H
8 #define ELM_XOM_BUILDER_H
9 
10 #include <elm/string.h>
11 #include <elm/io.h>
12 
13 namespace elm { namespace xom {
14 
15 // External class
16 class NodeFactory;
17 class Document;
18 
19 // Builder class
20 class Builder {
21  bool validate;
22  NodeFactory *fact;
23  static NodeFactory default_factory;
24 public:
25  Builder(void);
26  Builder(bool validate);
27  Builder(bool validate, NodeFactory *factory);
28  Builder(NodeFactory *factory);
29 
30  inline NodeFactory *getNodeFactory(void) const;
31  Document *build(CString system_id);
32  Document *build(CString document, CString base_uri);
34  Document *build(elm::io::InStream *stream, CString base_uri);
35 };
36 
37 // Builder inlines
38 inline NodeFactory *Builder::getNodeFactory(void) const {
39  return fact;
40 };
41 
42 } } // elm::xom
43 
44 #endif // ELM_XOM_BUILDER_H
elm::xom::NodeFactory
Definition: NodeFactory.h:27
elm::CString
Definition: CString.h:17
elm::xom::Builder::getNodeFactory
NodeFactory * getNodeFactory(void) const
Definition: Builder.h:38
elm
Definition: adapter.h:26
elm::xom::Builder::Builder
Builder(void)
Definition: xom_Builder.cpp:48
elm::xom::Builder
Definition: Builder.h:20
elm::xom::Document
Definition: Document.h:20
elm::xom::Builder::build
Document * build(CString system_id)
Definition: xom_Builder.cpp:57
elm::io::InStream
Definition: InStream.h:29