00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
#ifndef VTK_PALETTE_ELEMENT_PARSER_H_
00017
# define VTK_PALETTE_ELEMENT_PARSER_H_
00018
# include "vtkExtensionsPaletteConfigure.h"
00019
# include "vtkNestingExpatBase.h"
00020
00021
VTK_EXTENSIONS_PALETTE_NAMESPACE_BEGIN
00022
00023
class vtkPaletteElement;
00024
00035 class VTK_EXTENSIONS_PALETTE_EXPORT vtkPaletteElementParser
00036 :
public vtkNestingExpatBase
00037 {
00038
public:
00039 vtkTypeRevisionMacro (vtkPaletteElementParser,
vtkNestingExpatBase);
00040
void PrintSelf (ostream&,
vtkIndent);
00041
00044 vtkGetObjectMacro(Element,
vtkPaletteElement);
00045
virtual void SetElement (
vtkPaletteElement* element);
00049 vtkPaletteElementParser*
GetChild (
void)
const;
00050
00051 vtkGetObjectMacro(CurrentChild, vtkPaletteElementParser);
00052 vtkSetObjectMacro(CurrentChild, vtkPaletteElementParser);
00053
00054
# if defined(VTK_EXTENSIONS_BUILD_DEBUG)
00055
00056
void ElementDecl (
const XML_Char* name, XML_Content* model);
00057
void AttlistDecl (
const XML_Char* elname,
00058
const XML_Char* attname,
00059
const XML_Char* attType,
00060
const XML_Char* defaultValue,
00061
int isRequired);
00062
void XmlDecl (
const XML_Char* version,
00063
const XML_Char* encoding,
00064
int standalone);
00065
void EntityDecl (
const XML_Char* entityName,
00066
int isParameterEntity,
00067
const XML_Char* value,
00068
int valueLength,
00069
const XML_Char* base,
00070
const XML_Char* systemId,
00071
const XML_Char* publicId,
00072
const XML_Char* notationName);
00073
void StartElement (
const XML_Char* name,
const XML_Char** attrs);
00074
void EndElement (
const XML_Char* name);
00075
void CharacterData (
const XML_Char* data,
int len);
00076
void ProcessingInstruction (
const XML_Char* target,
00077
const XML_Char* data);
00078
void Comment (
const XML_Char* data);
00079
void StartCdataSection (
void);
00080
void EndCdataSection (
void);
00081
void Default (
const XML_Char* data,
int len);
00082
void StartDoctypeDecl (
const XML_Char* doctypeName,
00083
const XML_Char* systemId,
00084
const XML_Char* publicId,
00085
int hasInternalSubset);
00086
void EndDoctypeDecl (
void);
00087
void NotationDecl (
const XML_Char* notationName,
00088
const XML_Char* base,
00089
const XML_Char* systemId,
00090
const XML_Char* publicId);
00091
void StartNamespaceDecl (
const XML_Char* prefix,
00092
const XML_Char* uri);
00093
void EndNamespaceDecl (
const XML_Char* prefix);
00094
int ExternalEntityRef (
const XML_Char* context,
00095
const XML_Char* base,
00096
const XML_Char* systemId,
00097
const XML_Char* publicId);
00098
void SkippedEntity (
const XML_Char* entityName,
00099
int isParameterEntity);
00100
00101
# endif
00102
00103
protected:
00104 vtkPaletteElementParser (
void);
00105 ~vtkPaletteElementParser();
00106
00107
00109 vtkPaletteElementParser (vtkPaletteElementParser* parent);
00110
00112
void SetupHandlers (
void);
00113
00114 vtkPaletteElement* Element;
00115 vtkPaletteElementParser* CurrentChild;
00116
00117
00124 void SetChild (vtkPaletteElementParser* a)
00125 { this->Superclass::SetChild(a); }
00126
00127
private:
00128
void SetChild (
vtkNestingExpatBase* a)
00129 { this->Superclass::SetChild(a); }
00130
00131
private:
00138 vtkPaletteElementParser (
vtkNestingExpatBase* parent);
00139 vtkPaletteElementParser (
const vtkPaletteElementParser&);
00140
void operator= (
const vtkPaletteElementParser&);
00142 };
00143
00144
00145
inline vtkPaletteElementParser*
00146 vtkPaletteElementParser::GetChild (
void)
const
00147
{
00148
return vtkPaletteElementParser::SafeDownCast(this->Superclass::GetChild());
00149 }
00150
00151
VTK_EXTENSIONS_PALETTE_NAMESPACE_END
00152
00153
#endif
00154
00155
00156
00157