#include <vtkXMLTreeReader.h>
vtkXMLTreeReader parses an XML file and uses the nesting structure of the XML tags to generate a tree. Node attributes are assigned to node arrays, and the special arrays .tagname and .chardata contain the tag type and the text internal to the tag, respectively. The arrays are of type vtkStringArray. There is an array for each attribute type in the XML file, even if it appears in only one tag. If an attribute is missing from a tag, its value is the empty string.
If MaskArrays is on (the default is off), the filter will additionally make bit arrays whose names are prepended with ".valid." which are 1 if the element contains that attribute, and 0 otherwise.
For example, the XML file containing the text: <node name="jeff" age="26"> this is text in jeff's node <node name="joe"> <node name="al" initials="amb" other="something"> <node name="dave" age="30"> </node> <node name="lisa">this is text in lisa's node</node> <node name="darlene" age="29"> </node>
would be parsed into a tree with the following node IDs and structure:
0 (jeff) - children: 1 (joe), 4 (lisa), 5 (darlene) 1 (joe) - children: 2 (al), 3 (dave) 2 (al) 3 (dave) 4 (lisa) 5 (darlene)
and the node data arrays would be as follows:
name initials other age .tagname .chardata ------------------------------------------------------------------------------------------------ jeff (empty) (empty) 26 node " this is text in jeff's node\n \n \n \n" joe (empty) (empty) (empty) node "\n \n \n " al amb something (empty) node (empty) dave (empty) (empty) 30 node (empty) lisa (empty) (empty) (empty) node "this is text in lisa's node" darlene (empty) (empty) 29 node (empty)
There would also be the following bit arrays if MaskArrays is on:
.valid.name .valid.initials .valid.other .valid.age --------------------------------------------------------- 1 0 0 1 1 0 0 0 1 1 1 0 1 0 0 1 1 0 0 0 1 0 0 1
Definition at line 90 of file vtkXMLTreeReader.h.
Public Types | |
typedef vtkTreeAlgorithm | Superclass |
Public Member Functions | |
virtual const char * | GetClassName () |
virtual int | IsA (const char *type) |
void | PrintSelf (ostream &os, vtkIndent indent) |
virtual char * | GetFileName () |
virtual void | SetFileName (const char *) |
virtual char * | GetXMLString () |
virtual void | SetXMLString (const char *) |
virtual bool | GetMaskArrays () |
virtual void | SetMaskArrays (bool) |
virtual void | MaskArraysOn () |
virtual void | MaskArraysOff () |
virtual bool | GetReadCharData () |
virtual void | SetReadCharData (bool) |
virtual void | ReadCharDataOn () |
virtual void | ReadCharDataOff () |
Static Public Member Functions | |
static vtkXMLTreeReader * | New () |
static int | IsTypeOf (const char *type) |
static vtkXMLTreeReader * | SafeDownCast (vtkObject *o) |
Static Public Attributes | |
static const char * | TagNameField |
static const char * | CharDataField |
Protected Member Functions | |
vtkXMLTreeReader () | |
~vtkXMLTreeReader () | |
int | RequestData (vtkInformation *, vtkInformationVector **, vtkInformationVector *) |
Protected Attributes | |
char * | FileName |
char * | XMLString |
bool | ReadCharData |
bool | MaskArrays |
vtkXMLTreeReader::vtkXMLTreeReader | ( | ) | [protected] |
vtkXMLTreeReader::~vtkXMLTreeReader | ( | ) | [protected] |
static vtkXMLTreeReader* vtkXMLTreeReader::New | ( | ) | [static] |
Create an object with Debug turned off, modified time initialized to zero, and reference counting on.
Reimplemented from vtkTreeAlgorithm.
virtual const char* vtkXMLTreeReader::GetClassName | ( | ) | [virtual] |
Reimplemented from vtkTreeAlgorithm.
static int vtkXMLTreeReader::IsTypeOf | ( | const char * | name | ) | [static] |
Return 1 if this class type is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeRevisionMacro found in vtkSetGet.h.
Reimplemented from vtkTreeAlgorithm.
virtual int vtkXMLTreeReader::IsA | ( | const char * | name | ) | [virtual] |
Return 1 if this class is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeRevisionMacro found in vtkSetGet.h.
Reimplemented from vtkTreeAlgorithm.
static vtkXMLTreeReader* vtkXMLTreeReader::SafeDownCast | ( | vtkObject * | o | ) | [static] |
Reimplemented from vtkTreeAlgorithm.
void vtkXMLTreeReader::PrintSelf | ( | ostream & | os, | |
vtkIndent | indent | |||
) | [virtual] |
Methods invoked by print to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.
Reimplemented from vtkTreeAlgorithm.
virtual char* vtkXMLTreeReader::GetFileName | ( | ) | [virtual] |
If set, reads in the XML file specified.
virtual void vtkXMLTreeReader::SetFileName | ( | const char * | ) | [virtual] |
If set, reads in the XML file specified.
virtual char* vtkXMLTreeReader::GetXMLString | ( | ) | [virtual] |
If set, and FileName is not set, reads in the XML string.
virtual void vtkXMLTreeReader::SetXMLString | ( | const char * | ) | [virtual] |
If set, and FileName is not set, reads in the XML string.
virtual bool vtkXMLTreeReader::GetMaskArrays | ( | ) | [virtual] |
If on, makes bit arrays for each attribute with name .valid.attribute_name for each attribute. Default is off.
virtual void vtkXMLTreeReader::SetMaskArrays | ( | bool | ) | [virtual] |
If on, makes bit arrays for each attribute with name .valid.attribute_name for each attribute. Default is off.
virtual void vtkXMLTreeReader::MaskArraysOn | ( | ) | [virtual] |
If on, makes bit arrays for each attribute with name .valid.attribute_name for each attribute. Default is off.
virtual void vtkXMLTreeReader::MaskArraysOff | ( | ) | [virtual] |
If on, makes bit arrays for each attribute with name .valid.attribute_name for each attribute. Default is off.
virtual bool vtkXMLTreeReader::GetReadCharData | ( | ) | [virtual] |
If on, stores the XML character data (i.e. textual data between tags) into an array named CharDataField, otherwise this field is skipped. Default is off.
virtual void vtkXMLTreeReader::SetReadCharData | ( | bool | ) | [virtual] |
If on, stores the XML character data (i.e. textual data between tags) into an array named CharDataField, otherwise this field is skipped. Default is off.
virtual void vtkXMLTreeReader::ReadCharDataOn | ( | ) | [virtual] |
If on, stores the XML character data (i.e. textual data between tags) into an array named CharDataField, otherwise this field is skipped. Default is off.
virtual void vtkXMLTreeReader::ReadCharDataOff | ( | ) | [virtual] |
If on, stores the XML character data (i.e. textual data between tags) into an array named CharDataField, otherwise this field is skipped. Default is off.
int vtkXMLTreeReader::RequestData | ( | vtkInformation * | request, | |
vtkInformationVector ** | inputVector, | |||
vtkInformationVector * | outputVector | |||
) | [protected, virtual] |
This is called by the superclass. This is the method you should override.
Reimplemented from vtkTreeAlgorithm.
const char* vtkXMLTreeReader::TagNameField [static] |
Definition at line 123 of file vtkXMLTreeReader.h.
const char* vtkXMLTreeReader::CharDataField [static] |
Definition at line 127 of file vtkXMLTreeReader.h.
char* vtkXMLTreeReader::FileName [protected] |
Definition at line 132 of file vtkXMLTreeReader.h.
char* vtkXMLTreeReader::XMLString [protected] |
Definition at line 133 of file vtkXMLTreeReader.h.
bool vtkXMLTreeReader::ReadCharData [protected] |
Definition at line 134 of file vtkXMLTreeReader.h.
bool vtkXMLTreeReader::MaskArrays [protected] |
Definition at line 135 of file vtkXMLTreeReader.h.