.TH hdf_get_int_value 3 "12 July 2007" "ClearSilver" "util/neo_hdf.h"

.de Ss
.sp
.ft CW
.nf
..
.de Se
.fi
.ft P
.sp
..
.SH NAME
hdf_get_int_value  - Return the integer value of a point in
the data set
.SH SYNOPSIS
.Ss
#include <util/neo_hdf.h>
.Se
.Ss
int hdf_get_int_value (HDF *hdf, const char *name, int defval);

.Se

.SH ARGUMENTS
hdf -> a node in an HDF data set
.br
name -> the name of a node to walk to in the data set
.br
defval -> value to return in case of error or if the node
.br
doesn't exist

.SH DESCRIPTION
hdf_get_int_value walks the HDF data set pointed to by
hdf to name, and returns the value of that node
converted to an integer.  If that node does not exist,
or it does not contain a number, the defval is returned.  

.SH "RETURN VALUE"
None

.SH "SEE ALSO"
.BR hdf_set_symlink "(3), "hdf_get_valuef "(3), "compareFunc) "(3), "hdf_dump_str "(3), "hdf_get_int_value "(3), "hdf_read_string_ignore "(3), "hdf_copy "(3), "hdf_get_node "(3), "hdf_set_value "(3), "hdf_obj_child "(3), "hdf_read_string "(3), "hdf_set_buf "(3), "hdf_register_fileload "(3), "hdf_get_obj "(3), "hdf_get_attr "(3), "hdf_obj_top "(3), "hdf_dump_format "(3), "hdf_destroy "(3), "hdf_init "(3), "hdf_obj_value "(3), "hdf_write_string "(3), "hdf_set_valuevf "(3), "hdf_sort_obj "(3), "hdf_write_file_atomic "(3), "hdf_obj_attr "(3), "hdf_set_valuef "(3), "hdf_get_copy "(3), "hdf_write_file "(3), "hdf_get_valuevf "(3), "hdf_set_int_value "(3), "hdf_dump "(3), "hdf_get_value "(3), "hdf_set_copy "(3), "hdf_obj_next "(3), "hdf_search_path "(3), "hdf_obj_name "(3), "hdf_set_attr "(3), "hdf_get_child "(3), "hdf_remove_tree
