VTK
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes | Friends | List of all members
vtkXMLDataElement Class Reference

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

#include <vtkXMLDataElement.h>

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

Public Types

typedef vtkObject Superclass
 
- Public Types inherited from vtkObject
typedef vtkObjectBase 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)
 
- Public Member Functions inherited from vtkObject
vtkObjectNewInstance () const
 
virtual void DebugOn ()
 
virtual void DebugOff ()
 
bool GetDebug ()
 
void SetDebug (bool debugFlag)
 
virtual void Modified ()
 
virtual unsigned long GetMTime ()
 
unsigned long AddObserver (unsigned long event, vtkCommand *, float priority=0.0f)
 
unsigned long AddObserver (const char *event, vtkCommand *, float priority=0.0f)
 
vtkCommandGetCommand (unsigned long tag)
 
void RemoveObserver (vtkCommand *)
 
void RemoveObservers (unsigned long event, vtkCommand *)
 
void RemoveObservers (const char *event, vtkCommand *)
 
int HasObserver (unsigned long event, vtkCommand *)
 
int HasObserver (const char *event, vtkCommand *)
 
void RemoveObserver (unsigned long tag)
 
void RemoveObservers (unsigned long event)
 
void RemoveObservers (const char *event)
 
void RemoveAllObservers ()
 
int HasObserver (unsigned long event)
 
int HasObserver (const char *event)
 
template<class U , class T >
unsigned long AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f)
 
template<class U , class T >
unsigned long AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f)
 
template<class U , class T >
unsigned long AddObserver (unsigned long event, U observer, bool(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f)
 
int InvokeEvent (unsigned long event, void *callData)
 
int InvokeEvent (const char *event, void *callData)
 
int InvokeEvent (unsigned long event)
 
int InvokeEvent (const char *event)
 
- Public Member Functions inherited from vtkObjectBase
const char * GetClassName () const
 
virtual void Delete ()
 
virtual void FastDelete ()
 
void Print (ostream &os)
 
virtual void Register (vtkObjectBase *o)
 
virtual void UnRegister (vtkObjectBase *o)
 
void SetReferenceCount (int)
 
void PrintRevisions (ostream &)
 
virtual void PrintHeader (ostream &os, vtkIndent indent)
 
virtual void PrintTrailer (ostream &os, vtkIndent indent)
 
int GetReferenceCount ()
 

Static Public Member Functions

static int IsTypeOf (const char *type)
 
static vtkXMLDataElementSafeDownCast (vtkObjectBase *o)
 
static vtkXMLDataElementNew ()
 
- Static Public Member Functions inherited from vtkObject
static int IsTypeOf (const char *type)
 
static vtkObjectSafeDownCast (vtkObjectBase *o)
 
static vtkObjectNew ()
 
static void BreakOnError ()
 
static void SetGlobalWarningDisplay (int val)
 
static void GlobalWarningDisplayOn ()
 
static void GlobalWarningDisplayOff ()
 
static int GetGlobalWarningDisplay ()
 
- Static Public Member Functions inherited from vtkObjectBase
static int IsTypeOf (const char *name)
 
static vtkObjectBaseNew ()
 

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)
 
- Protected Member Functions inherited from vtkObject
 vtkObject ()
 
virtual ~vtkObject ()
 
virtual void RegisterInternal (vtkObjectBase *, int check)
 
virtual void UnRegisterInternal (vtkObjectBase *, int check)
 
void InternalGrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=NULL)
 
void InternalReleaseFocus ()
 
- Protected Member Functions inherited from vtkObjectBase
 vtkObjectBase ()
 
virtual ~vtkObjectBase ()
 
virtual void CollectRevisions (ostream &)
 
virtual void ReportReferences (vtkGarbageCollector *)
 
 vtkObjectBase (const vtkObjectBase &)
 
void operator= (const vtkObjectBase &)
 

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
 
- Protected Attributes inherited from vtkObject
bool Debug
 
vtkTimeStamp MTime
 
vtkSubjectHelper * SubjectHelper
 
- Protected Attributes inherited from vtkObjectBase
vtkAtomicInt32 ReferenceCount
 
vtkWeakPointerBase ** WeakPointers
 

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

Definition at line 38 of file vtkXMLDataElement.h.

Constructor & Destructor Documentation

vtkXMLDataElement::vtkXMLDataElement ( )
protected
vtkXMLDataElement::~vtkXMLDataElement ( )
protected

Member Function Documentation

static int vtkXMLDataElement::IsTypeOf ( const char *  type)
static
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.

static vtkXMLDataElement* vtkXMLDataElement::SafeDownCast ( vtkObjectBase o)
static
virtual vtkObjectBase* vtkXMLDataElement::NewInstanceInternal ( ) const
protectedvirtual

Reimplemented from vtkObject.

vtkXMLDataElement* vtkXMLDataElement::NewInstance ( ) const
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.

static vtkXMLDataElement* vtkXMLDataElement::New ( )
static
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.

virtual int vtkXMLDataElement::GetNumberOfAttributes ( )
virtual

Get the number of attributes.

const char* vtkXMLDataElement::GetAttributeName ( int  idx)

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

const char* vtkXMLDataElement::GetAttributeValue ( int  idx)

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.

vtkXMLDataElement* vtkXMLDataElement::GetParent ( )

Set/Get the parent of this element.

void vtkXMLDataElement::SetParent ( vtkXMLDataElement parent)

Set/Get the parent of this element.

virtual vtkXMLDataElement* vtkXMLDataElement::GetRoot ( )
virtual

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

int vtkXMLDataElement::GetNumberOfNestedElements ( )

Get the number of elements nested in this one.

vtkXMLDataElement* vtkXMLDataElement::GetNestedElement ( int  index)

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

void vtkXMLDataElement::AddNestedElement ( vtkXMLDataElement element)

Add nested element

virtual void vtkXMLDataElement::RemoveNestedElement ( vtkXMLDataElement )
virtual

Remove nested element.

virtual void vtkXMLDataElement::RemoveAllNestedElements ( )
virtual

Remove all nested elements.

vtkXMLDataElement* vtkXMLDataElement::FindNestedElement ( 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::FindNestedElementWithName ( const char *  name)

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.

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

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

vtkXMLDataElement* vtkXMLDataElement::LookupElement ( const char *  id)

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.

virtual int vtkXMLDataElement::GetAttributeEncoding ( )
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.

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

Prints element tree as XML.

void vtkXMLDataElement::PrintXML ( const char *  fname)

Prints element tree as XML.

virtual int vtkXMLDataElement::GetCharacterDataWidth ( )
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 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 ( )
protectedvirtual
virtual void vtkXMLDataElement::SetInlineDataPosition ( vtkTypeInt64  )
protectedvirtual
vtkXMLDataElement* vtkXMLDataElement::LookupElementInScope ( const char *  id)
protected
vtkXMLDataElement* vtkXMLDataElement::LookupElementUpScope ( const char *  id)
protected
static int vtkXMLDataElement::IsSpace ( char  c)
staticprotected
void vtkXMLDataElement::PrintCharacterData ( ostream &  os,
vtkIndent  indent 
)
protected
static void vtkXMLDataElement::PrintWithEscapedData ( ostream &  os,
const char *  data 
)
staticprotected

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.

int vtkXMLDataElement::CharacterDataWidth
protected

Definition at line 243 of file vtkXMLDataElement.h.

char* vtkXMLDataElement::CharacterData
protected

Definition at line 246 of file vtkXMLDataElement.h.

size_t vtkXMLDataElement::CharacterDataBlockSize
protected

Definition at line 247 of file vtkXMLDataElement.h.

size_t vtkXMLDataElement::CharacterDataBufferSize
protected

Definition at line 248 of file vtkXMLDataElement.h.

size_t vtkXMLDataElement::EndOfCharacterData
protected

Definition at line 249 of file vtkXMLDataElement.h.

int vtkXMLDataElement::IgnoreCharacterData
protected

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.

char** vtkXMLDataElement::AttributeNames
protected

Definition at line 264 of file vtkXMLDataElement.h.

char** vtkXMLDataElement::AttributeValues
protected

Definition at line 265 of file vtkXMLDataElement.h.

int vtkXMLDataElement::NumberOfAttributes
protected

Definition at line 266 of file vtkXMLDataElement.h.

int vtkXMLDataElement::AttributesSize
protected

Definition at line 267 of file vtkXMLDataElement.h.

int vtkXMLDataElement::AttributeEncoding
protected

Definition at line 268 of file vtkXMLDataElement.h.

int vtkXMLDataElement::NumberOfNestedElements
protected

Definition at line 271 of file vtkXMLDataElement.h.

int vtkXMLDataElement::NestedElementsSize
protected

Definition at line 272 of file vtkXMLDataElement.h.

vtkXMLDataElement** vtkXMLDataElement::NestedElements
protected

Definition at line 273 of file vtkXMLDataElement.h.

vtkXMLDataElement* vtkXMLDataElement::Parent
protected

Definition at line 275 of file vtkXMLDataElement.h.


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