0001 BVNEXT(3)
0002 =========
0003 :doctype: manpage
0004
0005
0006 NAME
0007 ----
0008 Bvnext - Iterate over the view structure
0009
0010
0011 SYNOPSIS
0012 --------
0013
0014 #include <ubf.h>
0015
0016 int Bvnext (Bvnext_state_t *'state', char *'view', char *'cname', int *'fldtype',
0017 BFLDOCC *'maxocc', long *'dim_size')
0018
0019 Link with '-lubf -lnstd -lm -lpthread'
0020
0021 DESCRIPTION
0022 -----------
0023 Iterate over the given 'view' structure. *Bvnext()* is called multiple times, each invoke
0024 will return next view field. To start iterate over the view 'view' must be set. To continue
0025 iteration, 'view' parameter must be set to NULL. 'state' keeps the iterator position in the
0026 view. 'cname' returns next parameter name. It is assumed that 'cname' buffer size is at least
0027 *NDRX_VIEW_CNAME_LEN*+1 bytes long (257 bytes). 'fldtype' returns field type (See BFLD_\*
0028 constants). 'fldtype' is optional and can be NULL. 'maxocc' returns field array size.
0029 parameter is optional and can be NULL. 'dim_size' is array element size in bytes.
0030
0031 RETURN VALUE
0032 ------------
0033 On success, *Bvnext()* return *1*, if End Of Buffer reached, then *0* is returned; on error,
0034 -1 is returned, with *Berror* set to indicate the error.
0035
0036 ERRORS
0037 ------
0038 Note that *Bstrerror()* returns generic error message plus custom message with debug info
0039 from last function call.
0040
0041 *BEINVAL* 'state' is NULL, 'view' is NULL and 'state' not initialized or 'cname' is NULL.
0042
0043 *BBADVIEW* 'view' not found in view files.
0044
0045 EXAMPLE
0046 -------
0047 See *atmitest/test040_typedview/vaccutil.c* for sample code.
0048
0049 BUGS
0050 ----
0051 Report bugs to support@mavimax.com
0052
0053 SEE ALSO
0054 --------
0055 *CBvchg(3)* *CBvget(3)* *Bvsetoccur(3)* *Bvoccur(3)* *viewfile(5)*
0056
0057 COPYING
0058 -------
0059 (C) Mavimax, Ltd
0060