.\" header.tmac. GetData manual macros. .\" .\" Copyright (C) 2016 D. V. Wiebe .\" .\"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" .\" .\" This file is part of the GetData project. .\" .\" Permission is granted to copy, distribute and/or modify this document .\" under the terms of the GNU Free Documentation License, Version 1.2 or .\" any later version published by the Free Software Foundation; with no .\" Invariant Sections, with no Front-Cover Texts, and with no Back-Cover .\" Texts. A copy of the license is included in the `COPYING.DOC' file .\" as part of this distribution. .\" Format a function name with optional trailer: func_name()trailer .de FN \" func_name [trailer] .nh .BR \\$1 ()\\$2 .hy .. .\" Format a reference to section 3 of the manual: name(3)trailer .de F3 \" func_name [trailer] .nh .BR \\$1 (3)\\$2 .hy .. .\" Format the header of a list of definitons .de DD \" name alt... .ie "\\$2"" \{ \ .TP 8 .PD .B \\$1 \} .el \{ \ .PP .B \\$1 .PD 0 .DD \\$2 \\$3 \} .. .\" Start a code block: Note: groff defines an undocumented .SC for .\" Bell Labs man legacy reasons. .de SC .fam C .na .nh .. .\" End a code block .de EC .hy .ad .fam .. .\" Format a structure pointer member: struct->member\fRtrailer .de SPM \" struct member trailer .nh .ie "\\$3"" .IB \\$1 ->\: \\$2 .el .IB \\$1 ->\: \\$2\fR\\$3 .hy .. .\" Format a function argument .de ARG \" name trailer .nh .ie "\\$2"" .I \\$1 .el .IR \\$1 \\$2 .hy .. .\" Hyphenation exceptions .hw sarray carray lincom linterp .\" gd_getdata.3. The gd_getdata man page. .\" .\" Copyright (C) 2011, 2014, 2015, 2016 D. V. Wiebe .\" .\"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" .\" .\" This file is part of the GetData project. .\" .\" Permission is granted to copy, distribute and/or modify this document .\" under the terms of the GNU Free Documentation License, Version 1.2 or .\" any later version published by the Free Software Foundation; with no .\" Invariant Sections, with no Front-Cover Texts, and with no Back-Cover .\" Texts. A copy of the license is included in the `COPYING.DOC' file .\" as part of this distribution. .\" .TH gd_tell 3 "25 December 2016" "Version 0.10.0" "GETDATA" .SH NAME gd_tell \(em report the position of a Dirfile field I/O pointer .SH SYNOPSIS .SC .B #include .HP .BI "off_t gd_tell(DIRFILE *" dirfile ", const char *" field_code ); .EC .SH DESCRIPTION The .FN gd_tell function reports the current position of the I/O pointer of the field .ARG field_code in the dirfile(5) database specified by .ARG dirfile . .P Only .B RAW fields (and the implicit .I INDEX field) have field pointers associated with them. Calling .FN gd_tell on a derived field will report the position of the I/O pointer of the derived field only if all of it's inputs are positioned the same. Otherwise, an error results. .SH RETURN VALUE Upon successful completion, .FN gd_tell returns a non-negative integer indicating the I/O position of the specified field in samples. On error, it returns a negative-valued error code. Possible error codes are: .DD GD_E_ALLOC The library was unable to allocate memory. .DD GD_E_BAD_CODE The field specified by .ARG field_code , or one of the fields it uses for input, was not found in the database. .DD GD_E_BAD_DIRFILE The supplied dirfile was invalid. .DD GD_E_DIMENSION The specified field or one of its inputs wasn't of vector type. .DD GD_E_DOMAIN The I/O position of a derived field wasn't well defined because its input fields simultaneously read from different places in the same .B RAW field. .DD GD_E_INTERNAL_ERROR An internal error occurred in the library while trying to perform the task. This indicates a bug in the library. Please report the incident to the maintainer. .DD GD_E_IO An error occurred while trying to open or read from a file on disk containing a raw field. .DD GD_E_RECURSE_LEVEL Too many levels of recursion were encountered while trying to resolve .ARG field_code . This usually indicates a circular dependency in field specification in the dirfile. .DD GD_E_UNKNOWN_ENCODING The encoding scheme of a RAW field could not be determined. This may also indicate that the binary file associated with the RAW field could not be found. .DD GD_E_UNSUPPORTED Reading from dirfiles with the encoding scheme of the specified dirfile is not supported by the library. See dirfile-encoding(5) for details on dirfile encoding schemes. .PP The error code is also stored in the .B DIRFILE object and may be retrieved after this function returns by calling .F3 gd_error . A descriptive error string for the error may be obtained by calling .F3 gd_error_string . .SH HISTORY The .FN gd_tell function appeared in GetData-0.8.0. In GetData-0.10.0, the error return from this function changed from -1 to a negative-valued error code. .SH SEE ALSO .F3 gd_getdata , .F3 gd_open , .F3 gd_putdata , .F3 gd_seek .