vtkXMLUtilities Class Reference

#include <vtkXMLUtilities.h>

Inheritance diagram for vtkXMLUtilities:

Inheritance graph
[legend]
Collaboration diagram for vtkXMLUtilities:

Collaboration graph
[legend]

List of all members.


Detailed Description

XML utilities.

vtkXMLUtilities provides XML-related convenience functions.

See also:
vtkXMLDataElement

Definition at line 30 of file vtkXMLUtilities.h.


Public Types

typedef vtkObject Superclass

Public Member Functions

virtual const char * GetClassName ()
virtual int IsA (const char *type)

Static Public Member Functions

static vtkXMLUtilitiesNew ()
static int IsTypeOf (const char *type)
static vtkXMLUtilitiesSafeDownCast (vtkObject *o)
static void EncodeString (const char *input, int input_encoding, ostream &output, int output_encoding, int special_entities=0)
static void CollateAttributes (vtkXMLDataElement *, ostream &, const char *sep=0)
static void FlattenElement (vtkXMLDataElement *, ostream &, vtkIndent *indent=0, int indent_attributes=1)
static int WriteElementToFile (vtkXMLDataElement *, const char *filename, vtkIndent *indent=0)
static vtkXMLDataElementReadElementFromStream (istream &, int encoding=VTK_ENCODING_NONE)
static vtkXMLDataElementReadElementFromString (const char *str, int encoding=VTK_ENCODING_NONE)
static vtkXMLDataElementReadElementFromFile (const char *filename, int encoding=VTK_ENCODING_NONE)
static void ReadElementFromAttributeArray (vtkXMLDataElement *element, const char **atts, int encoding)
static int FindSimilarElements (vtkXMLDataElement *elem, vtkXMLDataElement *tree, vtkXMLDataElement ***results)
static void FactorElements (vtkXMLDataElement *tree)
static void UnFactorElements (vtkXMLDataElement *tree)

Protected Member Functions

 vtkXMLUtilities ()
 ~vtkXMLUtilities ()

Static Protected Member Functions

static int FactorElementsInternal (vtkXMLDataElement *tree, vtkXMLDataElement *root, vtkXMLDataElement *pool)
static int UnFactorElementsInternal (vtkXMLDataElement *tree, vtkXMLDataElement *pool)

Member Typedef Documentation

Reimplemented from vtkObject.

Definition at line 34 of file vtkXMLUtilities.h.


Constructor & Destructor Documentation

vtkXMLUtilities::vtkXMLUtilities (  )  [inline, protected]

Definition at line 136 of file vtkXMLUtilities.h.

vtkXMLUtilities::~vtkXMLUtilities (  )  [inline, protected]

Definition at line 137 of file vtkXMLUtilities.h.


Member Function Documentation

static vtkXMLUtilities* vtkXMLUtilities::New (  )  [static]

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

Reimplemented from vtkObject.

virtual const char* vtkXMLUtilities::GetClassName (  )  [virtual]

Reimplemented from vtkObject.

static int vtkXMLUtilities::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 vtkXMLUtilities::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 vtkXMLUtilities* vtkXMLUtilities::SafeDownCast ( vtkObject o  )  [static]

Reimplemented from vtkObject.

static void vtkXMLUtilities::EncodeString ( const char *  input,
int  input_encoding,
ostream &  output,
int  output_encoding,
int  special_entities = 0 
) [static]

Encode a string from one format to another (see VTK_ENCODING_... constants). If special_entites is true, convert some characters to their corresponding character entities.

static void vtkXMLUtilities::CollateAttributes ( vtkXMLDataElement ,
ostream &  ,
const char *  sep = 0 
) [static]

Collate a vtkXMLDataElement's attributes to a stream as a series of name="value" pairs (the separator between each pair can be specified, if not, it defaults to a space). Note that the resulting character-encoding will be UTF-8 (we assume that this function is used to create XML files/streams).

static void vtkXMLUtilities::FlattenElement ( vtkXMLDataElement ,
ostream &  ,
vtkIndent indent = 0,
int  indent_attributes = 1 
) [static]

Flatten a vtkXMLDataElement to a stream, i.e. output a textual stream corresponding to that XML element, its attributes and its nested elements. If 'indent' is not NULL, it is used to indent the whole tree. If 'indent' is not NULL and 'indent_attributes' is true, attributes will be indented as well. Note that the resulting character-encoding will be UTF-8 (we assume that this function is used to create XML files/streams).

static int vtkXMLUtilities::WriteElementToFile ( vtkXMLDataElement ,
const char *  filename,
vtkIndent indent = 0 
) [static]

Write a vtkXMLDataElement to a file (in a flattened textual form) Note that the resulting character-encoding will be UTF-8. Return 1 on success, 0 otherwise.

static vtkXMLDataElement* vtkXMLUtilities::ReadElementFromStream ( istream &  ,
int  encoding = VTK_ENCODING_NONE 
) [static]

Read a vtkXMLDataElement from a stream, string or file. The 'encoding' parameter will be used to set the internal encoding of the attributes of the data elements created by those functions (conversion from the XML stream encoding to that new encoding will be performed automatically). If set to VTK_ENCODING_NONE, the encoding won't be changed and will default to the default vtkXMLDataElement encoding. Return the root element on success, NULL otherwise. Note that you have to call Delete() on the element returned by that function to ensure it is freed properly. BTX

static vtkXMLDataElement* vtkXMLUtilities::ReadElementFromString ( const char *  str,
int  encoding = VTK_ENCODING_NONE 
) [static]

Read a vtkXMLDataElement from a stream, string or file. The 'encoding' parameter will be used to set the internal encoding of the attributes of the data elements created by those functions (conversion from the XML stream encoding to that new encoding will be performed automatically). If set to VTK_ENCODING_NONE, the encoding won't be changed and will default to the default vtkXMLDataElement encoding. Return the root element on success, NULL otherwise. Note that you have to call Delete() on the element returned by that function to ensure it is freed properly. BTX

static vtkXMLDataElement* vtkXMLUtilities::ReadElementFromFile ( const char *  filename,
int  encoding = VTK_ENCODING_NONE 
) [static]

Read a vtkXMLDataElement from a stream, string or file. The 'encoding' parameter will be used to set the internal encoding of the attributes of the data elements created by those functions (conversion from the XML stream encoding to that new encoding will be performed automatically). If set to VTK_ENCODING_NONE, the encoding won't be changed and will default to the default vtkXMLDataElement encoding. Return the root element on success, NULL otherwise. Note that you have to call Delete() on the element returned by that function to ensure it is freed properly. BTX

static void vtkXMLUtilities::ReadElementFromAttributeArray ( vtkXMLDataElement element,
const char **  atts,
int  encoding 
) [static]

Sets attributes of an element from an array of encoded attributes. The 'encoding' parameter will be used to set the internal encoding of the attributes of the data elements created by those functions (conversion from the XML stream encoding to that new encoding will be performed automatically). If set to VTK_ENCODING_NONE, the encoding won't be changed and will default to the default vtkXMLDataElement encoding.

static int vtkXMLUtilities::FindSimilarElements ( vtkXMLDataElement elem,
vtkXMLDataElement tree,
vtkXMLDataElement ***  results 
) [static]

Find all elements in 'tree' that are similar to 'elem' (using the vtkXMLDataElement::IsEqualTo() predicate). Return the number of elements found and store those elements in 'results' (automatically allocated). Warning: the results do not include 'elem' if it was found in the tree ; do not forget to deallocate 'results' if something was found. BTX

static void vtkXMLUtilities::FactorElements ( vtkXMLDataElement tree  )  [static]

Factor and unfactor a tree. This operation looks for duplicate elements in the tree, and replace them with references to a pool of elements. Unfactoring a non-factored element is harmless.

static void vtkXMLUtilities::UnFactorElements ( vtkXMLDataElement tree  )  [static]

Factor and unfactor a tree. This operation looks for duplicate elements in the tree, and replace them with references to a pool of elements. Unfactoring a non-factored element is harmless.

static int vtkXMLUtilities::FactorElementsInternal ( vtkXMLDataElement tree,
vtkXMLDataElement root,
vtkXMLDataElement pool 
) [static, protected]

static int vtkXMLUtilities::UnFactorElementsInternal ( vtkXMLDataElement tree,
vtkXMLDataElement pool 
) [static, protected]


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

Generated on Mon Sep 27 19:04:34 2010 for VTK by  doxygen 1.5.6