Merge pull request #2220 from DOCGroup/revert-2217-jwi-inetwraning
[ACE_TAO.git] / ACE / ACEXML / common / XMLFilter.h
blobf49a994b523fbc81ca976dbb979a9e44928e3668
1 // -*- C++ -*-
3 //=============================================================================
4 /**
5 * @file XMLFilter.h
7 * @author Nanbor Wang <nanbor@cs.wustl.edu>
8 */
9 //=============================================================================
10 #ifndef _ACEXML_XMLFILTER_H_
11 #define _ACEXML_XMLFILTER_H_
13 #include /**/ "ace/pre.h"
14 #include "ACEXML/common/ACEXML_Export.h"
16 #if !defined (ACE_LACKS_PRAGMA_ONCE)
17 #pragma once
18 #endif /* ACE_LACKS_PRAGMA_ONCE */
20 #include "ACEXML/common/XMLReader.h"
22 /**
23 * @class ACEXML_XMLFilter XMLFilter.h "ACEXML/common/XMLFilter.h"
25 * @brief ACEXML_XMLFilter
27 * An XML filter is like an XML reader, except that it obtains its events
28 * from another XML reader rather than a primary source like an XML
29 * document or database. Filters can modify a stream of events as they pass
30 * on to the final application.
32 * The XMLFilterImpl helper class provides a convenient base for creating
33 * SAX2 filters, by passing on all ACEXML_EntityResolver,
34 * ACEXML_DTDHandler, ACEXML_ContentHandler and ACEXML_ErrorHandler events
35 * automatically.
37 class ACEXML_Export ACEXML_XMLFilter : public ACEXML_XMLReader
39 public:
40 /**
41 * Get the parent reader.
43 virtual ACEXML_XMLReader *getParent () const = 0;
45 /**
46 * Set the parent reader.
48 virtual void setParent (ACEXML_XMLReader *parent) = 0;
52 #include /**/ "ace/post.h"
54 #endif /* _ACEXML_XMLFILTER_H_ */