xml-utils.h File Reference

Go to the source code of this file.

Functions

xmlNodePtr FindNodeByNameAndId (xmlNodePtr node, const char *name, const char *id=NULL)
bool ReadPosition (xmlNodePtr node, const char *id, double *x, double *y, double *z=NULL)
bool WritePosition (xmlDocPtr xml, xmlNodePtr node, const char *id, double x, double y, double z=0.0)
bool ReadColor (xmlNodePtr node, const char *id, float *red, float *green, float *blue, float *alpha=NULL)
bool WriteColor (xmlDocPtr xml, xmlNodePtr node, const char *id, double red, double green, double blue, double alpha=1.0)
bool ReadRadius (xmlNodePtr node, GcuAtomicRadius &radius)
bool WriteRadius (xmlDocPtr xml, xmlNodePtr node, const GcuAtomicRadius &radius)


Detailed Description

Some helper functions to load / save Object instances.

Definition in file xml-utils.h.


Function Documentation

xmlNodePtr FindNodeByNameAndId ( xmlNodePtr  node,
const char *  name,
const char *  id = NULL 
)

ReadPosition

Parameters:
node,: a pointer to the current parsed XML Node.
name,: the name of the searched node.
id,: the id property of the node or NULL if not significant. This parameter might be omitted in the last case.
Helper method used to search the xmlNode instance of name Name and with id property equal to id in the children of node. When id is NULL, the searched node does not have an id property. When id is not NULL, the searched node should be unique.

Returns:
the matching node or NULL.

bool ReadColor ( xmlNodePtr  node,
const char *  id,
float *  red,
float *  green,
float *  blue,
float *  alpha = NULL 
)

Parameters:
node,: a pointer to the xmlNode representing an Object instance.
id,: the value of the id property of the color. This is used for Object instances having at least two colors.
red,: a pointer to the red component of the color.
green,: a pointer to the green component of the color.
blue,: a pointer to the blue component of the color.
alpha,: a pointer to the alpha component of the color or NULL if tranparency is not managed.
This method can be used to load a color in an Object instance. It should be used in cunjunction with WriteColor() which executes the inverse operation. If id is NULL, a color with no id property will be search and parsed.

Returns:
true on success and false on failure.

bool ReadPosition ( xmlNodePtr  node,
const char *  id,
double *  x,
double *  y,
double *  z = NULL 
)

Parameters:
node,: a pointer to the xmlNode representing an Object instance.
id,: the value of the id property of the position. This is used for example for arrows because both the head and the tail of the arrow are positions.
x,: a pointer to the x coordinate of the position.
y,: a pointer to the y coordinate of the position.
z,: a pointer to the z coordinate of the position or NULL for 2D objects.
This method can be used to load the coordinates of a point in an Object instance. It should be used in cunjunction with WritePosition() which executes the inverse operation. If id is NULL, a position with no id property will be search and parsed.

Returns:
true on success and false on failure.

bool ReadRadius ( xmlNodePtr  node,
GcuAtomicRadius radius 
)

Parameters:
node,: a pointer to the xmlNode representing an Object instance.
radius,: a GcuAtomicRadius structure.
This function parses the XML node representing a radius (written using WriteRadius()) and fills the fields in the GcuAtomicRadius structure with the data parsed.

Returns:
true on success and false on failure.

bool WriteColor ( xmlDocPtr  xml,
xmlNodePtr  node,
const char *  id,
double  red,
double  green,
double  blue,
double  alpha = 1.0 
)

Parameters:
xml,: a pointer to the xmlDoc used to serialize the document.
node,: a pointer to the xmlNode representing an Object instance.
id,: the value of the id property of the color. This is used for Object instances having at least two colors. of the arrow are positions.
red,: the red component of the color.
green,: the green component of the color.
blue,: the blue component of the color.
alpha,: the alpha component of the color.
Save a color as an XML node added to the children of node. This color can then be parsed using ReadColor().

Returns:
true on success and false on failure.

bool WritePosition ( xmlDocPtr  xml,
xmlNodePtr  node,
const char *  id,
double  x,
double  y,
double  z = 0.0 
)

WritePosition

Parameters:
xml,: a pointer to the xmlDoc used to serialize the document.
node,: a pointer to the xmlNode representing an Object instance.
id,: the value of the id property of the position. This is used for example for arrows because both the head and the tail of the arrow are positions.
x,: the x coordinate of the position.
y,: the y coordinate of the position.
z,: the z coordinate of the position.
Save a position as an XML node added to the children of node. This position can then be parsed using ReadPosition().

Returns:
true on success and false on failure.

bool WriteRadius ( xmlDocPtr  xml,
xmlNodePtr  node,
const GcuAtomicRadius radius 
)

Parameters:
xml,: a pointer to the xmlDoc used to serialize the document.
node,: a pointer to the xmlNode representing an Object instance.
radius,: a GcuAtomicRadius structure.
Save a radius as an XML node added to the children of node. This radius can then be parsed using ReadRadius().

Returns:
true on success and false on failure.


Generated on Tue Aug 15 10:47:35 2006 for The Gnome Chemistry Utils by  doxygen 1.4.7