VTK
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes | Friends
vtkXMLDataElement Class Reference

Represents an XML element and those nested inside. More...

#include <vtkXMLDataElement.h>

Inheritance diagram for vtkXMLDataElement:
Inheritance graph
[legend]
Collaboration diagram for vtkXMLDataElement:
Collaboration graph
[legend]

List of all members.

Public Types

typedef vtkObject Superclass

Public Member Functions

virtual int IsA (const char *type)
vtkXMLDataElementNewInstance () const
void PrintSelf (ostream &os, vtkIndent indent)
const char * GetAttribute (const char *name)
void SetAttribute (const char *name, const char *value)
int GetWordTypeAttribute (const char *name, int &value)
const char * GetAttributeName (int idx)
const char * GetAttributeValue (int idx)
virtual vtkXMLDataElementGetRoot ()
int GetNumberOfNestedElements ()
vtkXMLDataElementGetNestedElement (int index)
void AddNestedElement (vtkXMLDataElement *element)
virtual void RemoveNestedElement (vtkXMLDataElement *)
virtual void RemoveAllNestedElements ()
vtkXMLDataElementLookupElementWithName (const char *name)
vtkXMLDataElementLookupElement (const char *id)
virtual int IsEqualTo (vtkXMLDataElement *elem)
virtual void DeepCopy (vtkXMLDataElement *elem)
virtual char * GetName ()
virtual void SetName (const char *_arg)
virtual char * GetId ()
virtual void SetId (const char *)
void SetCharacterData (const char *c, int length)
void AddCharacterData (const char *c, size_t length)
virtual char * GetCharacterData ()
int GetScalarAttribute (const char *name, int &value)
int GetScalarAttribute (const char *name, float &value)
int GetScalarAttribute (const char *name, double &value)
int GetScalarAttribute (const char *name, unsigned long &value)
void SetIntAttribute (const char *name, int value)
void SetFloatAttribute (const char *name, float value)
void SetDoubleAttribute (const char *name, double value)
void SetUnsignedLongAttribute (const char *name, unsigned long value)
int GetVectorAttribute (const char *name, int length, int *value)
int GetVectorAttribute (const char *name, int length, float *value)
int GetVectorAttribute (const char *name, int length, double *value)
int GetVectorAttribute (const char *name, int length, unsigned long *value)
void SetVectorAttribute (const char *name, int length, const int *value)
void SetVectorAttribute (const char *name, int length, const float *value)
void SetVectorAttribute (const char *name, int length, const double *value)
void SetVectorAttribute (const char *name, int length, const unsigned long *value)
virtual int GetNumberOfAttributes ()
virtual void RemoveAttribute (const char *name)
virtual void RemoveAllAttributes ()
vtkXMLDataElementGetParent ()
void SetParent (vtkXMLDataElement *parent)
vtkXMLDataElementFindNestedElement (const char *id)
vtkXMLDataElementFindNestedElementWithName (const char *name)
vtkXMLDataElementFindNestedElementWithNameAndId (const char *name, const char *id)
vtkXMLDataElementFindNestedElementWithNameAndAttribute (const char *name, const char *att_name, const char *att_value)
virtual vtkTypeInt64 GetXMLByteIndex ()
virtual void SetXMLByteIndex (vtkTypeInt64)
virtual void SetAttributeEncoding (int)
virtual int GetAttributeEncoding ()
void PrintXML (ostream &os, vtkIndent indent)
void PrintXML (const char *fname)
virtual int GetCharacterDataWidth ()
virtual void SetCharacterDataWidth (int)

Static Public Member Functions

static int IsTypeOf (const char *type)
static vtkXMLDataElementSafeDownCast (vtkObjectBase *o)
static vtkXMLDataElementNew ()

Protected Member Functions

virtual vtkObjectBaseNewInstanceInternal () const
 vtkXMLDataElement ()
 ~vtkXMLDataElement ()
virtual vtkTypeInt64 GetInlineDataPosition ()
virtual void SetInlineDataPosition (vtkTypeInt64)
vtkXMLDataElementLookupElementInScope (const char *id)
vtkXMLDataElementLookupElementUpScope (const char *id)
void PrintCharacterData (ostream &os, vtkIndent indent)

Static Protected Member Functions

static int IsSpace (char c)
static void PrintWithEscapedData (ostream &os, const char *data)

Protected Attributes

char * Name
char * Id
int CharacterDataWidth
char * CharacterData
size_t CharacterDataBlockSize
size_t CharacterDataBufferSize
size_t EndOfCharacterData
int IgnoreCharacterData
vtkTypeInt64 InlineDataPosition
vtkTypeInt64 XMLByteIndex
char ** AttributeNames
char ** AttributeValues
int NumberOfAttributes
int AttributesSize
int AttributeEncoding
int NumberOfNestedElements
int NestedElementsSize
vtkXMLDataElement ** NestedElements
vtkXMLDataElementParent

Friends

class vtkXMLDataParser
class vtkXMLMaterialParser

Detailed Description

Represents an XML element and those nested inside.

vtkXMLDataElement is used by vtkXMLDataParser to represent an XML element. It provides methods to access the element's attributes and nested elements in a convenient manner. This allows easy traversal of an input XML file by vtkXMLReader and its subclasses.

See also:
vtkXMLDataParser

Definition at line 35 of file vtkXMLDataElement.h.


Member Typedef Documentation

Reimplemented from vtkObject.

Definition at line 38 of file vtkXMLDataElement.h.


Constructor & Destructor Documentation


Member Function Documentation

static int vtkXMLDataElement::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 vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkObject.

virtual int vtkXMLDataElement::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 vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkObject.

Reimplemented from vtkObject.

virtual vtkObjectBase* vtkXMLDataElement::NewInstanceInternal ( ) const [protected, virtual]

Reimplemented from vtkObject.

Reimplemented from vtkObject.

void vtkXMLDataElement::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 vtkObject.

Create an object with Debug turned off, modified time initialized to zero, and reference counting on.

Reimplemented from vtkObject.

virtual char* vtkXMLDataElement::GetName ( ) [virtual]

Set/Get the name of the element. This is its XML tag.

virtual void vtkXMLDataElement::SetName ( const char *  _arg) [virtual]

Set/Get the name of the element. This is its XML tag.

virtual char* vtkXMLDataElement::GetId ( ) [virtual]

Set/Get the value of the id attribute of the element, if any.

virtual void vtkXMLDataElement::SetId ( const char *  ) [virtual]

Set/Get the value of the id attribute of the element, if any.

const char* vtkXMLDataElement::GetAttribute ( const char *  name)

Get the attribute with the given name. If it doesn't exist, returns 0.

void vtkXMLDataElement::SetAttribute ( const char *  name,
const char *  value 
)

Set the attribute with the given name and value. If it doesn't exist, adds it.

void vtkXMLDataElement::SetCharacterData ( const char *  c,
int  length 
)

Set/Get the character data between XML start/end tags.

void vtkXMLDataElement::AddCharacterData ( const char *  c,
size_t  length 
) [inline]

Set/Get the character data between XML start/end tags.

Definition at line 296 of file vtkXMLDataElement.h.

virtual char* vtkXMLDataElement::GetCharacterData ( ) [virtual]

Set/Get the character data between XML start/end tags.

int vtkXMLDataElement::GetScalarAttribute ( const char *  name,
int value 
)

Get the attribute with the given name and converted to a scalar value. Returns whether value was extracted.

int vtkXMLDataElement::GetScalarAttribute ( const char *  name,
float value 
)

Get the attribute with the given name and converted to a scalar value. Returns whether value was extracted.

int vtkXMLDataElement::GetScalarAttribute ( const char *  name,
double value 
)

Get the attribute with the given name and converted to a scalar value. Returns whether value was extracted.

int vtkXMLDataElement::GetScalarAttribute ( const char *  name,
unsigned long &  value 
)

Get the attribute with the given name and converted to a scalar value. Returns whether value was extracted.

void vtkXMLDataElement::SetIntAttribute ( const char *  name,
int  value 
)

Set the attribute with the given name. We can not use the same GetScalarAttribute() construct since the compiler will not be able to resolve between SetAttribute(..., int) and SetAttribute(..., unsigned long).

void vtkXMLDataElement::SetFloatAttribute ( const char *  name,
float  value 
)

Set the attribute with the given name. We can not use the same GetScalarAttribute() construct since the compiler will not be able to resolve between SetAttribute(..., int) and SetAttribute(..., unsigned long).

void vtkXMLDataElement::SetDoubleAttribute ( const char *  name,
double  value 
)

Set the attribute with the given name. We can not use the same GetScalarAttribute() construct since the compiler will not be able to resolve between SetAttribute(..., int) and SetAttribute(..., unsigned long).

void vtkXMLDataElement::SetUnsignedLongAttribute ( const char *  name,
unsigned long  value 
)

Set the attribute with the given name. We can not use the same GetScalarAttribute() construct since the compiler will not be able to resolve between SetAttribute(..., int) and SetAttribute(..., unsigned long).

int vtkXMLDataElement::GetVectorAttribute ( const char *  name,
int  length,
int value 
)

Get the attribute with the given name and converted to a scalar value. Returns length of vector read.

int vtkXMLDataElement::GetVectorAttribute ( const char *  name,
int  length,
float value 
)

Get the attribute with the given name and converted to a scalar value. Returns length of vector read.

int vtkXMLDataElement::GetVectorAttribute ( const char *  name,
int  length,
double value 
)

Get the attribute with the given name and converted to a scalar value. Returns length of vector read.

int vtkXMLDataElement::GetVectorAttribute ( const char *  name,
int  length,
unsigned long *  value 
)

Get the attribute with the given name and converted to a scalar value. Returns length of vector read.

void vtkXMLDataElement::SetVectorAttribute ( const char *  name,
int  length,
const int value 
)

Set the attribute with the given name.

void vtkXMLDataElement::SetVectorAttribute ( const char *  name,
int  length,
const float value 
)

Set the attribute with the given name.

void vtkXMLDataElement::SetVectorAttribute ( const char *  name,
int  length,
const double value 
)

Set the attribute with the given name.

void vtkXMLDataElement::SetVectorAttribute ( const char *  name,
int  length,
const unsigned long *  value 
)

Set the attribute with the given name.

int vtkXMLDataElement::GetWordTypeAttribute ( const char *  name,
int value 
)

Get the attribute with the given name and converted to a word type such as VTK_FLOAT or VTK_UNSIGNED_LONG.

Get the number of attributes.

Get the n-th attribute name. Returns 0 if there is no such attribute.

Get the n-th attribute value. Returns 0 if there is no such attribute.

virtual void vtkXMLDataElement::RemoveAttribute ( const char *  name) [virtual]

Remove one or all attributes.

virtual void vtkXMLDataElement::RemoveAllAttributes ( ) [virtual]

Remove one or all attributes.

Set/Get the parent of this element.

Set/Get the parent of this element.

Get root of the XML tree this element is part of.

Get the number of elements nested in this one.

Get the element nested in this one at the given index.

Add nested element

Remove nested element.

virtual void vtkXMLDataElement::RemoveAllNestedElements ( ) [virtual]

Remove all nested elements.

Find the first nested element with the given id, given name, or given name and id. WARNING: the search is only performed on the children, not the grand-children.

Find the first nested element with the given id, given name, or given name and id. WARNING: the search is only performed on the children, not the grand-children.

vtkXMLDataElement* vtkXMLDataElement::FindNestedElementWithNameAndId ( const char *  name,
const char *  id 
)

Find the first nested element with the given id, given name, or given name and id. WARNING: the search is only performed on the children, not the grand-children.

vtkXMLDataElement* vtkXMLDataElement::FindNestedElementWithNameAndAttribute ( const char *  name,
const char *  att_name,
const char *  att_value 
)

Find the first nested element with the given id, given name, or given name and id. WARNING: the search is only performed on the children, not the grand-children.

Find the first nested element with given name. WARNING: the search is performed on the whole XML tree.

Lookup the element with the given id, starting at this scope.

virtual vtkTypeInt64 vtkXMLDataElement::GetXMLByteIndex ( ) [virtual]

Set/Get the offset from the beginning of the XML document to this element.

virtual void vtkXMLDataElement::SetXMLByteIndex ( vtkTypeInt64  ) [virtual]

Set/Get the offset from the beginning of the XML document to this element.

virtual int vtkXMLDataElement::IsEqualTo ( vtkXMLDataElement elem) [virtual]

Check if the instance has the same name, attributes, character data and nested elements contents than the given element (this method is applied recursively on the nested elements, and they must be stored in the same order). Warning: Id, Parent, XMLByteIndex are ignored.

virtual void vtkXMLDataElement::DeepCopy ( vtkXMLDataElement elem) [virtual]

Copy this element from another of the same type (elem), recursively. Old attributes and nested elements are removed, new ones are created given the contents of 'elem'. Warning: Parent is ignored.

virtual void vtkXMLDataElement::SetAttributeEncoding ( int  ) [virtual]

Get/Set the internal character encoding of the attributes. Default type is VTK_ENCODING_UTF_8. Note that a vtkXMLDataParser has its own AttributesEncoding ivar. If this ivar is set to something other than VTK_ENCODING_NONE, it will be used to set the attribute encoding of each vtkXMLDataElement created by this vtkXMLDataParser.

Get/Set the internal character encoding of the attributes. Default type is VTK_ENCODING_UTF_8. Note that a vtkXMLDataParser has its own AttributesEncoding ivar. If this ivar is set to something other than VTK_ENCODING_NONE, it will be used to set the attribute encoding of each vtkXMLDataElement created by this vtkXMLDataParser.

void vtkXMLDataElement::PrintXML ( ostream &  os,
vtkIndent  indent 
)

Prints element tree as XML.

void vtkXMLDataElement::PrintXML ( const char *  fname)

Prints element tree as XML.

Get/Set the width (in number of fields) that character data (that between open and closing tags ie. <X> ... </X>) is printed. If the width is less than one the tag's character data is printed all on one line. If it is greater than one the character data is streamed insterting line feeds every width number of fields. See PrintXML.

virtual void vtkXMLDataElement::SetCharacterDataWidth ( int  ) [virtual]

Get/Set the width (in number of fields) that character data (that between open and closing tags ie. <X> ... </X>) is printed. If the width is less than one the tag's character data is printed all on one line. If it is greater than one the character data is streamed insterting line feeds every width number of fields. See PrintXML.

virtual vtkTypeInt64 vtkXMLDataElement::GetInlineDataPosition ( ) [protected, virtual]
virtual void vtkXMLDataElement::SetInlineDataPosition ( vtkTypeInt64  ) [protected, virtual]
static int vtkXMLDataElement::IsSpace ( char  c) [static, protected]
void vtkXMLDataElement::PrintCharacterData ( ostream &  os,
vtkIndent  indent 
) [protected]
static void vtkXMLDataElement::PrintWithEscapedData ( ostream &  os,
const char *  data 
) [static, protected]

Friends And Related Function Documentation

friend class vtkXMLDataParser [friend]

Definition at line 285 of file vtkXMLDataElement.h.

friend class vtkXMLMaterialParser [friend]

Definition at line 286 of file vtkXMLDataElement.h.


Member Data Documentation

char* vtkXMLDataElement::Name [protected]

Definition at line 239 of file vtkXMLDataElement.h.

char* vtkXMLDataElement::Id [protected]

Definition at line 241 of file vtkXMLDataElement.h.

Definition at line 243 of file vtkXMLDataElement.h.

Definition at line 246 of file vtkXMLDataElement.h.

Definition at line 247 of file vtkXMLDataElement.h.

Definition at line 248 of file vtkXMLDataElement.h.

Definition at line 249 of file vtkXMLDataElement.h.

Definition at line 253 of file vtkXMLDataElement.h.

vtkTypeInt64 vtkXMLDataElement::InlineDataPosition [protected]

Definition at line 257 of file vtkXMLDataElement.h.

vtkTypeInt64 vtkXMLDataElement::XMLByteIndex [protected]

Definition at line 261 of file vtkXMLDataElement.h.

Definition at line 264 of file vtkXMLDataElement.h.

Definition at line 265 of file vtkXMLDataElement.h.

Definition at line 266 of file vtkXMLDataElement.h.

Definition at line 267 of file vtkXMLDataElement.h.

Definition at line 268 of file vtkXMLDataElement.h.

Definition at line 271 of file vtkXMLDataElement.h.

Definition at line 272 of file vtkXMLDataElement.h.

Definition at line 273 of file vtkXMLDataElement.h.

Definition at line 275 of file vtkXMLDataElement.h.


The documentation for this class was generated from the following file: