getdata-commits Mailing List for GetData (Page 9)
Scientific Database Format
Brought to you by:
ketiltrout
This list is closed, nobody may subscribe to it.
| 2010 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(5) |
Oct
(20) |
Nov
(21) |
Dec
(16) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2011 |
Jan
(1) |
Feb
(1) |
Mar
(56) |
Apr
(20) |
May
(4) |
Jun
(2) |
Jul
(3) |
Aug
(11) |
Sep
(2) |
Oct
(4) |
Nov
(18) |
Dec
(16) |
| 2012 |
Jan
(8) |
Feb
(12) |
Mar
(30) |
Apr
(13) |
May
(10) |
Jun
(17) |
Jul
(18) |
Aug
(19) |
Sep
|
Oct
(1) |
Nov
(1) |
Dec
(9) |
| 2013 |
Jan
(1) |
Feb
(4) |
Mar
(27) |
Apr
(6) |
May
(3) |
Jun
(1) |
Jul
(10) |
Aug
|
Sep
(3) |
Oct
(15) |
Nov
(4) |
Dec
(9) |
| 2014 |
Jan
|
Feb
(3) |
Mar
(4) |
Apr
(10) |
May
(15) |
Jun
|
Jul
(14) |
Aug
|
Sep
(2) |
Oct
(6) |
Nov
|
Dec
(9) |
| 2015 |
Jan
(2) |
Feb
(3) |
Mar
(1) |
Apr
(2) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|
From: <ket...@us...> - 2012-07-04 02:39:31
|
Revision: 735
http://getdata.svn.sourceforge.net/getdata/?rev=735&view=rev
Author: ketiltrout
Date: 2012-07-04 02:39:25 +0000 (Wed, 04 Jul 2012)
Log Message:
-----------
Spelling.
Modified Paths:
--------------
trunk/getdata/doc/Makefile.am
trunk/getdata/doc/README.cxx
trunk/getdata/doc/README.f77
trunk/getdata/doc/README.f95
trunk/getdata/doc/README.idl
trunk/getdata/doc/README.python
Modified: trunk/getdata/doc/Makefile.am
===================================================================
--- trunk/getdata/doc/Makefile.am 2012-07-04 01:51:06 UTC (rev 734)
+++ trunk/getdata/doc/Makefile.am 2012-07-04 02:39:25 UTC (rev 735)
@@ -48,4 +48,4 @@
${READMEPERL} ${READMEPYTHON} unclean_database_recovery.txt
clean-local:
- rm -rf *~
+ rm -rf *~ README.perl
Modified: trunk/getdata/doc/README.cxx
===================================================================
--- trunk/getdata/doc/README.cxx 2012-07-04 01:51:06 UTC (rev 734)
+++ trunk/getdata/doc/README.cxx 2012-07-04 02:39:25 UTC (rev 735)
@@ -74,7 +74,7 @@
AutoEncoding = GD_AUTO_ENCODED, RawEncoding = GD_UNENCODED,
TextEncoding = GD_TEXT_ENCODED, SlimEncoding = GD_SLIM_ENCODED,
GzipEncoding = GD_GZIP_ENCODED, Bzip2Encoding = GD_BZIP2_ENCODED,
- SieEncoding = GD_SIE_ENCODED, ZzipEncoding = GD_ZZIP_ENOCDED,
+ SieEncoding = GD_SIE_ENCODED, ZzipEncoding = GD_ZZIP_ENCODED,
ZzslimEncoding = GD_ZZSLIM_ENCODED, UnsupportedEncoding = GD_ENC_UNSUPPORTED
};
Modified: trunk/getdata/doc/README.f77
===================================================================
--- trunk/getdata/doc/README.f77 2012-07-04 01:51:06 UTC (rev 734)
+++ trunk/getdata/doc/README.f77 2012-07-04 02:39:25 UTC (rev 735)
@@ -1127,7 +1127,7 @@
This subroutine returns metadata describing a WINDOW field. Only one of
ithreshold and rthreshold is ever updated. If the returned windop is one of
- GDW_EQ, GDW_NE, GDW_ST, or GDW_CL, ithreshold will be updated, otherwhise,
+ GDW_EQ, GDW_NE, GDW_ST, or GDW_CL, ithreshold will be updated, otherwise,
rthreshold will be updated. If field_code is not found, or the field
specified is not of POLYNOM type, infield_len will be set to zero. In this
case the value of the remaining data is unspecified.
@@ -1546,16 +1546,16 @@
new fragment given.
* GDRENM(dirfile_unit, field_code, field_code_len, new_name, new_name_len,
- move_data)
+ flags)
Input:
- INTEGER dirfile_unit, field_code_len, new_name_len, move_data
+ INTEGER dirfile_unit, field_code_len, new_name_len, flags
CHARACTER*<field_code_len> field_code
CHARACTER*<new_name_len> new_name
- This subroutine wraps gd_rename(3), and changes the name of a field. If
- move_data is non-zero, and the field is a RAW field, the binary file
- associated with the field will also be renamed.
+ This subroutine wraps gd_rename(3), and changes the name of a field. The
+ flags parameter should be zero or more of the GDR_xx parameters, bitwise or'd
+ together.
* GDNTYP(ntype, dirfile_unit, field_code, field_code_len)
@@ -1610,7 +1610,7 @@
This subroutine modifies the element indexed by index of the scalar array
member of the gd_entry_t object associated with the specified field code. If
index is too large for the specified field, nothing happens. The array is
- indexed starting from one. If scalar indicates a CONST field, sclaar_index
+ indexed starting from one. If scalar indicates a CONST field, scalar_index
is ignored.
@@ -1641,7 +1641,7 @@
fragment_index)
Input:
- INTEGER dirfile_unti, field_code_len, targ_len, fragment_index
+ INTEGER dirfile_unit, field_code_len, targ_len, fragment_index
CHARACTER*<field_code_len> field_code
CHARACTER*<targ_len> targ
@@ -2098,7 +2098,7 @@
F77 symbol C symbol
---------- -----------------
GDR_DT GD_REN_DATA
- GDR_UP GD_REN_UPDATEDB
+ GDR_UP GD_REN_UPDB
Protection levels (returned by GDGPRT and required by GDAPRT):
Modified: trunk/getdata/doc/README.f95
===================================================================
--- trunk/getdata/doc/README.f95 2012-07-04 01:51:06 UTC (rev 734)
+++ trunk/getdata/doc/README.f95 2012-07-04 02:39:25 UTC (rev 735)
@@ -83,7 +83,7 @@
character (len=*), intent(in) :: field_code
(For fgd_flush, fgd_sync and fgd_raw_close, if field_code is the empty string,
- the operation will be peformed on the entire dirfile.)
+ the operation will be performed on the entire dirfile.)
* subroutine fgd_metaflush (dirfile_unit)
integer, intent(in) :: dirfile
@@ -562,8 +562,8 @@
integer, intent(in) :: dirfile, recode
character (len=*), intent(in) :: parent, spec
-* subroutine fgd_rename (dirfile, field_code, new_name, move_data)
- integer, intent(in) :: dirfile, move_data
+* subroutine fgd_rename (dirfile, field_code, new_name, flags)
+ integer, intent(in) :: dirfile, flags
character (len=*), intent(in) :: field_code, new_name
* subroutine fgd_delete (dirfile, field_code, flags)
@@ -718,7 +718,7 @@
<datatype>, dimension(:), intent(in) :: data_in
No corresponding fgd_putdata_n function exists, since GD_NULL is not an
- acceptable input data_type for putdata(3).
+ acceptable input data_type for gd_putdata(3).
Analogously for gd_constants, gd_get_carray_slice, gd_get_constant,
gd_mconstants, gd_put_carray_slice, and gd_put_constant, for which only the
Modified: trunk/getdata/doc/README.idl
===================================================================
--- trunk/getdata/doc/README.idl 2012-07-04 01:51:06 UTC (rev 734)
+++ trunk/getdata/doc/README.idl 2012-07-04 02:39:25 UTC (rev 735)
@@ -655,7 +655,7 @@
and metadata changes are flushed to disk. In normal operation, first the
raw data is flushed (synced) and then the raw data files are closed.
Specifying /NOSYNC will skip the flushing; specifying /NOCLOSE will skip the
- closing. Specifiying both will result in an error (since the function is left
+ closing. Specifying both will result in an error (since the function is left
with nothing to do.) See gd_flush(3), gd_sync(3) and gd_raw_close(3).
FUNCTION GD_FRAGMENT_AFFIXES(dirfile_unit, FRAGMENT=fragment)
Modified: trunk/getdata/doc/README.python
===================================================================
--- trunk/getdata/doc/README.python 2012-07-04 01:51:06 UTC (rev 734)
+++ trunk/getdata/doc/README.python 2012-07-04 02:39:25 UTC (rev 735)
@@ -20,4 +20,4 @@
>>> import pygetdata
>>> help(pygetdata)
-from within the Python interpereter, after the bindings have been installed.
+from within the Python interpreter, after the bindings have been installed.
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ket...@us...> - 2012-07-04 01:51:13
|
Revision: 734
http://getdata.svn.sourceforge.net/getdata/?rev=734&view=rev
Author: ketiltrout
Date: 2012-07-04 01:51:06 +0000 (Wed, 04 Jul 2012)
Log Message:
-----------
spelling.
Modified Paths:
--------------
trunk/getdata/man/dirfile-format.5
trunk/getdata/man/gd_cbopen.3
trunk/getdata/man/gd_desync.3
trunk/getdata/man/gd_entry.3
trunk/getdata/man/gd_entry_list.3
trunk/getdata/man/gd_flush.3
trunk/getdata/man/gd_getdata.3
trunk/getdata/man/gd_mplex_lookback.3
trunk/getdata/man/gd_nentries.3
trunk/getdata/man/gd_seek.3
trunk/getdata/man/gd_tell.3
Modified: trunk/getdata/man/dirfile-format.5
===================================================================
--- trunk/getdata/man/dirfile-format.5 2012-06-30 01:43:28 UTC (rev 733)
+++ trunk/getdata/man/dirfile-format.5 2012-07-04 01:51:06 UTC (rev 734)
@@ -162,7 +162,7 @@
Standards Version 5 and earlier do not recognise the character escape sequences,
nor allow quoting of tokens. As a result, they prohibit both whitespace and the
-comment delimileter from being used in tokens.
+comment delimiter from being used in tokens.
.SH DIRECTIVES
@@ -205,7 +205,7 @@
original, canonical name. Aliases may be chained (that is, the target name
appearing in an /ALIAS directive may itself be an alias). In this case, the new
alias is another name for the target's own target. Just as there is no
-requriement that the input fields of a derived field exist,
+requirement that the input fields of a derived field exist,
it is not an error for the target of an alias to not exist. Syntax is:
.IP
.RS
@@ -612,7 +612,7 @@
Five of these derived fields
.RB ( DIVIDE ", " LINCOM ", " MPLEX ", " MULTIPLY ", and " WINDOW )
may have more than one input field. In situations where these input fields
-have differeing sample rates, the sample rate of the derived field is the same
+have differing sample rates, the sample rate of the derived field is the same
as the sample rate of the first (left-most) input field specified. Furthermore,
the input fields are synchronised by aligning them on frame boundaries, assuming
equally-spaced sampling throughout a frame, and using the last sample of each
@@ -1187,7 +1187,7 @@
.PP
The storage type of
.I threshold
-depends on the operatior, and follows the interpretation of
+depends on the operator, and follows the interpretation of
.IR check .
It may never be complex valued.
.PP
Modified: trunk/getdata/man/gd_cbopen.3
===================================================================
--- trunk/getdata/man/gd_cbopen.3 2012-06-30 01:43:28 UTC (rev 733)
+++ trunk/getdata/man/gd_cbopen.3 2012-07-04 01:51:06 UTC (rev 734)
@@ -237,8 +237,8 @@
.BR GD_TRUNC ,
truncation will descend into subdirectories, deleting all regular files and
symlinks recursively. It does not descend into directories pointed to by
-symbolic links: in these cases, just the symlink iself is deleted. If specified
-without an accompanying
+symbolic links: in these cases, just the symlink itself is deleted. If
+specified without an accompanying
.BR GD_TRUNC ,
this flag is ignored.
.TP
Modified: trunk/getdata/man/gd_desync.3
===================================================================
--- trunk/getdata/man/gd_desync.3 2012-06-30 01:43:28 UTC (rev 733)
+++ trunk/getdata/man/gd_desync.3 2012-07-04 01:51:06 UTC (rev 734)
@@ -61,7 +61,7 @@
pointer. In this case, upon a positive result from this function, the caller
must discard all cached information about the dirfile, even the assumption that
.I dirfile
-has been succesfully opened.
+has been successfully opened.
Re-opening the dirfile is equivalent to calling
.BR gd_discard (3),
@@ -118,7 +118,7 @@
.BR fstatat (2)
(q.v.), this function may always operate as if
.B GD_DESYNC_PATHCHECK
-had been specified, regarless of the actual
+had been specified, regardless of the actual
.IR flags .
.SH SEE ALSO
.BR fstatat (2),
Modified: trunk/getdata/man/gd_entry.3
===================================================================
--- trunk/getdata/man/gd_entry.3 2012-06-30 01:43:28 UTC (rev 733)
+++ trunk/getdata/man/gd_entry.3 2012-07-04 01:51:06 UTC (rev 734)
@@ -815,40 +815,40 @@
.PP
The
.I windop
-member equals one of the following symbols, indicating the particular comarison
+member equals one of the following symbols, indicating the particular comparison
performed on the check field:
.TP
.B GD_WINDOP_EQ
-data are extraced when the check field equals
+data are extracted when the check field equals
.IR threshold ;
.TP
.B GD_WINDOP_GE
-data are extraced when the check field is greater than or equal to
+data are extracted when the check field is greater than or equal to
.IR threshold ;
.TP
.B GD_WINDOP_GT
-data are extraced when the check field is strictly greater than
+data are extracted when the check field is strictly greater than
.IR threshold ;
.TP
.B GD_WINDOP_LE
-data are extraced when the check field is less than or equal to
+data are extracted when the check field is less than or equal to
.IR threshold ;
.TP
.B GD_WINDOP_LT
-data are extraced when the check field is strictly less than
+data are extracted when the check field is strictly less than
.IR threshold ;
.TP
.B GD_WINDOP_NE
-data are extraced when the check field is not equal to
+data are extracted when the check field is not equal to
.IR threshold ;
.TP
.B GD_WINDOP_SET
-data are extraced when at least one bit in
+data are extracted when at least one bit in
.I threshold
is also set in the check field;
.TP
.B GD_WINDOP_CLR
-data are extraced when at least one bit in
+data are extracted when at least one bit in
.I threshold
is not set in the check field.
.PP
Modified: trunk/getdata/man/gd_entry_list.3
===================================================================
--- trunk/getdata/man/gd_entry_list.3 2012-06-30 01:43:28 UTC (rev 733)
+++ trunk/getdata/man/gd_entry_list.3 2012-07-04 01:51:06 UTC (rev 734)
@@ -44,7 +44,7 @@
.BR gd_entry_list ()
function queries a dirfile(5) database specified by
.I dirfile
-and returns a list of names of field entries satisfiying the supplied criteria.
+and returns a list of names of field entries satisfying the supplied criteria.
If
.I parent
is non-NULL, metafields under the field specified by
Modified: trunk/getdata/man/gd_flush.3
===================================================================
--- trunk/getdata/man/gd_flush.3 2012-06-30 01:43:28 UTC (rev 733)
+++ trunk/getdata/man/gd_flush.3 2012-07-04 01:51:06 UTC (rev 734)
@@ -66,7 +66,7 @@
.BR gd_raw_close ()
(ie. it does both tasks), although, if
.I field_code
-is NULL, the order of operations if may be different than making the two explict
+is NULL, the order of operations if may be different than making the two explicit
calls.
.SH RETURN VALUE
On success, these functions return zero. On error, -1 is returned and the
Modified: trunk/getdata/man/gd_getdata.3
===================================================================
--- trunk/getdata/man/gd_getdata.3 2012-06-30 01:43:28 UTC (rev 733)
+++ trunk/getdata/man/gd_getdata.3 2012-07-04 01:51:06 UTC (rev 734)
@@ -226,7 +226,7 @@
GetData caches the value of the last sample from every
.B MPLEX
it reads so that a subsequent read of the field starting from the following
-sample (either through an expicit starting sample given by the caller or else
+sample (either through an explicit starting sample given by the caller or else
implicitly using
.BR GD_HERE )
will not need to scan the field backwards. This cache is invalidated if a
Modified: trunk/getdata/man/gd_mplex_lookback.3
===================================================================
--- trunk/getdata/man/gd_mplex_lookback.3 2012-06-30 01:43:28 UTC (rev 733)
+++ trunk/getdata/man/gd_mplex_lookback.3 2012-07-04 01:51:06 UTC (rev 734)
@@ -82,7 +82,7 @@
.IP \(bu
otherwise, the
.B MPLEX
-cylce length is ten samples.
+cycle length is ten samples.
.PP
So, given the following MPLEX definitions:
.IP
Modified: trunk/getdata/man/gd_nentries.3
===================================================================
--- trunk/getdata/man/gd_nentries.3 2012-06-30 01:43:28 UTC (rev 733)
+++ trunk/getdata/man/gd_nentries.3 2012-07-04 01:51:06 UTC (rev 734)
@@ -44,7 +44,7 @@
.BR gd_nentries ()
function queries a dirfile(5) database specified by
.I dirfile
-and returns a count of metadata entries satisfiying the supplied criteria.
+and returns a count of metadata entries satisfying the supplied criteria.
If
.I parent
is non-NULL, metafields under the field specified by
Modified: trunk/getdata/man/gd_seek.3
===================================================================
--- trunk/getdata/man/gd_seek.3 2012-06-30 01:43:28 UTC (rev 733)
+++ trunk/getdata/man/gd_seek.3 2012-07-04 01:51:06 UTC (rev 734)
@@ -44,7 +44,7 @@
.BR GD_SEEK_SET ", " GD_SEEK_CUR ,
or
.BR GD_SEEK_END ,
-indicating, repsectively, origins of sample zero, the current position of the
+indicating, respectively, origins of sample zero, the current position of the
field pointer, and the location of the end-of-field marker (see
.BR gd_eof (3)).
@@ -139,7 +139,7 @@
.B GD_E_ARGUMENT
The
.I flags
-parameter didn't contain exaclty one of
+parameter didn't contain exactly one of
.BR GD_SEEK_SET ", " GD_SEEK_CUR ,
or
.BR GD_SEEK_END .
@@ -168,7 +168,7 @@
The specified field or one of its inputs wasn't of vector type.
.TP
.B GD_E_DOMAIN
-The field posision couldn't be set due to a derived field reading simultaneously
+The field position couldn't be set due to a derived field reading simultaneously
from more than one place in an input field.
.TP
.B GD_E_INTERNAL_ERROR
Modified: trunk/getdata/man/gd_tell.3
===================================================================
--- trunk/getdata/man/gd_tell.3 2012-06-30 01:43:28 UTC (rev 733)
+++ trunk/getdata/man/gd_tell.3 2012-07-04 01:51:06 UTC (rev 734)
@@ -69,7 +69,7 @@
The specified field or one of its inputs wasn't of vector type.
.TP
.B GD_E_DOMAIN
-The field posision couldn't be determined due to a mismatch in the I/O pointer
+The field position couldn't be determined due to a mismatch in the I/O pointer
of field reading simultaneously
from more than one place in an input field.
.TP
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ket...@us...> - 2012-06-30 01:43:34
|
Revision: 733
http://getdata.svn.sourceforge.net/getdata/?rev=733&view=rev
Author: ketiltrout
Date: 2012-06-30 01:43:28 +0000 (Sat, 30 Jun 2012)
Log Message:
-----------
Also fix gd_uint64_t.
Modified Paths:
--------------
trunk/getdata/configure.ac
Modified: trunk/getdata/configure.ac
===================================================================
--- trunk/getdata/configure.ac 2012-06-30 01:37:54 UTC (rev 732)
+++ trunk/getdata/configure.ac 2012-06-30 01:43:28 UTC (rev 733)
@@ -666,13 +666,13 @@
fi
if test $ac_cv_sizeof_unsigned_int -eq 8; then
- gd_uint64_t="int"
+ gd_uint64_t="unsigned int"
elif test $ac_cv_sizeof_unsigned_short_int -eq 8; then
- gd_uint64_t="short int"
+ gd_uint64_t="unsigned short int"
elif test $ac_cv_sizeof_unsigned_long_int -eq 8; then
- gd_uint64_t="long int"
+ gd_uint64_t="unsigned long int"
elif test $ac_cv_sizeof_unsigned_long_long_int -eq 8; then
- gd_uint64_t="long long int"
+ gd_uint64_t="unsigned long long int"
fi
if test "x$gd_cv_type_off64_t" = "xyes"; then
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ket...@us...> - 2012-06-30 01:38:00
|
Revision: 732
http://getdata.svn.sourceforge.net/getdata/?rev=732&view=rev
Author: ketiltrout
Date: 2012-06-30 01:37:54 +0000 (Sat, 30 Jun 2012)
Log Message:
-----------
Fix gd_off64_t. Improve Perl dependency tracking.
Modified Paths:
--------------
trunk/getdata/ChangeLog
trunk/getdata/README
trunk/getdata/bindings/perl/Build.PL.in
trunk/getdata/cmake/CMakeLists.txt
trunk/getdata/configure.ac
trunk/getdata/src/getdata.h.in
Modified: trunk/getdata/ChangeLog
===================================================================
--- trunk/getdata/ChangeLog 2012-06-29 22:00:49 UTC (rev 731)
+++ trunk/getdata/ChangeLog 2012-06-30 01:37:54 UTC (rev 732)
@@ -1,3 +1,9 @@
+2012-06-30 D. V. Wiebe <ge...@ke...> svn:732
+ * src/getdata.h.in configure.ac cmake/CMakeLists.txt: Fix definition of
+ gd_off64_t.
+
+ * bindings/perl/Build.PL.in: make getdata.h a dependency of lib/GetData.xs.
+
2012-06-29 D. V. Wiebe <ge...@ke...> svn:728
* src/getdata.h.in src/internal.h src/errors.c: Merge GD_E_BAD_VERSION into
GD_E_ARGUMENT.
Modified: trunk/getdata/README
===================================================================
--- trunk/getdata/README 2012-06-29 22:00:49 UTC (rev 731)
+++ trunk/getdata/README 2012-06-30 01:37:54 UTC (rev 732)
@@ -57,6 +57,7 @@
- Fortran 95 (libf95getdata)
- Python (pygetdata)
- the Interactive Data Language (IDL; idl_getdata)
+ - Perl (GetData.pm)
Documentation for the various bindings, if present, can be found in files
named `README.<language>' in the doc/ directory. The C interface is described
Modified: trunk/getdata/bindings/perl/Build.PL.in
===================================================================
--- trunk/getdata/bindings/perl/Build.PL.in 2012-06-29 22:00:49 UTC (rev 731)
+++ trunk/getdata/bindings/perl/Build.PL.in 2012-06-30 01:37:54 UTC (rev 732)
@@ -13,6 +13,8 @@
if ($source eq "lib/GetData.xs") {
return 0 if (not $self->up_to_date("lib/simple_funcs.xs", $derived));
+ return 0 if (not $self->up_to_date("@top_builddir@/src/getdata.h",
+ $derived));
}
return $self->SUPER::up_to_date($source, $derived);
}
Modified: trunk/getdata/cmake/CMakeLists.txt
===================================================================
--- trunk/getdata/cmake/CMakeLists.txt 2012-06-29 22:00:49 UTC (rev 731)
+++ trunk/getdata/cmake/CMakeLists.txt 2012-06-30 01:37:54 UTC (rev 732)
@@ -42,7 +42,6 @@
# MSVCRT integer types
set(DEFINE_gd_int64_t "#define gd_int64_t __int64")
set(DEFINE_gd_uint64_t "#define gd_uint64_t unsigned __int64")
- set(DEFINE_gd_off64_t "#define gd_off64_t __int64")
add_definitions(-D_CRT_SECURE_NO_WARNINGS -D_CRT_NONSTDC_NO_WARNINGS)
add_definitions(
Modified: trunk/getdata/configure.ac
===================================================================
--- trunk/getdata/configure.ac 2012-06-29 22:00:49 UTC (rev 731)
+++ trunk/getdata/configure.ac 2012-06-30 01:37:54 UTC (rev 732)
@@ -679,27 +679,16 @@
dnl Assume we have the entire LFS defined transitional API
AC_DEFINE([HAVE_OFF64_T], [1],
[ Define to 1 if the system has the type `off64_t'. ]) dnl `
- define_lf64s="#ifndef _LARGEFILE64_SOURCE
-#define _LARGEFILE64_SOURCE
-#endif
-"
- gd_off64_t="off64_t"
-elif test $ac_cv_sizeof_off_t -eq 8;then
- gd_off64_t="off_t"
-else
- gd_off64_t=$gd_int64_t
fi
DEFINE_gd_int16_t="# define gd_int16_t $gd_int16_t";
DEFINE_gd_uint16_t="# define gd_uint16_t $gd_uint16_t";
DEFINE_gd_int64_t="# define gd_int64_t $gd_int64_t";
DEFINE_gd_uint64_t="# define gd_uint64_t $gd_uint64_t";
-DEFINE_gd_off64_t="$define_lf64s# define gd_off64_t $gd_off64_t";
AC_SUBST([DEFINE_gd_int16_t])
AC_SUBST([DEFINE_gd_uint16_t])
AC_SUBST([DEFINE_gd_int64_t])
AC_SUBST([DEFINE_gd_uint64_t])
-AC_SUBST([DEFINE_gd_off64_t])
dnl library functions
echo
Modified: trunk/getdata/src/getdata.h.in
===================================================================
--- trunk/getdata/src/getdata.h.in 2012-06-29 22:00:49 UTC (rev 731)
+++ trunk/getdata/src/getdata.h.in 2012-06-30 01:37:54 UTC (rev 732)
@@ -1092,7 +1092,13 @@
#endif
#ifdef GD_64BIT_API
-@DEFINE_gd_off64_t@
+#ifdef __off64_t_defined
+typedef __off64_t gd_off64_t;
+#elif (defined _FILE_OFFSET_BITS && _FILE_OFFSET_BITS == 64)
+typedef off_t gd_off64_t;
+#else
+typedef gd_int64_t gd_off64_t;
+#endif
extern int gd_alter_frameoffset64(DIRFILE *dirfile, gd_off64_t offset,
int fragment, int recode) gd_nonnull ((1));
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ket...@us...> - 2012-06-29 22:00:55
|
Revision: 731
http://getdata.svn.sourceforge.net/getdata/?rev=731&view=rev
Author: ketiltrout
Date: 2012-06-29 22:00:49 +0000 (Fri, 29 Jun 2012)
Log Message:
-----------
C89-ify
Modified Paths:
--------------
trunk/getdata/bindings/f77/fgetdata.h
trunk/getdata/src/name.c
trunk/getdata/test/version_9_strict.c
Modified: trunk/getdata/bindings/f77/fgetdata.h
===================================================================
--- trunk/getdata/bindings/f77/fgetdata.h 2012-06-29 20:58:30 UTC (rev 730)
+++ trunk/getdata/bindings/f77/fgetdata.h 2012-06-29 22:00:49 UTC (rev 731)
@@ -728,6 +728,22 @@
void F77_FUNC(gdentn, GDENTN) (char *name, int32_t *name_l,
const int32_t *dirfile, const char *parent, const int32_t *parent_l,
const int32_t *type, const int32_t *flags, const int32_t *field_num);
+
+void F77_FUNC(gdgewd, GDGEWD) (char *in_field, int32_t *in_field_l,
+ char *check_field, int32_t *check_field_l, int32_t *windop,
+ int32_t *ithreshold, double *rthreshold, int32_t *fragment_index,
+ const int32_t *dirfile, const char *field_code,
+ const int32_t *field_code_l);
+
+void F77_FUNC(gdecnt, GDECNT) (int32_t *error_count, const int32_t *dirfile);
+
+void F77_FUNC(gdtoke, GDTOKE) (char *toke, int32_t *toke_l,
+ const int32_t *dirfile, const char *string, const int32_t *string_l);
+
+void F77_FUNC(gdgemx, GDGEMX) (char *in_field, int32_t *in_field_l,
+ char *count_field, int32_t *count_field_l, int32_t *val, int32_t *max,
+ int32_t *fragment_index, const int32_t *dirfile, const char *field_code,
+ const int32_t *field_code_l);
#ifdef __cplusplus
}
#endif
Modified: trunk/getdata/src/name.c
===================================================================
--- trunk/getdata/src/name.c 2012-06-29 20:58:30 UTC (rev 730)
+++ trunk/getdata/src/name.c 2012-06-29 22:00:49 UTC (rev 731)
@@ -366,10 +366,6 @@
}
}
- /* gotta update those aliases ... */
- for (u = 0; u < D->n_entries; ++u)
- if (D->entry[u] != E && D->entry[u]->field_type == GD_ALIAS_ENTRY)
-
dreturn("%p", list);
return list;
}
Modified: trunk/getdata/test/version_9_strict.c
===================================================================
--- trunk/getdata/test/version_9_strict.c 2012-06-29 20:58:30 UTC (rev 730)
+++ trunk/getdata/test/version_9_strict.c 2012-06-29 22:00:49 UTC (rev 731)
@@ -35,29 +35,29 @@
const char *format2 = "dirfile/format2";
const char *data = "dirfile/ar";
const char *format_data =
- "/VERSION 8\n" // 0
- "/INCLUDE format1\n" // 1
- "w WINDOW INDEX INDEX SET 0x1\n"; // 2
+ "/VERSION 8\n" /* 0 */
+ "/INCLUDE format1\n" /* 1 */
+ "w WINDOW INDEX INDEX SET 0x1\n"; /* 2 */
const char *format1_data =
"\n\n\n"
- "/VERSION 9\n" // 3
- "/INCLUDE format2 A Z\n" // 4
- "/INCLUDE format2 A.Z\n" // 5
- "Xr RAW COMPLEX128 0xA\n" // 6
- "Xy POLYNOM INDEX 8 055 0xAE 2\n" // 7
- "ar WINDOW AdZ INDEX SET 0x1\n" // 8
- "AINDEXZ PHASE INDEX 0\n" // 9
- "/HIDDEN Xy\n"; // 10
+ "/VERSION 9\n" /* 3 */
+ "/INCLUDE format2 A Z\n" /* 4 */
+ "/INCLUDE format2 A.Z\n" /* 5 */
+ "Xr RAW COMPLEX128 0xA\n" /* 6 */
+ "Xy POLYNOM INDEX 8 055 0xAE 2\n" /* 7 */
+ "ar WINDOW AdZ INDEX SET 0x1\n" /* 8 */
+ "AINDEXZ PHASE INDEX 0\n" /* 9 */
+ "/HIDDEN Xy\n"; /* 10 */
const char *format2_data =
"\n\n\n"
"\n\n\n\n\n\n\n\n"
- "c RAW UINT8 1\n" // 11
- "/HIDDEN c\n" // 12
- "/REFERENCE c\n" // 13
- "/VERSION 8\n" // 14
- "d PHASE INDEX 0\n" // 15
- "d/c CONST FLOAT64 1\n" // 16
- "/META d d CONST FLOAT64 1\n"; // 17
+ "c RAW UINT8 1\n" /* 11 */
+ "/HIDDEN c\n" /* 12 */
+ "/REFERENCE c\n" /* 13 */
+ "/VERSION 8\n" /* 14 */
+ "d PHASE INDEX 0\n" /* 15 */
+ "d/c CONST FLOAT64 1\n" /* 16 */
+ "/META d d CONST FLOAT64 1\n"; /* 17 */
uint16_t c[8];
int ll[NLINES];
unsigned char data_data[256];
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ket...@us...> - 2012-06-29 20:58:36
|
Revision: 730
http://getdata.svn.sourceforge.net/getdata/?rev=730&view=rev
Author: ketiltrout
Date: 2012-06-29 20:58:30 +0000 (Fri, 29 Jun 2012)
Log Message:
-----------
svn:ignore
Modified Paths:
--------------
trunk/html/Makefile
Property Changed:
----------------
trunk/html/
Property changes on: trunk/html
___________________________________________________________________
Modified: svn:ignore
- push-stamp
man
*.menu
+ push-stamp
man
*.menu
*.html
Modified: trunk/html/Makefile
===================================================================
--- trunk/html/Makefile 2012-06-29 20:53:13 UTC (rev 729)
+++ trunk/html/Makefile 2012-06-29 20:58:30 UTC (rev 730)
@@ -33,7 +33,7 @@
)
clean:
- rm -rf $(HTML) $(MENU) *~
+ rm -rvf $(HTML) $(MENU) man *~
PUBLIC_HTML=${HTML} getdata.css dirfile.png valid_html.png \
valid_css.png man spf_convert.png mplex_computation.png \
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ket...@us...> - 2012-06-29 20:53:22
|
Revision: 729
http://getdata.svn.sourceforge.net/getdata/?rev=729&view=rev
Author: ketiltrout
Date: 2012-06-29 20:53:13 +0000 (Fri, 29 Jun 2012)
Log Message:
-----------
Doc updates.
Modified Paths:
--------------
trunk/getdata/NEWS
trunk/getdata/man/gd_desync.3
trunk/html/Makefile
trunk/html/getdata.css
Added Paths:
-----------
trunk/html/api.html.in
trunk/html/bindings.html.in
trunk/html/dirfile.html.in
trunk/html/download.html.in
trunk/html/encoding.html.in
trunk/html/getdata.html.in
trunk/html/index.html.in
trunk/html/menu.pl
trunk/html/mplex_computation.png
trunk/html/sie_compression.png
trunk/html/spf_convert.png
Removed Paths:
-------------
trunk/html/api.html
trunk/html/bindings.html
trunk/html/dirfile.html
trunk/html/download.html
trunk/html/encoding.html
trunk/html/getdata.html
trunk/html/index.html
Property Changed:
----------------
trunk/html/
Modified: trunk/getdata/NEWS
===================================================================
--- trunk/getdata/NEWS 2012-06-29 00:29:46 UTC (rev 728)
+++ trunk/getdata/NEWS 2012-06-29 20:53:13 UTC (rev 729)
@@ -253,6 +253,9 @@
Bindings Changes:
+ * Bindings for Perl5 have been added. Perl is not well suited to numerical
+ analysis, and the bindings may be inefficient.
+
* F77: Due to small namespace issues, the encoding parameters (corresponding
to the GD_...ENCODED symbols in the C API) have all been renamed. They
are now of the form GDE_xx.
Modified: trunk/getdata/man/gd_desync.3
===================================================================
--- trunk/getdata/man/gd_desync.3 2012-06-29 00:29:46 UTC (rev 728)
+++ trunk/getdata/man/gd_desync.3 2012-06-29 20:53:13 UTC (rev 729)
@@ -64,7 +64,7 @@
has been succesfully opened.
Re-opening the dirfile is equivalent to calling
-.BR gd_close (3),
+.BR gd_discard (3),
and then
.BR gd_cbopen (3)
with the same arguments used when originally creating
@@ -94,7 +94,7 @@
Additionally, if
.B GD_DESYNC_REOPEN
is used, this function may fail for any of the reasons listed in the
-.BR gd_close (3)
+.BR gd_discard (3)
and
.BR gd_cbopen (3)
manual pages.
@@ -123,7 +123,7 @@
.SH SEE ALSO
.BR fstatat (2),
.BR gd_cbopen (3),
-.BR gd_close (3),
+.BR gd_discard (3),
.BR gd_error (3),
.BR gd_error_string (3),
.BR gd_parser_callback (3)
Property changes on: trunk/html
___________________________________________________________________
Modified: svn:ignore
- push-stamp
man3
+ push-stamp
man
*.menu
Modified: trunk/html/Makefile
===================================================================
--- trunk/html/Makefile 2012-06-29 00:29:46 UTC (rev 728)
+++ trunk/html/Makefile 2012-06-29 20:53:13 UTC (rev 729)
@@ -1,27 +1,43 @@
SRC_DIR=$(abspath ../getdata)
CWD=$(abspath .)
-.PHONY: man3
-man3:
- if [ ! -d man3 ]; then rm -rf man3 && mkdir man3; fi
+PAGES=index download getdata bindings dirfile encoding api
+HTML=$(addsuffix .html,${PAGES})
+MENU=$(addsuffix .menu,${PAGES})
+
+all: $(HTML) man
+
+.SECONDARY: $(MENU)
+%.menu:%.html.in menu.pl
+ ./menu.pl c $< > $@
+
+%.html:%.html.in menu.pl ${MENU}
+ ./menu.pl w $< > $@
+
+.PHONY: man
+man:
+ if [ ! -d man ]; then rm -rf man && mkdir man; fi
cd $(SRC_DIR)/man && $(MAKE) htmlman
- ( cd man3 && \
- for x in *3.html; do \
+ ( cd man && \
+ for x in *[35].html; do \
if [ ! -e $(SRC_DIR)/man/$$x ]; then rm -vf $$x; fi; \
done \
)
( cd $(SRC_DIR)/man && \
- for x in *3.html; do \
- if [ ! -e ${CWD}/man3/$$x ] || \
- ! diff -q $$x ${CWD}/man3/$$x > /dev/null 2>&1; then \
- cp -vf $$x ${CWD}/man3/$$x; \
+ for x in *[35].html; do \
+ if [ ! -e ${CWD}/man/$$x ] || \
+ ! diff -q $$x ${CWD}/man/$$x > /dev/null 2>&1; then \
+ cp -vf $$x ${CWD}/man/$$x; \
fi; \
done; \
)
-PUBLIC_HTML=index.html api.html bindings.html dirfile.html download.html \
- encoding.html getdata.html getdata.css dirfile.png valid_html.png \
- valid_css.png man3
+clean:
+ rm -rf $(HTML) $(MENU) *~
+
+PUBLIC_HTML=${HTML} getdata.css dirfile.png valid_html.png \
+ valid_css.png man spf_convert.png mplex_computation.png \
+ sie_compression.png
push: push-stamp
push-stamp: ${PUBLIC_HTML}
Deleted: trunk/html/api.html
===================================================================
--- trunk/html/api.html 2012-06-29 00:29:46 UTC (rev 728)
+++ trunk/html/api.html 2012-06-29 20:53:13 UTC (rev 729)
@@ -1,671 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
-"http://www.w3.org/TR/html4/strict.dtd">
-<HTML>
- <HEAD>
- <meta http-equiv="Content-Type" content="text/html;charset=utf-8" >
- <LINK REL="stylesheet" HREF="getdata.css" TYPE="text/css">
- <TITLE>The API Transition</TITLE>
- </HEAD>
- <BODY>
- <H1>The API Transition</H1>
- <div class="topbar">
- <a href="index.html">home</a> |
- <a href="download.html">download</a> |
- <a href="getdata.html">API documentation</a> |
- <a href="dirfile.html">dirfile standards</a> |
- <a href="http://lists.sourceforge.net/lists/listinfo/getdata-devel">mailing list</a> |
- <a href="http://sourceforge.net/projects/getdata/">sourceforge</a>
- </div>
- <div class="menu">
- <h2 class="menu">The API Transition</h2>
- <ul>
- <li><a href="api.html#introduction">Introduction</a>
- <li><a href="api.html#newapi">The New API</a>
- <li><a href="api.html#dirfile">The DIRFILE Object</a>
- <li><a href="api.html#datatypes">Data Types</a>
- <li><a href="api.html#lfs">Largefile Support</a>
- <li><a href="api.html#comparison">API Comparison</a>
- <li><a href="api.html#example">Translation Example</a>
- </ul>
- <h2 class="menu"><a href="index.html">The GetData Project</a></h2>
- <ul>
- <li><a href="index.html#overview">Overview</a></li>
- <li><a href="index.html#download">Get GetData</a></li>
- <li><a href="index.html#documentation">Documentation</a></li>
- <li><a href="index.html#warranty">Warranty and Redistribution</a></li>
- <li><a href="index.html#contact">Contact</a></li>
- </ul>
- <h2 class="menu"><a href="download.html">Get GetData</a></h2>
- <ul>
- <li><a href="download.html#source">Latest Release</a>
- <li><a href="download.html#distros">Pre-Built Packages</a>
- <li><a href="download.html#svn">Subversion</a>
- <li><a href="download.html#previous">Previous Releases</a>
- </ul>
- <h2 class="menu"><a href="bindings.html">GetData Bindings</a></h2>
- <ul>
- <li><a href="bindings.html#introduction">Introduction</a></li>
- <li><a href="bindings.html#fortran">Fortran Bindings</a></li>
- <li><a href="bindings.html#cxx">C++ Bindings</a></li>
- <li><a href="bindings.html#python">Python Bindings</a></li>
- <li><a href="bindings.html#idl">IDL Bindings</a></li>
- </ul>
- <h2 class="menu"><a href="getdata.html">Using GetData</a></h2>
- <ul>
- <li><a href="getdata.html#prelim">Preliminaries</a>
- <li><a href="getdata.html#building">Building GetData</a>
- <li><a href="getdata.html#header">The GetData Header</a>
- <li><a href="getdata.html#bindings">Language Bindings</a>
- <li><a href="getdata.html#dirfile">Working with Dirfiles</a>
- <li><a href="getdata.html#rmeta">Reading Metadata</a>
- <li><a href="getdata.html#count">Counting Fields</a>
- <li><a href="getdata.html#list">Listing Fields</a>
- <li><a href="getdata.html#mmeta">Modifying Metadata</a>
- <li><a href="getdata.html#add">Adding or Deleting Fields</a>
- <li><a href="getdata.html#alter">Modifying Field Metadata</a>
- <li><a href="getdata.html#data">Reading and Writing Data</a>
- <li><a href="getdata.html#callback">The Parser Callback Function</a>
- <li><a href="getdata.html#unclean">Unclean Database Recovery</a>
- </ul>
- <h2 class="menu"><a href="dirfile.html">The Dirfile Standards</a></h2>
- <ul>
- <li><a href="dirfile.html#introduction">Introduction</a>
- <li><a href="dirfile.html#example">Dirfile Example</a>
- <li><a href="dirfile.html#format">The Format File</a>
- <ul class="submenu">
- <li><a href="dirfile.html#tokens">Tokens</a>
- </ul>
- <li><a href="dirfile.html#directives">Directives</a>
- <li><a href="dirfile.html#fields">Field Specifications</a>
- <ul class="submenu">
- <li><a href="dirfile.html#fieldname">Field Names</a>
- <li><a href="dirfile.html#fieldtype">Field Types</a>
- <li><a href="dirfile.html#fieldparam">Field Parameters</a>
- <li><a href="dirfile.html#fieldcode">Field Codes</a>
- </ul>
- <li><a href="dirfile.html#versions">Standards Versions</a>
- </ul>
- <h2 class="menu"><a href="encoding.html">Dirfile Encodings</a></h2>
- <ul>
- <li><a href="encoding.html#introduction">Introduction</a>
- <li><a href="encoding.html#framework">The Encoding Framework</a>
- <li><a href="encoding.html#discovery">Automatic Encoding Detection</a>
- <li><a href="encoding.html#schemes">Supported Encoding Schemes</a>
- <ul class="submenu">
- <li><a href="encoding.html#text">Text Encoding</a>
- <li><a href="encoding.html#bzip2">Bzip2 Encoding</a>
- <li><a href="encoding.html#gzip">Gzip Encoding</a>
- <li><a href="encoding.html#slim">Slim Encoding</a>
- </ul>
- </ul>
- <h2 class="menu">
- <a href="http://sourceforge.net/projects/getdata/">SourceForge
- Project Page</a>
- </h2>
- <div class="sflogo"><a href="http://sourceforge.net"><img src=
- "http://sflogo.sourceforge.net/sflogo.php?group_id=229287&type=4"
- width="125" height="37" alt="SourceForge.net Logo"></a></div>
- </div>
- <div class="main">
- <h2><a name="introduction">Introduction</a></h2>
- <p>Users of older versions of GetData will notice a fairly substantial
- change in the API starting with version 0.3.0 as compared with older
- version. Older versions of this library (hereafter referred to as the
- "legacy API") suffered from thread safety issues, and lacked LFS (large
- file) support. A new API has been created to address these issues.
- <p>The legacy API has been re-implemented in the library and programs that
- used it should still work without modification after linking to the latest
- version of GetData, with these two small provisos explained further the
- <a href="#comparison">comparison</a> section below:
- <ul>
- <li>Internal library data can no-longer be obtained by calling
- <span class="syntax">GetFormat</span>.
- <li>Error codes have changed.
- </ul>
- Furthermore, much of the new functionality introduced from version 0.3.0
- onwards is not available in the legacy API.
- <h2><a name="newapi">The New API</a></h2>
- <p>The new API separates the opening of a Dirfile from reading or writing
- to it. Where in the old API one would use:
- <div class="syntax">
- <span class="keyword">int</span> <span class="identifier">n_read</span>
- <span class="operator">=</span> <span
- class="identifier">GetData</span><span class="operator">(</span><span
- class="string">"dirfile"</span><span class="operator">,</span> <span
- class="string">"field"</span><span class="operator">,</span> <span
- class="literal">1</span><span class="operator">,</span> <span
- class="literal">0</span><span class="operator">,</span> <span
- class="literal">1</span><span class="operator">,</span> <span
- class="literal">0</span><span class="operator">,</span> <span
- class="character">'S'</span><span class="operator">,</span> <span
- class="identifier">data</span><span class="operator">,</span> <span
- class="operator">&</span><span
- class="identifier">error_code</span><span class="operator">);</span>
- </div>
- the corresponding new API would have:
- <div class="syntax"><span class="keyword">DIRFILE</span> <span
- class="operator">*</span><span class="identifier">D</span> <span
- class="operator">=</span> <span
- class="identifier">gd_open</span><span
- class="operator">(</span><span class="string">"dirfile"</span><span
- class="operator">,</span> <span class="literal">GD_RDONLY</span><span
- class="operator">);</span><br><span class="keyword">size_t</span>
- <span class="identifier">n_read</span> <span class="operator">=</span>
- <span class="identifier">gd_getdata</span><span
- class="operator">(</span><span class="identifier">D</span><span
- class="operator">,</span> <span class="string">"field"</span><span
- class="operator">,</span> <span class="literal">1</span><span
- class="operator">,</span> <span class="literal">0</span><span
- class="operator">,</span> <span class="literal">1</span><span
- class="operator">,</span> <span class="literal">0</span><span
- class="operator">,</span> <span class="literal">GD_INT32</span><span
- class="operator">,</span> <span class="identifier">data</span><span
- class="operator">);</span>
- </div>
- Here, <span class="syntax identifier">D</span> is a pointer to a DIRFILE
- object. This object is modelled after the FILE object of the C Library's
- stdio interface.
- <p>The new API is fully documented in the included man pages and in the
- <a href="getdata.html">Using GetData</a> document. A translation example
- from the legacy API to the new API is present as <a href="#example">at
- the end of this document</a>.
-
- <h2><a name="dirfile">The DIRFILE Object</a></h2>
- <p>In the legacy API, dirfiles were referred to by their path name. In
- the new API, after the dirfile has been opened, it is referenced instead
- by passing a pointer to a DIRFILE object. Further, where the legacy API
- was passed an integer pointer to store the error code, this is now stored
- in the DIRFILE object itself and may be accessed at any time by calling
- <a href="getdata.html#gd_error"><span
- class="syntax">gd_error()</span></a> As a side-effect of this change,
- the error value itself, and the descriptive error string which can be
- generated by the library, is now local to a particular instance of a
- particular dirfile, rather than being global across the library.
- <p>Once a DIRFILE object has been created by a call to <span
- class="syntax identifier">gd_open</span>, all subsequent operations
- on the dirfile operate on this object. Once the program is finished with
- the dirfile, the object can be destroyed, and all open file handles
- closed, with the call:
- <div class="syntax"><span class="identifier">gd_close</span><span
- class="operator">(</span><span class="identifier">D</span><span
- class="operator">);</span></div>
- <h2><a name="datatypes">Data Types</a></h2>
- <p>Partially in order to fully support large files (>2 GB) as
- defined by the LFS, a consistent data type structure is used in the new
- API:
- <ul>
- <li>database offsets and database sizes are of type <span
- class="syntax keyword">off_t</span>
- <li>object sizes and counts of items read are of type <span
- class="syntax keyword">size_t</span>
- <li>samples-per-frame are of type <span class="syntax
- keyword">gd_spf_t</span>, an unsigned 16-bit integer type
- <li>data type specifiers (formerly of type <span
- class="syntax keyword">char</span>) are now of type <span
- class="syntax keyword">gd_type_t</span>, which is defined in
- getdata.h. Any time this type is needed, one of the following
- symbols, also defined in getdata.h, should be used:
- <p class="inset"><span class="syntax literal">GD_NULL</span>,
- <span class="syntax literal">GD_UINT8</span>,
- <span class="syntax literal">GD_INT8</span>,
- <span class="syntax literal">GD_UINT16</span>,
- <span class="syntax literal">GD_INT16</span>,
- <span class="syntax literal">GD_UINT32</span>,
- <span class="syntax literal">GD_INT32</span>,
- <span class="syntax literal">GD_UINT64</span>,
- <span class="syntax literal">GD_INT64</span>,
- <span class="syntax literal">GD_FLOAT32</span>,
- <span class="syntax literal">GD_FLOAT62</span>,
- <span class="syntax literal">GD_COMPLEX64</span>,
- <span class="syntax literal">GD_COMPLEX128</span>,
- <span class="syntax literal">GD_UNKNOWN</span>.</p>
- Using a legacy API single character type specifier where this type is
- needed will result in the library error <span
- class="syntax literal">GD_E_BAD_TYPE</span>.
- </ul>
- <p>The legacy API continues to use <span class="syntax keyword">int</span>
- for offsets, sizes, and counts, which prevents it from supporting large
- files.</p>
- <h2><a name="lfs">Largefile Support</a></h2>
- <p>When built on a platform using the GNU C Library, or another compatible
- C Library, the new GetData API will respect the feature test macros
- <span class="syntax literal">_LARGEFILE64_SOURCE</span> and
- <span class="syntax literal">_FILE_OFFSET_BITS</span> affecting largefile
- (>2 GB)
- support. If one or the other of these are to be used, they must be
- defined before including getdata.h or any Standard C Library header file.
- <p>The first of these, <span class="syntax
- literal">_LARGEFILE64_SOURCE</span>, if defined before including
- getdata.h, will enable the obsolete, transitional largefile extensions
- defined by the LFS. This will enable explicit support for large files by
- defining the 64-bit explicit type <span class="syntax
- keyword">off64_t</span>, and result in GetData defining the explicitly
- 64-bit interfaces <span class="syntax identifier">gd_getdata64</span>,
- <span class="syntax identifier">gd_putdata64</span>, and <span
- class="syntax identifier">gd_nframes64</span>. This macro is
- largely obsolete, and using <span class="syntax
- literal">_FILE_OFFSET_BITS</span> is preferred, if supported.
- <p>The second macro, <span class="syntax
- literal">_FILE_OFFSET_BITS</span>, determines the size of <span
- class="syntax keyword">off_t</span>. If not defined, or defined to
- <span class="syntax literal">32</span>, <span class="syntax
- keyword">off_t</span> will be a 32-bit type. If, instead, this macro is
- defined to <span class="syntax literal">64</span>, <span class="syntax
- keyword">off_t</span> will be the largefile supporting 64-bit type, and
- calls to <span class="syntax identifier">gd_getdata</span>, <span
- class="syntax identifier">gd_putdata</span>, &c. will intrinsically
- have largefile support. On 64-bit systems this macro has no effect, since
- a 64-bit <span class="syntax keyword">off_t</span> is used all the time.
- <p>If your system uses the GNU C Library, the feature_test_macros(7) man
- page will provide further explanation. On systems where these macros are
- unsupported, the gd_getdata64, &c. interfaces will never be defined,
- and the size of <span class="syntax keyword">off_t</span> will be system
- dependent. In this case, GetData will follow the default largefile
- behaviour of the underlying platform.
- <p>If you build GetData against a C Library that lacks largefile support,
- the GetData library will not support large files either, no matter what
- you do with these macros.</p>
-
- <h2><a name="comparison">API Comparison</a></h2>
- <p>The following table lists correspondences between the legacy API and
- the new API. Legacy API support in this version of GetData is a
- reimplementation of that API based on the new API. As a result, one
- function (<span class="syntax">GetFormat</span>) and several error codes
- in the legacy API (see below) have changed slightly, but bugs fixed in
- the internals of the library for the new API will apply to the legacy API
- as well. Furthermore, the new API has additional functionality not
- indicated here.
- <table>
- <caption><b>Table 1:</b> Comparison of functions.</caption>
- <tr>
- <th>New</th><th>Legacy</th><th>Notes</th>
- </tr>
- <tr>
- <td class="syntax">
- <a href="getdata.html#gd_close">gd_close</a>
- </td>
- <td>—</td>
- <td>Closes a dirfile. The legacy API contained no facility to do
- this.</td>
- </tr>
- <tr>
- <td class="syntax">
- <a href="getdata.html#gd_flush">gd_flush</a>
- </td>
- <td>—</td>
- <td>Flushes (i.e. syncs and closes binary files associated with) a
- dirfile field, or the whole dirfile. The legacy API contained no
- facility to do this, however, several extended versions of GetData
- did contain such facilities. TK's libdirfile/b2klib
- contained:
- <ul>
- <li><span class="syntax">void CloseData(char *dirfilename,
- char *field_name, int *error_code);</span>
- <li><span class="syntax">void CloseAll(int *error_code);</span>
- </ul>
- which behaved similarly (the second of these flushed <em>all</em>
- open dirfiles). Similarly, JF's GetData had:
- <ul>
- <li><span class="syntax">int GetDataClose(const char *dirfilename,
- int *error_code);</span>
- </ul>
- The re-implementation of the legacy API contains none of these.
- </td>
- </tr>
- <tr>
- <td class="syntax">
- <a href="getdata.html#gd_open">gd_open</a>
- </td>
- <td>—</td>
- <td>Opens or creates a dirfile. A dirfile open happened implicitly in
- the legacy API, the first time it was accessed. The legacy API had
- no facility to create new dirfiles.</td>
- </tr>
- <tr>
- <td class="syntax">
- <a href="getdata.html#gd_getdata">gd_getdata</a>
- </td>
- <td class="syntax">GetData</td>
- <td>Fetch data from a dirfile. Behaviour is the same. No facilities
- exist in the legacy API to retrieve scalar fields.</td>
- </tr>
- <tr>
- <td class="syntax" rowspan="2">
- <a href="getdata.html#gd_error_string">gd_error_string</a>
- </td>
- <td class="syntax">GetDataErrorString</td>
- <td>Returns a descriptive error string. Behaviour is the same.</td>
- </tr>
- <tr>
- <td class="syntax">GD_ERROR_CODES</td>
- <td>In the legacy API, this was a global array of error messages.
- The new API supports no such array; callers should use the
- <span class="syntax">gd_error_string</span> function instead.
- (This is good advice for users of the legacy API as well.) Some
- error codes are specific to the new API. These error codes may not
- have a corresponding entry in this array.
- </td>
- </tr>
- <tr>
- <td class="syntax">
- <a href="getdata.html#gd_entry">gd_entry</a>
- </td>
- <td class="syntax" rowspan="3">GetFormat</td>
- <td>Returns the metadata for one field. The legacy API returned a
- structure containing all the dirfile metadata. The legacy API's
- re-implementation of this function still returns this structure,
- but only those members corresponding to public members of the
- <a href="getdata.html#gd_entry"><span
- class="syntax">gd_entry_t</span> object</a> will be properly
- initialised. Furthermore, RAW data types INT8, UINT64, INT64,
- COMPLEX64, and COMPLEX128 cannot be represented by the legacy API.
- The legacy API will incorrectly report fields of these types to have
- the NULL (<span class="syntax character">'n'</span>) type.
- Furthermore, since the legacy API does not support <b>POLYNOM</b>,
- <b>SBIT</b>, <b>DIVIDE</b>, and <b>RECIP</b> fields, these are
- listed in the legacy API's structure as <b>LINCOM</b>, <b>BIT</b>,
- <b>MULTIPLY</b>, and <b>LINCOM</b> fields, respectively. Scalar
- fields are completely ignored by the legacy API.
- </tr>
- <tr>
- <td class="syntax">
- <a href="getdata.html#gd_field_list">gd_field_list</a>
- </td>
- <td>List the fields in a dirfile. The structure returned by the
- legacy API contained lists of the fields in the dirfile,
- broken up by field type.
- </tr>
- <tr>
- <td class="syntax">
- <a href="getdata.html#gd_nfields">gd_nfields</a>
- </td>
- <td>Report the number of fields in a dirfile. The legacy API had no
- corresponding function, but the caller could calculate this from
- the data obtained from <span class="syntax">GetFormat</span>.</td>
- </tr>
- <tr>
- <td class="syntax">
- <a href="getdata.html#gd_nframes">gd_nframes</a>
- </td>
- <td class="syntax">GetNFrames</td>
- <td>Report the size of a dirfile. Behaviour is the same.</td>
- </tr>
- <tr>
- <td class="syntax">
- <a href="getdata.html#gd_spf">gd_spf</a>
- </td>
- <td class="syntax">GetSamplesPerFrame</td>
- <td>Report the sample rate of a dirfile field. Behaviour is the
- same.</td>
- </tr>
- <tr>
- <td class="syntax">
- <a href="getdata.html#gd_putdata">gd_putdata</a>
- </td>
- <td class="syntax">PutData</td>
- <td>Store data to a dirfile. Behaviour is the same. No facilities
- exist in the legacy API to modify scalar fields.</td>
- </tr>
- </table>
- <p>The following table lists changes made to error codes from the legacy
- API to the current implementation. The re-implementation of the legacy
- API uses the new error codes. Other than
- <span class="syntax">GD_E_OK</span>, callers should not expect error
- codes to evaluate to the same literal value as previous GetData
- releases. Error codes returned only by the new API are not listed here.
- <table>
- <caption><b>Table 2:</b> Comparison of error codes.</caption>
- <tr>
- <th>New</th><th>Legacy</th><th>Notes</th>
- </tr>
- <tr>
- <td class="syntax span" colspan="2">GD_E_OK</td><td>Unchanged. This
- is guaranteed to evaluate to zero.</td>
- </tr>
- <tr class="changed">
- <td class="syntax">GD_E_OPEN</td>
- <td class="syntax">GD_E_OPEN_FORMAT</td><td>Renamed.</td>
- </tr>
- <tr>
- <td class="syntax span" colspan="2">GD_E_FORMAT</td>
- <td>Unchanged.</td>
- </tr>
- <tr class="changed">
- <td class="syntax" rowspan="2">GD_E_BAD_CODE</td>
- <td class="syntax">GD_E_BAD_CODE</td>
- <td rowspan="2">Combined.</td>
- </tr>
- <tr class="changed">
- <td class="syntax">PD_E_BAD_CODE</td>
- </tr>
- <tr class="changed">
- <td class="syntax">GD_E_BAD_TYPE</td>
- <td class="syntax">GD_E_BAD_RETURN_TYPE</td><td>Renamed.</td>
- </tr>
- <tr class="changed">
- <td class="syntax" rowspan="2">GD_E_RAW_IO</td>
- <td class="syntax">GD_E_OPEN_RAWFIELD</td>
- <td rowspan="2">Combined and renamed.</td>
- </tr>
- <tr class="changed">
- <td class="syntax">PD_E_OPEN_RAWFIELD</td>
- </tr>
- <tr class="changed">
- <td class="syntax">GD_E_OPEN_FRAGMENT</td>
- <td class="syntax">GD_E_OPEN_INCLUDE</td><td>Renamed. Old name
- remains as an alias.</td>
- </tr>
- <tr>
- <td class="syntax span" colspan="2">GD_E_INTERNAL_ERROR</td>
- <td rowspan="2">Unchanged.</td>
- </tr>
- <tr>
- <td class="syntax span" colspan="2">GD_E_ALLOC</td>
- </tr>
- <tr class="new">
- <td class="syntax">GD_E_RANGE</td><td>—</td><td>New.</td>
- </tr>
- <tr>
- <td class="syntax span" colspan="2">GD_E_OPEN_LINFILE</td>
- <td rowspan="2">Unchanged.</td>
- </tr>
- <tr>
- <td class="syntax span" colspan="2">GD_E_RECURSE_LEVEL</td>
- </tr>
- <tr class="new">
- <td class="syntax">GD_E_BAD_DIRFILE</td><td>—</td>
- <td>New.</td>
- </tr>
- <tr class="changed">
- <td class="syntax">GD_E_BAD_FIELD_TYPE</td>
- <td class="syntax">PD_E_MULT_LINCOM</td><td>Renamed.</td>
- </tr>
- <tr class="new">
- <td class="syntax">GD_E_ACCMODE</td>
- <td rowspan="9">—</td>
- <td rowspan="9">New.</td>
- </tr>
- <tr class="new">
- <td class="syntax">GD_E_UNSUPPORTED</td>
- </tr>
- <tr class="new">
- <td class="syntax">GD_E_UNKNOWN_ENCODING</td>
- </tr>
- <tr class="new">
- <td class="syntax">GD_E_DIMENSION</td>
- </tr>
- <tr class="new">
- <td class="syntax">GD_E_BAD_SCALAR</td>
- </tr>
- <tr class="new">
- <td class="syntax">GD_E_BAD_REFERENCE</td>
- </tr>
- <tr class="new">
- <td class="syntax">GD_E_PROTECTED</td>
- </tr>
- <tr class="new">
- <td class="syntax">GD_E_DOMAIN</td>
- </tr>
- <tr class="new">
- <td class="syntax">GD_E_BAD_REPR</td>
- </tr>
- <tr class="removed">
- <td rowspan="5">—</td><td class="syntax">GD_E_FIELD</td>
- <td rowspan="5">Removed. (No longer applicable.)</td>
- </tr>
- <tr class="removed">
- <td class="syntax">GD_E_NO_RAW_FIELDS</td>
- </tr>
- <tr class="removed">
- <td class="syntax">GD_E_SIZE_MISMATCH</td>
- </tr>
- <tr class="removed">
- <td class="syntax">ENDIAN_ERROR</td>
- </tr>
- <tr class="removed">
- <td class="syntax">CLOSE_ERROR</td>
- </tr>
- <tr class="removed">
- <td rowspan="3">—</td>
- <td class="syntax">PD_E_CLOSE_RDONLY</td>
- <td rowspan="3">Removed. (Never used.)</td>
- </tr>
- <tr class="removed">
- <td class="syntax">PD_E_WRITE_LOCK</td>
- </tr>
- <tr class="removed">
- <td class="syntax">PD_E_FLOCK_ALLOC</td>
- </tr>
- </table>
-
- <h2><a name="example">API Translation Example</a></h2>
- <p>The following example programs demonstrate how to convert from
- the legacy to the new API. Since GetData still implements the legacy API,
- both these programs will run and produce identical results.</p>
- <table class="example">
- <tr>
- <td class="example">
- <span class="comment">/* Legacy API */</span><span class="spacer"> </span><br>
- <span class="preprocessor">#include <getdata.h></span><br>
- <span class="preprocessor">#include <stdlib.h></span><br>
- <span class="preprocessor">#include <stdio.h></span><br>
- <br>
- <span class="keyword">int</span> <span class="identifier">main</span><span class="operator">(</span><span class="keyword">void</span><span class="operator">)</span><br>
- <span class="operator">{</span><br><div class="indent">
- <span class="comment">/* dirfile name */</span><br>
- <span class="keyword">const char</span> <span class="operator">*</span><span class="identifier">dirfile_name</span> <span class="operator">=</span> <span class="string">"/var/dirfile"</span><span class="operator">;</span><br>
- <span class="comment">/* field code */</span><br>
- <span class="keyword">const char</span> <span class="operator">*</span><span class="identifier">field_name</span> <span class="operator">=</span> <span class="string">"datafield"</span><span class="operator">;</span><br>
- <span class="keyword">char</span> <span class="identifier">error_buffer</span><span class="operator">[</span><span class="literal">1024</span><span class="operator">];</span><br>
- <span class="keyword">int</span> <span class="identifier">error_code</span><span class="operator">;</span> <span class="comment">/* not needed in the new API */</span><br>
- <span class="keyword">int</span> <span class="identifier">first_frame</span> <span class="operator">=</span> <span class="literal">1000</span>;<br>
- <br>
- <span class="spacer"> <br> <!-- /* Open the dirfile */ -->
- <br> <!-- DIRFILE *dirfile = gd_open(dirfile_name, GD_RDONLY); -->
- </span><br><div class="indent"> <!-- if (gd_error(dirfile)) { -->
- <span class="spacer"> <br> <!-- /* gd_open() returns a pointer to a newly allocated DIRFILE object even if the open failed. This DIRFILE object should still be freed by calling gd_close() after checking the error state */ -->
- <br> <!-- printf("GetData error: %s\n", gd_error_string(dirfile, error_buffer, 1024)); -->
- <br> <!-- gd_close(dirfile); -->
- </span><br> <!-- exit(1); -->
- </div><span class="spacer"> </span><br> <!-- } -->
- <br>
- <span class="comment">/* Get size of the database -- third argument is ignored */</span><br>
- <span class="keyword">int</span> <span class="identifier">nf</span> <span class="operator">=</span> <span class="identifier">GetNFrames</span><span class="operator">(</span><span class="identifier">dirfile_name</span><span class="operator">, &</span><span class="identifier">error_code</span><span class="operator">,</span> <span class="literal">NULL</span><span class="operator">);</span><br>
- <span class="keyword">if</span> <span class="operator">(</span><span class="identifier">error_code</span><span class="operator">) {</span><span class="spacer"> </span><br><div class="indent">
- <span class="identifier">printf</span><span class="operator">(</span><span class="string">"GetData error: %s\n"</span><span class="operator">,</span> <span class="identifier">GetDataErrorString</span><span class="operator">(</span><span class="identifier">error_buffer</span><span class="operator">,</span> <span class="literal">1024</span><span class="operator">));</span><span class="spacer"> </span><br>
- <span class="identifier">exit</span><span class="operator">(</span><span class="literal">1</span><span class="operator">);</span><br>
- </div><span class="operator">}</span><br>
- <br>
- <span class="comment">/* Get samples-per-frame */</span><br>
- <span class="keyword">int</span> <span class="identifier">spf</span> <span class="operator">=</span> <span class="identifier">GetSamplesPerFrame</span><span class="operator">(</span><span class="identifier">dirfile_name</span><span class="operator">,</span> <span class="identifier">field_name</span><span class="operator">, &</span><span class="identifier">error_code</span><span class="operator">);</span><br>
- <span class="keyword">if</span> <span class="operator">(</span><span class="identifier">error_code</span><span class="operator">) {</span><span class="spacer"> </span><br><div class="indent">
- <span class="identifier">printf</span><span class="operator">(</span><span class="string">"GetData error: %s\n"</span><span class="operator">,</span> <span class="identifier">GetDataErrorString</span><span class="operator">(</span><span class="identifier">error_buffer</span><span class="operator">,</span> <span class="literal">1024</span><span class="operator">));</span><span class="spacer"> </span><br>
- <span class="identifier">exit</span><span class="operator">(</span><span class="literal">1</span><span class="operator">);</span><br>
- </div><span class="operator">}</span><br>
- <br>
- <span class="comment">/* Allocate a buffer */</span><br>
- <span class="keyword">double</span> <span class="operator">*</span><span class="identifier">data_buffer</span> <span class="operator">=</span> <span class="identifier">malloc</span><span class="operator">(</span><span class="keyword">sizeof</span><span class="operator">(</span><span class="keyword">double</span><span class="operator">) *</span> <span class="identifier">spf</span> <span class="operator">* (</span><span class="identifier">nf</span> <span class="operator">-</span> <span class="identifier">first_frame</span><span class="operator">));</span><br>
- <br>
- <span class="comment">/* Retrieve all but the first 1000 frames */</span><span class="spacer"> </span><br>
- <span class="keyword">int</span> <span class="identifier">n_read</span> <span class="operator">=</span> <span class="identifier">GetData</span><span class="operator">(</span><span class="identifier">dirfile_name</span><span class="operator">,</span> <span class="identifier">field_name</span><span class="operator">,</span> <span class="identifier">first_frame</span><span class="operator">,</span> <span class="literal">0</span><span class="operator">,</span> <span class="identifier">nf</span> <span class="operator">-</span> <span class="identifier">first_frame</span><span class="operator">,</span> <span class="literal">0</span><span class="operator">,</span> <span class="character">'d'</span><span class="operator">,</span> <span class="identifier">data_buffer</span><span class="operator">, &</span><span class="identifier">error_code</span><span class="operator">);</span><br>
- <span class="keyword">if</span> <span class="operator">(</span><span class="identifier">error_code</span><span class="operator">) {</span><span class="spacer"> </span><br><div class="indent">
- <span class="identifier">printf</span><span class="operator">(</span><span class="string">"GetData error: %s\n"</span><span class="operator">,</span> <span class="identifier">GetDataErrorString</span><span class="operator">(</span><span class="identifier">error_buffer</span><span class="operator">,</span> <span class="literal">1024</span><span class="operator">));</span><span class="spacer"> </span><br>
- <span class="identifier">exit</span><span class="operator">(</span><span class="literal">1</span><span class="operator">);</span><br>
- </div><span class="operator">}</span><br>
- <br>
- <span class="comment">/* Clean up */</span><br>
- <span class="identifier">free</span><span class="operator">(</span><span class="identifier">data_buffer</span><span class="operator">);</span><br>
- <span class="spacer"> </span><br>
- <br>
- <span class="keyword">return</span> <span class="literal">0</span><span class="operator">;</span><br>
- </div><span class="operator">}</span>
- </td><td class="example">
- <span class="comment">/* New API -- same header file */</span><br>
- <span class="preprocessor">#include <getdata.h></span><br>
- <span class="preprocessor">#include <stdlib.h></span><br>
- <span class="preprocessor">#include <stdio.h></span><br>
- <br>
- <span class="keyword">int</span> <span class="identifier">main</span><span class="operator">(</span><span class="keyword">void</span><span class="operator">)</span><br>
- <span class="operator">{</span><br><div class="indent">
- <span class="comment">/* dirfile name */</span><br>
- <span class="keyword">const char</span> <span class="operator">*</span><span class="identifier">dirfile_name</span> <span class="operator">=</span> <span class="string">"/var/dirfile"</span><span class="operator">;</span><br>
- <span class="comment">/* field code */</span><br>
- <span class="keyword">const char</span> <span class="operator">*</span><span class="identifier">field_name</span> <span class="operator">=</span> <span class="string">"datafield"</span><span class="operator">;</span><br>
- <span class="keyword">char</span> <span class="identifier">error_buffer</span><span class="operator">[</span><span class="literal">1024</span><span class="operator">];</span><br>
- <span class="comment">/* off_t is for dirfile offsets and lengths */</span><br>
- <span class="keyword">off_t</span> <span class="identifier">first_frame</span> <span class="operator">=</span> <span class="literal">1000</span>;<br>
- <br>
- <span class="comment">/* Open the dirfile */</span><br>
- <span class="keyword">DIRFILE</span> <span class="operator">*</span><span class="identifier">dirfile</span> <span class="operator">=</span> <span class="identifier">gd_open</span><span class="operator">(</span><span class="identifier">dirfile_name</span><span class="operator">,</span> <span class="literal">GD_RDONLY</span><span class="operator">);</span><br>
- <span class="keyword">if</span> <span class="operator">(</span><span class="identifier">gd_error</span><span class="operator">(</span><span class="identifier">dirfile</span><span class="operator">)) {</span><br><div class="indent">
- <span class="comment">/* gd_open() returns a pointer to a newly allocated DIRFILE object even if the open failed. This DIRFILE object should still be freed by calling gd_close() after checking the error state */</span><br>
- <span class="identifier">printf</span><span class="operator">(</span><span class="string">"GetData error: %s\n"</span><span class="operator">,</span> <span class="identifier">gd_error_string</span><span class="operator">(</span><span class="identifier">dirfile</span><span class="operator">,</span> <span class="identifier">error_buffer</span><span class="operator">,</span> <span class="literal">1024</span><span class="operator">));</span><br>
- <span class="identifier">gd_close</span><span class="operator">(</span><span class="identifier">dirfile</span><span class="operator">);</span><br>
- <span class="identifier">exit</span><span class="operator">(</span><span class="literal">1</span><span class="operator">);</span><br>
- </div><span class="operator">}</span><br>
- <br>
- <span class="comment">/* Get size of the database */</span><span class="spacer"> </span><br>
- <span class="keyword">off_t</span> <span class="identifier">nf</span> <span class="operator">=</span> <span class="identifier">gd_nframes</span><span class="operator">(</span><span class="identifier">dirfile</span><span class="operator">);</span> <span class="comment">/* again off_t */</span><span class="spacer"> </span><br>
- <span class="keyword">if</span> <span class="operator">(</span><span class="identifier">gd_error</span><span class="operator">(</span><span class="identifier">dirfile</span><span class="operator">)) {</span><br><div class="indent">
- <span class="identifier">printf</span><span class="operator">(</span><span class="string">"GetData error: %s\n"</span><span class="operator">,</span> <span class="identifier">gd_error_string</span><span class="operator">(</span><span class="identifier">dirfile</span><span class="operator">,</span> <span class="identifier">error_buffer</span><span class="operator">,</span> <span class="literal">1024</span><span class="operator">));</span><br>
- <span class="identifier">exit</span><span class="operator">(</span><span class="literal">1</span><span class="operator">);</span><br>
- </div><span class="operator">}</span><br>
- <br>
- <span class="comment">/* Get samples-per-frame */</span><br>
- <span class="keyword">unsigned int</span> <span class="identifier">spf</span> <span class="operator">=</span> <span class="identifier">gd_spf</span><span class="operator">(</span><span class="identifier">dirfile</span><span class="operator">,</span> <span class="identifier">field_name</span><span class="operator">);</span><span class="spacer"> </span><br>
- <span class="keyword">if</span> <span class="operator">(</span><span class="identifier">gd_error</span><span class="operator">(</span><span class="identifier">dirfile</span><span class="operator">)) {</span><br><div class="indent">
- <span class="identifier">printf</span><span class="operator">(</span><span class="string">"GetData error: %s\n"</span><span class="operator">,</span> <span class="identifier">gd_error_string</span><span class="operator">(</span><span class="identifier">dirfile</span><span class="operator">,</span> <span class="identifier">error_buffer</span><span class="operator">,</span> <span class="literal">1024</span><span class="operator">));</span><br>
- <span class="identifier">exit</span><span class="operator">(</span><span class="literal">1</span><span class="operator">);</span><br>
- </div><span class="operator">}</span><br>
- <br>
- <span class="comment">/* Allocate a buffer */</span><br>
- <span class="keyword">double</span> <span class="operator">*</span><span class="identifier">data_buffer</span> <span class="operator">=</span> <span class="identifier">malloc</span><span class="operator">(</span><span class="keyword">sizeof</span><span class="operator">(</span><span class="keyword">double</span><span class="operator">) *</span> <span class="identifier">spf</span> <span class="operator">* (</span><span class="identifier">nf</span> <span class="operator">-</span> <span class="identifier">first_frame</span><span class="operator">));</span><br>
- <br>
- <span class="comment">/* Retrieve all but the first 1000 frames -- size_t is for counts of objects read */</span><br>
- <span class="keyword">size_t</span> <span class="identifier">n_read</span> <span class="operator">=</span> <span class="identifier">gd_getdata</span><span class="operator">(</span><span class="identifier">dirfile</span><span class="operator">,</span> <span class="identifier">field_name</span><span class="operator">,</span> <span class="identifier">first_frame</span><span class="operator">,</span> <span class="literal">0</span><span class="operator">,</span> <span class="identifier">nf</span> <span class="operator">-</span> <span class="identifier">first_frame</span><span class="operator">,</span> <span class="literal">0</span><span class="operator">,</span> <span class="literal">GD_FLOAT64</span><span class="operator">,</span> <span class="identifier">data_buffer</span><span class="operator">);</span><span class="spacer"> </span><br>
- <span class="keyword">if</span> <span class="operator">(</span><span class="identifier">gd_error</span><span class="operator">(</span><span class="identifier">dirfile</span><span class="operator">)) {</span><br><div class="indent">
- <span class="identifier">printf</span><span class="operator">(</span><span class="string">"GetData error: %s\n"</span><span class="operator">,</span> <span class="identifier">gd_error_string</span><span class="operator">(</span><span class="identifier">dirfile</span><span class="operator">,</span> <span class="identifier">error_buffer</span><span class="operator">,</span> <span class="literal">1024</span><span class="operator">));</span><br>
- <span class="identifier">exit</span><span class="operator">(</span><span class="literal">1</span><span class="operator">);</span><br>
- </div><span class="operator">}</span><br>
- <br>
- <span class="comment">/* Clean up */</span><br>
- <span class="identifier">free</span><span class="operator">(</span><span class="identifier">data_buffer</span><span class="operator">);</span><br>
- <span class="identifier">gd_close</span><span class="operator">(</span><span class="identifier">dirfile</span><span class="operator">);</span><br>
- <br>
- <span class="keyword">return</span> <span class="literal">0</span><span class="operator">;</span><br>
- </div>
- <span class="operator">}</span>
- </td>
- </tr>
- </table>
- <div class="foot"><div class="copy">© 2008, 2010 D. V. Wiebe</div>
- <div class="w3c">
- <a href="http://validator.w3.org/check?uri=referer"><img
- src="valid_html.png" alt="Valid HTML 4.01 Strict" height="21"
- width="60"></a><a href="http://jigsaw.w3.org/css-validator/check/referer"><img
- src="valid_css.png" alt="Valid CSS" height="21" width="60"></a>
- </div>
- </div>
- </div>
- </BODY>
-</HTML>
Copied: trunk/html/api.html.in (from rev 721, trunk/html/api.html)
===================================================================
--- trunk/html/api.html.in (rev 0)
+++ trunk/html/api.html.in 2012-06-29 20:53:13 UTC (rev 729)
@@ -0,0 +1,583 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+"http://www.w3.org/TR/html4/strict.dtd">
+<HTML>
+ <HEAD>
+ <meta http-equiv="Content-Type" content="text/html;charset=utf-8" >
+ <LINK REL="stylesheet" HREF="getdata.css" TYPE="text/css">
+ <TITLE>The API Transition</TITLE>
+ </HEAD>
+ <BODY>
+ <H1>The API Transition</H1>
+ <div class="topbar">
+ <a href="index.html">home</a> |
+ <a href="download.html">download</a> |
+ <a href="getdata.html">API documentation</a> |
+ <a href="dirfile.html">dirfile standards</a> |
+ <a href="http://lists.sourceforge.net/lists/listinfo/getdata-devel">mailing list</a> |
+ <a href="http://sourceforge.net/projects/getdata/">sourceforge</a>
+ </div>
+ @MENU@
+ <div class="main">
+ <h2><a name="introduction">Introduction</a></h2>
+ <p>Users of GetData before the release of version 0.3 (August 2008) will
+ notice a fairly substantial change in the API starting with version 0.3.0
+ as compared with older version. Older versions of this library (hereafter
+ referred to as the "legacy API") suffered from thread safety issues, and
+ lacked LFS (large file) support. A new API has been created to address
+ these issues.
+ <p>The legacy API has been re-implemented in the library and programs that
+ used it should still work without modification after linking to the latest
+ version of GetData, with these two small provisos explained further the
+ <a href="#comparison">comparison</a> section below:
+ <ul>
+ <li>Internal library data can no-longer be obtained by calling
+ <span class="syntax">GetFormat</span>.
+ <li>Error codes have changed.
+ </ul>
+ Furthermore, much of the new functionality introduced from version 0.3.0
+ onwards is not available in the legacy API.
+ <h2><a name="newapi">The New API</a></h2>
+ <p>The new API separates the opening of a Dirfile from reading or writing
+ to it. Where in the old API one would use:
+ <div class="syntax">
+ <span class="keyword">int</span> <span class="identifier">n_read</span>
+ <span class="operator">=</span> <span
+ class="identifier">GetData</span><span class="operator">(</span><span
+ class="string">"dirfile"</span><span class="operator">,</span> <span
+ class="string">"field"</span><span class="operator">,</span> <span
+ class="literal">1</span><span class="operator">,</span> <span
+ class="literal">0</span><span class="operator">,</span> <span
+ class="literal">1</span><span class="operator">,</span> <span
+ class="literal">0</span><span class="operator">,</span> <span
+ class="character">'S'</span><span class="operator">,</span> <span
+ class="identifier">data</span><span class="operator">,</span> <span
+ class="operator">&</span><span
+ class="identifier">error_code</span><span class="operator">);</span>
+ </div>
+ the corresponding new API would have:
+ <div class="syntax"><span class="keyword">DIRFILE</span> <span
+ class="operator">*</span><span class="identifier">D</span> <span
+ class="operator">=</span> <span
+ class="identifier">gd_open</span><span
+ class="operator">(</span><span class="string">"dirfile"</span><span
+ class="operator">,</span> <span class="literal">GD_RDONLY</span><span
+ class="operator">);</span><br><span class="keyword">size_t</span>
+ <span class="identifier">n_read</span> <span class="operator">=</span>
+ <span class="identifier">gd_getdata</span><span
+ class="operator">(</span><span class="identifier">D</span><span
+ class="operator">,</span> <span class="string">"field"</span><span
+ class="operator">,</span> <span class="literal">1</span><span
+ class="operator">,</span> <span class="literal">0</span><span
+ class="operator">,</span> <span class="literal">1</span><span
+ class="operator">,</span> <span class="literal">0</span><span
+ class="operator">,</span> <span class="literal">GD_INT32</span><span
+ class="operator">,</span> <span class="identifier">data</span><span
+ class="operator">);</span>
+ </div>
+ Here, <span class="syntax identifier">D</span> is a pointer to a DIRFILE
+ object. This object is modelled after the FILE object of the C Library's
+ stdio interface.
+ <p>The new API is fully documented in the included man pages and in the
+ <a href="getdata.html">Using GetData</a> document. A translation example
+ from the legacy API to the new API is present as <a href="#example">at
+ the end of this document</a>.
+
+ <h2><a name="dirfile">The DIRFILE Object</a></h2>
+ <p>In the legacy API, dirfiles were referred to by their path name. In
+ the new API, after the dirfile has been opened, it is referenced instead
+ by passing a pointer to a DIRFILE object. Further, where the legacy API
+ was passed an integer pointer to store the error code, this is now stored
+ in the DIRFILE object itself and may be accessed at any time by calling
+ <a href="getdata.html#gd_error"><span
+ class="syntax">gd_error()</span></a> As a side-effect of this change,
+ the error value itself, and the descriptive error string which can be
+ generated by the library, is now local to a particular instance of a
+ particular dirfile, rather than being global across the library.
+ <p>Once a DIRFILE object has been created by a call to <span
+ class="syntax identifier">gd_open</span>, all subsequent operations
+ on the dirfile operate on this object. Once the program is finished with
+ the dirfile, the object can be destroyed, and all open file handles
+ closed, with the call:
+ <div class="syntax"><span class="identifier">gd_close</span><span
+ class="operator">(</span><span class="identifier">D</span><span
+ class="operator">);</span></div>
+ <h2><a name="datatypes">Data Types</a></h2>
+ <p>Partially in order to fully support large files (>2 GB) as
+ defined by the LFS, a consistent data type structure is used in the new
+ API:
+ <ul>
+ <li>database offsets and database sizes are of type <span
+ class="syntax keyword">off_t</span>
+ <li>object sizes and counts of items read are of type <span
+ class="syntax keyword">size_t</span>
+ <li>samples-per-frame are of type <span class="syntax
+ keyword">gd_spf_t</span>, an unsigned 16-bit integer type
+ <li>data type specifiers (formerly of type <span
+ class="syntax keyword">char</span>) are now of type <span
+ class="syntax keyword">gd_typ...
[truncated message content] |
|
From: <ket...@us...> - 2012-06-29 00:29:53
|
Revision: 728
http://getdata.svn.sourceforge.net/getdata/?rev=728&view=rev
Author: ketiltrout
Date: 2012-06-29 00:29:46 +0000 (Fri, 29 Jun 2012)
Log Message:
-----------
Merge GD_E_BAD_VERSION into GD_E_ARGUMENT. Doc updates.
Modified Paths:
--------------
trunk/getdata/ChangeLog
trunk/getdata/NEWS
trunk/getdata/bindings/cxx/test/big_test.cpp
trunk/getdata/bindings/f77/test/big_test.f
trunk/getdata/bindings/f77/test/big_test95.f90
trunk/getdata/bindings/idl/test/big_test.pro
trunk/getdata/bindings/make_parameters.c
trunk/getdata/bindings/perl/test/big_test.t
trunk/getdata/bindings/python/pygetdata.c
trunk/getdata/bindings/python/test/big_test.py
trunk/getdata/doc/README.cxx
trunk/getdata/doc/README.f77
trunk/getdata/doc/README.idl
trunk/getdata/man/Makefile.am
trunk/getdata/man/gd_dirfile_standards.3
trunk/getdata/man/gd_entry_list.3
trunk/getdata/man/gd_nentries.3
trunk/getdata/src/errors.c
trunk/getdata/src/flush.c
trunk/getdata/src/getdata.h.in
trunk/getdata/src/internal.h
trunk/getdata/src/legacy.c
Added Paths:
-----------
trunk/getdata/man/gd_strtok.3
Modified: trunk/getdata/ChangeLog
===================================================================
--- trunk/getdata/ChangeLog 2012-06-28 00:25:11 UTC (rev 727)
+++ trunk/getdata/ChangeLog 2012-06-29 00:29:46 UTC (rev 728)
@@ -1,3 +1,7 @@
+2012-06-29 D. V. Wiebe <ge...@ke...> svn:728
+ * src/getdata.h.in src/internal.h src/errors.c: Merge GD_E_BAD_VERSION into
+ GD_E_ARGUMENT.
+
2012-06-28 D. V. Wiebe <ge...@ke...> svn:725,726
* util/checkdirfile.c: Find and report dangling aliases.
Modified: trunk/getdata/NEWS
===================================================================
--- trunk/getdata/NEWS 2012-06-28 00:25:11 UTC (rev 727)
+++ trunk/getdata/NEWS 2012-06-29 00:29:46 UTC (rev 728)
@@ -227,13 +227,14 @@
* A prefix to the automatic error messages printed by GetData when using the
GD_VERBOSE flag may be specified with gd_verbose_prefix().
- * When requesting the exclusive creation of a new dirfile with (O_CREAT |
- O_EXCL) GetData will now return the new error GD_E_EXISTS if the dirfile
+ * When requesting the exclusive creation of a new dirfile with (GD_CREAT |
+ GD_EXCL) GetData will now return the new error GD_E_EXISTS if the dirfile
already exists. Previously it would return GD_E_CREAT in this situation.
- * The error codes GD_E_BAD_ENDIANNESS and GD_E_BAD_PROTECTION have been
- combined into a more generic error code: GD_E_ARGUMENT. The old symbols are
- retained for backwards compatibility.
+ * The error codes GD_E_BAD_ENDIANNESS, GD_E_BAD_PROTECTION, and
+ GD_E_BAD_VERSION have been combined into a more generic error code:
+ GD_E_ARGUMENT. The old symbols are retained for backwards compatibility but
+ have been marked deprecated.
* C89 API: Passing NULL to gd_alter_crecip() for cdividend is now treated as
if it were passed zero (ie. it indicates no change for cdividend).
Modified: trunk/getdata/bindings/cxx/test/big_test.cpp
===================================================================
--- trunk/getdata/bindings/cxx/test/big_test.cpp 2012-06-28 00:25:11 UTC (rev 727)
+++ trunk/getdata/bindings/cxx/test/big_test.cpp 2012-06-29 00:29:46 UTC (rev 728)
@@ -1265,7 +1265,7 @@
CHECK_OK2(157,1);
CHECK_INT(157,n,9);
d->Standards(0);
- CHECK_ERROR2(157,2,GD_E_BAD_VERSION);
+ CHECK_ERROR2(157,2,GD_E_ARGUMENT);
// 158 gd_get_carray
n = d->GetCarray("carray", Float64, p);
Modified: trunk/getdata/bindings/f77/test/big_test.f
===================================================================
--- trunk/getdata/bindings/f77/test/big_test.f 2012-06-28 00:25:11 UTC (rev 727)
+++ trunk/getdata/bindings/f77/test/big_test.f 2012-06-29 00:29:46 UTC (rev 728)
@@ -1608,7 +1608,7 @@
n = 0
CALL GDSTDV(n, d)
- CALL CHKER2(ne, 157, 2, d, GD_EVR)
+ CALL CHKER2(ne, 157, 2, d, GD_EAR)
C 158: GDGTCA check
CALL GDGTCA(d, 'carray', 6, GD_F64, p)
Modified: trunk/getdata/bindings/f77/test/big_test95.f90
===================================================================
--- trunk/getdata/bindings/f77/test/big_test95.f90 2012-06-28 00:25:11 UTC (rev 727)
+++ trunk/getdata/bindings/f77/test/big_test95.f90 2012-06-29 00:29:46 UTC (rev 728)
@@ -1751,7 +1751,7 @@
call check_int(ne, 157, n, 9)
n = fgd_dirfile_standards(d, 0)
- call check_err2(ne, 157, 2, d, GD_E_BAD_VERSION)
+ call check_err2(ne, 157, 2, d, GD_E_ARGUMENT)
! 158: gd_get_carray_slice (INT8)
call fgd_get_carray_i1(d, "carray", 0, 0, ci1)
Modified: trunk/getdata/bindings/idl/test/big_test.pro
===================================================================
--- trunk/getdata/bindings/idl/test/big_test.pro 2012-06-28 00:25:11 UTC (rev 727)
+++ trunk/getdata/bindings/idl/test/big_test.pro 2012-06-29 00:29:46 UTC (rev 728)
@@ -1026,7 +1026,7 @@
nume += check_ok2(157, 1, d)
nume += check_simple(157, n, 9)
n = gd_dirfile_standards(d, 0)
-nume += check_error2(157, 2, d, !GD.E_BAD_VERSION)
+nume += check_error2(157, 2, d, !GD.E_ARGUMENT)
; 158: gd_get_carray
n = gd_get_carray(d, "carray", type=!GD.FLOAT32)
Modified: trunk/getdata/bindings/make_parameters.c
===================================================================
--- trunk/getdata/bindings/make_parameters.c 2012-06-28 00:25:11 UTC (rev 727)
+++ trunk/getdata/bindings/make_parameters.c 2012-06-29 00:29:46 UTC (rev 728)
@@ -89,7 +89,6 @@
CONSTANT(E_UNCLEAN_DB, "GD_UCL", 0),
CONSTANT(E_DOMAIN, "GD_EDO", 0),
CONSTANT(E_BAD_REPR, "GD_ERP", 0),
- CONSTANT(E_BAD_VERSION, "GD_EVR", 0),
CONSTANT(E_FLUSH, "GD_EFL", 0),
CONSTANT(E_BOUNDS, "GD_EBO", 0),
CONSTANT(E_LINE_TOO_LONG, "GD_ETL", 0),
@@ -97,6 +96,7 @@
CONSTANT(E_OPEN_INCLUDE, "GD_EOI", 0), /* deprecated */
CONSTANT(E_BAD_ENDIANNESS, "GD_EEN", 0), /* deprecated */
CONSTANT(E_BAD_PROTECTION, "GD_EBP", 0), /* deprecated */
+ CONSTANT(E_BAD_VERSION, "GD_EVR", 0), /* deprecated */
CONSTANT(RDONLY, "GD_RO", 1),
CONSTANT(RDWR, "GD_RW", 1),
Modified: trunk/getdata/bindings/perl/test/big_test.t
===================================================================
--- trunk/getdata/bindings/perl/test/big_test.t 2012-06-28 00:25:11 UTC (rev 727)
+++ trunk/getdata/bindings/perl/test/big_test.t 2012-06-29 00:29:46 UTC (rev 728)
@@ -1328,7 +1328,7 @@
CheckNum2(157, 2, $s, $GetData::DIRFILE_STANDARDS_VERSION);
$s = $_->dirfile_standards(0);
-CheckError2(157, 3, $GetData::E_BAD_VERSION);
+CheckError2(157, 3, $GetData::E_ARGUMENT);
CheckNum2(157, 4, $s, undef);
# 158: get_carray
Modified: trunk/getdata/bindings/python/pygetdata.c
===================================================================
--- trunk/getdata/bindings/python/pygetdata.c 2012-06-28 00:25:11 UTC (rev 727)
+++ trunk/getdata/bindings/python/pygetdata.c 2012-06-29 00:29:46 UTC (rev 728)
@@ -49,13 +49,13 @@
"BadReference",
"Protected",
"Deletion",
- "BadArgument",
+ "Argument",
"Callback",
"Exists",
"UncleanDatabase",
"Domain",
"BadRepr",
- "BadVersion",
+ NULL,
"Flush",
"Bounds",
"LineTooLong"
Modified: trunk/getdata/bindings/python/test/big_test.py
===================================================================
--- trunk/getdata/bindings/python/test/big_test.py 2012-06-28 00:25:11 UTC (rev 727)
+++ trunk/getdata/bindings/python/test/big_test.py 2012-06-29 00:29:46 UTC (rev 728)
@@ -1325,7 +1325,7 @@
try:
d.standards = 0
except:
- CheckException2(157,2,pygetdata.BadVersionError)
+ CheckException2(157,2,pygetdata.ArgumentError)
# 158: gd_get_carray
try:
Modified: trunk/getdata/doc/README.cxx
===================================================================
--- trunk/getdata/doc/README.cxx 2012-06-28 00:25:11 UTC (rev 727)
+++ trunk/getdata/doc/README.cxx 2012-06-29 00:29:46 UTC (rev 728)
@@ -218,8 +218,8 @@
* const void *Dirfile::Constants(GetData::DataType type = Float64)
* int Dirfile::Delete(const char *field_code, int flags = 0)
* int Dirfile::DeleteAlias(const char* field_code, int flags = 0)
-* const char **Dirfile::EntryList(const char *parent = NULL,
- unsigned int type = 0, unsigned int flags = 0)
+* const char **Dirfile::EntryList(const char *parent = NULL, int type = 0,
+ unsigned int flags = 0)
* const char **Dirfile::FieldList()
* const char **Dirfile::FieldListByType(GetData::EntryType type)
* unsigned long Dirfile::Flags(unsigned long set = 0, unsigned long reset = 0)
@@ -256,8 +256,8 @@
* const char **Dirfile::MVectorList(const char *parent)
* int Dirfile::NAliases(const char* field_code)
* DataType Dirfile::NativeType(const char *field_code)
-* unsigned int Dirfile::NEntries(const char *parent = NULL,
- unsigned int type = 0, unsigned int flags = 0)
+* unsigned int Dirfile::NEntries(const char *parent = NULL, int type = 0,
+ unsigned int flags = 0)
* unsigned int Dirfile::NFields()
* unsigned int Dirfile::NFieldsByType(GetData::EntryType type)
* off_t Dirfile::NFrames()
Modified: trunk/getdata/doc/README.f77
===================================================================
--- trunk/getdata/doc/README.f77 2012-06-28 00:25:11 UTC (rev 727)
+++ trunk/getdata/doc/README.f77 2012-06-29 00:29:46 UTC (rev 728)
@@ -1998,7 +1998,7 @@
GD_ETL GD_E_LINE_TOO_LONG
GD_ETR GD_E_TRUNC
GD_EUE GD_E_UNKNOWN_ENCODING
- GD_EVR GD_E_BAD_VERSION
+ GD_EVR GD_E_BAD_VERSION Deprecated; kept as an alias for GD_EAR.
GD_UCL GD_E_UNCLEAN_DB
GD_UNS GD_E_UNSUPPORTED
Modified: trunk/getdata/doc/README.idl
===================================================================
--- trunk/getdata/doc/README.idl 2012-06-28 00:25:11 UTC (rev 727)
+++ trunk/getdata/doc/README.idl 2012-06-29 00:29:46 UTC (rev 728)
@@ -591,16 +591,17 @@
This function returns a GD_ENTRY structure containing the field metadata for
the field specified by 'field_code'. See gd_entry(3).
-FUNCTION GD_ENTRY_LIST(dirfile_unit, /HIDDEN, /NOALIAS, PARENT=parent, /SCALARS,
- TYPE=type, /VECTORS)
+FUNCTION GD_ENTRY_LIST(dirfile_unit, /ALIASES, /HIDDEN, /NOALIAS, PARENT=parent,
+ /SCALARS, TYPE=type, /VECTORS)
This function returns a list of entry names defined by the dirfile. If PARENT
is given, a list of metafields for the given parent will be returned otherwise
top-level fields are considered. If TYPE is given, which should be one of the
!GD.*_ENTRY constants, only fields of the given type will be returned. If
- /SCALARS or /VECTORS is specified, the TYPE parameter is ignored if it is also
- given. The list returned includes aliases, unless /NOALIAS is specified, but
- not hidden fields, unless /HIDDEN is specified. See gd_entry_list(3).
+ /ALIASES, /SCALARS or /VECTORS is specified, the TYPE parameter is ignored if
+ it is also given. The list returned includes aliases, unless /NOALIAS is
+ specified, but not hidden fields, unless /HIDDEN is specified. See
+ gd_entry_list(3).
FUNCTION GD_ENTRY_TYPE(dirfile_unit, field_code)
@@ -783,19 +784,18 @@
The return value will be one of the data type constants: !GD.UINT8, !GD.INT8,
&c. See gd_native_type(3).
-FUNCTION GD_NENTRIES(dirfile_unit, /HIDDEN, /NOALIAS, PARENT=parent, /SCALARS,
- TYPE=type, /VECTORS)
+FUNCTION GD_NENTRIES(dirfile_unit, /ALIAS, /HIDDEN, /NOALIAS, PARENT=parent,
+ /SCALARS, TYPE=type, /VECTORS)
This function returns the number of entries in the dirfile satisfying the
given criteria. If PARENT is given, the number of metafields for the given
parent will be returned otherwise top-level fields are considered. If TYPE is
given, which should be one of the !GD.*_ENTRY constants, only fields of the
- given type will be counted. If /SCALARS or /VECTORS is specified, the TYPE
- parameter is ignored if it is also given. The number returned includes
- aliases, unless /NOALIAS is specified, but not hidden fields, unless /HIDDEN
- is specified. See gd_nentries(3).
+ given type will be counted. If /ALIASES, /SCALARS or /VECTORS is specified,
+ the TYPE parameter is ignored if it is also given. The number returned
+ includes aliases, unless /NOALIAS is specified, but not hidden fields, unless
+ /HIDDEN is specified. See gd_nentries(3).
-
FUNCTION GD_NFIELDS(dirfile_unit, /HIDDEN, /NOALIAS, PARENT=parent, /SCALARS,
TYPE=type, /VECTORS)
Modified: trunk/getdata/man/Makefile.am
===================================================================
--- trunk/getdata/man/Makefile.am 2012-06-28 00:25:11 UTC (rev 727)
+++ trunk/getdata/man/Makefile.am 2012-06-29 00:29:46 UTC (rev 728)
@@ -44,9 +44,9 @@
gd_protection.3 gd_put_carray_slice.3 gd_put_constant.3 \
gd_put_string.3 gd_putdata.3 gd_putdata64.3 gd_raw_filename.3 \
gd_reference.3 gd_rename.3 gd_rewrite_fragment.3 gd_seek.3 \
- gd_seek64.3 gd_spf.3 gd_strings.3 gd_tell.3 gd_tell64.3 \
- gd_uninclude.3 gd_validate.3 gd_verbose_prefix.3 dirfile.5 \
- dirfile-encoding.5 dirfile-format.5
+ gd_seek64.3 gd_spf.3 gd_strings.3 gd_strtok.3 gd_tell.3 \
+ gd_tell64.3 gd_uninclude.3 gd_validate.3 gd_verbose_prefix.3 \
+ dirfile.5 dirfile-encoding.5 dirfile-format.5
# these are real_file:alias
MAN3ALIASES=gd_add_bit.3:gd_add_carray.3 gd_add_bit.3:gd_add_clincom.3 \
Modified: trunk/getdata/man/gd_dirfile_standards.3
===================================================================
--- trunk/getdata/man/gd_dirfile_standards.3 2012-06-28 00:25:11 UTC (rev 727)
+++ trunk/getdata/man/gd_dirfile_standards.3 2012-06-29 00:29:46 UTC (rev 728)
@@ -1,6 +1,6 @@
.\" gd_dirfile_standards.3. The gd_dirfile_standards man page.
.\"
-.\" Copyright (C) 2010 D. V. Wiebe
+.\" Copyright (C) 2010, 2012 D. V. Wiebe
.\"
.\""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
.\"
@@ -13,7 +13,7 @@
.\" Texts. A copy of the license is included in the `COPYING.DOC' file
.\" as part of this distribution.
.\"
-.TH gd_dirfile_standards 3 "15 October 2010" "Version 0.7.0" "GETDATA"
+.TH gd_dirfile_standards 3 "29 June 2012" "Version 0.8.0" "GETDATA"
.SH NAME
gd_dirfile_standards \(em change or report the current Dirfile Standards Version
for a DirFile
@@ -93,12 +93,12 @@
error value, and the current Standards Version is not changed. Possible error
values are:
.TP 8
+.B GD_E_ARGUMENT
+The loaded dirfile did not conform to the specified version. Or the dirfile
+conforms to no known Standards Version.
+.TP
.B GD_E_BAD_DIRFILE
The supplied dirfile was invalid.
-.TP
-.B GD_E_BAD_VERSION
-The loaded dirfile did not conform to the specified version. Or the dirfile
-conforms to no known Standards Version.
.PP
The dirfile error may be retrieved by calling
.BR gd_error (3).
Modified: trunk/getdata/man/gd_entry_list.3
===================================================================
--- trunk/getdata/man/gd_entry_list.3 2012-06-28 00:25:11 UTC (rev 727)
+++ trunk/getdata/man/gd_entry_list.3 2012-06-29 00:29:46 UTC (rev 728)
@@ -13,7 +13,7 @@
.\" Texts. A copy of the license is included in the `COPYING.DOC' file
.\" as part of this distribution.
.\"
-.TH gd_entry_list 3 "1 April 2012" "Version 0.8.0" "GETDATA"
+.TH gd_entry_list 3 "28 June 2012" "Version 0.8.0" "GETDATA"
.SH NAME
gd_entry_list, gd_field_list, gd_field_list_by_type gd_mfield_list, gd_mfield_list_by_type,
gd_mvector_list, gd_vector_list \(em list field entries in a dirfile
@@ -73,14 +73,18 @@
field) or else one of the following special symbols:
.TP
.B GD_ALL_ENTRIES \fR(= 0)
-Count entries of all types.
+List entries of all types.
.TP
+.B GD_ALIAS_ENTRIES
+List only aliases. This is the only way to get a list including aliases which
+do not point to valid field codes.
+.TP
.B GD_SCALAR_ENTRIES
-Count only scalar field types
+List only scalar field types
.RB ( CONST ", " CARRAY ", " STRING ).
.TP
.B GD_VECTOR_ENTRIES
-Count only vector field types (all field types except the scalar field types
+List only vector field types (all field types except the scalar field types
listed above).
.PP
The
Modified: trunk/getdata/man/gd_nentries.3
===================================================================
--- trunk/getdata/man/gd_nentries.3 2012-06-28 00:25:11 UTC (rev 727)
+++ trunk/getdata/man/gd_nentries.3 2012-06-29 00:29:46 UTC (rev 728)
@@ -13,7 +13,7 @@
.\" Texts. A copy of the license is included in the `COPYING.DOC' file
.\" as part of this distribution.
.\"
-.TH gd_nentries 3 "1 April 2012" "Version 0.8.0" "GETDATA"
+.TH gd_nentries 3 "28 June 2012" "Version 0.8.0" "GETDATA"
.SH NAME
gd_nentries, gd_nfields, gd_nfields_by_type gd_nmfields, gd_nmfields_by_type,
gd_nmvectors, gd_nvectors \(em count field entries in a dirfile
@@ -75,6 +75,10 @@
.B GD_ALL_ENTRIES \fR(= 0)
Count entries of all types.
.TP
+.B GD_ALIAS_ENTRIES
+Count only aliases. This is the only way to get a count including aliases which
+do not point to valid field codes.
+.TP
.B GD_SCALAR_ENTRIES
Count only scalar field types
.RB ( CONST ", " CARRAY ", " STRING ).
Added: trunk/getdata/man/gd_strtok.3
===================================================================
--- trunk/getdata/man/gd_strtok.3 (rev 0)
+++ trunk/getdata/man/gd_strtok.3 2012-06-29 00:29:46 UTC (rev 728)
@@ -0,0 +1,97 @@
+.\" gd_strtok.3. The gd_strtok man page.
+.\"
+.\" Copyright (C) 2012 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_strtok 3 "28 June 2012" "Version 0.8.0" "GETDATA"
+.SH NAME
+gd_strtok \(em tokenise a string using the GetData parser
+.SH SYNOPSIS
+.B #include <getdata.h>
+.HP
+.nh
+.ad l
+.BI "char *gd_strtok(DIRFILE *" dirfile ", const char *" string );
+.hy
+.ad n
+.SH DESCRIPTION
+The
+.BR gd_strtok ()
+function parses a string into a series of tokens according to the rules of the
+Dirfile metadata syntax (see dirfile-format(5)). The first time
+.BR gd_strtok ()
+is called, the string to be parsed should be passed in
+.IR string .
+The first token will be returned. In subsequent calls to parse the same string,
+.I string
+should be NULL (as with
+.BR strtok (3)).
+Each time
+.BR gd_strtok ()
+is called like this, the next token is returned.
+
+Operation of the Dirfile tokeniser varies between Dirfile Standards Versions.
+The Standards Version used is the current Version of the loaded DIRFILE
+.IR dirfile .
+Use
+.BR gd_dirfile_standards (3)
+to retrieve or change this value. Changing the Standards Version of
+.I dirfile
+while parsing a string will affect the parsing of subsequent tokens, but does
+not affect tokens already returned. A copy of the string is cached in the
+.I dirfile
+object. Calling
+.BR gd_strtok ()
+with different
+.IR dirfile s
+will parse different strings.
+
+.SH RETURN VALUE
+Upon successful completion,
+.BR gd_strtok ()
+returns a copy of the first token (if
+.I string
+is non-NULL), or the subsequent token. The token strings returned are each
+allocated with
+.BR malloc (3)
+and should be deallocated by the caller when no longer needed using
+.BR free (3).
+.PP
+If no more tokens are available, or if an error occurred, NULL is returned.
+If an error has occurred, it will also set the dirfile error a non-zero error
+value. Possible error values are:
+.TP 8
+.B GD_E_ALLOC
+A memory allocation error occurred.
+.TP
+.B GD_E_ARGUMENT
+There was no string to parse (i.e.
+.I string
+was NULL, but no previous call specified a string to parse).
+.TP
+.B GD_E_BAD_DIRFILE
+The supplied dirfile was invalid.
+.TP
+.B GD_E_FORMAT
+A syntax error was found in the string.
+.PP
+The dirfile error may be retrieved by calling
+.BR gd_error (3).
+A descriptive error string for the last error encountered can be obtained from
+a call to
+.BR gd_error_string (3).
+
+.SH SEE ALSO
+.BR gd_dirfile_standards (3),
+.BR gd_open (3),
+.BR dirfile-format (5)
Modified: trunk/getdata/src/errors.c
===================================================================
--- trunk/getdata/src/errors.c 2012-06-28 00:25:11 UTC (rev 727)
+++ trunk/getdata/src/errors.c 2012-06-29 00:29:46 UTC (rev 728)
@@ -176,6 +176,10 @@
{ GD_E_ARGUMENT, GD_E_ARG_PROTECTION, "Invalid protection level specified",
0 },
{ GD_E_ARGUMENT, GD_E_ARG_NODATA, "No data", 0 },
+ { GD_E_ARGUMENT, GD_E_ARG_NO_VERS, "Dirfile conforms to no Standards Version",
+ 0 },
+ { GD_E_ARGUMENT, GD_E_ARG_BAD_VERS,
+ "Dirfile does not conform to specified Standards Version", 0 },
{ GD_E_ARGUMENT, 0, "Bad argument", 0 },
/* GD_E_CALLBACK: 3 = response */
{ GD_E_CALLBACK, 0, "Unrecognised response from callback function: {3}", 0 },
@@ -193,11 +197,6 @@
{ GD_E_BAD_REPR, GD_E_REPR_UNKNOWN, "Unknown field representation: .{4}", 0 },
{ GD_E_BAD_REPR, GD_E_REPR_PUT, "Unable to write to field reprentation: .{4}",
0 },
- /* GD_E_BAD_VERSION 3 = version */
- { GD_E_BAD_VERSION, GD_E_VERS_NONE,
- "Dirfile conforms to no Standards Version", 0 },
- { GD_E_BAD_VERSION, GD_E_VERS_MISSING,
- "Dirfile does not conform to Standards Version {3}", 0 },
/* GD_E_FLUSH: 3 = suberror, 4 = filename */
{ GD_E_FLUSH, GD_E_FLUSH_MKTMP, "I/O error creating temporary file: ", 1 },
{ GD_E_FLUSH, GD_E_FLUSH_OPEN, "I/O error opening temporary file: ", 1 },
Modified: trunk/getdata/src/flush.c
===================================================================
--- trunk/getdata/src/flush.c 2012-06-28 00:25:11 UTC (rev 727)
+++ trunk/getdata/src/flush.c 2012-06-29 00:29:46 UTC (rev 728)
@@ -1167,8 +1167,8 @@
if (vers < 0 || vers > GD_DIRFILE_STANDARDS_VERSION ||
~D->av & (1ULL << vers))
{
- _GD_SetError(D, GD_E_BAD_VERSION, (D->av == 0) ? GD_E_VERS_NONE :
- GD_E_VERS_MISSING, NULL, vers, NULL);
+ _GD_SetError(D, GD_E_ARGUMENT, (D->av == 0) ? GD_E_ARG_NO_VERS :
+ GD_E_ARG_BAD_VERS, NULL, vers, NULL);
dreturn("%i", -1);
return -1;
}
Modified: trunk/getdata/src/getdata.h.in
===================================================================
--- trunk/getdata/src/getdata.h.in 2012-06-28 00:25:11 UTC (rev 727)
+++ trunk/getdata/src/getdata.h.in 2012-06-29 00:29:46 UTC (rev 728)
@@ -157,7 +157,7 @@
#define GD_E_UNCLEAN_DB 30
#define GD_E_DOMAIN 31
#define GD_E_BAD_REPR 32
-#define GD_E_BAD_VERSION 33
+/* unused 33 */
#define GD_E_FLUSH 34
#define GD_E_BOUNDS 35
#define GD_E_LINE_TOO_LONG 36
@@ -168,6 +168,7 @@
#define GD_E_OPEN_INCLUDE GD_E_OPEN_FRAGMENT
#define GD_E_BAD_ENDIANNESS GD_E_ARGUMENT
#define GD_E_BAD_PROTECTION GD_E_ARGUMENT
+#define GD_E_BAD_VERSION GD_E_ARGUMENT
#define GD_MAX_LINCOM 3
Modified: trunk/getdata/src/internal.h
===================================================================
--- trunk/getdata/src/internal.h 2012-06-28 00:25:11 UTC (rev 727)
+++ trunk/getdata/src/internal.h 2012-06-29 00:29:46 UTC (rev 728)
@@ -728,14 +728,14 @@
#define GD_E_UNENC_UNDET 1
#define GD_E_UNENC_TARGET 2
-#define GD_E_VERS_NONE 1
-#define GD_E_VERS_MISSING 2
-
#define GD_E_ARG_WHENCE 1
#define GD_E_ARG_ENDIANNESS 2
#define GD_E_ARG_PROTECTION 3
#define GD_E_ARG_NODATA 4
+#define GD_E_ARG_NO_VERS 5
+#define GD_E_ARG_BAD_VERS 6
+
/* I/O flags */
#define GD_FILE_READ 0x1
#define GD_FILE_WRITE 0x2
Modified: trunk/getdata/src/legacy.c
===================================================================
--- trunk/getdata/src/legacy.c 2012-06-28 00:25:11 UTC (rev 727)
+++ trunk/getdata/src/legacy.c 2012-06-29 00:29:46 UTC (rev 728)
@@ -76,7 +76,7 @@
NULL, /* GD_E_UNCLEAN_DB */
"Improper domain", /* GD_E_DOMAIN */
"Bad representation", /* GD_E_BAD_REPR */
- NULL, /* GD_E_BAD_VERSION */
+ NULL, /* unused */
NULL, /* GD_E_FLUSH */
NULL, /* GD_E_BOUNDS */
"Line too long", /* GD_E_LINE_TOO_LONG */
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ket...@us...> - 2012-06-28 00:25:17
|
Revision: 727
http://getdata.svn.sourceforge.net/getdata/?rev=727&view=rev
Author: ketiltrout
Date: 2012-06-28 00:25:11 +0000 (Thu, 28 Jun 2012)
Log Message:
-----------
svn:ignore.
Property Changed:
----------------
trunk/getdata/doc/
Property changes on: trunk/getdata/doc
___________________________________________________________________
Modified: svn:ignore
- Makefile.in
Makefile
+ Makefile.in
Makefile
README.perl
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ket...@us...> - 2012-06-28 00:24:16
|
Revision: 726
http://getdata.svn.sourceforge.net/getdata/?rev=726&view=rev
Author: ketiltrout
Date: 2012-06-28 00:24:07 +0000 (Thu, 28 Jun 2012)
Log Message:
-----------
Allow retrieval of aliases via gd_entry_list using GD_ALIAS_ENTRIES. This is
the only way to discover dangling aliases.
Modified Paths:
--------------
trunk/getdata/ChangeLog
trunk/getdata/bindings/cxx/dirfile.cpp
trunk/getdata/bindings/cxx/entry.cpp
trunk/getdata/bindings/cxx/getdata/dirfile.h
trunk/getdata/bindings/f77/fgetdata.c
trunk/getdata/bindings/idl/getdata.c
trunk/getdata/bindings/make_parameters.c
trunk/getdata/bindings/perl/GetData.xs
trunk/getdata/bindings/perl/typemap
trunk/getdata/bindings/python/pydirfile.c
trunk/getdata/bindings/python/pyentry.c
trunk/getdata/src/add.c
trunk/getdata/src/common.c
trunk/getdata/src/del.c
trunk/getdata/src/entry.c
trunk/getdata/src/field_list.c
trunk/getdata/src/flimits.c
trunk/getdata/src/flush.c
trunk/getdata/src/fpos.c
trunk/getdata/src/getdata.c
trunk/getdata/src/getdata.h.in
trunk/getdata/src/internal.h
trunk/getdata/src/legacy.c
trunk/getdata/src/mod.c
trunk/getdata/src/native.c
trunk/getdata/src/nfields.c
trunk/getdata/src/putdata.c
trunk/getdata/src/spf.c
trunk/getdata/test/Makefile.am
trunk/getdata/util/checkdirfile.c
Added Paths:
-----------
trunk/getdata/test/elist_alias.c
trunk/getdata/test/nentries_alias.c
Property Changed:
----------------
trunk/getdata/test/
Modified: trunk/getdata/ChangeLog
===================================================================
--- trunk/getdata/ChangeLog 2012-06-27 23:16:46 UTC (rev 725)
+++ trunk/getdata/ChangeLog 2012-06-28 00:24:07 UTC (rev 726)
@@ -1,3 +1,23 @@
+2012-06-28 D. V. Wiebe <ge...@ke...> svn:725,726
+ * util/checkdirfile.c: Find and report dangling aliases.
+
+ * bindings/python/pydirfile.c (gdpy_dirfile_nentries gdpy_dirfile_entrylist)
+ bindings/cxx/dirfile.cpp (Dirfile::NEntries Dirfile::EntryList)
+ bindings/perl/GetData.xs (entry_list) : Fix signedness of "type".
+ * bindings/idl/getdata.c (gdidl_get_field_list gdidl_get_nfields): Deal with
+ /ALIASES.
+ * bindings/make_parameters.c: Add GD_ALIAS_ENTRIES.
+
+ * test/nentries_noalias.c test/elist_noalias.c: Renamed from ..._alias.c.
+ * test/nentries_alias.c test/elist_alias.c: Added.
+
+ * src/internal.h getdata.h.in: Move GD_ALIAS_ENTRY to public header.
+ * src/getdata.h.in: Define GD_ALIAS_ENTRIES.
+ * src/field_list.c (_GD_EntryIndex _GD_ListEntry) src/nfields.c
+ (_GD_NEntries): Handle GD_ALIAS_ENTRIES.
+
+ * src/common.c (_GD_CanonicalPath): Sidestep GCC warning.
+
2012-06-27 D. V. Wiebe <ge...@ke...> svn:724
* src/name.c (_GD_UpdateScalar _GD_InvalidateConst _GD_UpdateInField
_GD_InvalidateVect): Handle aliases.
Modified: trunk/getdata/bindings/cxx/dirfile.cpp
===================================================================
--- trunk/getdata/bindings/cxx/dirfile.cpp 2012-06-27 23:16:46 UTC (rev 725)
+++ trunk/getdata/bindings/cxx/dirfile.cpp 2012-06-28 00:24:07 UTC (rev 726)
@@ -555,14 +555,14 @@
gd_mplex_lookback(D, lookback);
}
-unsigned int Dirfile::NEntries(const char *parent, unsigned int type,
- unsigned int flags) const
+unsigned int Dirfile::NEntries(const char *parent, int type, unsigned int flags)
+ const
{
return gd_nentries(D, parent, type, flags);
}
-const char** Dirfile::EntryList(const char *parent, unsigned int type,
- unsigned int flags) const
+const char** Dirfile::EntryList(const char *parent, int type,
+ unsigned int flags) const
{
return gd_entry_list(D, parent, type, flags);
}
Modified: trunk/getdata/bindings/cxx/entry.cpp
===================================================================
--- trunk/getdata/bindings/cxx/entry.cpp 2012-06-27 23:16:46 UTC (rev 725)
+++ trunk/getdata/bindings/cxx/entry.cpp 2012-06-28 00:24:07 UTC (rev 726)
@@ -51,6 +51,7 @@
case GD_CARRAY_ENTRY:
case GD_STRING_ENTRY:
case GD_NO_ENTRY:
+ case GD_ALIAS_ENTRY:
return 0;
case GD_LINCOM_ENTRY:
if (index > n_fields)
@@ -172,6 +173,7 @@
case GD_CARRAY_ENTRY:
case GD_STRING_ENTRY:
case GD_NO_ENTRY:
+ case GD_ALIAS_ENTRY:
return 0;
}
Modified: trunk/getdata/bindings/cxx/getdata/dirfile.h
===================================================================
--- trunk/getdata/bindings/cxx/getdata/dirfile.h 2012-06-27 23:16:46 UTC (rev 725)
+++ trunk/getdata/bindings/cxx/getdata/dirfile.h 2012-06-28 00:24:07 UTC (rev 726)
@@ -127,7 +127,7 @@
GetData::Entry* Entry(const char *field_code) const;
- const char **EntryList(const char *parent = NULL, unsigned int type = 0,
+ const char **EntryList(const char *parent = NULL, int type = 0,
unsigned int flags = 0) const;
gd_off64_t EoF(const char *field_code) const;
@@ -209,7 +209,7 @@
int NAliases(const char* field_code) const;
- unsigned int NEntries(const char *parent = NULL, unsigned int type = 0,
+ unsigned int NEntries(const char *parent = NULL, int type = 0,
unsigned int flags = 0) const;
unsigned int NFields() const;
Modified: trunk/getdata/bindings/f77/fgetdata.c
===================================================================
--- trunk/getdata/bindings/f77/fgetdata.c 2012-06-27 23:16:46 UTC (rev 725)
+++ trunk/getdata/bindings/f77/fgetdata.c 2012-06-28 00:24:07 UTC (rev 726)
@@ -3082,6 +3082,7 @@
ok = 1;
switch (E.field_type) {
case GD_NO_ENTRY:
+ case GD_ALIAS_ENTRY:
case GD_LINTERP_ENTRY:
case GD_MULTIPLY_ENTRY:
case GD_DIVIDE_ENTRY:
@@ -3153,6 +3154,7 @@
switch (E.field_type) {
case GD_NO_ENTRY:
+ case GD_ALIAS_ENTRY:
case GD_LINTERP_ENTRY:
case GD_MULTIPLY_ENTRY:
case GD_DIVIDE_ENTRY:
Modified: trunk/getdata/bindings/idl/getdata.c
===================================================================
--- trunk/getdata/bindings/idl/getdata.c 2012-06-27 23:16:46 UTC (rev 725)
+++ trunk/getdata/bindings/idl/getdata.c 2012-06-28 00:24:07 UTC (rev 726)
@@ -613,6 +613,7 @@
IDL_MSG_LONGJMP, NULL)) = E->const_type;
break;
case GD_NO_ENTRY:
+ case GD_ALIAS_ENTRY:
case GD_INDEX_ENTRY:
case GD_STRING_ENTRY:
break;
@@ -1005,6 +1006,7 @@
E->const_type = GD_NULL;
break;
case GD_NO_ENTRY:
+ case GD_ALIAS_ENTRY:
case GD_INDEX_ENTRY:
case GD_STRING_ENTRY:
break;
@@ -4026,19 +4028,20 @@
typedef struct {
IDL_KW_RESULT_FIRST_FIELD;
GDIDL_KW_RESULT_ERROR;
- unsigned int type;
+ int type;
IDL_STRING parent;
int parent_x;
- int hidden, noalias, scalars, vectors;
+ int hidden, noalias, scalars, vectors, aliases;
} KW_RESULT;
KW_RESULT kw;
GDIDL_KW_INIT_ERROR;
kw.type = 0;
- kw.hidden = kw.noalias = kw.scalars = kw.vectors = 0;
+ kw.hidden = kw.noalias = kw.scalars = kw.vectors = kw.aliases = 0;
kw.parent_x = 0;
static IDL_KW_PAR kw_pars[] = {
+ { "ALIASES", IDL_TYP_INT, 1, 0, 0, IDL_KW_OFFSETOF(aliases) },
GDIDL_KW_PAR_ERROR,
GDIDL_KW_PAR_ESTRING,
{ "HIDDEN", IDL_TYP_INT, 1, 0, 0, IDL_KW_OFFSETOF(hidden) },
@@ -4068,6 +4071,8 @@
kw.type = GD_VECTOR_ENTRIES;
else if (kw.scalars)
kw.type = GD_SCALAR_ENTRIES;
+ else if (kw.aliases)
+ kw.type = GD_ALIAS_ENTRIES;
}
nentries = gd_nentries(D, parent, kw.type, flags);
@@ -4248,19 +4253,20 @@
typedef struct {
IDL_KW_RESULT_FIRST_FIELD;
GDIDL_KW_RESULT_ERROR;
- unsigned int type;
+ int type;
IDL_STRING parent;
int parent_x;
- int hidden, noalias, scalars, vectors;
+ int aliases, hidden, noalias, scalars, vectors;
} KW_RESULT;
KW_RESULT kw;
GDIDL_KW_INIT_ERROR;
kw.type = 0;
- kw.hidden = kw.noalias = kw.scalars = kw.vectors = 0;
+ kw.hidden = kw.noalias = kw.scalars = kw.vectors = kw.aliases = 0;
kw.parent_x = 0;
static IDL_KW_PAR kw_pars[] = {
+ { "ALIASES", IDL_TYP_INT, 1, 0, 0, IDL_KW_OFFSETOF(aliases) },
GDIDL_KW_PAR_ERROR,
GDIDL_KW_PAR_ESTRING,
{ "HIDDEN", IDL_TYP_INT, 1, 0, 0, IDL_KW_OFFSETOF(hidden) },
@@ -4290,6 +4296,8 @@
kw.type = GD_VECTOR_ENTRIES;
else if (kw.scalars)
kw.type = GD_SCALAR_ENTRIES;
+ else if (kw.aliases)
+ kw.type = GD_ALIAS_ENTRIES;
}
nentries = gd_nentries(D, parent, kw.type, flags);
Modified: trunk/getdata/bindings/make_parameters.c
===================================================================
--- trunk/getdata/bindings/make_parameters.c 2012-06-27 23:16:46 UTC (rev 725)
+++ trunk/getdata/bindings/make_parameters.c 2012-06-28 00:24:07 UTC (rev 726)
@@ -223,9 +223,10 @@
CONSTANT(DESYNC_PATHCHECK, "GDDS_P", 13),
CONSTANT(DESYNC_REOPEN, "GDDS_O", 13),
- CONSTANT(ALL_ENTRIES, "GDEN_A", 14),
+ CONSTANT(ALL_ENTRIES, "GDEN_X", 14),
CONSTANT(VECTOR_ENTRIES, "GDEN_V", 14),
CONSTANT(SCALAR_ENTRIES, "GDEN_S", 14),
+ CONSTANT(ALIAS_ENTRIES, "GDEN_A", 14),
CONSTANT(ENTRIES_HIDDEN, "GDEN_H", 14),
CONSTANT(ENTRIES_NOALIAS, "GDEN_N", 14),
Modified: trunk/getdata/bindings/perl/GetData.xs
===================================================================
--- trunk/getdata/bindings/perl/GetData.xs 2012-06-27 23:16:46 UTC (rev 725)
+++ trunk/getdata/bindings/perl/GetData.xs 2012-06-28 00:24:07 UTC (rev 726)
@@ -1517,14 +1517,14 @@
entry_list(dirfile, parent, type, flags)
DIRFILE * dirfile
gdpu_char * parent
- gdpu_type_t type
+ gdpu_int type
gdpu_uint_t flags
PREINIT:
GDP_DIRFILE_ALIAS;
ALIAS:
GetData::Dirfile::entry_list = 1
PPCODE:
- dtrace("%p, \"%s\", %u, %u; %i", dirfile, parent, type, flags,
+ dtrace("%p, \"%s\", %i, %u; %i", dirfile, parent, type, flags,
(int)GIMME_V);
/* in array context, return the field list, otherwise return nfields */
Modified: trunk/getdata/bindings/perl/typemap
===================================================================
--- trunk/getdata/bindings/perl/typemap 2012-06-27 23:16:46 UTC (rev 725)
+++ trunk/getdata/bindings/perl/typemap 2012-06-28 00:24:07 UTC (rev 726)
@@ -11,7 +11,7 @@
gd_entype_t T_UV
gd_shift_t T_IV
gd_triplet_t T_TRIPLET
-gd_type_t T_UV
+gd_type_t T_IV
gd_windop_t T_IV
# GetData Perl pseudotypes
@@ -22,7 +22,7 @@
gdpu_numbits_t T_IV_ZERO
gdpu_shift_t T_IV_ZERO
gdpu_uint_t T_UV_ZERO
-gdpu_type_t T_UV_ZERO
+gdpu_type_t T_IV_ZERO
gdpu_complex T_COMPLEX_ZERO
Modified: trunk/getdata/bindings/python/pydirfile.c
===================================================================
--- trunk/getdata/bindings/python/pydirfile.c 2012-06-27 23:16:46 UTC (rev 725)
+++ trunk/getdata/bindings/python/pydirfile.c 2012-06-28 00:24:07 UTC (rev 726)
@@ -2606,11 +2606,12 @@
dtrace("%p, %p, %p", self, args, keys);
char* keywords[] = { "parent", "type", "flags", NULL };
- unsigned int nentries, type = 0, flags = 0;
+ unsigned int nentries, flags = 0;
+ int type = 0;
const char *parent = NULL;
if (!PyArg_ParseTupleAndKeywords(args, keys,
- "|sII:pygetdata.dirfile.nentries", keywords, &parent, &type, &flags))
+ "|siI:pygetdata.dirfile.nentries", keywords, &parent, &type, &flags))
{
dreturn("%p", NULL);
return NULL;
@@ -2633,12 +2634,12 @@
const char **entries;
char* keywords[] = { "parent", "type", "flags", NULL };
- int i;
- unsigned int type = 0, flags = 0;
+ int i, type = 0;
+ unsigned int flags = 0;
const char *parent = NULL;
if (!PyArg_ParseTupleAndKeywords(args, keys,
- "|sII:pygetdata.dirfile.entry_list", keywords, &parent, &type, &flags))
+ "|siI:pygetdata.dirfile.entry_list", keywords, &parent, &type, &flags))
{
dreturn("%p", NULL);
return NULL;
Modified: trunk/getdata/bindings/python/pyentry.c
===================================================================
--- trunk/getdata/bindings/python/pyentry.c 2012-06-27 23:16:46 UTC (rev 725)
+++ trunk/getdata/bindings/python/pyentry.c 2012-06-28 00:24:07 UTC (rev 726)
@@ -460,6 +460,7 @@
PyErr_SetString(PyExc_ValueError,
"'pygetdata.entry' invalid data type");
case GD_NO_ENTRY:
+ case GD_ALIAS_ENTRY:
case GD_STRING_ENTRY:
case GD_INDEX_ENTRY:
break;
@@ -571,6 +572,7 @@
break;
case GD_STRING_ENTRY:
case GD_NO_ENTRY:
+ case GD_ALIAS_ENTRY:
case GD_INDEX_ENTRY:
break;
}
@@ -778,6 +780,7 @@
self->E->in_fields[1]);
break;
case GD_NO_ENTRY:
+ case GD_ALIAS_ENTRY:
case GD_RAW_ENTRY:
case GD_INDEX_ENTRY:
case GD_CONST_ENTRY:
@@ -889,6 +892,7 @@
}
break;
case GD_NO_ENTRY:
+ case GD_ALIAS_ENTRY:
case GD_RAW_ENTRY:
case GD_INDEX_ENTRY:
case GD_CONST_ENTRY:
@@ -1855,6 +1859,7 @@
switch (self->E->field_type)
{
case GD_NO_ENTRY:
+ case GD_ALIAS_ENTRY:
case GD_INDEX_ENTRY:
case GD_STRING_ENTRY:
tuple = Py_BuildValue("()");
Modified: trunk/getdata/src/add.c
===================================================================
--- trunk/getdata/src/add.c 2012-06-27 23:16:46 UTC (rev 725)
+++ trunk/getdata/src/add.c 2012-06-28 00:24:07 UTC (rev 726)
@@ -453,6 +453,7 @@
for (i = 0; i < E->EN(polynom,poly_ord); ++i)
copy_scalar[i] = 1;
break;
+ case GD_ALIAS_ENTRY:
case GD_INDEX_ENTRY:
case GD_NO_ENTRY:
_GD_InternalError(D); /* We've already verrified field_type is valid */
Modified: trunk/getdata/src/common.c
===================================================================
--- trunk/getdata/src/common.c 2012-06-27 23:16:46 UTC (rev 725)
+++ trunk/getdata/src/common.c 2012-06-28 00:24:07 UTC (rev 726)
@@ -1180,7 +1180,7 @@
/* now we have to start all over again */
ptr = target;
- if (_GD_AbsPath(target)) {
+ if (_GD_AbsPath(ptr)) {
_GD_Root(res, target, res_root);
res_len = res_root;
ptr += res_root;
Modified: trunk/getdata/src/del.c
===================================================================
--- trunk/getdata/src/del.c 2012-06-27 23:16:46 UTC (rev 725)
+++ trunk/getdata/src/del.c 2012-06-28 00:24:07 UTC (rev 726)
@@ -214,6 +214,7 @@
case GD_CONST_ENTRY:
case GD_CARRAY_ENTRY:
case GD_INDEX_ENTRY:
+ case GD_ALIAS_ENTRY:
break;
}
Modified: trunk/getdata/src/entry.c
===================================================================
--- trunk/getdata/src/entry.c 2012-06-27 23:16:46 UTC (rev 725)
+++ trunk/getdata/src/entry.c 2012-06-28 00:24:07 UTC (rev 726)
@@ -287,6 +287,7 @@
case GD_CONST_ENTRY:
case GD_CARRAY_ENTRY:
case GD_INDEX_ENTRY:
+ case GD_ALIAS_ENTRY:
break;
}
@@ -464,6 +465,7 @@
case GD_CARRAY_ENTRY:
case GD_STRING_ENTRY:
case GD_NO_ENTRY:
+ case GD_ALIAS_ENTRY:
break;
}
@@ -811,6 +813,7 @@
case GD_STRING_ENTRY:
case GD_INDEX_ENTRY:
case GD_NO_ENTRY:
+ case GD_ALIAS_ENTRY:
break;
}
Modified: trunk/getdata/src/field_list.c
===================================================================
--- trunk/getdata/src/field_list.c 2012-06-27 23:16:46 UTC (rev 725)
+++ trunk/getdata/src/field_list.c 2012-06-28 00:24:07 UTC (rev 726)
@@ -84,9 +84,12 @@
case GD_SCALAR_ENTRIES:
i = 17;
break;
- case GD_ALL_ENTRIES:
+ case GD_ALIAS_ENTRY:
i = 18;
break;
+ case GD_ALL_ENTRIES:
+ i = 19;
+ break;
default:
i = -1;
break;
@@ -98,9 +101,9 @@
/* returns true if E a member of the given list */
int _GD_ListEntry(const gd_entry_t *E, int meta, int hidden, int noalias,
- unsigned int special, gd_entype_t type)
+ int special, gd_entype_t type)
{
- dtrace("%p{%s}, %i, %i, %i, %u, 0x%X", E, E->field, meta, hidden, noalias,
+ dtrace("%p{%s}, %i, %i, %i, %i, 0x%X", E, E->field, meta, hidden, noalias,
special, type);
/* check hidden */
@@ -118,10 +121,18 @@
/* aliases */
if (E->field_type == GD_ALIAS_ENTRY) {
int ret = 0;
+
if (noalias) {
dreturn("%i (alias)", 0);
return 0;
}
+
+ /* that's right: GD_ALIAS_ENTRY + noalias gets you what you deserve */
+ if (special == GD_ALIAS_ENTRIES) {
+ dreturn("%i (aliases)", 1);
+ return 1;
+ }
+
if (E->e->entry[0])
ret = _GD_ListEntry(E->e->entry[0], meta, hidden, 0, special, type);
dreturn("%i", ret);
@@ -137,6 +148,9 @@
{
dreturn("%i (scalar)", 0);
return 0;
+ } else if (special == GD_ALIAS_ENTRIES) { /* we weeded out aliases earlier */
+ dreturn("%i (aliases)", 0);
+ return 0;
} else if (type && E->field_type != type) {
dreturn("%i (type)", 0);
return 0;
@@ -147,12 +161,12 @@
}
static const char **_GD_EntryList(DIRFILE *D, struct _gd_private_entry *p,
- size_t offs, unsigned int type, unsigned int flags) gd_nothrow
+ size_t offs, int type, unsigned int flags) gd_nothrow
{
char** el;
int i, index;
unsigned int u, n = 0;
- const unsigned int special = (type & GD_SPECIAL_ENTRY_BIT) ? type : 0;
+ const int special = (type & GD_SPECIAL_ENTRY_BIT) ? type : 0;
const gd_entype_t ctype = (type & GD_SPECIAL_ENTRY_BIT) ? GD_NO_ENTRY :
(gd_entype_t)type;
const int hidden = (flags & GD_ENTRIES_HIDDEN);
@@ -236,14 +250,14 @@
return (const char **)el;
}
-const char **gd_entry_list(DIRFILE* D, const char *parent, unsigned int type,
+const char **gd_entry_list(DIRFILE* D, const char *parent, int type,
unsigned int flags) gd_nothrow
{
const char **el;
size_t offs = 0;
struct _gd_private_entry *p = NULL;
- dtrace("%p, \"%s\", %u, %u", D, parent, type, flags);
+ dtrace("%p, \"%s\", %i, %u", D, parent, type, flags);
if (D->flags & GD_INVALID) {
_GD_SetError(D, GD_E_BAD_DIRFILE, 0, NULL, 0, NULL);
Modified: trunk/getdata/src/flimits.c
===================================================================
--- trunk/getdata/src/flimits.c 2012-06-27 23:16:46 UTC (rev 725)
+++ trunk/getdata/src/flimits.c 2012-06-28 00:24:07 UTC (rev 726)
@@ -339,6 +339,9 @@
case GD_NO_ENTRY:
_GD_SetError(D, GD_E_BAD_FIELD_TYPE, GD_E_FIELD_BAD, NULL, 0, E->field);
break;
+ case GD_ALIAS_ENTRY:
+ _GD_InternalError(D);
+ break;
}
D->recurse_level--;
@@ -523,6 +526,7 @@
_GD_SetError(D, GD_E_DIMENSION, GD_E_DIM_CALLER, NULL, 0, E->field);
break;
case GD_NO_ENTRY:
+ case GD_ALIAS_ENTRY:
_GD_InternalError(D);
break;
}
Modified: trunk/getdata/src/flush.c
===================================================================
--- trunk/getdata/src/flush.c 2012-06-27 23:16:46 UTC (rev 725)
+++ trunk/getdata/src/flush.c 2012-06-28 00:24:07 UTC (rev 726)
@@ -78,6 +78,7 @@
case GD_STRING_ENTRY:
case GD_INDEX_ENTRY:
case GD_NO_ENTRY:
+ case GD_ALIAS_ENTRY:
break;
}
@@ -552,6 +553,7 @@
fputc('\n', stream);
break;
case GD_INDEX_ENTRY:
+ case GD_ALIAS_ENTRY:
case GD_NO_ENTRY:
_GD_InternalError(D);
break;
@@ -1003,7 +1005,7 @@
if (D->entry[i]->hidden)
D->av &= GD_VERS_GE_9;
else
- switch ((int)D->entry[i]->field_type) {
+ switch (D->entry[i]->field_type) {
case GD_RAW_ENTRY:
switch (D->entry[i]->EN(raw,data_type)) {
case GD_COMPLEX128:
Modified: trunk/getdata/src/fpos.c
===================================================================
--- trunk/getdata/src/fpos.c 2012-06-27 23:16:46 UTC (rev 725)
+++ trunk/getdata/src/fpos.c 2012-06-28 00:24:07 UTC (rev 726)
@@ -101,6 +101,7 @@
case GD_CONST_ENTRY:
case GD_STRING_ENTRY:
case GD_CARRAY_ENTRY:
+ case GD_ALIAS_ENTRY:
_GD_InternalError(D);
}
@@ -296,6 +297,7 @@
case GD_CONST_ENTRY:
case GD_STRING_ENTRY:
case GD_CARRAY_ENTRY:
+ case GD_ALIAS_ENTRY:
_GD_InternalError(D);
}
Modified: trunk/getdata/src/getdata.c
===================================================================
--- trunk/getdata/src/getdata.c 2012-06-27 23:16:46 UTC (rev 725)
+++ trunk/getdata/src/getdata.c 2012-06-28 00:24:07 UTC (rev 726)
@@ -1944,6 +1944,7 @@
case GD_STRING_ENTRY:
n_read = _GD_DoString(E, num_samp, (char *)data_out);
break;
+ case GD_ALIAS_ENTRY:
case GD_NO_ENTRY:
/* Can't get here */
_GD_InternalError(D);
Modified: trunk/getdata/src/getdata.h.in
===================================================================
--- trunk/getdata/src/getdata.h.in 2012-06-27 23:16:46 UTC (rev 725)
+++ trunk/getdata/src/getdata.h.in 2012-06-28 00:24:07 UTC (rev 726)
@@ -242,16 +242,20 @@
GD_MPLEX_ENTRY = 0x0D,
GD_CONST_ENTRY = GD_SCALAR_ENTRY_BIT | 0x00,
GD_STRING_ENTRY = GD_SCALAR_ENTRY_BIT | 0x01,
- GD_CARRAY_ENTRY = GD_SCALAR_ENTRY_BIT | 0x02
+ GD_CARRAY_ENTRY = GD_SCALAR_ENTRY_BIT | 0x02,
+
+ /* not a real entry type, but it's convenient to put this here */
+ GD_ALIAS_ENTRY = -1
} gd_entype_t;
-/* GD_NO_ENTRY is not part of this count */
+/* GD_NO_ENTRY and GD_ALIAS_ENTRY are not part of this count */
#define GD_N_ENTYPES 16
/* Special types for gd_nentries(3) and gd_entry_list(3) */
#define GD_ALL_ENTRIES 0
#define GD_VECTOR_ENTRIES (GD_SPECIAL_ENTRY_BIT | 0x01)
#define GD_SCALAR_ENTRIES (GD_SPECIAL_ENTRY_BIT | 0x02)
+#define GD_ALIAS_ENTRIES GD_ALIAS_ENTRY
/* gd_nentries(3) and gd_entry_list(3) flags */
#define GD_ENTRIES_HIDDEN 0x1
@@ -688,8 +692,8 @@
extern int gd_entry(DIRFILE *dirfile, const char *field_code,
gd_entry_t *entry) gd_nothrow gd_nonnull ((1, 2));
-extern const char **gd_entry_list(DIRFILE* D, const char *parent,
- unsigned int type, unsigned int flags) gd_nothrow gd_nonnull ((1));
+extern const char **gd_entry_list(DIRFILE* D, const char *parent, int type,
+ unsigned int flags) gd_nothrow gd_nonnull ((1));
extern gd_entype_t gd_entry_type(DIRFILE *dirfile,
const char *field_code) gd_nothrow gd_nonnull ((1));
@@ -850,8 +854,8 @@
extern gd_type_t gd_native_type(DIRFILE *dirfile,
const char *field_code) gd_nothrow gd_nonnull ((1,2));
-extern unsigned int gd_nentries(DIRFILE *D, const char *parent,
- unsigned int type, unsigned int flags) gd_nothrow gd_nonnull ((1));
+extern unsigned int gd_nentries(DIRFILE *D, const char *parent, int type,
+ unsigned int flags) gd_nothrow gd_nonnull ((1));
extern unsigned int gd_nfields(DIRFILE *dirfile) gd_nothrow gd_nonnull ((1));
Modified: trunk/getdata/src/internal.h
===================================================================
--- trunk/getdata/src/internal.h 2012-06-27 23:16:46 UTC (rev 725)
+++ trunk/getdata/src/internal.h 2012-06-28 00:24:07 UTC (rev 726)
@@ -743,8 +743,8 @@
#define GD_FILE_TEMP 0x4
#define GD_FILE_TOUCH 0x8
-/* lists */
-#define GD_N_ENTRY_LISTS (GD_N_ENTYPES + 3)
+/* lists -- all the entry types plus alias, scalar, vector, all */
+#define GD_N_ENTRY_LISTS (GD_N_ENTYPES + 4)
#define GD_LIST_VALID_STRING_VALUE 0x01
@@ -933,9 +933,6 @@
#define GD_HAVE_VERSION 0x40000000 /* have computed the version */
#define GD_INVALID 0x80000000 /* the dirfile is invalid */
-/* aliases */
-#define GD_ALIAS_ENTRY ((gd_entype_t)-1)
-
/* representation suffixes */
#define GD_REPR_NONE 0
#define GD_REPR_REAL 'r'
@@ -1085,7 +1082,7 @@
void _GD_LinterpData(DIRFILE *restrict, void *restrict, gd_type_t, int,
const double *restrict, size_t, const struct _gd_lut *restrict, size_t);
int _GD_ListEntry(const gd_entry_t *E, int meta, int hidden, int noalias,
- unsigned int special, gd_entype_t type);
+ int special, gd_entype_t type);
char *_GD_MakeFullPath(DIRFILE *restrict, int, const char *restrict, int);
#define _GD_MakeFullPathOnly gd_MakeFullPathOnly
char *_GD_MakeFullPathOnly(const DIRFILE *D, int dirfd, const char *name);
@@ -1100,8 +1097,8 @@
char *_GD_MungeFromFrag(DIRFILE *restrict, const gd_entry_t *restrict, int,
const char *restrict, int *restrict);
gd_type_t _GD_NativeType(DIRFILE *restrict, gd_entry_t *restrict, int);
-unsigned int _GD_NEntries(DIRFILE *D, struct _gd_private_entry *p,
- unsigned int type, unsigned int flags);
+unsigned int _GD_NEntries(DIRFILE*, struct _gd_private_entry*, int,
+ unsigned int);
DIRFILE *_GD_Open(DIRFILE*, int, const char*, unsigned long,
gd_parser_callback_t, void*);
gd_entry_t *_GD_ParseFieldSpec(DIRFILE *restrict, int, char**,
Modified: trunk/getdata/src/legacy.c
===================================================================
--- trunk/getdata/src/legacy.c 2012-06-27 23:16:46 UTC (rev 725)
+++ trunk/getdata/src/legacy.c 2012-06-28 00:24:07 UTC (rev 726)
@@ -449,6 +449,7 @@
Format.n_mplex++;
break;
case GD_NO_ENTRY:
+ case GD_ALIAS_ENTRY:
case GD_CONST_ENTRY:
case GD_CARRAY_ENTRY:
case GD_INDEX_ENTRY:
@@ -526,6 +527,7 @@
case GD_CONST_ENTRY:
case GD_CARRAY_ENTRY:
case GD_INDEX_ENTRY:
+ case GD_ALIAS_ENTRY:
case GD_NO_ENTRY:
break;
}
Modified: trunk/getdata/src/mod.c
===================================================================
--- trunk/getdata/src/mod.c 2012-06-27 23:16:46 UTC (rev 725)
+++ trunk/getdata/src/mod.c 2012-06-28 00:24:07 UTC (rev 726)
@@ -894,6 +894,7 @@
/* INDEX may not be modified */
_GD_SetError(D, GD_E_BAD_FIELD_TYPE, GD_E_FIELD_BAD, NULL, 0, field_code);
case GD_NO_ENTRY:
+ case GD_ALIAS_ENTRY:
case GD_STRING_ENTRY:
break;
}
Modified: trunk/getdata/src/native.c
===================================================================
--- trunk/getdata/src/native.c 2012-06-27 23:16:46 UTC (rev 725)
+++ trunk/getdata/src/native.c 2012-06-28 00:24:07 UTC (rev 726)
@@ -123,6 +123,7 @@
type = GD_NULL;
break;
case GD_NO_ENTRY:
+ case GD_ALIAS_ENTRY:
_GD_InternalError(D);
}
Modified: trunk/getdata/src/nfields.c
===================================================================
--- trunk/getdata/src/nfields.c 2012-06-27 23:16:46 UTC (rev 725)
+++ trunk/getdata/src/nfields.c 2012-06-28 00:24:07 UTC (rev 726)
@@ -20,12 +20,12 @@
*/
#include "internal.h"
-unsigned int _GD_NEntries(DIRFILE *D, struct _gd_private_entry *p,
- unsigned int type, unsigned int flags)
+unsigned int _GD_NEntries(DIRFILE *D, struct _gd_private_entry *p, int type,
+ unsigned int flags)
{
int i;
unsigned int u, n = 0;
- const unsigned int special = (type & GD_SPECIAL_ENTRY_BIT) ? type : 0;
+ const int special = (type & GD_SPECIAL_ENTRY_BIT) ? type : 0;
const gd_entype_t ctype = (type & GD_SPECIAL_ENTRY_BIT) ? GD_NO_ENTRY :
(gd_entype_t)type;
const int hidden = (flags & GD_ENTRIES_HIDDEN);
@@ -54,7 +54,7 @@
return n;
}
-unsigned int gd_nentries(DIRFILE *D, const char *parent, unsigned int type,
+unsigned int gd_nentries(DIRFILE *D, const char *parent, int type,
unsigned int flags) gd_nothrow
{
unsigned int n;
Modified: trunk/getdata/src/putdata.c
===================================================================
--- trunk/getdata/src/putdata.c 2012-06-27 23:16:46 UTC (rev 725)
+++ trunk/getdata/src/putdata.c 2012-06-28 00:24:07 UTC (rev 726)
@@ -764,6 +764,7 @@
case GD_STRING_ENTRY:
n_wrote = _GD_DoStringOut(D, E, (const char *)data_in);
break;
+ case GD_ALIAS_ENTRY:
case GD_NO_ENTRY:
_GD_InternalError(D);
break;
Modified: trunk/getdata/src/spf.c
===================================================================
--- trunk/getdata/src/spf.c 2012-06-27 23:16:46 UTC (rev 725)
+++ trunk/getdata/src/spf.c 2012-06-28 00:24:07 UTC (rev 726)
@@ -65,6 +65,7 @@
case GD_CONST_ENTRY:
case GD_CARRAY_ENTRY:
case GD_STRING_ENTRY:
+ case GD_ALIAS_ENTRY:
case GD_NO_ENTRY:
_GD_InternalError(D);
}
Property changes on: trunk/getdata/test
___________________________________________________________________
Modified: svn:ignore
- Makefile
Makefile.in
*.o
dirfile
*.swp
*.exe
.deps
.libs
add
add_affix
add_alias
add_alias_meta
add_bit
add_bit_bitnum
add_bit_bitsize
add_bit_invalid
add_bit_numbits
add_carray
add_clincom
add_code
add_const
add_cpolynom
add_crecip
add_crecip89
add_divide
add_divide_invalid
add_duplicate
add_format
add_invalid
add_lincom
add_lincom_invalid
add_lincom_nfields
add_linterp
add_linterp_invalid
add_meta
add_meta_alias
add_mplex
add_mplex_val
add_multiply
add_multiply_invalid
add_phase
add_phase_invalid
add_polynom
add_protect
add_raw
add_raw_include
add_raw_invalid
add_raw_spf
add_raw_type
add_rdonly
add_recip
add_resolv
add_sbit
add_scalar
add_scalar_carray
add_sort
add_spec
add_spec_directive
add_spec_invalid
add_spec_meta
add_spec_resolv
add_string
add_string_affix
add_type
add_window
add_window_op
alias_list
alias_list_alias
alias_list_missing
alias_num
alias_num_alias
alias_num_missing
alias_target
alias_target_alias
alias_target_missing
alter_bit_bitnum
alter_bit_numbits
alter_carray_len
alter_carray_type
alter_const
alter_cpolynom
alter_crecip
alter_crecip89
alter_crecip_zero
alter_divide
alter_entry
alter_entry_affix
alter_entry_hidden
alter_entry_recode
alter_entry_scalar2a
alter_entry_scalar2n
alter_entry_scalar3
alter_entry_scalar4
alter_lincom_23
alter_lincom_32
alter_lincom_input
alter_lincom_offset
alter_lincom_slope
alter_linterp
alter_linterp_move
alter_mplex
alter_mspec
alter_mspec_affix
alter_multiply
alter_phase
alter_polynom_coeff
alter_polynom_input
alter_polynom_ord
alter_raw_spf
alter_raw_type
alter_recip
alter_recip_zero
alter_spec
alter_spec_affix
alter_spec_meta
alter_window
ascii_add
ascii_get
ascii_get_get
ascii_nframes
ascii_put
bof
bof_lincom
bof_phase
bzip_get
bzip_get_get
bzip_move_from
bzip_nframes
bzip_put
close
close_bad
close_discard
close_null
convert_complex128_complex64
convert_complex128_float64
convert_complex128_int64
convert_complex128_uint64
convert_complex64_complex128
convert_complex64_float64
convert_complex64_int64
convert_complex64_uint64
convert_float32_complex128
convert_float32_complex64
convert_float32_float64
convert_float32_int16
convert_float32_int32
convert_float32_int64
convert_float32_int8
convert_float32_uint16
convert_float32_uint32
convert_float32_uint64
convert_float32_uint8
convert_float64_complex128
convert_float64_complex64
convert_float64_float32
convert_float64_int16
convert_float64_int32
convert_float64_int64
convert_float64_int8
convert_float64_uint16
convert_float64_uint32
convert_float64_uint64
convert_float64_uint8
convert_int16_complex128
convert_int16_complex64
convert_int16_float32
convert_int16_float64
convert_int16_int32
convert_int16_int64
convert_int16_int8
convert_int16_uint16
convert_int16_uint32
convert_int16_uint64
convert_int16_uint8
convert_int32_complex128
convert_int32_complex64
convert_int32_float32
convert_int32_float64
convert_int32_int16
convert_int32_int64
convert_int32_int8
convert_int32_uint16
convert_int32_uint32
convert_int32_uint64
convert_int32_uint8
convert_int64_complex128
convert_int64_complex64
convert_int64_float32
convert_int64_float64
convert_int64_int16
convert_int64_int32
convert_int64_int8
convert_int64_uint16
convert_int64_uint32
convert_int64_uint64
convert_int64_uint8
convert_int8_complex128
convert_int8_complex64
convert_int8_float32
convert_int8_float64
convert_int8_int16
convert_int8_int32
convert_int8_int64
convert_int8_uint16
convert_int8_uint32
convert_int8_uint64
convert_int8_uint8
convert_uint16_complex128
convert_uint16_complex64
convert_uint16_float32
convert_uint16_float64
convert_uint16_int16
convert_uint16_int32
convert_uint16_int64
convert_uint16_int8
convert_uint16_uint32
convert_uint16_uint64
convert_uint16_uint8
convert_uint32_complex128
convert_uint32_complex64
convert_uint32_float32
convert_uint32_float64
convert_uint32_int16
convert_uint32_int32
convert_uint32_int64
convert_uint32_int8
convert_uint32_uint16
convert_uint32_uint64
convert_uint32_uint8
convert_uint64_complex128
convert_uint64_complex64
convert_uint64_float32
convert_uint64_float64
convert_uint64_int16
convert_uint64_int32
convert_uint64_int64
convert_uint64_int8
convert_uint64_uint16
convert_uint64_uint32
convert_uint64_uint8
convert_uint8_complex128
convert_uint8_complex64
convert_uint8_float32
convert_uint8_float64
convert_uint8_int16
convert_uint8_int32
convert_uint8_int64
convert_uint8_int8
convert_uint8_uint16
convert_uint8_uint32
convert_uint8_uint64
creat
creat_excl
creat_rdonly
cvlist
cvlist_array
cvlist_array_hidden
cvlist_array_meta
cvlist_array_meta_hidden
cvlist_hidden
cvlist_invalid
cvlist_meta
cvlist_meta_hidden
cvlist_meta_invalid
del
del_carray
del_carray_deref
del_const
del_const_deref
del_const_force
del_data
del_derived
del_derived_after
del_derived_force
del_meta
del_meta_force
desync
desync_flush
desync_reopen
desync_reopen_inv
dfes_bit
dfes_divide
dfes_lincom
dfes_linterp
dfes_multiply
dfes_null
dfes_phase
dfes_raw
dfes_recip
dfes_zero
elist_alias
elist_hidden
elist_scalar
encode_alter
encode_get
encode_move
endian_alter
endian_alter_sie
endian_get
endian_move
entry_bad_code
entry_bit
entry_bit_scalar
entry_divide
entry_invalid
entry_lincom
entry_lincom_scalar
entry_linterp
entry_mplex
entry_mplex_scalar
entry_multiply
entry_phase
entry_phase_scalar
entry_polynom
entry_polynom_scalar
entry_raw
entry_raw_scalar
entry_raw_scalar_code
entry_raw_scalar_type
entry_recip
entry_scalar_repr
entry_type
entry_type_alias
entry_window
entry_window_scalar
eof
eof_index
eof_lincom
eof_phase
error
error_error
error_num
error_short
error_verbose
error_verbose_prefix
file
file_code
file_type
flist
flist_hidden
flist_invalid
flist_meta
flist_meta_hidden
flist_meta_invalid
flist_type
flist_type_hidden
flist_type_invalid
flist_type_meta
flist_type_meta_hidden
flist_type_meta_invalid
flush
flush_all
flush_bad_code
flush_invalid
flush_meta
flush_spec
foffs_alter
foffs_get
foffs_move
fragment_affix
fragment_affix_alter
fragment_affix_alter2
fragment_affix_dup
fragment_index
fragment_index_alias
fragment_name
fragment_name_oor
fragment_num
fragment_parent
get64
get_bad_code
get_bit
get_carray
get_carray_len
get_carray_slice
get_char
get_clincom
get_complex128
get_complex64
get_const
get_const_complex
get_const_repr
get_cpolynom
get_divide
get_endian16
get_endian32
get_endian64
get_endian8
get_endian_complex128_arm
get_endian_complex128_big
get_endian_complex128_little
get_endian_complex64_arm
get_endian_complex64_big
get_endian_complex64_little
get_endian_float32_arm
get_endian_float32_big
get_endian_float32_little
get_endian_float64_arm
get_endian_float64_big
get_endian_float64_little
get_ff
get_float32
get_float64
get_foffs
get_fs
get_here
get_here_foffs
get_heres
get_int16
get_int32
get_int64
get_int8
get_invalid
get_lincom1
get_lincom2
get_lincom3
get_lincom_noin
get_lincom_non
get_lincom_null
get_lincom_spf
get_linterp
get_linterp_noin
get_linterp_notab
get_linterp_sort
get_mplex
get_mplex_lb
get_mplex_lball
get_mplex_nolb
get_multiply
get_multiply_noin
get_nonexistent
get_null
get_off64
get_phase
get_phase_affix
get_polynom
get_polynom_noin
get_recip
get_recip_const
get_recurse
get_rofs
get_sbit
get_sf
get_ss
get_type
get_uint16
get_uint32
get_uint64
get_window
get_window_clr
get_window_ge
get_window_gt
get_window_le
get_window_lt
get_window_ne
get_window_set
get_zero
global_flags
global_name
global_ref
global_ref_empty
global_ref_set
gzip_add
gzip_get
gzip_get_get
gzip_get_put
gzip_move_from
gzip_move_to
gzip_nframes
gzip_put
gzip_put_get
header_complex
hide
hide_hidden
hide_unhide
include
include_accmode
include_affix
include_auto
include_cb
include_creat
include_ignore
include_index
include_invalid
include_nonexistent
include_pc
include_ref
include_syntax
index
index_domain
index_range
legacy_get
legacy_get_put
legacy_get_rofs
legacy_nframes
legacy_nonexistent
legacy_put
legacy_spf
lzma_get
lzma_nframes
madd
madd_affix
madd_alias
madd_bit
madd_bit_invalid
madd_carray
madd_clincom
madd_const
madd_cpolynom
madd_crecip
madd_crecip89
madd_divide
madd_index
madd_lincom
madd_lincom_invalid
madd_linterp
madd_linterp_invalid
madd_mplex
madd_multiply
madd_multiply_invalid
madd_phase
madd_phase_invalid
madd_polynom
madd_recip
madd_sbit
madd_spec
madd_spec_directive
madd_spec_invalid
madd_spec_resolv
madd_string
madd_window
move
move_affix
move_affix_dup
move_alias
move_data_enc_ar
move_data_enc_ra
move_data_endian
move_data_foffs
move_data_nop
move_index
move_meta
move_protect
move_subdir
name
name_affix
name_affix_bad
name_alias
name_dup
name_move
name_move_alias
name_updb
name_updb_alias
name_updb_const
name_updb_const_alias
nentries_alias
nentries_hidden
nentries_scalar
nfields
nfields_hidden
nfields_invalid
nfields_type
nfields_type_hidden
nfields_type_invalid
nfields_vector
nfields_vector_hidden
nfields_vector_invalid
nframes
nframes64
nframes_empty
nframes_invalid
nframes_off64
nframes_spf
nmeta
nmeta_hidden
nmeta_invalid
nmeta_parent
nmeta_type
nmeta_type_hidden
nmeta_type_invalid
nmeta_type_parent
nmeta_vectors
nmeta_vectors_del
nmeta_vectors_hidden
nmeta_vectors_invalid
nmeta_vectors_parent
open
open_abs
open_cb_abort
open_cb_cont
open_cb_ignore
open_cb_invalid
open_cb_rescan
open_eaccess
open_nonexistent
open_notdirfile
parse_alias
parse_alias_code
parse_alias_dup
parse_alias_meta
parse_alias_missing
parse_badline
parse_bit
parse_bit4
parse_bit_bitnum
parse_bit_bitsize
parse_bit_ncols
parse_bit_numbits
parse_bit_scalar
parse_carray
parse_carray_long
parse_const
parse_const_ncols
parse_divide
parse_duplicate
parse_duplicate_ignore
parse_endian_bad
parse_endian_big
parse_endian_force
parse_endian_little
parse_endian_slash
parse_eol
parse_foffs
parse_foffs_include
parse_foffs_slash
parse_hidden
parse_hidden_field
parse_hidden_meta
parse_include
parse_include_absolute
parse_include_absrel
parse_include_loop
parse_include_nonexistent
parse_include_prefix
parse_include_prefix_dup
parse_include_preprefix
parse_include_relabs
parse_include_relrel
parse_include_slash
parse_include_suffix
parse_include_sufsuffix
parse_index
parse_lincom
parse_lincom_ncols1
parse_lincom_ncols2
parse_lincom_nfields
parse_lincom_nofields
parse_lincom_non
parse_lincom_non_ncols
parse_lincom_scalar
parse_linterp
parse_linterp_ncols
parse_malias
parse_malias_dup
parse_malias_meta
parse_meta
parse_meta_affix
parse_meta_alias
parse_meta_implicit
parse_meta_implicit2
parse_meta_implicit_affix
parse_meta_index
parse_meta_index2
parse_meta_jump
parse_meta_malias
parse_meta_meta
parse_meta_parent
parse_meta_raw
parse_mplex
parse_mplex_ncols
parse_mplex_nomax
parse_mplex_scalar
parse_multiply
parse_multiply_ncols
parse_name
parse_name_dot
parse_name_ext
parse_name_pedantic
parse_ncols
parse_phase
parse_phase_ncols
parse_phase_scalar
parse_polynom
parse_polynom_ncols1
parse_polynom_ncols2
parse_polynom_scalar
parse_protect_all
parse_protect_bad
parse_protect_data
parse_protect_format
parse_protect_none
parse_quote
parse_quote_mismatch
parse_raw
parse_raw_char
parse_raw_ncols
parse_raw_scalar
parse_raw_spf
parse_raw_type
parse_recip
parse_ref
parse_ref_nonexistent
parse_sbit
parse_sort
parse_string
parse_string_ncols
parse_string_null
parse_version
parse_version_89
parse_version_98
parse_version_include
parse_version_p8
parse_version_p9
parse_version_permissive
parse_version_slash
parse_whitespace
parse_window
parse_window_ncols
parse_window_op
parse_window_scalar
protect_alter
protect_get
put64
put_bad_code
put_bit
put_bof
put_carray
put_carray_slice
put_char
put_complex128
put_complex64
put_const
put_const_protect
put_divide
put_endian16
put_endian32
put_endian64
put_endian8
put_endian_complex128_arm
put_endian_complex128_big
put_endian_complex128_little
put_endian_complex64_arm
put_endian_complex64_big
put_endian_complex64_little
put_endian_float32_arm
put_endian_float32_big
put_endian_float32_little
put_endian_float64_arm
put_endian_float64_big
put_endian_float64_little
put_ff
put_float32
put_float64
put_foffs
put_fs
put_here
put_heres
put_int16
put_int32
put_int64
put_int8
put_invalid
put_lincom1
put_lincom2
put_lincom_noin
put_linterp
put_linterp_noin
put_linterp_nomono
put_linterp_notab
put_linterp_reverse
put_mplex
put_multiply
put_null
put_off64
put_phase
put_phase_noin
put_polynom1
put_polynom2
put_polynom_noin
put_protect
put_rdonly
put_recip
put_recurse
put_repr
put_rofs
put_sbit
put_sf
put_ss
put_string
put_string_protect
put_type
put_uint16
put_uint32
put_uint64
put_window
put_zero
ref
ref_none
ref_two
repr_a
repr_float32
repr_float64
repr_i
repr_int16
repr_int32
repr_int64
repr_int8
repr_m
repr_r
repr_real_a
repr_real_i
repr_real_m
repr_real_r
repr_uint16
repr_uint32
repr_uint64
repr_uint8
seek64
seek_cur
seek_end
seek_foffs
seek_set
sie_get_big
sie_get_little
sie_move_from
sie_move_to
sie_nframes_big
sie_nframes_little
sie_put_big
sie_put_little
slim_get
slim_nframes
slim_put
spf
spf_alias
spf_alias_meta
spf_alias_missing
spf_divide
spf_lincom
spf_multiply
spf_polynom
spf_recip
spf_recurse
svlist
svlist_hidden
svlist_invalid
svlist_meta
svlist_meta_hidden
svlist_meta_invalid
tell
tell64
trunc
trunc_dir
trunc_rdonly
trunc_rofs
trunc_truncsub
unclude
unclude_del
unclude_move
version_0
version_0_write
version_1
version_1_write
version_2
version_2_write
version_3
version_3_write
version_4
version_4_write
version_5
version_5_strict
version_5_write
version_6
version_6_strict
version_6_write
version_7
version_7_strict
version_7_write
version_8
version_8_strict
version_8_write
version_9
version_9_strict
version_9_write
vlist
vlist_alias
vlist_hidden
vlist_invalid
vlist_meta
vlist_meta_hidden
vlist_meta_invalid
xz_get
xz_nframes
zzip_data
zzip_get
zzip_get_get
zzip_nframes
zzslim_get
zzslim_nframes
+ Makefile
Makefile.in
*.o
dirfile
*.swp
*.exe
.deps
.libs
add
add_affix
add_alias
add_alias_meta
add_bit
add_bit_bitnum
add_bit_bitsize
add_bit_invalid
add_bit_numbits
add_carray
add_clincom
add_code
add_const
add_cpolynom
add_crecip
add_crecip89
add_divide
add_divide_invalid
add_duplicate
add_format
add_invalid
add_lincom
add_lincom_invalid
add_lincom_nfields
add_linterp
add_linterp_invalid
add_meta
add_meta_alias
add_mplex
add_mplex_val
add_multiply
add_multiply_invalid
add_phase
add_phase_invalid
add_polynom
add_protect
add_raw
add_raw_include
add_raw_invalid
add_raw_spf
add_raw_type
add_rdonly
add_recip
add_resolv
add_sbit
add_scalar
add_scalar_carray
add_sort
add_spec
add_spec_directive
add_spec_invalid
add_spec_meta
add_spec_resolv
add_string
add_string_affix
add_type
add_window
add_window_op
alias_list
alias_list_alias
alias_list_missing
alias_num
alias_num_alias
alias_num_missing
alias_target
alias_target_alias
alias_target_missing
alter_bit_bitnum
alter_bit_numbits
alter_carray_len
alter_carray_type
alter_const
alter_cpolynom
alter_crecip
alter_crecip89
alter_crecip_zero
alter_divide
alter_entry
alter_entry_affix
alter_entry_hidden
alter_entry_recode
alter_entry_scalar2a
alter_entry_scalar2n
alter_entry_scalar3
alter_entry_scalar4
alter_lincom_23
alter_lincom_32
alter_lincom_input
alter_lincom_offset
alter_lincom_slope
alter_linterp
alter_linterp_move
alter_mplex
alter_mspec
alter_mspec_affix
alter_multiply
alter_phase
alter_polynom_coeff
alter_polynom_input
alter_polynom_ord
alter_raw_spf
alter_raw_type
alter_recip
alter_recip_zero
alter_spec
alter_spec_affix
alter_spec_meta
alter_window
ascii_add
ascii_get
ascii_get_get
ascii_nframes
ascii_put
bof
bof_lincom
bof_phase
bzip_get
bzip_get_get
bzip_move_from
bzip_nframes
bzip_put
close
close_bad
close_discard
close_null
convert_complex128_complex64
convert_complex128_float64
convert_complex128_int64
convert_complex128_uint64
convert_complex64_complex128
convert_complex64_float64
convert_complex64_int64
convert_complex64_uint64
convert_float32_complex128
convert_float32_complex64
convert_float32_float64
convert_float32_int16
convert_float32_int32
convert_float32_int64
convert_float32_int8
convert_float32_uint16
convert_float32_uint32
convert_float32_uint64
convert_float32_uint8
convert_float64_complex128
convert_float64_complex64
convert_float64_float32
convert_float64_int16
convert_float64_int32
convert_float64_int64
convert_float64_int8
convert_float64_uint16
convert_float64_uint32
convert_float64_uint64
convert_float64_uint8
convert_int16_complex128
convert_int16_complex64
convert_int16_float32
convert_int16_float64
convert_int16_int32
convert_int16_int64
convert_int16_int8
convert_int16_uint16
convert_int16_uint32
convert_int16_uint64
convert_int16_uint8
convert_int32_complex128
convert_int32_complex64
convert_int32_float32
convert_int32_float64
convert_int32_int16
convert_int32_int64
convert_int32_int8
convert_int32_uint16
convert_int32_uint32
convert_int32_uint64
convert_int32_uint8
convert_int64_complex128
convert_int64_complex64
convert_int64_float32
convert_int64_float64
convert_int64_int16
convert_int64_int32
convert_int64_int8
convert_int64_uint16
convert_int64_uint32
convert_int64_uint64
convert_int64_uint8
convert_int8_complex128
convert_int8_complex64
convert_int8_float32
convert_int8_float64
convert_int8_int16
convert_int8_int32
convert_int8_int64
convert_int8_uint16
convert_int8_uint32
convert_int8_uint64
convert_int8_uint8
convert_uint16_complex128
convert_uint16_complex64
convert_uint16_float32
convert_uint16_float64
convert_uint16_int16
convert_uint16_int32
convert_uint16_int64
convert_uint16_int8
convert_uint16_uint32
convert_uint16_uint64
convert_uint16_uint8
convert_uint32_complex128
convert_uint32_complex64
convert_uint32_float32
convert_uint32_float64
convert_uint32_int16
convert_uint32_int32
convert_uint32_int64
convert_uint32_int8
convert_uint32_uint16
convert_uint32_uint64
convert_uint32_uint8
convert_uint64_complex128
convert_uint64_complex64
convert_uint64_float32
convert_uint64_float64
convert_uint64_int16
convert_uint64_int32
convert_uint64_int64
convert_uint64_int8
convert_uint64_uint16
convert_uint64_uint32
convert_uint64_uint8
convert_uint8_complex128
convert_uint8_complex64
convert_uint8_float32
convert_uint8_float64
convert_uint8_int16
convert_uint8_int32
convert_uint8_int64
convert_uint8_int8
convert_uint8_uint16
convert_uint8_uint32
convert_uint8_uint64
creat
creat_excl
creat_rdonly
cvlist
cvlist_array
cvlist_array_hidden
cvlist_array_meta
cvlist_array_meta_hidden
cvlist_hidden
cvlist_invalid
cvlist_meta
cvlist_meta_hidden
cvlist_meta_invalid
del
del_carray
del_carray_deref
del_const
del_const_deref
del_const_force
del_data
del_derived
del_derived_after
del_derived_force
del_meta
del_meta_force
desync
desync_flush
desync_reopen
desync_reopen_inv
dfes_bit
dfes_divide
dfes_lincom
dfes_linterp
dfes_multiply
dfes_null
dfes_phase
dfes_raw
dfes_recip
dfes_zero
elist_alias
elist_hidden
elist_noalias
elist_scalar
encode_alter
encode_get
encode_move
endian_alter
endian_alter_sie
endian_get
endian_move
entry_bad_code
entry_bit
entry_bit_scalar
entry_divide
entry_invalid
entry_lincom
entry_lincom_scalar
entry_linterp
entry_mplex
entry_mplex_scalar
entry_multiply
entry_phase
entry_phase_scalar
entry_polynom
entry_polynom_scalar
entry_raw
entry_raw_scalar
entry_raw_scalar_code
entry_raw_scalar_type
entry_recip
entry_scalar_repr
entry_type
entry_type_alias
entry_window
entry_window_scalar
eof
eof_index
eof_lincom
eof_phase
error
error_error
error_num
error_short
error_verbose
error_verbose_prefix
file
file_code
file_type
flist
flist_hidden
flist_invalid
flist_meta
flist_meta_hidden
flist_meta_invalid
flist_type
flist_type_hidden
flist_type_invalid
flist_type_meta
flist_type_meta_hidden
flist_type_meta_invalid
flush
flush_all
flush_bad_code
flush_invalid
flush_meta
flush_spec
foffs_alter
foffs_get
foffs_move
fragment_affix
fragment_affix_alter
fragment_affix_alter2
fragment_affix_dup
fragment_index
fragment_index_alias
fragment_name
fragment_name_oor
fragment_num
fragment_parent
get64
get_bad_code
get_bit
get_carray
get_carray_len
get_carray_slice
get_char
get_clincom
get_complex128
get_complex64
get_const
get_const_complex
get_const_repr
get_cpolynom
get_divide
get_endian16
get_endian32
get_endian64
get_endian8
get_endian_complex128_arm
get_endian_complex128_big
get_endian_complex128_little
get_endian_complex64_arm
get_endian_complex64_big
get_endian_complex64_little
get_endian_float32_arm
get_endian_float32_big
get_endian_float32_little
get_endian_float64_arm
get_endian_float64_big
get_endian_float64_little
get_ff
get_float32
get_float64
get_foffs
get_fs
get_here
get_here_foffs
get_heres
get_int16
get_int32
get_int64
get_int8
get_invalid
get_lincom1
get_lincom2
get_lincom3
get_lincom_noin
get_lincom_non
get_lincom_null
get_lincom_spf
get_linterp
get_linterp_noin
get_linterp_notab
get_linterp_sort
get_mplex
get_mplex_lb
get_mplex_lball
get_mplex_nolb
get_multiply
get_multiply_noin
get_nonexistent
get_null
get_off64
get_phase
get_phase_affix
get_polynom
get_polynom_noin
get_recip
get_recip_const
get_recurse
get_rofs
get_sbit
get_sf
get_ss
get_type
get_uint16
get_uint32
get_uint64
get_window
get_window_clr
get_window_ge
get_window_gt
get_window_le
get_window_lt
get_window_ne
get_window_set
get_zero
global_flags
global_name
global_ref
global_ref_empty
global_ref_set
gzip_add
gzip_get
gzip_get_get
gzip_get_put
gzip_move_from
gzip_move_to
gzip_nframes
gzip_put
gzip_put_get
header_complex
hide
hide_hidden
hide_unhide
include
include_accmode
include_affix
include_auto
include_cb
include_creat
include_ignore
include_index
include_invalid
include_nonexistent
include_pc
include_ref
include_syntax
index
index_domain
index_range
legacy_get
legacy_get_put
legacy_get_rofs
legacy_nframes
legacy_nonexistent
legacy_put
legacy_spf
lzma_get
lzma_nframes
madd
madd_affix
madd_alias
madd_bit
madd_bit_invalid
madd_carray
madd_clincom
madd_const
madd_cpolynom
madd_crecip
madd_crecip89
madd_divide
madd_index
madd_lincom
madd_lincom_invalid
madd_linterp
madd_linterp_invalid
madd_mplex
madd_multiply
madd_multiply_invalid
madd_phase
madd_phase_invalid
madd_polynom
madd_recip
madd_sbit
madd_spec
madd_spec_directive
madd_spec_invalid
madd_spec_resolv
madd_string
madd_window
move
move_affix
move_affix_dup
move_alias
move_data_enc_ar
move_data_enc_ra
move_data_endian
move_data_foffs
move_data_nop
move_index
move_meta
move_protect
move_subdir
name
name_affix
name_affix_bad
name_alias
name_dup
name_move
name_move_alias
name_updb
name_updb_alias
name_updb_const
name_updb_const_alias
nentries_alias
nentries_hidden
nentries_noalias
nentries_scalar
nfields
nfields_hidden
nfields_invalid
nfields_type
nfields_type_hidden
nfields_type_invalid
nfields_vector
nfields_vector_hidden
nfields_vector_invalid
nframes
nframes64
nframes_empty
nframes_invalid
nframes_off64
nframes_spf
nmeta
nmeta_hidden
nmeta_invalid
nmeta_parent
nmeta_type
nmeta_type_hidden
nmeta_type_invalid
nmeta_type_parent
nmeta_vectors
nmeta_vectors_del
nmeta_vectors_hidden
nmeta_vectors_invalid
nmeta_vectors_parent
open
open_abs
open_cb_abort
open_cb_cont
open_cb_ignore
open_cb_invalid
open_cb_rescan
open_eaccess
open_nonexistent
open_notdirfile
parse_alias
parse_alias_code
parse_alias_dup
parse_alias_meta
parse_alias_missing
parse_badline
parse_bit
parse_bit4
parse_bit_bitnum
parse_bit_bitsize
parse_bit_ncols
parse_bit_numbits
parse_bit_scalar
parse_carray
parse_carray_long
parse_const
parse_const_ncols
parse_divide
parse_duplicate
parse_duplicate_ignore
parse_endian_bad
parse_endian_big
parse_endian_force
parse_endian_little
parse_endian_slash
parse_eol
parse_foffs
parse_foffs_include
parse_foffs_slash
parse_hidden
parse_hidden_field
parse_hidden_meta
parse_include
parse_include_absolute
parse_include_absrel
parse_include_loop
parse_include_nonexistent
parse_include_prefix
parse_include_prefix_dup
parse_include_preprefix
parse_include_relabs
parse_include_relrel
parse_include_slash
parse_include_suffix
parse_include_sufsuffix
parse_index
parse_lincom
parse_lincom_ncols1
parse_lincom_ncols2
parse_lincom_nfields
parse_lincom_nofields
parse_lincom_non
parse_lincom_non_ncols
parse_lincom_scalar
parse_linterp
parse_linterp_ncols
parse_malias
parse_malias_dup
parse_malias_meta
parse_meta
parse_meta_affix
parse_meta_alias
parse_meta_implicit
parse_meta_implicit2
parse_meta_implicit_affix
parse_meta_index
parse_meta_index2
parse_meta_jump
parse_meta_malias
parse_meta_meta
parse_meta_parent
parse_meta_raw
parse_mplex
parse_mplex_ncols
parse_mplex_nomax
parse_mplex_scalar
parse_multiply
parse_multiply_ncols
parse_name
parse_name_dot
parse_name_ext
parse_name_pedantic
parse_ncols
parse_phase
parse_phase_ncols
parse_phase_scalar
parse_polynom
parse_polynom_ncols1
parse_polynom_ncols2
parse_polynom_scalar
parse_protect_all
parse_protect_bad
parse_protect_data
parse_protect_format
parse_protect_none
parse_quote
parse_quote_mismatch
parse_raw
parse_raw_char
parse_raw_ncols
parse_raw_scalar
parse_raw_spf
parse_raw_type
parse_recip
parse_ref
parse_ref_nonexistent
parse_sbit
parse_sort
parse_string
parse_string_ncols
parse_string_null
parse_version
parse_version_89
parse_version_98
parse_version_include
parse_version_p8
parse_version_p9
parse_version_permissive
parse_version_slash
parse_whitespace
parse_window
parse_window_ncols
parse_window_op
parse_window_scalar
protect_alter
protect_get
put64
put_bad_code
put_bit
put_bof
put_carray
put_carray_slice
put_char
put_complex128
put_complex64
put_const
put_const_protect
put_divide
put_endian16
put_endian32
put_endian64
put_endian8
put_endian_complex128_arm
put_endian_complex128_big
put_endian_complex128_little
put_endian_complex64_arm
put_endian_complex64_big
put_endian_complex64_little
put_endian_float32_arm
put_endian_float32_big
put_endian_float32_little
put_endian_float64_arm
put_endian_float64_big
put_endian_float64_little
put_ff
put_float32
put_float64
put_foffs
put_fs
put_here
put_heres
put_int16
put_int32
put_int64
put_int8
put_invalid
put_lincom1
put_lincom2
put_lincom_noin
put_linterp
put_linterp_noin
put_linterp_nomono
put_linterp_notab
put_linterp_reverse
put_mplex
put_multiply
put_null
put_off64
put_phase
put_phase_noin
put_polynom1
put_polynom2
put_polynom_noin
put_protect
put_rdonly
put_recip
put_recurse
put_repr
put_rofs
put_sbit
put_sf
put_ss
put_string
put_string_protect
put_type
put_uint16
put_uint32
put_uint64
put_window
put_zero
ref
ref_none
ref_two
repr_a
repr_float32
repr_float64
repr_i
repr_int16
repr_int32
repr_int64
repr_int8
repr_m
repr_r
repr_real_a
repr_real_i
repr_real_m
repr_real_r
repr_uint16
repr_uint32
repr_uint64
repr_uint8
seek64
seek_cur
seek_end
seek_foffs
seek_set
sie_get_big
sie_get_little
sie_move_from
sie_move_to
sie_nframes_big
sie_nframes_little
sie_put_big
sie_put_little
slim_get
slim_nframes
slim_put
spf
spf_alias
spf_alias_meta
spf_alias_missing
spf_divide
spf_lincom
spf_multiply
spf_polynom
spf_recip
spf_recurse
svlist
svlist_hidden
svlist_invalid
svlist_meta
svlist_meta_hidden
svlist_meta_invalid
tell
tell64
trunc
trunc_dir
trunc_rdonly
trunc_rofs
trunc_truncsub
unclude
unclude_del
unclude_move
version_0
version_0_write
version_1
version_1_write
version_2
version_2_write
version_3
version_3_write
version_4
version_4_write
version_5
version_5_strict
version_5_write
version_6
version_6_strict
version_6_write
version_7
version_7_strict
version_7_write
version_8
version_8_strict
version_8_write
version_9
version_9_strict
version_9_write
vlist
vlist_alias
vlist_hidden
vlist_invalid
vlist_meta
vlist_meta_hidden
vlist_meta_invalid
xz_get
xz_nframes
zzip_data
zzip_get
zzip_get_get
zzip_nframes
zzslim_get
zzslim_nframes
Modified: trunk/getdata/test/Makefile.am
===================================================================
--- trunk/getdata/test/Makefile.am 2012-06-27 23:16:46 UTC (rev 725)
+++ trunk/getdata/test/Makefile.am 2012-06-28 00:24:07 UTC (rev 726)
@@ -135,7 +135,7 @@
DESYNC_TESTS=desync desync_flush desync_reopen desync_reopen_inv
-ELIST_TESTS=elist_alias elist_hidden elist_scalar
+ELIST_TESTS=elist_alias elist_hidden elist_noalias elist_scalar
ENCODE_TESTS=encode_alter encode_get encode_move
@@ -228,7 +228,7 @@
name_move_alias name_updb name_updb_alias name_updb_const \
name_updb_const_alias
-NENTRIES_TESTS=nentries_alias nentries_hidden nentries_scalar
+NENTRIES_TESTS=nentries_alias nentries_hidden nentries_noalias nentries_scalar
NFIELDS_TESTS=nfields nfields_hidden nfields_invalid nfields_type \
nfields_type_hidden nfields_type_invalid nfields_vector \
Added: trunk/getdata/test/elist_alias.c
===================================================================
--- trunk/getdata/test/elist_alias.c (rev 0)
+++ trunk/getdata/test/elist_alias.c 2012-06-28 00:24:07 UTC (rev 726)
@@ -0,0 +1,78 @@
+/* Copyright (C) 2012 D. V. Wiebe
+ *
+ ***************************************************************************
+ *
+ * This file is part of the GetData project.
+ *
+ * GetData is free software; you can redistribute it and/or modify it under
+ * the terms of the GNU Lesser General Public License as published by the
+ * Free Software Foundation; either version 2.1 of the License, or (at your
+ * option) any later version.
+ *
+ * GetData is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
+ * License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with GetData; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+#include "test.h"
+
+#include <stdlib.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <fcntl.h>
+#include <stdio.h>
+#include <string.h>
+#include <errno.h>
+
+int main(void)
+{
+ const char *filedir = "dirfile";
+ const char *format = "dirfile/format";
+ const char *format_data =
+ "data1 RAW UINT8 1\n"
+ "/ALIAS data2 data1\n"
+ "/ALIAS data3 data4\n";
+ int fd, i, error, r = 0;
+ const char **field_list;
+ DIRFILE *D;
+
+ rmdirfile();
+ mkdir(filedir, 0777);
+
+ fd = open(format, O_CREAT | O_EXCL | O_WRONLY, 0666);
+ write(fd, format_data, strlen(format_data));
+ close(fd);
+
+ D = gd_open(filedir, GD_RDONLY | GD_VERBOSE);
+ field_list = gd_entry_list(D, NULL, GD_ALIAS_ENTRIES, 0);
+
+ error = gd_error(D);
+
+ CHECKI(error, 0);
+ CHECKPN(field_list);
+
+ for (i = 0; ; ++i) {
+ if (field_list[i] == NULL)
+ break;
+
+ if (strcmp(field_list[i], "data3") == 0)
+ continue;
+ else if (strcmp(field_list[i], "data2") == 0)
+ continue;
+
+ fprintf(stderr, "field_list[%i] = \"%s\"\n", i, field_list[i]);
+ r = 1;
+ }
+
+ CHECKI(i, 2);
+
+ gd_close(D);
+ unlink(format);
+ rmdir(filedir);
+
+ return r;
+}
Property changes on: trunk/getdata/test/elist_alias.c
___________________________________________________________________
Added: svn:eol-style
+ native
Added: trunk/getdata/test/nentries_alias.c
===================================================================
--- trunk/getdata/test/nentries_alias.c (rev 0)
+++ trunk/getdata/test/nentries_alias.c 2012-06-28 00:24:07 UTC (rev 726)
@@ -0,0 +1,61 @@
+/* Copyright (C) 2012 D. V. Wiebe
+ *
+ ***************************************************************************
+ *
+ * This file is part of the GetData project.
+ *
+ * GetData is free software; you can redistribute it and/or modify it under
+ * the terms of the GNU Lesser General Public License as published by the
+ * Free Software Foundation; either version 2.1 of the License, or (at your
+ * option) any later version.
+ *
+ * GetData is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
+ * License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with GetData; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+#include "test.h"
+
+#include <stdlib.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <fcntl.h>
+#include <string.h>
+#include <errno.h>
+
+int main(void)
+{
+ const char *filedir = "dirfile";
+ const char *format = "dirfile/format";
+ const char *format_data =
+ "data1 RAW UINT8 1\n"
+ "/ALIAS data2 data1\n"
+ "/ALIAS data3 data4\n";
+ int fd, error, r = 0;
+ unsigned int nfields;
+ DIRFILE *D;
+
+ rmdirfile();
+ mkdir(filedir, 0777);
+
+ fd = open(format, O_CREAT | O_EXCL | O_WRONLY, 0666);
+ write(fd, format_data, strlen(format_data));
+ close(fd);
+
+ D = gd_open(filedir, GD_RDONLY | GD_VERBOSE);
+ nfields = gd_nentries(D, NULL, GD_ALIAS_ENTRIES, 0);
+ error =...
[truncated message content] |
|
From: <ket...@us...> - 2012-06-27 23:16:53
|
Revision: 725
http://getdata.svn.sourceforge.net/getdata/?rev=725&view=rev
Author: ketiltrout
Date: 2012-06-27 23:16:46 +0000 (Wed, 27 Jun 2012)
Log Message:
-----------
Rename.
Added Paths:
-----------
trunk/getdata/test/elist_noalias.c
trunk/getdata/test/nentries_noalias.c
Removed Paths:
-------------
trunk/getdata/test/elist_alias.c
trunk/getdata/test/nentries_alias.c
Deleted: trunk/getdata/test/elist_alias.c
===================================================================
--- trunk/getdata/test/elist_alias.c 2012-06-27 00:51:18 UTC (rev 724)
+++ trunk/getdata/test/elist_alias.c 2012-06-27 23:16:46 UTC (rev 725)
@@ -1,75 +0,0 @@
-/* Copyright (C) 2011 D. V. Wiebe
- *
- ***************************************************************************
- *
- * This file is part of the GetData project.
- *
- * GetData is free software; you can redistribute it and/or modify it under
- * the terms of the GNU Lesser General Public License as published by the
- * Free Software Foundation; either version 2.1 of the License, or (at your
- * option) any later version.
- *
- * GetData is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
- * License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with GetData; if not, write to the Free Software Foundation, Inc.,
- * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- */
-#include "test.h"
-
-int main(void)
-{
- const char *filedir = "dirfile";
- const char *format = "dirfile/format";
- const char *format_data =
- "data1 RAW UINT8 1\n"
- "data2 RAW UINT8 1\n"
- "data3 RAW UINT8 1\n"
- "/ALIAS data4 data32\n";
- int fd, i, error, r = 0;
- const char **entry_list;
- DIRFILE *D;
-
- rmdirfile();
- mkdir(filedir, 0777);
-
- fd = open(format, O_CREAT | O_EXCL | O_WRONLY, 0666);
- write(fd, format_data, strlen(format_data));
- close(fd);
-
- D = gd_open(filedir, GD_RDONLY | GD_VERBOSE);
- entry_list = gd_entry_list(D, NULL, GD_ALL_ENTRIES, GD_ENTRIES_NOALIAS);
-
- error = gd_error(D);
-
- CHECKI(error, 0);
- CHECKPN(entry_list);
-
- for (i = 0; ; ++i) {
- if (entry_list[i] == NULL)
- break;
-
- if (strcmp(entry_list[i], "data1") == 0)
- continue;
- else if (strcmp(entry_list[i], "data2") == 0)
- continue;
- else if (strcmp(entry_list[i], "data3") == 0)
- continue;
- else if (strcmp(entry_list[i], "INDEX") == 0)
- continue;
-
- fprintf(stderr, "entry_list[%i] = \"%s\"\n", i, entry_list[i]);
- r = 1;
- }
-
- CHECKI(i, 4);
-
- gd_close(D);
- unlink(format);
- rmdir(filedir);
-
- return r;
-}
Copied: trunk/getdata/test/elist_noalias.c (from rev 724, trunk/getdata/test/elist_alias.c)
===================================================================
--- trunk/getdata/test/elist_noalias.c (rev 0)
+++ trunk/getdata/test/elist_noalias.c 2012-06-27 23:16:46 UTC (rev 725)
@@ -0,0 +1,75 @@
+/* Copyright (C) 2011 D. V. Wiebe
+ *
+ ***************************************************************************
+ *
+ * This file is part of the GetData project.
+ *
+ * GetData is free software; you can redistribute it and/or modify it under
+ * the terms of the GNU Lesser General Public License as published by the
+ * Free Software Foundation; either version 2.1 of the License, or (at your
+ * option) any later version.
+ *
+ * GetData is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
+ * License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with GetData; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+#include "test.h"
+
+int main(void)
+{
+ const char *filedir = "dirfile";
+ const char *format = "dirfile/format";
+ const char *format_data =
+ "data1 RAW UINT8 1\n"
+ "data2 RAW UINT8 1\n"
+ "data3 RAW UINT8 1\n"
+ "/ALIAS data4 data32\n";
+ int fd, i, error, r = 0;
+ const char **entry_list;
+ DIRFILE *D;
+
+ rmdirfile();
+ mkdir(filedir, 0777);
+
+ fd = open(format, O_CREAT | O_EXCL | O_WRONLY, 0666);
+ write(fd, format_data, strlen(format_data));
+ close(fd);
+
+ D = gd_open(filedir, GD_RDONLY | GD_VERBOSE);
+ entry_list = gd_entry_list(D, NULL, GD_ALL_ENTRIES, GD_ENTRIES_NOALIAS);
+
+ error = gd_error(D);
+
+ CHECKI(error, 0);
+ CHECKPN(entry_list);
+
+ for (i = 0; ; ++i) {
+ if (entry_list[i] == NULL)
+ break;
+
+ if (strcmp(entry_list[i], "data1") == 0)
+ continue;
+ else if (strcmp(entry_list[i], "data2") == 0)
+ continue;
+ else if (strcmp(entry_list[i], "data3") == 0)
+ continue;
+ else if (strcmp(entry_list[i], "INDEX") == 0)
+ continue;
+
+ fprintf(stderr, "entry_list[%i] = \"%s\"\n", i, entry_list[i]);
+ r = 1;
+ }
+
+ CHECKI(i, 4);
+
+ gd_close(D);
+ unlink(format);
+ rmdir(filedir);
+
+ return r;
+}
Deleted: trunk/getdata/test/nentries_alias.c
===================================================================
--- trunk/getdata/test/nentries_alias.c 2012-06-27 00:51:18 UTC (rev 724)
+++ trunk/getdata/test/nentries_alias.c 2012-06-27 23:16:46 UTC (rev 725)
@@ -1,66 +0,0 @@
-/* Copyright (C) 2012 D. V. Wiebe
- *
- ***************************************************************************
- *
- * This file is part of the GetData project.
- *
- * GetData is free software; you can redistribute it and/or modify it under
- * the terms of the GNU Lesser General Public License as published by the
- * Free Software Foundation; either version 2.1 of the License, or (at your
- * option) any later version.
- *
- * GetData is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
- * License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with GetData; if not, write to the Free Software Foundation, Inc.,
- * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- */
-#include "test.h"
-
-int main(void)
-{
- const char *filedir = "dirfile";
- const char *format = "dirfile/format";
- const char *format_data =
- "raw1 RAW UINT8 1\n"
- "META raw1 linterp1 LINTERP raw2 table\n"
- "META raw1 linterp2 LINTERP raw3 table\n"
- "META raw1 linterp3 LINTERP raw4 table\n"
- "META raw1 const CONST UINT8 1\n"
- "META raw1 string STRING value\n"
- "META raw1 string2 STRING value\n"
- "/ALIAS raw0 raw1\n"
- "/ALIAS raw1/const2 raw1/const\n"
- "raw2 RAW UINT8 1\n"
- "raw3 RAW UINT8 1\n"
- "raw4 RAW UINT8 1\n"
- "const CONST UINT8 1\n"
- "string STRING value\n"
- "string2 STRING value\n";
- int fd, error, r = 0;
- unsigned int nfields;
- DIRFILE *D;
-
- rmdirfile();
- mkdir(filedir, 0777);
-
- fd = open(format, O_CREAT | O_EXCL | O_WRONLY, 0666);
- write(fd, format_data, strlen(format_data));
- close(fd);
-
- D = gd_open(filedir, GD_RDONLY | GD_VERBOSE);
- nfields = gd_nentries(D, NULL, GD_ALL_ENTRIES, GD_ENTRIES_NOALIAS);
- error = gd_error(D);
- gd_close(D);
-
- unlink(format);
- rmdir(filedir);
-
- CHECKI(error, 0);
- CHECKI(nfields, 8);
-
- return r;
-}
Copied: trunk/getdata/test/nentries_noalias.c (from rev 724, trunk/getdata/test/nentries_alias.c)
===================================================================
--- trunk/getdata/test/nentries_noalias.c (rev 0)
+++ trunk/getdata/test/nentries_noalias.c 2012-06-27 23:16:46 UTC (rev 725)
@@ -0,0 +1,66 @@
+/* Copyright (C) 2012 D. V. Wiebe
+ *
+ ***************************************************************************
+ *
+ * This file is part of the GetData project.
+ *
+ * GetData is free software; you can redistribute it and/or modify it under
+ * the terms of the GNU Lesser General Public License as published by the
+ * Free Software Foundation; either version 2.1 of the License, or (at your
+ * option) any later version.
+ *
+ * GetData is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
+ * License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with GetData; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+#include "test.h"
+
+int main(void)
+{
+ const char *filedir = "dirfile";
+ const char *format = "dirfile/format";
+ const char *format_data =
+ "raw1 RAW UINT8 1\n"
+ "META raw1 linterp1 LINTERP raw2 table\n"
+ "META raw1 linterp2 LINTERP raw3 table\n"
+ "META raw1 linterp3 LINTERP raw4 table\n"
+ "META raw1 const CONST UINT8 1\n"
+ "META raw1 string STRING value\n"
+ "META raw1 string2 STRING value\n"
+ "/ALIAS raw0 raw1\n"
+ "/ALIAS raw1/const2 raw1/const\n"
+ "raw2 RAW UINT8 1\n"
+ "raw3 RAW UINT8 1\n"
+ "raw4 RAW UINT8 1\n"
+ "const CONST UINT8 1\n"
+ "string STRING value\n"
+ "string2 STRING value\n";
+ int fd, error, r = 0;
+ unsigned int nfields;
+ DIRFILE *D;
+
+ rmdirfile();
+ mkdir(filedir, 0777);
+
+ fd = open(format, O_CREAT | O_EXCL | O_WRONLY, 0666);
+ write(fd, format_data, strlen(format_data));
+ close(fd);
+
+ D = gd_open(filedir, GD_RDONLY | GD_VERBOSE);
+ nfields = gd_nentries(D, NULL, GD_ALL_ENTRIES, GD_ENTRIES_NOALIAS);
+ error = gd_error(D);
+ gd_close(D);
+
+ unlink(format);
+ rmdir(filedir);
+
+ CHECKI(error, 0);
+ CHECKI(nfields, 8);
+
+ return r;
+}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ket...@us...> - 2012-06-27 00:51:28
|
Revision: 724
http://getdata.svn.sourceforge.net/getdata/?rev=724&view=rev
Author: ketiltrout
Date: 2012-06-27 00:51:18 +0000 (Wed, 27 Jun 2012)
Log Message:
-----------
Sanity fix: delete gd_rename_alias and make gd_rename not deref. Doc updates.
Modified Paths:
--------------
trunk/getdata/ChangeLog
trunk/getdata/NEWS
trunk/getdata/bindings/perl/GetData.pm.in
trunk/getdata/configure.ac
trunk/getdata/m4/perl.m4
trunk/getdata/man/Makefile.am
trunk/getdata/man/dirfile-encoding.5
trunk/getdata/man/dirfile-format.5
trunk/getdata/man/gd_delete.3
trunk/getdata/man/gd_mplex_lookback.3
trunk/getdata/man/gd_naliases.3
trunk/getdata/man/gd_rename.3
trunk/getdata/man/make_html.pl
trunk/getdata/src/add.c
trunk/getdata/src/getdata.h.in
trunk/getdata/src/internal.h
trunk/getdata/src/name.c
trunk/getdata/src/parse.c
trunk/getdata/test/Makefile.am
trunk/getdata/test/name.c
trunk/getdata/test/name_updb.c
trunk/getdata/test/name_updb_const.c
Added Paths:
-----------
trunk/getdata/doc/README.perl.in
trunk/getdata/test/name_alias.c
trunk/getdata/test/name_move_alias.c
trunk/getdata/test/name_updb_alias.c
trunk/getdata/test/name_updb_const_alias.c
Removed Paths:
-------------
trunk/getdata/doc/README.perl
trunk/getdata/test/name_after.c
trunk/getdata/test/name_after_const.c
Property Changed:
----------------
trunk/getdata/test/
trunk/getdata/test/name_updb.c
trunk/getdata/test/name_updb_const.c
Modified: trunk/getdata/ChangeLog
===================================================================
--- trunk/getdata/ChangeLog 2012-06-25 15:13:34 UTC (rev 723)
+++ trunk/getdata/ChangeLog 2012-06-27 00:51:18 UTC (rev 724)
@@ -1,3 +1,17 @@
+2012-06-27 D. V. Wiebe <ge...@ke...> svn:724
+ * src/name.c (_GD_UpdateScalar _GD_InvalidateConst _GD_UpdateInField
+ _GD_InvalidateVect): Handle aliases.
+ * src/name.c (gd_rename): Don't dereference aliases.
+ * src/name.c (gd_rename_alias): Deleted.
+ * test/name.c test/name_updb_const.c test/name_updb.c: Updated.
+ * test/name_updb_const_alias.c test/name_move_alias.c test/name_alias.c
+ test/name_updb_alias.c: Added.
+ * test/name_after_const.c test/name_after.c: Deleted.
+
+ * src/parse.c (_GD_ResolveAlias): Reset aliases if requested.
+
+ * man/make_html.pl: Don't eat "**" in synopses.
+
2012-06-25 D. V. Wiebe <ge...@ke...> svn:723
* src/flush.c (_GD_FindVersion): ALIAS means >= 9.
Modified: trunk/getdata/NEWS
===================================================================
--- trunk/getdata/NEWS 2012-06-25 15:13:34 UTC (rev 723)
+++ trunk/getdata/NEWS 2012-06-27 00:51:18 UTC (rev 724)
@@ -11,7 +11,11 @@
can't be used as a parent when defining metafields, but are otherwise
indistinguishable from a field's original ("canonical") name.
- * The /VERSION directive now has fragment scope, which should
+ * The /VERSION directive now has fragment scope, which should alleviate some
+ of the problems associated with "version leakage" found in previous
+ versions. Previous versions are unchanged, but a "/VERSION 9" directive
+ will not propagate back up into a parent fragment, nor will any /VERSION
+ directive be propagated back up into a Version 9 fragment.
* Fields may be "hidden" using the /HIDDEN directive. The Standards don't say
what a "hidden" field does, but GetData will, by default, exclude them from
@@ -175,16 +179,15 @@
of an alias is retrned by gd_alias_target(); a list of aliases of a field,
or their number, is returned by gd_aliases() and gd_naliases().
+ * Because GetData considers aliases and canonical names to be
+ indistinguishable, passing an alias name to most functions will result in
+ the function operating on target field. To manipulate aliases themselves,
+ the API has the new interfaces gd_move_alias() and gd_delete_alias().
+
* In addition to the special symbol GD_HERE which may be passed to
gd_getdata() and gd_putdata(), the "current location" of fields may be
queried with gd_tell() and moved with gd_seek().
- * Because GetData considers aliases and canonical names to be
- indistinguishable, passing an alias name to most functions will result in
- the function operating on target field. To manipulate aliases themselves,
- the API has the new interfaces gd_move_alias(), gd_delete_alias(), and
- gd_rename_alias().
-
* The typedefs gd_bit_t and gd_spf_t have been deprecated. They are replaced
with 'int' and 'unsigned int' respectively. For backwards compatibility,
the typedefs (with their new types) are still declared in getdata.h, but the
Modified: trunk/getdata/bindings/perl/GetData.pm.in
===================================================================
--- trunk/getdata/bindings/perl/GetData.pm.in 2012-06-25 15:13:34 UTC (rev 723)
+++ trunk/getdata/bindings/perl/GetData.pm.in 2012-06-27 00:51:18 UTC (rev 724)
@@ -285,7 +285,7 @@
=back
-GetData internally converts the Perl data into a format readably by the C API.
+GetData internally converts the Perl data into a format readable by the C API.
In cases 3 and 4 above, the type the data is converted into is specified
explicitly in the call. In the other cases, GetData must guess an appropriate
C type into which to convert the data. It does so by looking at the first
@@ -411,9 +411,9 @@
=back
-This function always returns a valid Dirfile object, even if the call failed;
+This function always returns a Dirfile object, even if the call failed;
the caller should use the returned dirfile's L<error>() method to test for
-success.
+success. On error, the returned object will be flagged as invalid.
=item invalid_dirfile ()
Modified: trunk/getdata/configure.ac
===================================================================
--- trunk/getdata/configure.ac 2012-06-25 15:13:34 UTC (rev 723)
+++ trunk/getdata/configure.ac 2012-06-27 00:51:18 UTC (rev 724)
@@ -312,6 +312,9 @@
AC_CHECK_PROGS([DIFF], [diff], [])
GD_MSYS_SHELL
+echo
+echo "*** Checking host environment"
+echo
AC_MSG_CHECKING([whether ${host} supports fast unaligned memory access])
case "${host}" in
i?86-*-*|powerpc-*-*|x86_64-*-*) gd_unaligned_ok=yes;
@@ -965,6 +968,9 @@
AC_CONFIG_FILES([bindings/python/Makefile])
AC_CONFIG_FILES([bindings/python/test/Makefile])
AC_CONFIG_FILES([doc/Makefile])
+if test "x$make_perlbindings" != "xno"; then
+AC_CONFIG_FILES([doc/README.perl])
+fi
AC_CONFIG_FILES([man/Makefile])
AC_CONFIG_FILES([man/gd_alter_encoding.3])
AC_CONFIG_FILES([man/gd_alter_endianness.3])
Deleted: trunk/getdata/doc/README.perl
===================================================================
--- trunk/getdata/doc/README.perl 2012-06-25 15:13:34 UTC (rev 723)
+++ trunk/getdata/doc/README.perl 2012-06-27 00:51:18 UTC (rev 724)
@@ -1,12 +0,0 @@
-PERL BINDINGS FOR GETDATA
-=========================
-
-The Perl bindings consist of a perl module, `GetData.pm'. They should work with
-Perl 5.6 or newer. Complex is represented within the module as Math::Complex
-objects.
-
-The GetData Perl bindings are documented in POD markup within GetData.pm.
-After installation, this documentation should be available in section 3 of the
-UNIX manual:
-
- $ man 3 GetData
Copied: trunk/getdata/doc/README.perl.in (from rev 722, trunk/getdata/doc/README.perl)
===================================================================
--- trunk/getdata/doc/README.perl.in (rev 0)
+++ trunk/getdata/doc/README.perl.in 2012-06-27 00:51:18 UTC (rev 724)
@@ -0,0 +1,16 @@
+PERL BINDINGS FOR GETDATA
+=========================
+
+The Perl bindings consist of a perl module, `GetData.pm'. They should work with
+Perl 5.6 or newer. Complex data are represented within the module as
+Math::Complex objects.
+
+The GetData Perl bindings are documented in POD markup within GetData.pm.
+After installation, this documentation should be available in section @PERL_MAN3EXT@ of
+the UNIX manual:
+
+ $ man @PERL_MAN3EXT@ GetData
+
+Before installation, the manual can be read using a command along the lines of
+
+ $ pod2man bindings/perl/GetData.pm.in | nroff -mandoc | less
Modified: trunk/getdata/m4/perl.m4
===================================================================
--- trunk/getdata/m4/perl.m4 2012-06-25 15:13:34 UTC (rev 723)
+++ trunk/getdata/m4/perl.m4 2012-06-27 00:51:18 UTC (rev 724)
@@ -52,7 +52,7 @@
AC_DEFUN([GD_PERL_MAN3EXT],
[
AC_MSG_CHECKING([for the section 3 manual page extension])
-PERL_MAN3EXT=`$PERL -MModule::Build -e 'print Module::Build->new(module_name=>"conftest",dist_version=>0)->config('man3ext');'`
+PERL_MAN3EXT=`$PERL -MModule::Build -e 'print "\n>>GD ", Module::Build->new(module_name=>"conftest",dist_version=>0)->config('man3ext'), " GD<<";' | $AWK '/>>GD .* GD<</ { print @S|@2 }'`
AC_MSG_RESULT([.$PERL_MAN3EXT])
AC_SUBST([PERL_MAN3EXT])
])
Modified: trunk/getdata/man/Makefile.am
===================================================================
--- trunk/getdata/man/Makefile.am 2012-06-25 15:13:34 UTC (rev 723)
+++ trunk/getdata/man/Makefile.am 2012-06-27 00:51:18 UTC (rev 724)
@@ -84,7 +84,6 @@
gd_get_carray_slice.3:gd_get_carray.3 \
gd_put_carray_slice.3:gd_put_carray.3 \
gd_delete.3:gd_delete_alias.3 \
- gd_rename.3:gd_rename_alias.3 \
gd_move.3:gd_move_alias.3 \
gd_hide.3:gd_unhide.3 \
gd_add_alias.3:gd_madd_alias.3 \
@@ -98,8 +97,8 @@
gd_frameoffset64.3:gd_alter_frameoffset64.3
#man conversion
-HTMLMANS=$(addsuffix .html,$(nodist_man_MANS)) \
- $(addsuffix .html,$(dist_man_MANS))
+HTMLMANS=$(addsuffix .html,${nodist_man_MANS}) \
+ $(addsuffix .html,${dist_man_MANS})
%.html: % make_html.pl
./make_html.pl $< > $@
Modified: trunk/getdata/man/dirfile-encoding.5
===================================================================
--- trunk/getdata/man/dirfile-encoding.5 2012-06-25 15:13:34 UTC (rev 723)
+++ trunk/getdata/man/dirfile-encoding.5 2012-06-27 00:51:18 UTC (rev 724)
@@ -231,7 +231,7 @@
The ZZSlim Encoding is a convolution of the Slim Encoding and the ZZip Encoding.
To create ZZSlim Encoded files, first the raw data are compressed using the
-slim library, and then these slim-compressed files are archived (and comrpessed
+slim library, and then these slim-compressed files are archived (and compressed
again) into a ZIP archive. As with the ZZip Encoding, the ZIP archive is
.I raw.zip
by default, but a different name may be specified with the
@@ -239,7 +239,7 @@
directive.
.PP
Notably, since the archives have the same name as ZZip Encoded data, automatic
-encodind detection on ZZSlim Encoded data always fails: they are incorrectly
+encoding detection on ZZSlim Encoded data always fails: they are incorrectly
identified as simply ZZip Encoded. As a result, an
.B /ENCODING
directive in the format file or else a
Modified: trunk/getdata/man/dirfile-format.5
===================================================================
--- trunk/getdata/man/dirfile-format.5 2012-06-25 15:13:34 UTC (rev 723)
+++ trunk/getdata/man/dirfile-format.5 2012-06-27 00:51:18 UTC (rev 724)
@@ -205,8 +205,7 @@
original, canonical name. Aliases may be chained (that is, the target name
appearing in an /ALIAS directive may itself be an alias). In this case, the new
alias is another name for the target's own target. Just as there is no
-requriement that the input fields of a derived field exist
-.RI ( q.v. ),
+requriement that the input fields of a derived field exist,
it is not an error for the target of an alias to not exist. Syntax is:
.IP
.RS
@@ -214,12 +213,12 @@
.I <name> <target>
.RE
.IP
-A metafield alias may defined by using the
+A metafield alias may defined using the
.IR <parent-field> / <alias-name>
syntax for
.I name
in the /ALIAS directive. No restriction is placed on
-.IR target ,
+.IR target ;
specifically, a metafield alias may target a top-level field, or a metafield
of with a different parent; conversely, a top-level alias may target a
metafield.
@@ -237,7 +236,7 @@
\fB/ALIAS\fR field2/alias field1
.RE
.IP
-The metafield
+the metafield
.I field1/meta
may not be referred to as
.IR field2/alias/meta ,
@@ -294,7 +293,7 @@
The
.I enc-datum
token provides additional data for certain encoding schemes; see
-.BR dirfile-format (5)
+.BR dirfile-encoding (5)
for details. The form of enc-datum is not specified.
.PP
The /ENCODING directive has
@@ -531,7 +530,7 @@
and propagating downwards to sub-fragments after the directive.
.PP
In Standards Version 8 and earlier, its effect also propagates upwards back to
-the parent fragment, and affect subsequent metadata. Starting with Standards
+the parent fragment, and affects subsequent metadata. Starting with Standards
Version 9, this no longer happens. As a result, a /VERSION directive which
indicates a version of 9 or later never propagates upwards; additionally,
/VERSION directives found in subfragments included in a Version 9 or later
@@ -831,15 +830,8 @@
.I count
and
.I max
-are non-negative integers, either or both may be literal numbers, or else
-the field code of a
-.B CONST
-or
-.B CARRAY
-field type containing their values.
+are non-negative integers.
.PP
-The resultant field has the same sample rate as
-.IR input .
At every sample
.IR n ,
the derived field is computed as:
@@ -1199,8 +1191,6 @@
.IR check .
It may never be complex valued.
.PP
-The derived field has the same sample rate as
-.IR input .
Outside the region extracted, the value of the derived field is implementation
dependent.
.PP
Modified: trunk/getdata/man/gd_delete.3
===================================================================
--- trunk/getdata/man/gd_delete.3 2012-06-25 15:13:34 UTC (rev 723)
+++ trunk/getdata/man/gd_delete.3 2012-06-27 00:51:18 UTC (rev 724)
@@ -65,7 +65,8 @@
specified a
.B RAW
field and this flag is not specified, the field will still be deleted but the
-binary file will be left untouched.
+binary file will be left untouched. Ignored by
+.BR gd_delete_alias ().
.TP
.B GD_DEL_DEREF
If the field to be deleted is a
@@ -87,7 +88,8 @@
those, too. If the field has metafields and this flag is not specified, the
call will fail with the
.B GD_E_DELETE
-error.
+error. Ignored by
+.BR gd_delete_alias ().
.SH RETURN VALUE
On successful deletion, zero is returned. On error, -1 is returned and the
dirfile error is set to a non-zero error value. Possible error values are:
Modified: trunk/getdata/man/gd_mplex_lookback.3
===================================================================
--- trunk/getdata/man/gd_mplex_lookback.3 2012-06-25 15:13:34 UTC (rev 723)
+++ trunk/getdata/man/gd_mplex_lookback.3 2012-06-27 00:51:18 UTC (rev 724)
@@ -13,7 +13,7 @@
.\" Texts. A copy of the license is included in the `COPYING.DOC' file
.\" as part of this distribution.
.\"
-.TH gd_mplex_lookback 3 "21 April 2012" "Version 0.8.0" "GETDATA"
+.TH gd_mplex_lookback 3 "20 June 2012" "Version 0.8.0" "GETDATA"
.SH NAME
gd_mplex_lookback \(em set the GetData lookback length for MPLEX fields.
.SH SYNOPSIS
@@ -35,7 +35,8 @@
If the first sample returned of a
.B MPLEX
-field does not contain the value of the field, GetData must search the field
+field does not contain the value of the field, because the index field does not
+take on the specified multiplex index value, GetData must search the field
backwards to find the last time the field was updated, in order to propagate
that value into the initial portion of the returned data. (See
.BR gd_getdata (3)
@@ -63,10 +64,8 @@
.I MPLEX cycles
to search. Each
.B MPLEX
-field has its own
-.B MPLEX
-cycle length, measured in samples of the index field, which is defined as
-follows:
+field has its own MPLEX cycle length, measured in samples of the index field,
+which is defined as follows:
.IP \(bu
if the
.B MPLEX
@@ -75,7 +74,7 @@
positive parameter (see the MPLEX definition in dirfile-format(5)), its MPLEX
cycle length is that many samples;
.IP \(bu
-if the
+otherwise, if the
.B MPLEX
field's
.I count_val
Modified: trunk/getdata/man/gd_naliases.3
===================================================================
--- trunk/getdata/man/gd_naliases.3 2012-06-25 15:13:34 UTC (rev 723)
+++ trunk/getdata/man/gd_naliases.3 2012-06-27 00:51:18 UTC (rev 724)
@@ -30,7 +30,7 @@
function queries a dirfile(5) database specified by
.I dirfile
and returns the number of aliases of the field specified by
-.IR field code .
+.IR field_code .
The
.I dirfile
Modified: trunk/getdata/man/gd_rename.3
===================================================================
--- trunk/getdata/man/gd_rename.3 2012-06-25 15:13:34 UTC (rev 723)
+++ trunk/getdata/man/gd_rename.3 2012-06-27 00:51:18 UTC (rev 724)
@@ -13,9 +13,9 @@
.\" Texts. A copy of the license is included in the `COPYING.DOC' file
.\" as part of this distribution.
.\"
-.TH gd_rename 3 "19 April 2012" "Version 0.8.0" "GETDATA"
+.TH gd_rename 3 "27 June 2012" "Version 0.8.0" "GETDATA"
.SH NAME
-gd_rename, gd_rename_alias \(em change the name of a dirfile field or alias
+gd_rename \(em change the name of a dirfile field or alias
.SH SYNOPSIS
.B #include <getdata.h>
.HP
@@ -23,15 +23,12 @@
.ad l
.BI "int gd_rename(DIRFILE *" dirfile ", const char"
.BI * old_code ", const char *" new_name ", unsigned int " flags );
-.HP
-.BI "int gd_rename_alias(DIRFILE *" dirfile ", const char *" old_code ,
-.BI "const char *" new_name );
.hy
.ad n
.SH DESCRIPTION
The
.BR gd_rename ()
-function changes the name of the field specified by
+function changes the name of the field or alias specified by
.IR old_code ,
which should not contain a representation suffix, defined in the dirfile
specified by
@@ -40,18 +37,6 @@
.IR new_name .
If the new name is the same as the old name, this function does nothing.
-The
-.BR gd_rename_alias ()
-function behaves similarly, but renames the alias specified by
-.I alias_name
-instead. (This function is needed, since passing
-.I alias_name
-to
-.BR gd_rename ()
-as
-.I old_code
-would have resulted in the field pointed to by the alias being renamed instead.)
-
When renaming a metafield, the metafield should be specified in
.I old_code
by its full (slashed) field code, while
Modified: trunk/getdata/man/make_html.pl
===================================================================
--- trunk/getdata/man/make_html.pl 2012-06-25 15:13:34 UTC (rev 723)
+++ trunk/getdata/man/make_html.pl 2012-06-27 00:51:18 UTC (rev 724)
@@ -132,7 +132,7 @@
s/ / /g if ($nf and not /^\./);
# sugar
- s/\*\*([0-9]*)/<sup>$1<\/sup>/;
+ s/\*\*([0-9]+)/<sup>$1<\/sup>/;
if ($table) {
if (/center tab/) {
@@ -366,7 +366,8 @@
$html =~ s/ \* / × /g;
$html =~ s/\\~/ /g;
$html =~ s/(<B>(gd_\w*?)<\/B>\(3\))/<A HREF="$2.3.html">$1<\/A>/g;
-$html =~ s/((?:<B>)?(dirfile[-a-z]*)(?:<\/B>)?\(5\))/<A HREF="$2.5.html">$1<\/A>/g;
+$html =~ s/(<B>(dirfile[-a-z]*)<\/B>\(5\))/<A HREF="$2.5.html">$1<\/A>/g;
+$html =~ s/([^>])(dirfile[-a-z]*)<\/B>\(5\)/$1<A HREF="$2.5.html">$2<\/A>/g;
$html =~ s/\\e/\\/g;
Modified: trunk/getdata/src/add.c
===================================================================
--- trunk/getdata/src/add.c 2012-06-25 15:13:34 UTC (rev 723)
+++ trunk/getdata/src/add.c 2012-06-27 00:51:18 UTC (rev 724)
@@ -551,8 +551,8 @@
D->fragment[E->fragment_index].modified = 1;
D->flags &= ~GD_HAVE_VERSION;
- /* Update aliases */
- _GD_UpdateAliases(D);
+ /* Update aliases - no reason to do a reset: all we did was add a field */
+ _GD_UpdateAliases(D, 0);
dreturn("%p", E);
return E;
@@ -621,7 +621,7 @@
}
/* Update aliases */
- _GD_UpdateAliases(D);
+ _GD_UpdateAliases(D, 0);
D->fragment[me].modified = 1;
D->flags &= ~GD_HAVE_VERSION;
@@ -686,7 +686,7 @@
}
/* Update aliases */
- _GD_UpdateAliases(D);
+ _GD_UpdateAliases(D, 0);
D->fragment[fragment_index].modified = 1;
D->flags &= ~GD_HAVE_VERSION;
@@ -2040,7 +2040,7 @@
/* Update aliases */
- _GD_UpdateAliases(D);
+ _GD_UpdateAliases(D, 0);
dreturn("%i", 0);
return 0;
Modified: trunk/getdata/src/getdata.h.in
===================================================================
--- trunk/getdata/src/getdata.h.in 2012-06-25 15:13:34 UTC (rev 723)
+++ trunk/getdata/src/getdata.h.in 2012-06-27 00:51:18 UTC (rev 724)
@@ -889,9 +889,6 @@
extern const char *gd_reference(DIRFILE *dirfile,
const char *field_code) gd_nothrow gd_nonnull ((1));
-extern int gd_rename_alias(DIRFILE *dirfile, const char *old_code,
- const char *new_name) gd_nothrow gd_nonnull ((1,2,3));
-
extern unsigned int gd_spf(DIRFILE *dirfile, const char *field_code) gd_nothrow
gd_nonnull ((1, 2));
Modified: trunk/getdata/src/internal.h
===================================================================
--- trunk/getdata/src/internal.h 2012-06-25 15:13:34 UTC (rev 723)
+++ trunk/getdata/src/internal.h 2012-06-27 00:51:18 UTC (rev 724)
@@ -1124,7 +1124,7 @@
int _GD_Tokenise(DIRFILE *restrict, const char *restrict, char **,
const char **, int, char **, const char *restrict, int linenum,
int standards, int pedantic);
-void _GD_UpdateAliases(DIRFILE*);
+void _GD_UpdateAliases(DIRFILE*, int);
int _GD_ValidateField(const char*, int, int, int, int*);
off64_t _GD_WriteSeek(DIRFILE *restrict, gd_entry_t *restrict,
const struct encoding_t *restrict, off64_t, unsigned int mode);
Modified: trunk/getdata/src/name.c
===================================================================
--- trunk/getdata/src/name.c 2012-06-25 15:13:34 UTC (rev 723)
+++ trunk/getdata/src/name.c 2012-06-27 00:51:18 UTC (rev 724)
@@ -204,13 +204,23 @@
* pass == 3: initialise update
*/
static char **_GD_UpdateScalar(DIRFILE *D, gd_entry_t *T, const gd_entry_t *E,
- char **list, size_t len, int n, int pass, int *nl)
+ const char *old_name, char **list, size_t len, int n, int pass, int *nl)
{
char **ptr;
- dtrace("%p, %p, %p, %p, %" PRNsize_t ", %i, %i, %i", D, T, E, list, len, n,
- pass, *nl);
+ size_t old_len;
- if (pass & GD_UPDI) {
+ dtrace("%p, %p, %p, \"%s\", %p, %" PRNsize_t ", %i, %i, %i", D, T, E,
+ old_name, list, len, n, pass, *nl);
+
+ old_len = strlen(old_name);
+ if (strncmp(T->scalar[n], old_name, old_len) ||
+ !(T->scalar[n][old_len] == 0 || T->scalar[n][old_len] == '.'))
+ {
+ dreturn("%p (-)", list);
+ return list;
+ }
+
+ if (pass & GD_UPDI) { /* pass 1 or 3 */
if ((ptr = (char**)_GD_Realloc(D, list, sizeof(char *) * (*nl + 1)))
== NULL)
{
@@ -220,7 +230,11 @@
}
list = ptr;
list[(*nl)++] = (char*)_GD_Malloc(D, len + 3);
+ } else if (pass == 0) {
+ if (!T->e->calculated)
+ _GD_CalculateEntry(D, T, 0);
} else if (pass == 2) {
+ T->e->calculated = 0;
D->fragment[T->fragment_index].modified = 1;
free(T->scalar[n]);
T->scalar[n] = list[(*nl)++];
@@ -236,91 +250,42 @@
return list;
}
-static char **_GD_InvalidateConst(DIRFILE *D, const gd_entry_t *E, char **list,
- size_t len, int pass, int *nl)
-{
- int i, j;
- unsigned u;
-
- dtrace("%p, %p, %p, %" PRNsize_t ", %i, %p", D, E, list, len, pass, nl);
-
- if (pass & GD_UPDI)
- for (u = 0; u < D->n_entries; ++u)
- if (!D->entry[u]->e->calculated)
- _GD_CalculateEntry(D, D->entry[u], 0);
-
- for (j = 0; j < E->e->u.scalar.n_client; ++j) {
- if (!(pass & GD_UPDI))
- E->e->u.scalar.client[j]->e->calculated = 0;
-
- if (!(pass & GD_UPDU))
- continue;
-
- switch (E->e->u.scalar.client[j]->field_type) {
- case GD_LINCOM_ENTRY:
- for (i = 0; i < E->e->u.scalar.client[j]->EN(lincom,n_fields); ++i) {
- list = _GD_UpdateScalar(D, E->e->u.scalar.client[j], E, list, len, i,
- pass, nl);
- list = _GD_UpdateScalar(D, E->e->u.scalar.client[j], E, list, len,
- i + GD_MAX_LINCOM, pass, nl);
- }
- break;
- case GD_POLYNOM_ENTRY:
- for (i = 0; i <= E->e->u.scalar.client[j]->EN(polynom,poly_ord); ++i)
- list = _GD_UpdateScalar(D, E->e->u.scalar.client[j], E, list, len, i,
- pass, nl);
- break;
- case GD_BIT_ENTRY:
- case GD_SBIT_ENTRY:
- case GD_MPLEX_ENTRY:
- list = _GD_UpdateScalar(D, E->e->u.scalar.client[j], E, list, len, 1,
- pass, nl);
- /* Fallthrough */
- case GD_PHASE_ENTRY:
- case GD_RAW_ENTRY:
- case GD_RECIP_ENTRY:
- case GD_WINDOW_ENTRY:
- list = _GD_UpdateScalar(D, E->e->u.scalar.client[j], E, list, len, 0,
- pass, nl);
- break;
- case GD_NO_ENTRY:
- case GD_LINTERP_ENTRY:
- case GD_MULTIPLY_ENTRY:
- case GD_DIVIDE_ENTRY:
- case GD_INDEX_ENTRY:
- case GD_STRING_ENTRY:
- case GD_CONST_ENTRY:
- case GD_CARRAY_ENTRY:
- break;
- }
- }
-
- dreturn("%p", list);
- return list;
-}
-
/* pass == 0: clear cached derived entries
- * pass == 1: initialise re-writen derived channels
+ * pass == 1: unused
* pass == 2: finalise re-writen derivd channels
+ * pass == 3: initialise re-writen derived channels
*/
static char **_GD_UpdateInField(DIRFILE *D, gd_entry_t *T, const gd_entry_t *E,
- char **list, size_t len, int n, int pass, int *nl)
+ const char *old_name, char **list, size_t len, int n, int pass, int *nl)
{
char **ptr;
- dtrace("%p, %p, %p, %p, %" PRNsize_t ", %i, %i, %i", D, T, E, list, len, n,
- pass, *nl);
+ int m = n;
+ dtrace("%p, %p, %p, \"%s\", %p, %" PRNsize_t ", %i, %i, %i", D, T, E,
+ old_name, list, len, n, pass, *nl);
- if (pass != 0 && T->e->entry[n] == NULL)
+ if (T->field_type == GD_ALIAS_ENTRY)
+ m = 1;
+ else if (pass != 0 && T->e->entry[n] == NULL)
_GD_BadInput(D, T, n, 0);
- if (T->e->entry[n] != E) {
+ if (E->field_type == GD_ALIAS_ENTRY) {
+ /* it's hard to detect the use of an alias other than by inspecting the
+ * name itself */
+ size_t len = strlen(old_name);
+ if (strncmp(T->in_fields[n], old_name, len) ||
+ !(T->in_fields[n][len] == 0 || T->in_fields[n][len] == '.'))
+ {
+ dreturn("%p (a-)", list);
+ return list;
+ }
+ } else if (T->e->entry[m] != E) {
dreturn("%p (-)", list);
return list;
}
if (pass == 0)
- T->e->entry[n] = NULL;
- else if (pass == 1) {
+ T->e->entry[m] = NULL;
+ else if (pass == 3) {
if ((ptr = (char**)_GD_Realloc(D, list, sizeof(char *) * (*nl + 1)))
== NULL)
{
@@ -346,32 +311,99 @@
return list;
}
-static char **_GD_InvalidateVect(DIRFILE *D, const gd_entry_t *E, char **list,
- size_t len, int pass, int *nl)
+static char **_GD_InvalidateConst(DIRFILE *D, const gd_entry_t *E,
+ const char *old_name, char **list, size_t len, int pass, int *nl)
{
+ int i;
unsigned u;
+ dtrace("%p, %p, \"%s\", %p, %" PRNsize_t ", %i, %p", D, E, old_name, list,
+ len, pass, nl);
+
+ /* aliases prevent us from just running over this field's client list */
+ for (u = 0; u < D->n_entries; ++u)
+ if (D->entry[u] != E) {
+ switch (D->entry[u]->field_type) {
+ case GD_LINCOM_ENTRY:
+ for (i = 0; i < D->entry[u]->EN(lincom,n_fields); ++i) {
+ list = _GD_UpdateScalar(D, D->entry[u], E, old_name, list, len, i,
+ pass, nl);
+ list = _GD_UpdateScalar(D, D->entry[u], E, old_name, list, len,
+ i + GD_MAX_LINCOM, pass, nl);
+ }
+ break;
+ case GD_POLYNOM_ENTRY:
+ for (i = 0; i <= D->entry[u]->EN(polynom,poly_ord); ++i)
+ list = _GD_UpdateScalar(D, D->entry[u], E, old_name, list, len, i,
+ pass, nl);
+ break;
+ case GD_BIT_ENTRY:
+ case GD_SBIT_ENTRY:
+ case GD_MPLEX_ENTRY:
+ list = _GD_UpdateScalar(D, D->entry[u], E, old_name, list, len, 1,
+ pass, nl);
+ /* Fallthrough */
+ case GD_PHASE_ENTRY:
+ case GD_RAW_ENTRY:
+ case GD_RECIP_ENTRY:
+ case GD_WINDOW_ENTRY:
+ list = _GD_UpdateScalar(D, D->entry[u], E, old_name, list, len, 0,
+ pass, nl);
+ break;
+ case GD_ALIAS_ENTRY:
+ list = _GD_UpdateInField(D, D->entry[u], E, old_name, list, len, 0,
+ pass, nl);
+ break;
+ case GD_NO_ENTRY:
+ case GD_LINTERP_ENTRY:
+ case GD_MULTIPLY_ENTRY:
+ case GD_DIVIDE_ENTRY:
+ case GD_INDEX_ENTRY:
+ case GD_STRING_ENTRY:
+ case GD_CONST_ENTRY:
+ case GD_CARRAY_ENTRY:
+ break;
+ }
+ }
+
+ /* gotta update those aliases ... */
+ for (u = 0; u < D->n_entries; ++u)
+ if (D->entry[u] != E && D->entry[u]->field_type == GD_ALIAS_ENTRY)
+
+ dreturn("%p", list);
+ return list;
+}
+
+static char **_GD_InvalidateVect(DIRFILE *D, const gd_entry_t *E,
+ const char *old_name, char **list, size_t len, int pass, int *nl)
+{
+ unsigned u;
+
dtrace("%p, %p, %p, %" PRNsize_t ", %i, %p", D, E, list, len, pass, nl);
for (u = 0; u < D->n_entries; ++u) {
if (D->entry[u] != E)
switch (D->entry[u]->field_type) {
case GD_LINCOM_ENTRY:
- list = _GD_UpdateInField(D, D->entry[u], E, list, len, 2, pass, nl);
+ list = _GD_UpdateInField(D, D->entry[u], E, old_name, list, len, 2,
+ pass, nl);
/* Fallthrough */
case GD_MULTIPLY_ENTRY:
case GD_DIVIDE_ENTRY:
case GD_WINDOW_ENTRY:
case GD_MPLEX_ENTRY:
- list = _GD_UpdateInField(D, D->entry[u], E, list, len, 1, pass, nl);
+ list = _GD_UpdateInField(D, D->entry[u], E, old_name, list, len, 1,
+ pass, nl);
/* Fallthrough */
+ case GD_ALIAS_ENTRY:
case GD_LINTERP_ENTRY:
case GD_BIT_ENTRY:
case GD_PHASE_ENTRY:
case GD_POLYNOM_ENTRY:
case GD_RECIP_ENTRY:
case GD_SBIT_ENTRY:
- list = _GD_UpdateInField(D, D->entry[u], E, list, len, 0, pass, nl);
+ list = _GD_UpdateInField(D, D->entry[u], E, old_name, list, len, 0,
+ pass, nl);
break;
case GD_INDEX_ENTRY:
case GD_RAW_ENTRY:
@@ -593,6 +625,7 @@
gd_entry_t *E = NULL;
int ret, i, nl = 0, old_dot = 0;
size_t len;
+ gd_entype_t type;
unsigned dot_ind = 0;
char **code_list = NULL;
@@ -615,7 +648,7 @@
if (E)
old_dot = 1;
else
- E = _GD_FindField(D, old_code, D->entry, D->n_entries, 1, NULL);
+ E = _GD_FindField(D, old_code, D->entry, D->n_entries, 0, NULL);
if (E == NULL) {
_GD_SetError(D, GD_E_BAD_CODE, GD_E_CODE_MISSING, NULL, 0, old_code);
@@ -623,19 +656,26 @@
return -1;
}
- if (E->field_type == GD_INDEX_ENTRY) {
+ type = E->field_type;
+
+ if (type == GD_INDEX_ENTRY) {
_GD_SetError(D, GD_E_BAD_FIELD_TYPE, GD_E_FIELD_BAD, NULL, 0, "INDEX");
dreturn("%i", -1);
return -1;
}
+ /* resolve field type */
+ if (type == GD_ALIAS_ENTRY && E->e->entry[0])
+ type = E->e->entry[0]->field_type;
+
/* check derived/client fields */
- if (E->field_type == GD_CARRAY_ENTRY || E->field_type == GD_CONST_ENTRY)
- code_list = _GD_InvalidateConst(D, E, code_list, len,
+ if (type == GD_CARRAY_ENTRY || type == GD_CONST_ENTRY)
+ code_list = _GD_InvalidateConst(D, E, old_code, code_list, len,
GD_UPDI | (flags & GD_REN_UPDB ? GD_UPDU : 0), &nl);
- else if (E->field_type != GD_STRING_ENTRY)
+ else if (type != GD_STRING_ENTRY)
if (flags & GD_REN_UPDB)
- code_list = _GD_InvalidateVect(D, E, code_list, len, 1, &nl);
+ code_list = _GD_InvalidateVect(D, E, old_code, code_list, len,
+ GD_UPDI | GD_UPDU, &nl);
if (D->error) {
if (code_list) {
@@ -652,14 +692,17 @@
if (!ret) {
nl = 0;
/* update derived/client fields */
- if (E->field_type == GD_CARRAY_ENTRY || E->field_type == GD_CONST_ENTRY)
- _GD_InvalidateConst(D, E, code_list, 0,
+ if (type == GD_CARRAY_ENTRY || type == GD_CONST_ENTRY)
+ _GD_InvalidateConst(D, E, old_code, code_list, 0,
flags & GD_REN_UPDB ? GD_UPDU : 0, &nl);
- else if (E->field_type != GD_STRING_ENTRY)
- _GD_InvalidateVect(D, E, code_list, 0,
+ else if (type != GD_STRING_ENTRY)
+ _GD_InvalidateVect(D, E, old_code, code_list, 0,
flags & GD_REN_UPDB ? GD_UPDU : 0, &nl);
}
+ /* rehash the aliases */
+ _GD_UpdateAliases(D, 1);
+
if (code_list) {
if (D->error)
for (i = 0; i < nl; ++i)
@@ -670,39 +713,3 @@
dreturn("%i", ret);
return ret;
}
-
-int gd_rename_alias(DIRFILE *D, const char *old_code, const char *new_name)
- gd_nothrow
-{
- gd_entry_t *E;
- int ret;
-
- dtrace("%p, \"%s\", \"%s\"", D, old_code, new_name);
-
- if (D->flags & GD_INVALID) {
- _GD_SetError(D, GD_E_BAD_DIRFILE, 0, NULL, 0, NULL);
- dreturn("%i", -1);
- return -1;
- }
-
- _GD_ClearError(D);
-
- E = _GD_FindField(D, old_code, D->entry, D->n_entries, 0, NULL);
-
- if (E == NULL) {
- _GD_SetError(D, GD_E_BAD_CODE, GD_E_CODE_MISSING, NULL, 0, old_code);
- dreturn("%i", -1);
- return -1;
- }
-
- if (E->field_type != GD_ALIAS_ENTRY) {
- _GD_SetError(D, GD_E_BAD_FIELD_TYPE, GD_E_FIELD_BAD, NULL, 0, "INDEX");
- dreturn("%i", -1);
- return -1;
- }
-
- ret = _GD_Rename(D, E, new_name, 0, 0, 0);
-
- dreturn("%i", ret);
- return ret;
-}
Modified: trunk/getdata/src/parse.c
===================================================================
--- trunk/getdata/src/parse.c 2012-06-25 15:13:34 UTC (rev 723)
+++ trunk/getdata/src/parse.c 2012-06-27 00:51:18 UTC (rev 724)
@@ -2229,12 +2229,17 @@
return D->error ? NULL : E->e->entry[0];
}
-void _GD_UpdateAliases(DIRFILE *D)
+void _GD_UpdateAliases(DIRFILE *D, int reset)
{
unsigned u;
- dtrace("%p", D);
+ dtrace("%p, %i", D, reset);
+ if (reset)
+ for (u = 0; u < D->n_entries; ++u)
+ if (D->entry[u]->field_type == GD_ALIAS_ENTRY)
+ D->entry[u]->e->entry[0] = D->entry[u]->e->entry[1] = NULL;
+
for (u = 0; u < D->n_entries; ++u)
if (D->entry[u]->field_type == GD_ALIAS_ENTRY &&
D->entry[u]->e->entry[1] == NULL)
@@ -2377,7 +2382,7 @@
/* resolve aliases, if requested */
if (resolve && !D->error)
- _GD_UpdateAliases(D);
+ _GD_UpdateAliases(D, 0);
dreturn("%p", ref_name);
return ref_name;
Property changes on: trunk/getdata/test
___________________________________________________________________
Modified: svn:ignore
- Makefile
Makefile.in
*.o
dirfile
*.swp
*.exe
.deps
.libs
add
add_affix
add_alias
add_alias_meta
add_bit
add_bit_bitnum
add_bit_bitsize
add_bit_invalid
add_bit_numbits
add_carray
add_clincom
add_code
add_const
add_cpolynom
add_crecip
add_crecip89
add_divide
add_divide_invalid
add_duplicate
add_format
add_invalid
add_lincom
add_lincom_invalid
add_lincom_nfields
add_linterp
add_linterp_invalid
add_meta
add_meta_alias
add_mplex
add_mplex_val
add_multiply
add_multiply_invalid
add_phase
add_phase_invalid
add_polynom
add_protect
add_raw
add_raw_include
add_raw_invalid
add_raw_spf
add_raw_type
add_rdonly
add_recip
add_resolv
add_sbit
add_scalar
add_scalar_carray
add_sort
add_spec
add_spec_directive
add_spec_invalid
add_spec_meta
add_spec_resolv
add_string
add_string_affix
add_type
add_window
add_window_op
alias_list
alias_list_alias
alias_list_missing
alias_num
alias_num_alias
alias_num_missing
alias_target
alias_target_alias
alias_target_missing
alter_bit_bitnum
alter_bit_numbits
alter_carray_len
alter_carray_type
alter_const
alter_cpolynom
alter_crecip
alter_crecip89
alter_crecip_zero
alter_divide
alter_entry
alter_entry_affix
alter_entry_hidden
alter_entry_recode
alter_entry_scalar2a
alter_entry_scalar2n
alter_entry_scalar3
alter_entry_scalar4
alter_lincom_23
alter_lincom_32
alter_lincom_input
alter_lincom_offset
alter_lincom_slope
alter_linterp
alter_linterp_move
alter_mplex
alter_mspec
alter_mspec_affix
alter_multiply
alter_phase
alter_polynom_coeff
alter_polynom_input
alter_polynom_ord
alter_raw_spf
alter_raw_type
alter_recip
alter_recip_zero
alter_spec
alter_spec_affix
alter_spec_meta
alter_window
ascii_add
ascii_get
ascii_get_get
ascii_nframes
ascii_put
bof
bof_lincom
bof_phase
bzip_get
bzip_get_get
bzip_move_from
bzip_nframes
bzip_put
close
close_bad
close_discard
close_null
convert_complex128_complex64
convert_complex128_float64
convert_complex128_int64
convert_complex128_uint64
convert_complex64_complex128
convert_complex64_float64
convert_complex64_int64
convert_complex64_uint64
convert_float32_complex128
convert_float32_complex64
convert_float32_float64
convert_float32_int16
convert_float32_int32
convert_float32_int64
convert_float32_int8
convert_float32_uint16
convert_float32_uint32
convert_float32_uint64
convert_float32_uint8
convert_float64_complex128
convert_float64_complex64
convert_float64_float32
convert_float64_int16
convert_float64_int32
convert_float64_int64
convert_float64_int8
convert_float64_uint16
convert_float64_uint32
convert_float64_uint64
convert_float64_uint8
convert_int16_complex128
convert_int16_complex64
convert_int16_float32
convert_int16_float64
convert_int16_int32
convert_int16_int64
convert_int16_int8
convert_int16_uint16
convert_int16_uint32
convert_int16_uint64
convert_int16_uint8
convert_int32_complex128
convert_int32_complex64
convert_int32_float32
convert_int32_float64
convert_int32_int16
convert_int32_int64
convert_int32_int8
convert_int32_uint16
convert_int32_uint32
convert_int32_uint64
convert_int32_uint8
convert_int64_complex128
convert_int64_complex64
convert_int64_float32
convert_int64_float64
convert_int64_int16
convert_int64_int32
convert_int64_int8
convert_int64_uint16
convert_int64_uint32
convert_int64_uint64
convert_int64_uint8
convert_int8_complex128
convert_int8_complex64
convert_int8_float32
convert_int8_float64
convert_int8_int16
convert_int8_int32
convert_int8_int64
convert_int8_uint16
convert_int8_uint32
convert_int8_uint64
convert_int8_uint8
convert_uint16_complex128
convert_uint16_complex64
convert_uint16_float32
convert_uint16_float64
convert_uint16_int16
convert_uint16_int32
convert_uint16_int64
convert_uint16_int8
convert_uint16_uint32
convert_uint16_uint64
convert_uint16_uint8
convert_uint32_complex128
convert_uint32_complex64
convert_uint32_float32
convert_uint32_float64
convert_uint32_int16
convert_uint32_int32
convert_uint32_int64
convert_uint32_int8
convert_uint32_uint16
convert_uint32_uint64
convert_uint32_uint8
convert_uint64_complex128
convert_uint64_complex64
convert_uint64_float32
convert_uint64_float64
convert_uint64_int16
convert_uint64_int32
convert_uint64_int64
convert_uint64_int8
convert_uint64_uint16
convert_uint64_uint32
convert_uint64_uint8
convert_uint8_complex128
convert_uint8_complex64
convert_uint8_float32
convert_uint8_float64
convert_uint8_int16
convert_uint8_int32
convert_uint8_int64
convert_uint8_int8
convert_uint8_uint16
convert_uint8_uint32
convert_uint8_uint64
creat
creat_excl
creat_rdonly
cvlist
cvlist_array
cvlist_array_hidden
cvlist_array_meta
cvlist_array_meta_hidden
cvlist_hidden
cvlist_invalid
cvlist_meta
cvlist_meta_hidden
cvlist_meta_invalid
del
del_carray
del_carray_deref
del_const
del_const_deref
del_const_force
del_data
del_derived
del_derived_after
del_derived_force
del_meta
del_meta_force
desync
desync_flush
desync_reopen
desync_reopen_inv
dfes_bit
dfes_divide
dfes_lincom
dfes_linterp
dfes_multiply
dfes_null
dfes_phase
dfes_raw
dfes_recip
dfes_zero
elist_alias
elist_hidden
elist_scalar
encode_alter
encode_get
encode_move
endian_alter
endian_alter_sie
endian_get
endian_move
entry_bad_code
entry_bit
entry_bit_scalar
entry_divide
entry_invalid
entry_lincom
entry_lincom_scalar
entry_linterp
entry_mplex
entry_mplex_scalar
entry_multiply
entry_phase
entry_phase_scalar
entry_polynom
entry_polynom_scalar
entry_raw
entry_raw_scalar
entry_raw_scalar_code
entry_raw_scalar_type
entry_recip
entry_scalar_repr
entry_type
entry_type_alias
entry_window
entry_window_scalar
eof
eof_index
eof_lincom
eof_phase
error
error_error
error_num
error_short
error_verbose
error_verbose_prefix
file
file_code
file_type
flist
flist_hidden
flist_invalid
flist_meta
flist_meta_hidden
flist_meta_invalid
flist_type
flist_type_hidden
flist_type_invalid
flist_type_meta
flist_type_meta_hidden
flist_type_meta_invalid
flush
flush_all
flush_bad_code
flush_invalid
flush_meta
flush_spec
foffs_alter
foffs_get
foffs_move
fragment_affix
fragment_affix_alter
fragment_affix_alter2
fragment_affix_dup
fragment_index
fragment_index_alias
fragment_name
fragment_name_oor
fragment_num
fragment_parent
get64
get_bad_code
get_bit
get_carray
get_carray_len
get_carray_slice
get_char
get_clincom
get_complex128
get_complex64
get_const
get_const_complex
get_const_repr
get_cpolynom
get_divide
get_endian16
get_endian32
get_endian64
get_endian8
get_endian_complex128_arm
get_endian_complex128_big
get_endian_complex128_little
get_endian_complex64_arm
get_endian_complex64_big
get_endian_complex64_little
get_endian_float32_arm
get_endian_float32_big
get_endian_float32_little
get_endian_float64_arm
get_endian_float64_big
get_endian_float64_little
get_ff
get_float32
get_float64
get_foffs
get_fs
get_here
get_here_foffs
get_heres
get_int16
get_int32
get_int64
get_int8
get_invalid
get_lincom1
get_lincom2
get_lincom3
get_lincom_noin
get_lincom_non
get_lincom_null
get_lincom_spf
get_linterp
get_linterp_noin
get_linterp_notab
get_linterp_sort
get_mplex
get_mplex_lb
get_mplex_lball
get_mplex_nolb
get_multiply
get_multiply_noin
get_nonexistent
get_null
get_off64
get_phase
get_phase_affix
get_polynom
get_polynom_noin
get_recip
get_recip_const
get_recurse
get_rofs
get_sbit
get_sf
get_ss
get_type
get_uint16
get_uint32
get_uint64
get_window
get_window_clr
get_window_ge
get_window_gt
get_window_le
get_window_lt
get_window_ne
get_window_set
get_zero
global_flags
global_name
global_ref
global_ref_empty
global_ref_set
gzip_add
gzip_get
gzip_get_get
gzip_get_put
gzip_move_from
gzip_move_to
gzip_nframes
gzip_put
gzip_put_get
header_complex
hide
hide_hidden
hide_unhide
include
include_accmode
include_affix
include_auto
include_cb
include_creat
include_ignore
include_index
include_invalid
include_nonexistent
include_pc
include_ref
include_syntax
index
index_domain
index_range
legacy_get
legacy_get_put
legacy_get_rofs
legacy_nframes
legacy_nonexistent
legacy_put
legacy_spf
lzma_get
lzma_nframes
madd
madd_affix
madd_alias
madd_bit
madd_bit_invalid
madd_carray
madd_clincom
madd_const
madd_cpolynom
madd_crecip
madd_crecip89
madd_divide
madd_index
madd_lincom
madd_lincom_invalid
madd_linterp
madd_linterp_invalid
madd_mplex
madd_multiply
madd_multiply_invalid
madd_phase
madd_phase_invalid
madd_polynom
madd_recip
madd_sbit
madd_spec
madd_spec_directive
madd_spec_invalid
madd_spec_resolv
madd_string
madd_window
move
move_affix
move_affix_dup
move_alias
move_data_enc_ar
move_data_enc_ra
move_data_endian
move_data_foffs
move_data_nop
move_index
move_meta
move_protect
move_subdir
name
name_affix
name_affix_bad
name_after
name_after_const
name_dup
name_move
name_updb
name_updb_const
nentries_alias
nentries_hidden
nentries_scalar
nfields
nfields_hidden
nfields_invalid
nfields_type
nfields_type_hidden
nfields_type_invalid
nfields_vector
nfields_vector_hidden
nfields_vector_invalid
nframes
nframes64
nframes_empty
nframes_invalid
nframes_off64
nframes_spf
nmeta
nmeta_hidden
nmeta_invalid
nmeta_parent
nmeta_type
nmeta_type_hidden
nmeta_type_invalid
nmeta_type_parent
nmeta_vectors
nmeta_vectors_del
nmeta_vectors_hidden
nmeta_vectors_invalid
nmeta_vectors_parent
open
open_abs
open_cb_abort
open_cb_cont
open_cb_ignore
open_cb_invalid
open_cb_rescan
open_eaccess
open_nonexistent
open_notdirfile
parse_alias
parse_alias_code
parse_alias_dup
parse_alias_meta
parse_alias_missing
parse_badline
parse_bit
parse_bit4
parse_bit_bitnum
parse_bit_bitsize
parse_bit_ncols
parse_bit_numbits
parse_bit_scalar
parse_carray
parse_carray_long
parse_const
parse_const_ncols
parse_divide
parse_duplicate
parse_duplicate_ignore
parse_endian_bad
parse_endian_big
parse_endian_force
parse_endian_little
parse_endian_slash
parse_eol
parse_foffs
parse_foffs_include
parse_foffs_slash
parse_hidden
parse_hidden_field
parse_hidden_meta
parse_include
parse_include_absolute
parse_include_absrel
parse_include_loop
parse_include_nonexistent
parse_include_prefix
parse_include_prefix_dup
parse_include_preprefix
parse_include_relabs
parse_include_relrel
parse_include_slash
parse_include_suffix
parse_include_sufsuffix
parse_index
parse_lincom
parse_lincom_ncols1
parse_lincom_ncols2
parse_lincom_nfields
parse_lincom_nofields
parse_lincom_non
parse_lincom_non_ncols
parse_lincom_scalar
parse_linterp
parse_linterp_ncols
parse_malias
parse_malias_dup
parse_malias_meta
parse_meta
parse_meta_affix
parse_meta_alias
parse_meta_implicit
parse_meta_implicit2
parse_meta_implicit_affix
parse_meta_index
parse_meta_index2
parse_meta_jump
parse_meta_malias
parse_meta_meta
parse_meta_parent
parse_meta_raw
parse_mplex
parse_mplex_ncols
parse_mplex_nomax
parse_mplex_scalar
parse_multiply
parse_multiply_ncols
parse_name
parse_name_dot
parse_name_ext
parse_name_pedantic
parse_ncols
parse_phase
parse_phase_ncols
parse_phase_scalar
parse_polynom
parse_polynom_ncols1
parse_polynom_ncols2
parse_polynom_scalar
parse_protect_all
parse_protect_bad
parse_protect_data
parse_protect_format
parse_protect_none
parse_quote
parse_quote_mismatch
parse_raw
parse_raw_char
parse_raw_ncols
parse_raw_scalar
parse_raw_spf
parse_raw_type
parse_recip
parse_ref
parse_ref_nonexistent
parse_sbit
parse_sort
parse_string
parse_string_ncols
parse_string_null
parse_version
parse_version_89
parse_version_98
parse_version_include
parse_version_p8
parse_version_p9
parse_version_permissive
parse_version_slash
parse_whitespace
parse_window
parse_window_ncols
parse_window_op
parse_window_scalar
protect_alter
protect_get
put64
put_bad_code
put_bit
put_bof
put_carray
put_carray_slice
put_char
put_complex128
put_complex64
put_const
put_const_protect
put_divide
put_endian16
put_endian32
put_endian64
put_endian8
put_endian_complex128_arm
put_endian_complex128_big
put_endian_complex128_little
put_endian_complex64_arm
put_endian_complex64_big
put_endian_complex64_little
put_endian_float32_arm
put_endian_float32_big
put_endian_float32_little
put_endian_float64_arm
put_endian_float64_big
put_endian_float64_little
put_ff
put_float32
put_float64
put_foffs
put_fs
put_here
put_heres
put_int16
put_int32
put_int64
put_int8
put_invalid
put_lincom1
put_lincom2
put_lincom_noin
put_linterp
put_linterp_noin
put_linterp_nomono
put_linterp_notab
put_linterp_reverse
put_mplex
put_multiply
put_null
put_off64
put_phase
put_phase_noin
put_polynom1
put_polynom2
put_polynom_noin
put_protect
put_rdonly
put_recip
put_recurse
put_repr
put_rofs
put_sbit
put_sf
put_ss
put_string
put_string_protect
put_type
put_uint16
put_uint32
put_uint64
put_window
put_zero
ref
ref_none
ref_two
repr_a
repr_float32
repr_float64
repr_i
repr_int16
repr_int32
repr_int64
repr_int8
repr_m
repr_r
repr_real_a
repr_real_i
repr_real_m
repr_real_r
repr_uint16
repr_uint32
repr_uint64
repr_uint8
seek64
seek_cur
seek_end
seek_foffs
seek_set
sie_get_big
sie_get_little
sie_move_from
sie_move_to
sie_nframes_big
sie_nframes_little
sie_put_big
sie_put_little
slim_get
slim_nframes
slim_put
spf
spf_alias
spf_alias_meta
spf_alias_missing
spf_divide
spf_lincom
spf_multiply
spf_polynom
spf_recip
spf_recurse
svlist
svlist_hidden
svlist_invalid
svlist_meta
svlist_meta_hidden
svlist_meta_invalid
tell
tell64
trunc
trunc_dir
trunc_rdonly
trunc_rofs
trunc_truncsub
unclude
unclude_del
unclude_move
version_0
version_0_write
version_1
version_1_write
version_2
version_2_write
version_3
version_3_write
version_4
version_4_write
version_5
version_5_strict
version_5_write
version_6
version_6_strict
version_6_write
version_7
version_7_strict
version_7_write
version_8
version_8_strict
version_8_write
version_9
version_9_strict
version_9_write
vlist
vlist_alias
vlist_hidden
vlist_invalid
vlist_meta
vlist_meta_hidden
vlist_meta_invalid
xz_get
xz_nframes
zzip_data
zzip_get
zzip_get_get
zzip_nframes
zzslim_get
zzslim_nframes
+ Makefile
Makefile.in
*.o
dirfile
*.swp
*.exe
.deps
.libs
add
add_affix
add_alias
add_alias_meta
add_bit
add_bit_bitnum
add_bit_bitsize
add_bit_invalid
add_bit_numbits
add_carray
add_clincom
add_code
add_const
add_cpolynom
add_crecip
add_crecip89
add_divide
add_divide_invalid
add_duplicate
add_format
add_invalid
add_lincom
add_lincom_invalid
add_lincom_nfields
add_linterp
add_linterp_invalid
add_meta
add_meta_alias
add_mplex
add_mplex_val
add_multiply
add_multiply_invalid
add_phase
add_phase_invalid
add_polynom
add_protect
add_raw
add_raw_include
add_raw_invalid
add_raw_spf
add_raw_type
add_rdonly
add_recip
add_resolv
add_sbit
add_scalar
add_scalar_carray
add_sort
add_spec
add_spec_directive
add_spec_invalid
add_spec_meta
add_spec_resolv
add_string
add_string_affix
add_type
add_window
add_window_op
alias_list
alias_list_alias
alias_list_missing
alias_num
alias_num_alias
alias_num_missing
alias_target
alias_target_alias
alias_target_missing
alter_bit_bitnum
alter_bit_numbits
alter_carray_len
alter_carray_type
alter_const
alter_cpolynom
alter_crecip
alter_crecip89
alter_crecip_zero
alter_divide
alter_entry
alter_entry_affix
alter_entry_hidden
alter_entry_recode
alter_entry_scalar2a
alter_entry_scalar2n
alter_entry_scalar3
alter_entry_scalar4
alter_lincom_23
alter_lincom_32
alter_lincom_input
alter_lincom_offset
alter_lincom_slope
alter_linterp
alter_linterp_move
alter_mplex
alter_mspec
alter_mspec_affix
alter_multiply
alter_phase
alter_polynom_coeff
alter_polynom_input
alter_polynom_ord
alter_raw_spf
alter_raw_type
alter_recip
alter_recip_zero
alter_spec
alter_spec_affix
alter_spec_meta
alter_window
ascii_add
ascii_get
ascii_get_get
ascii_nframes
ascii_put
bof
bof_lincom
bof_phase
bzip_get
bzip_get_get
bzip_move_from
bzip_nframes
bzip_put
close
close_bad
close_discard
close_null
convert_complex128_complex64
convert_complex128_float64
convert_complex128_int64
convert_complex128_uint64
convert_complex64_complex128
convert_complex64_float64
convert_complex64_int64
convert_complex64_uint64
convert_float32_complex128
convert_float32_complex64
convert_float32_float64
convert_float32_int16
convert_float32_int32
convert_float32_int64
convert_float32_int8
convert_float32_uint16
convert_float32_uint32
convert_float32_uint64
convert_float32_uint8
convert_float64_complex128
convert_float64_complex64
convert_float64_float32
convert_float64_int16
convert_float64_int32
convert_float64_int64
convert_float64_int8
convert_float64_uint16
convert_float64_uint32
convert_float64_uint64
convert_float64_uint8
convert_int16_complex128
convert_int16_complex64
convert_int16_float32
convert_int16_float64
convert_int16_int32
convert_int16_int64
convert_int16_int8
convert_int16_uint16
convert_int16_uint32
convert_int16_uint64
convert_int16_uint8
convert_int32_complex128
convert_int32_complex64
convert_int32_float32
convert_int32_float64
convert_int32_int16
convert_int32_int64
convert_int32_int8
convert_int32_uint16
convert_int32_uint32
convert_int32_uint64
convert_int32_uint8
convert_int64_complex128
convert_int64_complex64
convert_int64_float32
convert_int64_float64
convert_int64_int16
convert_int64_int32
convert_int64_int8
convert_int64_uint16
convert_int64_uint32
convert_int64_uint64
convert_int64_uint8
convert_int8_complex128
convert_int8_complex64
convert_int8_float32
convert_int8_float64
convert_int8_int16
convert_int8_int32
convert_int8_int64
convert_int8_uint16
convert_int8_uint32
convert_int8_uint64
convert_int8_uint8
convert_uint16_complex128
convert_uint16_complex64
convert_uint16_float32
convert_uint16_float64
convert_uint16_int16
convert_uint16_int32
convert_uint16_int64
convert_uint16_int8
convert_uint16_uint32
convert_uint16_uint64
convert_uint16_uint8
convert_uint32_complex128
convert_uint32_complex64
convert_uint32_float32
convert_uint32_float64
convert_uint32_int16
convert_uint32_int32
convert_uint32_int64
convert_uint32_int8
convert_uint32_uint16
convert_uint32_uint64
convert_uint32_uint8
convert_uint64_complex128
convert_uint64_complex64
convert_uint64_float32
convert_uint64_float64
convert_uint64_int16
convert_uint64_int32
convert_uint64_int64
convert_uint64_int8
convert_uint64_uint16
convert_uint64_uint32
convert_uint64_uint8
convert_uint8_complex128
convert_uint8_complex64
convert_uint8_float32
convert_uint8_float64
convert_uint8_int16
convert_uint8_int32
convert_uint8_int64
convert_uint8_int8
convert_uint8_uint16
convert_uint8_uint32
convert_uint8_uint64
creat
creat_excl
creat_rdonly
cvlist
cvlist_array
cvlist_array_hidden
cvlist_array_meta
cvlist_array_meta_hidden
cvlist_hidden
cvlist_invalid
cvlist_meta
cvlist_meta_hidden
cvlist_meta_invalid
del
del_carray
del_carray_deref
del_const
del_const_deref
del_const_force
del_data
del_derived
del_derived_after
del_derived_force
del_meta
del_meta_force
desync
desync_flush
desync_reopen
desync_reopen_inv
dfes_bit
dfes_divide
dfes_lincom
dfes_linterp
dfes_multiply
dfes_null
dfes_phase
dfes_raw
dfes_recip
dfes_zero
elist_alias
elist_hidden
elist_scalar
encode_alter
encode_get
encode_move
endian_alter
endian_alter_sie
endian_get
endian_move
entry_bad_code
entry_bit
entry_bit_scalar
entry_divide
entry_invalid
entry_lincom
entry_lincom_scalar
entry_linterp
entry_mplex
entry_mplex_scalar
entry_multiply
entry_phase
entry_phase_scalar
entry_polynom
entry_polynom_scalar
entry_raw
entry_raw_scalar
entry_raw_scalar_code
entry_raw_scalar_type
entry_recip
entry_scalar_repr
entry_type
entry_type_alias
entry_window
entry_window_scalar
eof
eof_index
eof_lincom
eof_phase
error
error_error
error_num
error_short
error_verbose
error_verbose_prefix
file
file_code
file_type
flist
flist_hidden
flist_invalid
flist_meta
flist_meta_hidden
flist_meta_invalid
flist_type
flist_type_hidden
flist_type_invalid
flist_type_meta
flist_type_meta_hidden
flist_type_meta_invalid
flush
flush_all
flush_bad_code
flush_invalid
flush_meta
flush_spec
foffs_alter
foffs_get
foffs_move
fragment_affix
fragment_affix_alter
fragment_affix_alter2
fragment_affix_dup
fragment_index
fragment_index_alias
fragment_name
fragment_name_oor
fragment_num
fragment_parent
get64
get_bad_code
get_bit
get_carray
get_carray_len
get_carray_slice
get_char
get_clincom
get_complex128
get_complex64
get_const
get_const_complex
get_const_repr
get_cpolynom
get_divide
get_endian16
get_endian32
get_endian64
get_endian8
get_endian_complex128_arm
get_endian_complex128_big
get_endian_complex128_little
get_endian_complex64_arm
get_endian_complex64_big
get_endian_complex64_little
get_endian_float32_arm
get_endian_float32_big
get_endian_float32_little
get_endian_float64_arm
get_endian_float64_big
get_endian_float64_little
get_ff
get_float32
get_float64
get_foffs
get_fs
get_here
get_here_foffs
get_heres
get_int16
get_int32
get_int64
get_int8
get_invalid
get_lincom1
get_lincom2
get_lincom3
get_lincom_noin
get_lincom_non
get_lincom_null
get_lincom_spf
get_linterp
get_linterp_noin
get_linterp_notab
get_linterp_sort
get_mplex
get_mplex_lb
get_mplex_lball
get_mplex_nolb
get_multiply
get_multiply_noin
get_nonexistent
get_null
get_off64
get_phase
get_phase_affix
get_polynom
get_polynom_noin
get_recip
get_recip_const
get_recurse
get_rofs
get_sbit
get_sf
get_ss
get_type
get_uint16
get_uint32
get_uint64
get_window
get_window_clr
get_window_ge
get_window_gt
get_window_le
get_window_lt
get_window_ne
get_window_set
get_zero
global_flags
global_name
global_ref
global_ref_empty
global_ref_set
gzip_add
gzip_get
gzip_get_get
gzip_get_put
gzip_move_from
gzip_move_to
gzip_nframes
gzip_put
gzip_put_get
header_complex
hide
hide_hidden
hide_unhide
include
include_accmode
include_affix
include_auto
include_cb
include_creat
include_ignore
include_index
include_invalid
include_nonexistent
include_pc
include_ref
include_syntax
index
index_domain
index_range
legacy_get
legacy_get_put
legacy_get_rofs
legacy_nframes
legacy_nonexistent
legacy_put
legacy_spf
lzma_get
lzma_nframes
madd
madd_affix
madd_alias
madd_bit
madd_bit_invalid
madd_carray
madd_clincom
madd_const
madd_cpolynom
madd_crecip
madd_crecip89
madd_divide
madd_index
madd_lincom
madd_lincom_invalid
madd_linterp
madd_linterp_invalid
madd_mplex
madd_multiply
madd_multiply_invalid
madd_phase
madd_phase_invalid
madd_polynom
madd_recip
madd_sbit
madd_spec
madd_spec_directive
madd_spec_invalid
madd_spec_resolv
madd_string
madd_window
move
move_affix
move_affix_dup
move_alias
move_data_enc_ar
move_data_enc_ra
move_data_endian
move_data_foffs
move_data_nop
move_index
move_meta
move_protect
move_subdir
name
name_affix
name_affix_bad
name_alias
name_dup
name_move
name_move_alias
name_updb
name_updb_alias
name_updb_const
name_updb_const_alias
nentries_alias
nentries_hidden
nentries_scalar
nfields
nfields_hidden
nfields_invalid
nfields_type
nfields_type_hidden
nfields_type_invalid
nfields_vector
nfields_vector_hidden
nfields_vector_invalid
nframes
nframes64
nframes_empty
nframes_invalid
nframes_off64
nframes_spf
nmeta
nmeta_hidden
nmeta_invalid
nmeta_parent
nmeta_type
nmeta_type_hidden
nmeta_type_invalid
nmeta_type_parent
nmeta_vectors
nmeta_vectors_del
nmeta_vectors_hidden
nmeta_vectors_invalid
nmeta_vectors_parent
open
open_abs
open_cb_abort
open_cb_cont
open_cb_ignore
open_cb_invalid
open_cb_rescan
open_eaccess
open_nonexistent
open_notdirfile
parse_alias
parse_alias_code
parse_alias_dup
parse_alias_meta
parse_alias_missing
parse_badline
parse_bit
parse_bit4
parse_bit_bitnum
parse_bit_bitsize
parse_bit_ncols
parse_bit_numbits
parse_bit_scalar
parse_carray
parse_carray_long
parse_const
parse_const_ncols
parse_divide
parse_duplicate
parse_duplicate_ignore
parse_endian_bad
parse_endian_big
parse_endian_force
parse_endian_little
parse_endian_slash
parse_eol
parse_foffs
parse_foffs_include
parse_foffs_slash
parse_hidden
parse_hidden_field
parse_hidden_meta
parse_include
parse_include_absolute
parse_include_absrel
parse_include_loop
parse_include_nonexistent
parse_include_prefix
parse_include_prefix_dup
parse_include_preprefix
parse_include_relabs
parse_include_relrel
parse_include_slash
parse_include_suffix
parse_include_sufsuffix
parse_index
parse_lincom
parse_lincom_ncols1
parse_lincom_ncols2
parse_lincom_nfields
parse_lincom_nofields
parse_lincom_non
parse_lincom_non_ncols
parse_lincom_scalar
parse_linterp
parse_linterp_ncols
parse_malias
parse_malias_dup
parse_malias_meta
parse_meta
parse_meta_affix
parse_meta_alias
parse_meta_implicit
parse_meta_implicit2
parse_meta_implicit_affix
parse_meta_index
parse_meta_index2
parse_meta_jump
parse_meta_malias
parse_meta_meta
parse_meta_parent
parse_meta_raw
parse_mplex
parse_mplex_ncols
parse_mplex_nomax
parse_mplex_scalar
parse_multiply
parse_multiply_ncols
parse_name
parse_name_dot
parse_name_ext
parse_name_pedantic
parse_ncols
parse_phase
parse_phase_ncols
parse_phase_scalar
parse_polynom
parse_polynom_ncols1
parse_polynom_ncols2
parse_polynom_scalar
parse_protect_all
parse_protect_bad
parse_protect_data
parse_protect_format
parse_protect_none
parse_quote
parse_quote_mismatch
parse_raw
parse_raw_char
parse_raw_ncols
parse_raw_scalar
parse_raw_spf
parse_raw_type
parse_recip
parse_ref
parse_ref_nonexistent
parse_sbit
parse_sort
parse_string
parse_string_ncols
parse_string_null
parse_version
parse_version_89
parse_version_98
parse_version_include
parse_version_p8
parse_version_p9
parse_version_permissive
parse_version_slash
parse_whitespace
parse_window
parse_window_ncols
parse_window_op
parse_window_scalar
protect_alter
protect_get
put64
put_bad_code
put_bit
put_bof
put_carray
put_carray_slice
put_char
put_complex128
put_complex64
put_const
put_const_protect
put_divide
put_endian16
put_endian32
put_endian64
put_endian8
put_endian_complex128_arm
put_endian_complex128_big
put_endian_complex128_little
put_endian_complex64_arm
put_endian_complex64_big
put_endian_complex64_little
put_endian_float32_arm
put_endian_float32_big
put_endian_float32_little
put_endian_float64_arm
put_endian_float64_big
put_endian_float64_little
put_ff
put_float32
put_float64
put_foffs
put_fs
put_here
put_heres
put_int16
put_int32
put_int64
put_int8
put_invalid
put_lincom1
put_lincom2
put_lincom_noin
put_linterp
put_linterp_noin
put_linterp_nomono
put_linterp_notab
put_linterp_reverse
put_mplex
put_multiply
put_null
put_off64
put_phase
put_phase_noin
put_polynom1
put_polynom2
put_polynom_noin
put_protect
put_rdonly
put_recip
put_recurse
put_repr
put_rofs
put_sbit
put_sf
put_ss
put_string
put_string_protect
put_type
put_uint16
put_uint32
put_uint64
put_window
put_zero
ref
ref_none
ref_two
repr_a
repr_float32
repr_float64
repr_i
repr_int16
repr_int32
repr_int64
repr_int8
repr_m
repr_r
repr_real_a
rep...
[truncated message content] |
|
From: <ket...@us...> - 2012-06-25 15:13:45
|
Revision: 723
http://getdata.svn.sourceforge.net/getdata/?rev=723&view=rev
Author: ketiltrout
Date: 2012-06-25 15:13:34 +0000 (Mon, 25 Jun 2012)
Log Message:
-----------
Add ALIAS to _GD_FindVersion.
Modified Paths:
--------------
trunk/getdata/ChangeLog
trunk/getdata/src/flush.c
trunk/getdata/util/checkdirfile.c
Modified: trunk/getdata/ChangeLog
===================================================================
--- trunk/getdata/ChangeLog 2012-06-13 21:32:28 UTC (rev 722)
+++ trunk/getdata/ChangeLog 2012-06-25 15:13:34 UTC (rev 723)
@@ -1,3 +1,8 @@
+2012-06-25 D. V. Wiebe <ge...@ke...> svn:723
+ * src/flush.c (_GD_FindVersion): ALIAS means >= 9.
+
+ * util/checkdirfile.c: Grammar.
+
2012-06-13 D. V. Wiebe <ge...@ke...> svn:721
GetData-0.8.0rc2.
Modified: trunk/getdata/src/flush.c
===================================================================
--- trunk/getdata/src/flush.c 2012-06-13 21:32:28 UTC (rev 722)
+++ trunk/getdata/src/flush.c 2012-06-25 15:13:34 UTC (rev 723)
@@ -1003,7 +1003,7 @@
if (D->entry[i]->hidden)
D->av &= GD_VERS_GE_9;
else
- switch (D->entry[i]->field_type) {
+ switch ((int)D->entry[i]->field_type) {
case GD_RAW_ENTRY:
switch (D->entry[i]->EN(raw,data_type)) {
case GD_COMPLEX128:
@@ -1052,6 +1052,7 @@
D->av &= GD_VERS_GE_5;
}
break;
+ case GD_ALIAS_ENTRY:
case GD_WINDOW_ENTRY:
case GD_MPLEX_ENTRY:
D->av &= GD_VERS_GE_9;
Modified: trunk/getdata/util/checkdirfile.c
===================================================================
--- trunk/getdata/util/checkdirfile.c 2012-06-13 21:32:28 UTC (rev 722)
+++ trunk/getdata/util/checkdirfile.c 2012-06-25 15:13:34 UTC (rev 723)
@@ -202,7 +202,8 @@
return 1;
}
- printf(" Found %llu frames.\n", (unsigned long long)n);
+ printf(" Found %llu %s.\n", (unsigned long long)n,
+ n == 1 ? "frame" : "frames");
gd_close(dirfile);
return 0;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ket...@us...> - 2012-06-13 21:32:34
|
Revision: 722
http://getdata.svn.sourceforge.net/getdata/?rev=722&view=rev
Author: ketiltrout
Date: 2012-06-13 21:32:28 +0000 (Wed, 13 Jun 2012)
Log Message:
-----------
GetData-0.8.0rc2.
Modified Paths:
--------------
trunk/getdata/ChangeLog
trunk/getdata/NEWS
trunk/getdata/m4/version.m4
Modified: trunk/getdata/ChangeLog
===================================================================
--- trunk/getdata/ChangeLog 2012-06-05 23:12:09 UTC (rev 721)
+++ trunk/getdata/ChangeLog 2012-06-13 21:32:28 UTC (rev 722)
@@ -1,4 +1,12 @@
-2012-05-25 D. V. Wiebe <ge...@ke...> svn:717
+2012-06-13 D. V. Wiebe <ge...@ke...> svn:721
+ GetData-0.8.0rc2.
+
+2012-06-04 D. V. Wiebe <ge...@ke...> svn:720
+ * bindings/cxx/dirfile.cpp bindings/cxx/fragment.cpp
+ bindings/cxx/getdata/dirfile.h bindings/cxx/getdata/fragment.h: off_t
+ -> gd_off64_t.
+
+2012-06-02 D. V. Wiebe <ge...@ke...> svn:717
* src/internal.h (_GD_AbsPath): Allow s == NULL.
2012-05-25 D. V. Wiebe <ge...@ke...> svn:712
Modified: trunk/getdata/NEWS
===================================================================
--- trunk/getdata/NEWS 2012-06-05 23:12:09 UTC (rev 721)
+++ trunk/getdata/NEWS 2012-06-13 21:32:28 UTC (rev 722)
@@ -1,4 +1,4 @@
-New in version 0.8.0rc1:
+New in version 0.8.0rc2:
Dirfile Changes
@@ -253,6 +253,11 @@
to the GD_...ENCODED symbols in the C API) have all been renamed. They
are now of the form GDE_xx.
+ * C++: The bindings now make use of the explicitly-64-bit offset type
+ gd_off64_t defined in getdata.h. Previously, the bindings tried to force
+ off_t to be 64-bit through preprocessor shenanigans, which led, in certain
+ cases, to linking problems down the road when used by third parties.
+
* Python: The return_type, num_fields, and num_samples parameters to
dirfile.getdata() are now optional. The return_type defautls to
pygetdata.FLOAT, and if neither num_fields nor num_samples are given, all
Modified: trunk/getdata/m4/version.m4
===================================================================
--- trunk/getdata/m4/version.m4 2012-06-05 23:12:09 UTC (rev 721)
+++ trunk/getdata/m4/version.m4 2012-06-13 21:32:28 UTC (rev 722)
@@ -21,7 +21,7 @@
m4_define(getdata_major, 0)
m4_define(getdata_minor, 8)
m4_define(getdata_revision, 0)
-m4_define(getdata_extra, [rc1])
+m4_define(getdata_extra, [rc2])
m4_define(getdata_version,
getdata_major.getdata_minor.getdata_revision[]getdata_extra)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ket...@us...> - 2012-06-05 23:12:15
|
Revision: 721
http://getdata.svn.sourceforge.net/getdata/?rev=721&view=rev
Author: ketiltrout
Date: 2012-06-05 23:12:09 +0000 (Tue, 05 Jun 2012)
Log Message:
-----------
gd_tokenise -> gs_strtok
Modified Paths:
--------------
trunk/defile/lib/libdefile.c
Modified: trunk/defile/lib/libdefile.c
===================================================================
--- trunk/defile/lib/libdefile.c 2012-06-05 00:50:13 UTC (rev 720)
+++ trunk/defile/lib/libdefile.c 2012-06-05 23:12:09 UTC (rev 721)
@@ -199,7 +199,7 @@
/* skip fields we've been asked to exclude, this requires isolating the
* field name; use GetData's parser to do this. */
- name = gd_tokenise(df->D, spec);
+ name = gd_strtok(df->D, spec);
if (name == NULL) {
if (gd_error(df->D) == GD_E_ALLOC)
return DF_OUTPUT; /* better to just fold this into gd_add_spec failures
@@ -214,7 +214,7 @@
}
/* check the second token to see if it's a RAW field */
- type = gd_tokenise(df->D, NULL);
+ type = gd_strtok(df->D, NULL);
if (type && strcmp(type, "RAW") == 0) {
fputs("libdefile: Attempt to define RAW field via df_add_spec().\n",
stderr);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ket...@us...> - 2012-06-05 00:50:20
|
Revision: 720
http://getdata.svn.sourceforge.net/getdata/?rev=720&view=rev
Author: ketiltrout
Date: 2012-06-05 00:50:13 +0000 (Tue, 05 Jun 2012)
Log Message:
-----------
CXX: 64-bit off_t api.
Modified Paths:
--------------
trunk/getdata/bindings/cxx/dirfile.cpp
trunk/getdata/bindings/cxx/fragment.cpp
trunk/getdata/bindings/cxx/getdata/dirfile.h
trunk/getdata/bindings/cxx/getdata/fragment.h
Modified: trunk/getdata/bindings/cxx/dirfile.cpp
===================================================================
--- trunk/getdata/bindings/cxx/dirfile.cpp 2012-06-04 22:25:43 UTC (rev 719)
+++ trunk/getdata/bindings/cxx/dirfile.cpp 2012-06-05 00:50:13 UTC (rev 720)
@@ -257,19 +257,19 @@
return gd_mvector_list(D, parent);
}
-off_t Dirfile::NFrames() const
+gd_off64_t Dirfile::NFrames() const
{
- return (off_t)gd_nframes64(D);
+ return gd_nframes64(D);
}
-off_t Dirfile::EoF(const char *field_code) const
+gd_off64_t Dirfile::EoF(const char *field_code) const
{
- return (off_t)gd_eof64(D, field_code);
+ return gd_eof64(D, field_code);
}
-off_t Dirfile::BoF(const char *field_code) const
+gd_off64_t Dirfile::BoF(const char *field_code) const
{
- return (off_t)gd_bof64(D, field_code);
+ return gd_bof64(D, field_code);
}
int Dirfile::GetCarray(const char *field_code, DataType type, void *data_out,
@@ -288,13 +288,12 @@
return gd_get_constant(D, field_code, (gd_type_t)type, data_out);
}
-size_t Dirfile::GetData(const char* field_code, off_t first_frame,
- off_t first_sample, size_t num_frames, size_t num_samples,
+size_t Dirfile::GetData(const char* field_code, gd_off64_t first_frame,
+ gd_off64_t first_sample, size_t num_frames, size_t num_samples,
DataType type, void* data_out) const
{
- return gd_getdata64(D, field_code, (gd_off64_t)first_frame,
- (gd_off64_t)first_sample, num_frames, num_samples, (gd_type_t)type,
- data_out);
+ return gd_getdata64(D, field_code, first_frame, first_sample, num_frames,
+ num_samples, (gd_type_t)type, data_out);
}
size_t Dirfile::GetString(const char *field_code, size_t len, char* data_out)
@@ -319,13 +318,12 @@
return gd_put_constant(D, field_code, (gd_type_t)type, data_in);
}
-size_t Dirfile::PutData(const char* field_code, off_t first_frame,
- off_t first_sample, size_t num_frames, size_t num_samples,
+size_t Dirfile::PutData(const char* field_code, gd_off64_t first_frame,
+ gd_off64_t first_sample, size_t num_frames, size_t num_samples,
DataType type, const void* data_in) const
{
- return gd_putdata64(D, field_code, (gd_off64_t)first_frame,
- (gd_off64_t)first_sample, num_frames, num_samples, (gd_type_t)type,
- data_in);
+ return gd_putdata64(D, field_code, first_frame, first_sample, num_frames,
+ num_samples, (gd_type_t)type, data_in);
}
size_t Dirfile::PutString(const char *field_code, const char* data_in) const
@@ -424,10 +422,9 @@
}
double Dirfile::FrameNum(const char* field_code, double value,
- off_t frame_start, off_t frame_end) const
+ gd_off64_t frame_start, gd_off64_t frame_end) const
{
- return gd_framenum_subset64(D, field_code, value, (gd_off64_t)frame_start,
- (gd_off64_t)frame_end);
+ return gd_framenum_subset64(D, field_code, value, frame_start, frame_end);
}
int Dirfile::FragmentIndex(const char* field_code) const
@@ -445,16 +442,15 @@
return gd_dirfile_standards(D, version);
}
-off_t Dirfile::Seek(const char* field_code, off_t frame_num,
- off_t sample_num, int flags) const
+gd_off64_t Dirfile::Seek(const char* field_code, gd_off64_t frame_num,
+ gd_off64_t sample_num, int flags) const
{
- return (off_t)gd_seek64(D, field_code, (gd_off64_t)frame_num,
- (gd_off64_t)sample_num, flags);
+ return gd_seek64(D, field_code, frame_num, sample_num, flags);
}
-off_t Dirfile::Tell(const char* field_code) const
+gd_off64_t Dirfile::Tell(const char* field_code) const
{
- return (off_t)gd_tell64(D, field_code);
+ return gd_tell64(D, field_code);
}
int Dirfile::AddAlias(const char* field_code, const char* target,
Modified: trunk/getdata/bindings/cxx/fragment.cpp
===================================================================
--- trunk/getdata/bindings/cxx/fragment.cpp 2012-06-04 22:25:43 UTC (rev 719)
+++ trunk/getdata/bindings/cxx/fragment.cpp 2012-06-05 00:50:13 UTC (rev 720)
@@ -31,7 +31,7 @@
ind = index;
enc = (GetData::EncodingScheme)gd_encoding(D->D, index);
end = gd_endianness(D->D, index);
- off = (off_t)gd_frameoffset64(D->D, index);
+ off = gd_frameoffset64(D->D, index);
prot = gd_protection(D->D, index);
name = gd_fragmentname(D->D, index);
parent = (index == 0) ? -1 : gd_parent_fragment(D->D, index);
@@ -71,9 +71,9 @@
return ret;
}
-int Fragment::SetFrameOffset(off_t offset, int recode)
+int Fragment::SetFrameOffset(gd_off64_t offset, int recode)
{
- int ret = gd_alter_frameoffset64(D->D, (gd_off64_t)offset, ind, recode);
+ int ret = gd_alter_frameoffset64(D->D, offset, ind, recode);
if (!ret)
off = offset;
Modified: trunk/getdata/bindings/cxx/getdata/dirfile.h
===================================================================
--- trunk/getdata/bindings/cxx/getdata/dirfile.h 2012-06-04 22:25:43 UTC (rev 719)
+++ trunk/getdata/bindings/cxx/getdata/dirfile.h 2012-06-05 00:50:13 UTC (rev 720)
@@ -107,7 +107,7 @@
int AlterSpec(const char* spec, int recode = 0) const;
- off_t BoF(const char *field_code) const;
+ gd_off64_t BoF(const char *field_code) const;
size_t CarrayLen(const char *field_code) const;
@@ -130,7 +130,7 @@
const char **EntryList(const char *parent = NULL, unsigned int type = 0,
unsigned int flags = 0) const;
- off_t EoF(const char *field_code) const;
+ gd_off64_t EoF(const char *field_code) const;
int Error() const;
@@ -152,7 +152,7 @@
int FragmentIndex(const char* field_code) const;
double FrameNum(const char* field_code, double value,
- off_t frame_start = 0, off_t frame_end = 0) const;
+ gd_off64_t frame_start = 0, gd_off64_t frame_end = 0) const;
int GetCarray(const char *field_code, DataType type, void *data_out,
unsigned int start = 0, size_t len = 0) const;
@@ -160,8 +160,8 @@
int GetConstant(const char *field_code, DataType type, void *data_out)
const;
- size_t GetData(const char *field_code, off_t first_frame,
- off_t first_sample, size_t num_frames, size_t num_samples,
+ size_t GetData(const char *field_code, gd_off64_t first_frame,
+ gd_off64_t first_sample, size_t num_frames, size_t num_samples,
DataType type, void* data_out) const;
size_t GetString(const char *field_code, size_t len, char *data_out)
@@ -228,7 +228,7 @@
int NFragments() const;
- off_t NFrames() const;
+ gd_off64_t NFrames() const;
unsigned int NVectors() const;
@@ -238,8 +238,8 @@
int PutConstant(const char *field_code, DataType type,
const void *data_in) const;
- size_t PutData(const char *field_code, off_t first_frame,
- off_t first_sample, size_t num_frames, size_t num_samples,
+ size_t PutData(const char *field_code, gd_off64_t first_frame,
+ gd_off64_t first_sample, size_t num_frames, size_t num_samples,
DataType type, const void* data_in) const;
size_t PutString(const char *field_code, const char *data_in) const;
@@ -252,8 +252,8 @@
unsigned int SamplesPerFrame(const char *field_code) const;
- off_t Seek(const char* field_code, off_t frame_num, off_t sample_num,
- int flags) const;
+ gd_off64_t Seek(const char* field_code, gd_off64_t frame_num,
+ gd_off64_t sample_num, int flags) const;
void SetCallback(gd_parser_callback_t sehandler, void* extra = NULL)
const;
@@ -264,7 +264,7 @@
int Sync(const char *field_code = NULL) const;
- off_t Tell(const char* field_code) const;
+ gd_off64_t Tell(const char* field_code) const;
char *StrTok(const char *string = NULL);
Modified: trunk/getdata/bindings/cxx/getdata/fragment.h
===================================================================
--- trunk/getdata/bindings/cxx/getdata/fragment.h 2012-06-04 22:25:43 UTC (rev 719)
+++ trunk/getdata/bindings/cxx/getdata/fragment.h 2012-06-05 00:50:13 UTC (rev 720)
@@ -47,7 +47,7 @@
unsigned long Endianness() const { return end; };
- off_t FrameOffset() const { return (off_t)off; };
+ gd_off64_t FrameOffset() const { return off; };
int Index() const { return ind; }
@@ -67,7 +67,7 @@
int SetEndianness(unsigned long byte_sex, int recode = 0);
- int SetFrameOffset(off_t offset, int recode = 0);
+ int SetFrameOffset(gd_off64_t offset, int recode = 0);
int SetPrefix(const char *preix);
@@ -83,7 +83,7 @@
unsigned long end;
int ind;
int prot;
- off_t off;
+ gd_off64_t off;
const char* name;
char* prefix;
char* suffix;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ket...@us...> - 2012-06-04 22:25:50
|
Revision: 719
http://getdata.svn.sourceforge.net/getdata/?rev=719&view=rev
Author: ketiltrout
Date: 2012-06-04 22:25:43 +0000 (Mon, 04 Jun 2012)
Log Message:
-----------
svn:ignore
Property Changed:
----------------
trunk/getdata/bindings/perl/
trunk/getdata/test/
Property changes on: trunk/getdata/bindings/perl
___________________________________________________________________
Modified: svn:ignore
- simple_funcs.xs
Makefile.in
GetData.pm
GetData.c
.deps
make_parameters.sed
Makefile
MYMETA.yml
MYMETA.json
_build
Build
lib
debug.c
blib
Build.PL
t
MANIFEST
+ simple_funcs.xs
Makefile.in
GetData.pm
GetData.c
.deps
make_parameters.sed
Makefile
MYMETA.yml
MYMETA.json
_build
Build
lib
debug.c
blib
Build.PL
t
MANIFEST
build.stamp
Property changes on: trunk/getdata/test
___________________________________________________________________
Modified: svn:ignore
- Makefile
Makefile.in
*.o
dirfile
*.swp
*.exe
.deps
.libs
add
add_affix
add_alias
add_alias_meta
add_bit
add_bit_bitnum
add_bit_bitsize
add_bit_invalid
add_bit_numbits
add_carray
add_clincom
add_code
add_const
add_cpolynom
add_crecip
add_crecip89
add_divide
add_divide_invalid
add_duplicate
add_format
add_invalid
add_lincom
add_lincom_invalid
add_lincom_nfields
add_linterp
add_linterp_invalid
add_meta
add_meta_alias
add_mplex
add_mplex_val
add_multiply
add_multiply_invalid
add_phase
add_phase_invalid
add_polynom
add_protect
add_raw
add_raw_include
add_raw_invalid
add_raw_spf
add_raw_type
add_rdonly
add_recip
add_resolv
add_sbit
add_scalar
add_scalar_carray
add_sort
add_spec
add_spec_directive
add_spec_invalid
add_spec_meta
add_spec_resolv
add_string
add_string_affix
add_type
add_window
add_window_op
alias_list
alias_list_alias
alias_list_missing
alias_num
alias_num_alias
alias_num_missing
alias_target
alias_target_alias
alias_target_missing
alter_bit_bitnum
alter_bit_numbits
alter_carray_len
alter_carray_type
alter_const
alter_cpolynom
alter_crecip
alter_crecip89
alter_crecip_zero
alter_divide
alter_entry
alter_entry_affix
alter_entry_hidden
alter_entry_recode
alter_entry_scalar2a
alter_entry_scalar2n
alter_entry_scalar3
alter_entry_scalar4
alter_lincom_23
alter_lincom_32
alter_lincom_input
alter_lincom_offset
alter_lincom_slope
alter_linterp
alter_linterp_move
alter_mplex
alter_mspec
alter_mspec_affix
alter_multiply
alter_phase
alter_polynom_coeff
alter_polynom_input
alter_polynom_ord
alter_raw_spf
alter_raw_type
alter_recip
alter_recip_zero
alter_spec
alter_spec_affix
alter_spec_meta
alter_window
ascii_add
ascii_get
ascii_get_get
ascii_nframes
ascii_put
bof
bof_lincom
bof_phase
bzip_get
bzip_get_get
bzip_move_from
bzip_nframes
bzip_put
close
close_bad
close_discard
close_null
convert_complex128_complex64
convert_complex128_float64
convert_complex128_int64
convert_complex128_uint64
convert_complex64_complex128
convert_complex64_float64
convert_complex64_int64
convert_complex64_uint64
convert_float32_complex128
convert_float32_complex64
convert_float32_float64
convert_float32_int16
convert_float32_int32
convert_float32_int64
convert_float32_int8
convert_float32_uint16
convert_float32_uint32
convert_float32_uint64
convert_float32_uint8
convert_float64_complex128
convert_float64_complex64
convert_float64_float32
convert_float64_int16
convert_float64_int32
convert_float64_int64
convert_float64_int8
convert_float64_uint16
convert_float64_uint32
convert_float64_uint64
convert_float64_uint8
convert_int16_complex128
convert_int16_complex64
convert_int16_float32
convert_int16_float64
convert_int16_int32
convert_int16_int64
convert_int16_int8
convert_int16_uint16
convert_int16_uint32
convert_int16_uint64
convert_int16_uint8
convert_int32_complex128
convert_int32_complex64
convert_int32_float32
convert_int32_float64
convert_int32_int16
convert_int32_int64
convert_int32_int8
convert_int32_uint16
convert_int32_uint32
convert_int32_uint64
convert_int32_uint8
convert_int64_complex128
convert_int64_complex64
convert_int64_float32
convert_int64_float64
convert_int64_int16
convert_int64_int32
convert_int64_int8
convert_int64_uint16
convert_int64_uint32
convert_int64_uint64
convert_int64_uint8
convert_int8_complex128
convert_int8_complex64
convert_int8_float32
convert_int8_float64
convert_int8_int16
convert_int8_int32
convert_int8_int64
convert_int8_uint16
convert_int8_uint32
convert_int8_uint64
convert_int8_uint8
convert_uint16_complex128
convert_uint16_complex64
convert_uint16_float32
convert_uint16_float64
convert_uint16_int16
convert_uint16_int32
convert_uint16_int64
convert_uint16_int8
convert_uint16_uint32
convert_uint16_uint64
convert_uint16_uint8
convert_uint32_complex128
convert_uint32_complex64
convert_uint32_float32
convert_uint32_float64
convert_uint32_int16
convert_uint32_int32
convert_uint32_int64
convert_uint32_int8
convert_uint32_uint16
convert_uint32_uint64
convert_uint32_uint8
convert_uint64_complex128
convert_uint64_complex64
convert_uint64_float32
convert_uint64_float64
convert_uint64_int16
convert_uint64_int32
convert_uint64_int64
convert_uint64_int8
convert_uint64_uint16
convert_uint64_uint32
convert_uint64_uint8
convert_uint8_complex128
convert_uint8_complex64
convert_uint8_float32
convert_uint8_float64
convert_uint8_int16
convert_uint8_int32
convert_uint8_int64
convert_uint8_int8
convert_uint8_uint16
convert_uint8_uint32
convert_uint8_uint64
creat
creat_excl
creat_rdonly
cvlist
cvlist_array
cvlist_array_hidden
cvlist_array_meta
cvlist_array_meta_hidden
cvlist_hidden
cvlist_invalid
cvlist_meta
cvlist_meta_hidden
cvlist_meta_invalid
del
del_carray
del_carray_deref
del_const
del_const_deref
del_const_force
del_data
del_derived
del_derived_after
del_derived_force
del_meta
del_meta_force
desync
desync_flush
desync_reopen
desync_reopen_inv
dfes_bit
dfes_divide
dfes_lincom
dfes_linterp
dfes_multiply
dfes_null
dfes_phase
dfes_raw
dfes_recip
dfes_zero
elist_alias
elist_hidden
elist_scalar
encode_alter
encode_get
encode_move
endian_alter
endian_alter_sie
endian_get
endian_move
entry_bad_code
entry_bit
entry_bit_scalar
entry_divide
entry_invalid
entry_lincom
entry_lincom_scalar
entry_linterp
entry_mplex
entry_mplex_scalar
entry_multiply
entry_phase
entry_phase_scalar
entry_polynom
entry_polynom_scalar
entry_raw
entry_raw_scalar
entry_raw_scalar_code
entry_raw_scalar_type
entry_recip
entry_scalar_repr
entry_type
entry_type_alias
entry_window
entry_window_scalar
eof
eof_index
eof_lincom
eof_phase
error
error_error
error_num
error_short
error_verbose
error_verbose_prefix
file
file_code
file_type
flist
flist_hidden
flist_invalid
flist_meta
flist_meta_hidden
flist_meta_invalid
flist_type
flist_type_hidden
flist_type_invalid
flist_type_meta
flist_type_meta_hidden
flist_type_meta_invalid
flush
flush_all
flush_bad_code
flush_invalid
flush_meta
flush_spec
foffs_alter
foffs_get
foffs_move
fragment_affix
fragment_affix_alter
fragment_affix_alter2
fragment_affix_dup
fragment_index
fragment_index_alias
fragment_name
fragment_name_oor
fragment_num
fragment_parent
get64
get_bad_code
get_bit
get_carray
get_carray_len
get_carray_slice
get_char
get_clincom
get_complex128
get_complex64
get_const
get_const_complex
get_const_repr
get_cpolynom
get_divide
get_endian16
get_endian32
get_endian64
get_endian8
get_endian_complex128_arm
get_endian_complex128_big
get_endian_complex128_little
get_endian_complex64_arm
get_endian_complex64_big
get_endian_complex64_little
get_endian_float32_arm
get_endian_float32_big
get_endian_float32_little
get_endian_float64_arm
get_endian_float64_big
get_endian_float64_little
get_ff
get_float32
get_float64
get_foffs
get_fs
get_here
get_here_foffs
get_heres
get_int16
get_int32
get_int64
get_int8
get_invalid
get_lincom1
get_lincom2
get_lincom3
get_lincom_noin
get_lincom_non
get_lincom_null
get_lincom_spf
get_linterp
get_linterp_noin
get_linterp_notab
get_linterp_sort
get_mplex
get_mplex_lb
get_mplex_lball
get_mplex_nolb
get_multiply
get_multiply_noin
get_nonexistent
get_null
get_off64
get_phase
get_phase_affix
get_polynom
get_polynom_noin
get_recip
get_recip_const
get_recurse
get_rofs
get_sbit
get_sf
get_ss
get_type
get_uint16
get_uint32
get_uint64
get_window
get_window_clr
get_window_ge
get_window_gt
get_window_le
get_window_lt
get_window_ne
get_window_set
get_zero
global_flags
global_name
global_ref
global_ref_empty
global_ref_set
gzip_add
gzip_get
gzip_get_get
gzip_get_put
gzip_move_from
gzip_move_to
gzip_nframes
gzip_put
gzip_put_get
header_complex
hide
hide_hidden
hide_unhide
include
include_accmode
include_affix
include_auto
include_cb
include_creat
include_ignore
include_index
include_invalid
include_nonexistent
include_pc
include_ref
include_syntax
index
index_domain
index_range
legacy_get
legacy_get_put
legacy_get_rofs
legacy_nframes
legacy_nonexistent
legacy_put
legacy_spf
lzma_get
lzma_nframes
madd
madd_affix
madd_alias
madd_bit
madd_bit_invalid
madd_carray
madd_clincom
madd_const
madd_cpolynom
madd_crecip
madd_crecip89
madd_divide
madd_index
madd_lincom
madd_lincom_invalid
madd_linterp
madd_linterp_invalid
madd_mplex
madd_multiply
madd_multiply_invalid
madd_phase
madd_phase_invalid
madd_polynom
madd_recip
madd_sbit
madd_spec
madd_spec_directive
madd_spec_invalid
madd_spec_resolv
madd_string
madd_window
move
move_affix
move_affix_dup
move_alias
move_data_enc_ar
move_data_enc_ra
move_data_endian
move_data_foffs
move_data_nop
move_index
move_meta
move_protect
move_subdir
name
name_affix
name_affix_bad
name_after
name_after_const
name_dup
name_move
name_update
name_update_const
nentries_alias
nentries_hidden
nentries_scalar
nfields
nfields_hidden
nfields_invalid
nfields_type
nfields_type_hidden
nfields_type_invalid
nfields_vector
nfields_vector_hidden
nfields_vector_invalid
nframes
nframes64
nframes_empty
nframes_invalid
nframes_off64
nframes_spf
nmeta
nmeta_hidden
nmeta_invalid
nmeta_parent
nmeta_type
nmeta_type_hidden
nmeta_type_invalid
nmeta_type_parent
nmeta_vectors
nmeta_vectors_del
nmeta_vectors_hidden
nmeta_vectors_invalid
nmeta_vectors_parent
open
open_abs
open_cb_abort
open_cb_cont
open_cb_ignore
open_cb_invalid
open_cb_rescan
open_eaccess
open_nonexistent
open_notdirfile
parse_alias
parse_alias_code
parse_alias_dup
parse_alias_meta
parse_alias_missing
parse_badline
parse_bit
parse_bit4
parse_bit_bitnum
parse_bit_bitsize
parse_bit_ncols
parse_bit_numbits
parse_bit_scalar
parse_carray
parse_carray_long
parse_const
parse_const_ncols
parse_divide
parse_duplicate
parse_duplicate_ignore
parse_endian_bad
parse_endian_big
parse_endian_force
parse_endian_little
parse_endian_slash
parse_eol
parse_foffs
parse_foffs_include
parse_foffs_slash
parse_hidden
parse_hidden_field
parse_hidden_meta
parse_include
parse_include_absolute
parse_include_absrel
parse_include_loop
parse_include_nonexistent
parse_include_prefix
parse_include_prefix_dup
parse_include_preprefix
parse_include_relabs
parse_include_relrel
parse_include_slash
parse_include_suffix
parse_include_sufsuffix
parse_index
parse_lincom
parse_lincom_ncols1
parse_lincom_ncols2
parse_lincom_nfields
parse_lincom_nofields
parse_lincom_non
parse_lincom_non_ncols
parse_lincom_scalar
parse_linterp
parse_linterp_ncols
parse_malias
parse_malias_dup
parse_malias_meta
parse_meta
parse_meta_affix
parse_meta_alias
parse_meta_implicit
parse_meta_implicit2
parse_meta_implicit_affix
parse_meta_index
parse_meta_index2
parse_meta_jump
parse_meta_malias
parse_meta_meta
parse_meta_parent
parse_meta_raw
parse_mplex
parse_mplex_ncols
parse_mplex_nomax
parse_mplex_scalar
parse_multiply
parse_multiply_ncols
parse_name
parse_name_dot
parse_name_ext
parse_name_pedantic
parse_ncols
parse_phase
parse_phase_ncols
parse_phase_scalar
parse_polynom
parse_polynom_ncols1
parse_polynom_ncols2
parse_polynom_scalar
parse_protect_all
parse_protect_bad
parse_protect_data
parse_protect_format
parse_protect_none
parse_quote
parse_quote_mismatch
parse_raw
parse_raw_char
parse_raw_ncols
parse_raw_scalar
parse_raw_spf
parse_raw_type
parse_recip
parse_ref
parse_ref_nonexistent
parse_sbit
parse_sort
parse_string
parse_string_ncols
parse_string_null
parse_version
parse_version_89
parse_version_98
parse_version_include
parse_version_p8
parse_version_p9
parse_version_permissive
parse_version_slash
parse_whitespace
parse_window
parse_window_ncols
parse_window_op
parse_window_scalar
protect_alter
protect_get
put64
put_bad_code
put_bit
put_bof
put_carray
put_carray_slice
put_char
put_complex128
put_complex64
put_const
put_const_protect
put_divide
put_endian16
put_endian32
put_endian64
put_endian8
put_endian_complex128_arm
put_endian_complex128_big
put_endian_complex128_little
put_endian_complex64_arm
put_endian_complex64_big
put_endian_complex64_little
put_endian_float32_arm
put_endian_float32_big
put_endian_float32_little
put_endian_float64_arm
put_endian_float64_big
put_endian_float64_little
put_ff
put_float32
put_float64
put_foffs
put_fs
put_here
put_heres
put_int16
put_int32
put_int64
put_int8
put_invalid
put_lincom1
put_lincom2
put_lincom_noin
put_linterp
put_linterp_noin
put_linterp_nomono
put_linterp_notab
put_linterp_reverse
put_mplex
put_multiply
put_null
put_off64
put_phase
put_phase_noin
put_polynom1
put_polynom2
put_polynom_noin
put_protect
put_rdonly
put_recip
put_recurse
put_repr
put_rofs
put_sbit
put_sf
put_ss
put_string
put_string_protect
put_type
put_uint16
put_uint32
put_uint64
put_window
put_zero
ref
ref_none
ref_two
repr_a
repr_float32
repr_float64
repr_i
repr_int16
repr_int32
repr_int64
repr_int8
repr_m
repr_r
repr_real_a
repr_real_i
repr_real_m
repr_real_r
repr_uint16
repr_uint32
repr_uint64
repr_uint8
seek64
seek_cur
seek_end
seek_foffs
seek_set
sie_get_big
sie_get_little
sie_move_from
sie_move_to
sie_nframes_big
sie_nframes_little
sie_put_big
sie_put_little
slim_get
slim_nframes
slim_put
spf
spf_alias
spf_alias_meta
spf_alias_missing
spf_divide
spf_lincom
spf_multiply
spf_polynom
spf_recip
spf_recurse
svlist
svlist_hidden
svlist_invalid
svlist_meta
svlist_meta_hidden
svlist_meta_invalid
tell
tell64
trunc
trunc_dir
trunc_rdonly
trunc_rofs
trunc_truncsub
unclude
unclude_del
unclude_move
version_0
version_0_write
version_1
version_1_write
version_2
version_2_write
version_3
version_3_write
version_4
version_4_write
version_5
version_5_strict
version_5_write
version_6
version_6_strict
version_6_write
version_7
version_7_strict
version_7_write
version_8
version_8_strict
version_8_write
version_9
version_9_strict
version_9_write
vlist
vlist_alias
vlist_hidden
vlist_invalid
vlist_meta
vlist_meta_hidden
vlist_meta_invalid
xz_get
xz_nframes
zzip_data
zzip_get
zzip_get_get
zzip_nframes
zzslim_get
zzslim_nframes
+ Makefile
Makefile.in
*.o
dirfile
*.swp
*.exe
.deps
.libs
add
add_affix
add_alias
add_alias_meta
add_bit
add_bit_bitnum
add_bit_bitsize
add_bit_invalid
add_bit_numbits
add_carray
add_clincom
add_code
add_const
add_cpolynom
add_crecip
add_crecip89
add_divide
add_divide_invalid
add_duplicate
add_format
add_invalid
add_lincom
add_lincom_invalid
add_lincom_nfields
add_linterp
add_linterp_invalid
add_meta
add_meta_alias
add_mplex
add_mplex_val
add_multiply
add_multiply_invalid
add_phase
add_phase_invalid
add_polynom
add_protect
add_raw
add_raw_include
add_raw_invalid
add_raw_spf
add_raw_type
add_rdonly
add_recip
add_resolv
add_sbit
add_scalar
add_scalar_carray
add_sort
add_spec
add_spec_directive
add_spec_invalid
add_spec_meta
add_spec_resolv
add_string
add_string_affix
add_type
add_window
add_window_op
alias_list
alias_list_alias
alias_list_missing
alias_num
alias_num_alias
alias_num_missing
alias_target
alias_target_alias
alias_target_missing
alter_bit_bitnum
alter_bit_numbits
alter_carray_len
alter_carray_type
alter_const
alter_cpolynom
alter_crecip
alter_crecip89
alter_crecip_zero
alter_divide
alter_entry
alter_entry_affix
alter_entry_hidden
alter_entry_recode
alter_entry_scalar2a
alter_entry_scalar2n
alter_entry_scalar3
alter_entry_scalar4
alter_lincom_23
alter_lincom_32
alter_lincom_input
alter_lincom_offset
alter_lincom_slope
alter_linterp
alter_linterp_move
alter_mplex
alter_mspec
alter_mspec_affix
alter_multiply
alter_phase
alter_polynom_coeff
alter_polynom_input
alter_polynom_ord
alter_raw_spf
alter_raw_type
alter_recip
alter_recip_zero
alter_spec
alter_spec_affix
alter_spec_meta
alter_window
ascii_add
ascii_get
ascii_get_get
ascii_nframes
ascii_put
bof
bof_lincom
bof_phase
bzip_get
bzip_get_get
bzip_move_from
bzip_nframes
bzip_put
close
close_bad
close_discard
close_null
convert_complex128_complex64
convert_complex128_float64
convert_complex128_int64
convert_complex128_uint64
convert_complex64_complex128
convert_complex64_float64
convert_complex64_int64
convert_complex64_uint64
convert_float32_complex128
convert_float32_complex64
convert_float32_float64
convert_float32_int16
convert_float32_int32
convert_float32_int64
convert_float32_int8
convert_float32_uint16
convert_float32_uint32
convert_float32_uint64
convert_float32_uint8
convert_float64_complex128
convert_float64_complex64
convert_float64_float32
convert_float64_int16
convert_float64_int32
convert_float64_int64
convert_float64_int8
convert_float64_uint16
convert_float64_uint32
convert_float64_uint64
convert_float64_uint8
convert_int16_complex128
convert_int16_complex64
convert_int16_float32
convert_int16_float64
convert_int16_int32
convert_int16_int64
convert_int16_int8
convert_int16_uint16
convert_int16_uint32
convert_int16_uint64
convert_int16_uint8
convert_int32_complex128
convert_int32_complex64
convert_int32_float32
convert_int32_float64
convert_int32_int16
convert_int32_int64
convert_int32_int8
convert_int32_uint16
convert_int32_uint32
convert_int32_uint64
convert_int32_uint8
convert_int64_complex128
convert_int64_complex64
convert_int64_float32
convert_int64_float64
convert_int64_int16
convert_int64_int32
convert_int64_int8
convert_int64_uint16
convert_int64_uint32
convert_int64_uint64
convert_int64_uint8
convert_int8_complex128
convert_int8_complex64
convert_int8_float32
convert_int8_float64
convert_int8_int16
convert_int8_int32
convert_int8_int64
convert_int8_uint16
convert_int8_uint32
convert_int8_uint64
convert_int8_uint8
convert_uint16_complex128
convert_uint16_complex64
convert_uint16_float32
convert_uint16_float64
convert_uint16_int16
convert_uint16_int32
convert_uint16_int64
convert_uint16_int8
convert_uint16_uint32
convert_uint16_uint64
convert_uint16_uint8
convert_uint32_complex128
convert_uint32_complex64
convert_uint32_float32
convert_uint32_float64
convert_uint32_int16
convert_uint32_int32
convert_uint32_int64
convert_uint32_int8
convert_uint32_uint16
convert_uint32_uint64
convert_uint32_uint8
convert_uint64_complex128
convert_uint64_complex64
convert_uint64_float32
convert_uint64_float64
convert_uint64_int16
convert_uint64_int32
convert_uint64_int64
convert_uint64_int8
convert_uint64_uint16
convert_uint64_uint32
convert_uint64_uint8
convert_uint8_complex128
convert_uint8_complex64
convert_uint8_float32
convert_uint8_float64
convert_uint8_int16
convert_uint8_int32
convert_uint8_int64
convert_uint8_int8
convert_uint8_uint16
convert_uint8_uint32
convert_uint8_uint64
creat
creat_excl
creat_rdonly
cvlist
cvlist_array
cvlist_array_hidden
cvlist_array_meta
cvlist_array_meta_hidden
cvlist_hidden
cvlist_invalid
cvlist_meta
cvlist_meta_hidden
cvlist_meta_invalid
del
del_carray
del_carray_deref
del_const
del_const_deref
del_const_force
del_data
del_derived
del_derived_after
del_derived_force
del_meta
del_meta_force
desync
desync_flush
desync_reopen
desync_reopen_inv
dfes_bit
dfes_divide
dfes_lincom
dfes_linterp
dfes_multiply
dfes_null
dfes_phase
dfes_raw
dfes_recip
dfes_zero
elist_alias
elist_hidden
elist_scalar
encode_alter
encode_get
encode_move
endian_alter
endian_alter_sie
endian_get
endian_move
entry_bad_code
entry_bit
entry_bit_scalar
entry_divide
entry_invalid
entry_lincom
entry_lincom_scalar
entry_linterp
entry_mplex
entry_mplex_scalar
entry_multiply
entry_phase
entry_phase_scalar
entry_polynom
entry_polynom_scalar
entry_raw
entry_raw_scalar
entry_raw_scalar_code
entry_raw_scalar_type
entry_recip
entry_scalar_repr
entry_type
entry_type_alias
entry_window
entry_window_scalar
eof
eof_index
eof_lincom
eof_phase
error
error_error
error_num
error_short
error_verbose
error_verbose_prefix
file
file_code
file_type
flist
flist_hidden
flist_invalid
flist_meta
flist_meta_hidden
flist_meta_invalid
flist_type
flist_type_hidden
flist_type_invalid
flist_type_meta
flist_type_meta_hidden
flist_type_meta_invalid
flush
flush_all
flush_bad_code
flush_invalid
flush_meta
flush_spec
foffs_alter
foffs_get
foffs_move
fragment_affix
fragment_affix_alter
fragment_affix_alter2
fragment_affix_dup
fragment_index
fragment_index_alias
fragment_name
fragment_name_oor
fragment_num
fragment_parent
get64
get_bad_code
get_bit
get_carray
get_carray_len
get_carray_slice
get_char
get_clincom
get_complex128
get_complex64
get_const
get_const_complex
get_const_repr
get_cpolynom
get_divide
get_endian16
get_endian32
get_endian64
get_endian8
get_endian_complex128_arm
get_endian_complex128_big
get_endian_complex128_little
get_endian_complex64_arm
get_endian_complex64_big
get_endian_complex64_little
get_endian_float32_arm
get_endian_float32_big
get_endian_float32_little
get_endian_float64_arm
get_endian_float64_big
get_endian_float64_little
get_ff
get_float32
get_float64
get_foffs
get_fs
get_here
get_here_foffs
get_heres
get_int16
get_int32
get_int64
get_int8
get_invalid
get_lincom1
get_lincom2
get_lincom3
get_lincom_noin
get_lincom_non
get_lincom_null
get_lincom_spf
get_linterp
get_linterp_noin
get_linterp_notab
get_linterp_sort
get_mplex
get_mplex_lb
get_mplex_lball
get_mplex_nolb
get_multiply
get_multiply_noin
get_nonexistent
get_null
get_off64
get_phase
get_phase_affix
get_polynom
get_polynom_noin
get_recip
get_recip_const
get_recurse
get_rofs
get_sbit
get_sf
get_ss
get_type
get_uint16
get_uint32
get_uint64
get_window
get_window_clr
get_window_ge
get_window_gt
get_window_le
get_window_lt
get_window_ne
get_window_set
get_zero
global_flags
global_name
global_ref
global_ref_empty
global_ref_set
gzip_add
gzip_get
gzip_get_get
gzip_get_put
gzip_move_from
gzip_move_to
gzip_nframes
gzip_put
gzip_put_get
header_complex
hide
hide_hidden
hide_unhide
include
include_accmode
include_affix
include_auto
include_cb
include_creat
include_ignore
include_index
include_invalid
include_nonexistent
include_pc
include_ref
include_syntax
index
index_domain
index_range
legacy_get
legacy_get_put
legacy_get_rofs
legacy_nframes
legacy_nonexistent
legacy_put
legacy_spf
lzma_get
lzma_nframes
madd
madd_affix
madd_alias
madd_bit
madd_bit_invalid
madd_carray
madd_clincom
madd_const
madd_cpolynom
madd_crecip
madd_crecip89
madd_divide
madd_index
madd_lincom
madd_lincom_invalid
madd_linterp
madd_linterp_invalid
madd_mplex
madd_multiply
madd_multiply_invalid
madd_phase
madd_phase_invalid
madd_polynom
madd_recip
madd_sbit
madd_spec
madd_spec_directive
madd_spec_invalid
madd_spec_resolv
madd_string
madd_window
move
move_affix
move_affix_dup
move_alias
move_data_enc_ar
move_data_enc_ra
move_data_endian
move_data_foffs
move_data_nop
move_index
move_meta
move_protect
move_subdir
name
name_affix
name_affix_bad
name_after
name_after_const
name_dup
name_move
name_updb
name_updb_const
nentries_alias
nentries_hidden
nentries_scalar
nfields
nfields_hidden
nfields_invalid
nfields_type
nfields_type_hidden
nfields_type_invalid
nfields_vector
nfields_vector_hidden
nfields_vector_invalid
nframes
nframes64
nframes_empty
nframes_invalid
nframes_off64
nframes_spf
nmeta
nmeta_hidden
nmeta_invalid
nmeta_parent
nmeta_type
nmeta_type_hidden
nmeta_type_invalid
nmeta_type_parent
nmeta_vectors
nmeta_vectors_del
nmeta_vectors_hidden
nmeta_vectors_invalid
nmeta_vectors_parent
open
open_abs
open_cb_abort
open_cb_cont
open_cb_ignore
open_cb_invalid
open_cb_rescan
open_eaccess
open_nonexistent
open_notdirfile
parse_alias
parse_alias_code
parse_alias_dup
parse_alias_meta
parse_alias_missing
parse_badline
parse_bit
parse_bit4
parse_bit_bitnum
parse_bit_bitsize
parse_bit_ncols
parse_bit_numbits
parse_bit_scalar
parse_carray
parse_carray_long
parse_const
parse_const_ncols
parse_divide
parse_duplicate
parse_duplicate_ignore
parse_endian_bad
parse_endian_big
parse_endian_force
parse_endian_little
parse_endian_slash
parse_eol
parse_foffs
parse_foffs_include
parse_foffs_slash
parse_hidden
parse_hidden_field
parse_hidden_meta
parse_include
parse_include_absolute
parse_include_absrel
parse_include_loop
parse_include_nonexistent
parse_include_prefix
parse_include_prefix_dup
parse_include_preprefix
parse_include_relabs
parse_include_relrel
parse_include_slash
parse_include_suffix
parse_include_sufsuffix
parse_index
parse_lincom
parse_lincom_ncols1
parse_lincom_ncols2
parse_lincom_nfields
parse_lincom_nofields
parse_lincom_non
parse_lincom_non_ncols
parse_lincom_scalar
parse_linterp
parse_linterp_ncols
parse_malias
parse_malias_dup
parse_malias_meta
parse_meta
parse_meta_affix
parse_meta_alias
parse_meta_implicit
parse_meta_implicit2
parse_meta_implicit_affix
parse_meta_index
parse_meta_index2
parse_meta_jump
parse_meta_malias
parse_meta_meta
parse_meta_parent
parse_meta_raw
parse_mplex
parse_mplex_ncols
parse_mplex_nomax
parse_mplex_scalar
parse_multiply
parse_multiply_ncols
parse_name
parse_name_dot
parse_name_ext
parse_name_pedantic
parse_ncols
parse_phase
parse_phase_ncols
parse_phase_scalar
parse_polynom
parse_polynom_ncols1
parse_polynom_ncols2
parse_polynom_scalar
parse_protect_all
parse_protect_bad
parse_protect_data
parse_protect_format
parse_protect_none
parse_quote
parse_quote_mismatch
parse_raw
parse_raw_char
parse_raw_ncols
parse_raw_scalar
parse_raw_spf
parse_raw_type
parse_recip
parse_ref
parse_ref_nonexistent
parse_sbit
parse_sort
parse_string
parse_string_ncols
parse_string_null
parse_version
parse_version_89
parse_version_98
parse_version_include
parse_version_p8
parse_version_p9
parse_version_permissive
parse_version_slash
parse_whitespace
parse_window
parse_window_ncols
parse_window_op
parse_window_scalar
protect_alter
protect_get
put64
put_bad_code
put_bit
put_bof
put_carray
put_carray_slice
put_char
put_complex128
put_complex64
put_const
put_const_protect
put_divide
put_endian16
put_endian32
put_endian64
put_endian8
put_endian_complex128_arm
put_endian_complex128_big
put_endian_complex128_little
put_endian_complex64_arm
put_endian_complex64_big
put_endian_complex64_little
put_endian_float32_arm
put_endian_float32_big
put_endian_float32_little
put_endian_float64_arm
put_endian_float64_big
put_endian_float64_little
put_ff
put_float32
put_float64
put_foffs
put_fs
put_here
put_heres
put_int16
put_int32
put_int64
put_int8
put_invalid
put_lincom1
put_lincom2
put_lincom_noin
put_linterp
put_linterp_noin
put_linterp_nomono
put_linterp_notab
put_linterp_reverse
put_mplex
put_multiply
put_null
put_off64
put_phase
put_phase_noin
put_polynom1
put_polynom2
put_polynom_noin
put_protect
put_rdonly
put_recip
put_recurse
put_repr
put_rofs
put_sbit
put_sf
put_ss
put_string
put_string_protect
put_type
put_uint16
put_uint32
put_uint64
put_window
put_zero
ref
ref_none
ref_two
repr_a
repr_float32
repr_float64
repr_i
repr_int16
repr_int32
repr_int64
repr_int8
repr_m
repr_r
repr_real_a
repr_real_i
repr_real_m
repr_real_r
repr_uint16
repr_uint32
repr_uint64
repr_uint8
seek64
seek_cur
seek_end
seek_foffs
seek_set
sie_get_big
sie_get_little
sie_move_from
sie_move_to
sie_nframes_big
sie_nframes_little
sie_put_big
sie_put_little
slim_get
slim_nframes
slim_put
spf
spf_alias
spf_alias_meta
spf_alias_missing
spf_divide
spf_lincom
spf_multiply
spf_polynom
spf_recip
spf_recurse
svlist
svlist_hidden
svlist_invalid
svlist_meta
svlist_meta_hidden
svlist_meta_invalid
tell
tell64
trunc
trunc_dir
trunc_rdonly
trunc_rofs
trunc_truncsub
unclude
unclude_del
unclude_move
version_0
version_0_write
version_1
version_1_write
version_2
version_2_write
version_3
version_3_write
version_4
version_4_write
version_5
version_5_strict
version_5_write
version_6
version_6_strict
version_6_write
version_7
version_7_strict
version_7_write
version_8
version_8_strict
version_8_write
version_9
version_9_strict
version_9_write
vlist
vlist_alias
vlist_hidden
vlist_invalid
vlist_meta
vlist_meta_hidden
vlist_meta_invalid
xz_get
xz_nframes
zzip_data
zzip_get
zzip_get_get
zzip_nframes
zzslim_get
zzslim_nframes
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ket...@us...> - 2012-06-02 23:21:20
|
Revision: 718
http://getdata.svn.sourceforge.net/getdata/?rev=718&view=rev
Author: ketiltrout
Date: 2012-06-02 23:21:13 +0000 (Sat, 02 Jun 2012)
Log Message:
-----------
tweak
Modified Paths:
--------------
trunk/getdata/bindings/perl/Makefile.am
Modified: trunk/getdata/bindings/perl/Makefile.am
===================================================================
--- trunk/getdata/bindings/perl/Makefile.am 2012-06-02 21:32:56 UTC (rev 717)
+++ trunk/getdata/bindings/perl/Makefile.am 2012-06-02 23:21:13 UTC (rev 718)
@@ -38,7 +38,7 @@
nodist_perlautogetdata_SCRIPTS=blib/arch/auto/GetData/GetData.bs blib/arch/auto/GetData/GetData.so
t lib:
- mkdir $@
+ mkdir -p $@
t/%.t: test/%.t
$(MAKE) t
@@ -73,8 +73,9 @@
chmod a-w $@
blib/arch/auto/GetData/GetData.bs blib/arch/auto/GetData/GetData.so \
- blib/lib/GetData.pm blib/libdoc/GetData.$(PERL_MAN3EXT): Build \
- lib/GetData.xs lib/simple_funcs.xs lib/typemap
+ blib/lib/GetData.pm blib/libdoc/GetData.$(PERL_MAN3EXT): build.stamp
+
+build.stamp: Build lib/GetData.xs lib/simple_funcs.xs lib/typemap
$(PERL) Build build
touch $@
@@ -89,7 +90,7 @@
$(PERL) Build clean; \
fi
rm -f $(BUILT_SOURCES) make_parameters.sed MYMETA.yml MYMETA.json GetData.pm
- rm -rf Build _build MANIFEST t
+ rm -rf Build _build MANIFEST t build.stamp
uninstall-hook:
rmdir $(DESTDIR)${perlautogetdatadir}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ket...@us...> - 2012-06-02 21:33:02
|
Revision: 717
http://getdata.svn.sourceforge.net/getdata/?rev=717&view=rev
Author: ketiltrout
Date: 2012-06-02 21:32:56 +0000 (Sat, 02 Jun 2012)
Log Message:
-----------
Allow NULL in call to _GD_AbsPath
Modified Paths:
--------------
trunk/getdata/ChangeLog
trunk/getdata/configure.ac
trunk/getdata/src/internal.h
Modified: trunk/getdata/ChangeLog
===================================================================
--- trunk/getdata/ChangeLog 2012-05-27 01:24:27 UTC (rev 716)
+++ trunk/getdata/ChangeLog 2012-06-02 21:32:56 UTC (rev 717)
@@ -1,3 +1,6 @@
+2012-05-25 D. V. Wiebe <ge...@ke...> svn:717
+ * src/internal.h (_GD_AbsPath): Allow s == NULL.
+
2012-05-25 D. V. Wiebe <ge...@ke...> svn:712
* bindings/cxx/fragment.cpp (Fragment::Fragment Fragment::SetEndianness)
bindings/cxx/dirfile.cpp (Dirfile::NFrames Dirfile::EoF Dirfile::BoF
Modified: trunk/getdata/configure.ac
===================================================================
--- trunk/getdata/configure.ac 2012-05-27 01:24:27 UTC (rev 716)
+++ trunk/getdata/configure.ac 2012-06-02 21:32:56 UTC (rev 717)
@@ -411,7 +411,7 @@
case "${host}" in
*-pc-mingw*|*-pc-cygwin*)
- NO_UNDEFINED=" -no-undefined --enable-auto-import";
+ NO_UNDEFINED=" -no-undefined -enable-auto-import";
NO_DLOPEN_TESTS=1 ;;
*) NO_DLOPEN_TESTS=0 ;;
esac
Modified: trunk/getdata/src/internal.h
===================================================================
--- trunk/getdata/src/internal.h 2012-05-27 01:24:27 UTC (rev 716)
+++ trunk/getdata/src/internal.h 2012-06-02 21:32:56 UTC (rev 717)
@@ -613,8 +613,8 @@
/* path malarkey */
#if defined _WIN32 || defined _WIN64
-# define _GD_AbsPath(s) ((s)[0] == '/' || (s)[0] == GD_DIRSEP || \
- ((s)[0] != '\0' && (s)[1] == ':'))
+# define _GD_AbsPath(s) (s && ((s)[0] == '/' || (s)[0] == GD_DIRSEP || \
+ ((s)[0] != '\0' && (s)[1] == ':')))
# define _GD_Root(s,d,l) \
do { \
if ((d)[0] == '/' || (d)[0] == GD_DIRSEP) { \
@@ -637,7 +637,7 @@
((d)[1] == '/' || (d)[1] == GD_DIRSEP) ? 2 : 1 : 3 \
)
#else
-# define _GD_AbsPath(s) ((s)[0] == '/')
+# define _GD_AbsPath(s) (s && (s)[0] == '/')
# define _GD_Root(s,d,l) \
do { \
(s)[0] = '/'; \
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ket...@us...> - 2012-05-27 01:24:34
|
Revision: 716
http://getdata.svn.sourceforge.net/getdata/?rev=716&view=rev
Author: ketiltrout
Date: 2012-05-27 01:24:27 +0000 (Sun, 27 May 2012)
Log Message:
-----------
Fix gd_off64_t definition.
Modified Paths:
--------------
trunk/getdata/configure.ac
Modified: trunk/getdata/configure.ac
===================================================================
--- trunk/getdata/configure.ac 2012-05-27 01:06:57 UTC (rev 715)
+++ trunk/getdata/configure.ac 2012-05-27 01:24:27 UTC (rev 716)
@@ -682,7 +682,7 @@
"
gd_off64_t="off64_t"
elif test $ac_cv_sizeof_off_t -eq 8;then
- gd_off64_t="off64_t"
+ gd_off64_t="off_t"
else
gd_off64_t=$gd_int64_t
fi
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ket...@us...> - 2012-05-27 01:07:04
|
Revision: 715
http://getdata.svn.sourceforge.net/getdata/?rev=715&view=rev
Author: ketiltrout
Date: 2012-05-27 01:06:57 +0000 (Sun, 27 May 2012)
Log Message:
-----------
Windows doesn't seem to like executables with "update" in their name...?
Added Paths:
-----------
trunk/getdata/test/name_updb.c
trunk/getdata/test/name_updb_const.c
Removed Paths:
-------------
trunk/getdata/test/name_update.c
trunk/getdata/test/name_update_const.c
Deleted: trunk/getdata/test/name_update.c
===================================================================
Deleted: trunk/getdata/test/name_update_const.c
===================================================================
Added: trunk/getdata/test/name_updb.c
===================================================================
--- trunk/getdata/test/name_updb.c (rev 0)
+++ trunk/getdata/test/name_updb.c 2012-05-27 01:06:57 UTC (rev 715)
@@ -0,0 +1,60 @@
+/* Copyright (C) 2011 D. V. Wiebe
+ *
+ ***************************************************************************
+ *
+ * This file is part of the GetData project.
+ *
+ * GetData is free software; you can redistribute it and/or modify it under
+ * the terms of the GNU Lesser General Public License as published by the
+ * Free Software Foundation; either version 2.1 of the License, or (at your
+ * option) any later version.
+ *
+ * GetData is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
+ * License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with GetData; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+#include "test.h"
+
+int main(void)
+{
+ const char *filedir = "dirfile";
+ const char *format = "dirfile/format";
+ const char *format_data =
+ "early PHASE data 0\n"
+ "late PHASE data 0\n"
+ "data RAW UINT8 8\n";
+ int fd, e1, e2, e3, r = 0;
+ DIRFILE *D;
+
+ rmdirfile();
+ mkdir(filedir, 0777);
+
+ fd = open(format, O_CREAT | O_EXCL | O_WRONLY, 0666);
+ write(fd, format_data, strlen(format_data));
+ close(fd);
+
+ D = gd_open(filedir, GD_RDWR | GD_VERBOSE);
+ gd_validate(D, "early");
+ gd_rename(D, "data", "zata", GD_REN_UPDB);
+ e1 = gd_error(D);
+ gd_spf(D, "early");
+ e2 = gd_error(D);
+ gd_spf(D, "late");
+ e3 = gd_error(D);
+
+ gd_discard(D);
+
+ unlink(format);
+ rmdir(filedir);
+
+ CHECKI(e1,0);
+ CHECKI(e2,0);
+ CHECKI(e3,0);
+
+ return r;
+}
Added: trunk/getdata/test/name_updb_const.c
===================================================================
--- trunk/getdata/test/name_updb_const.c (rev 0)
+++ trunk/getdata/test/name_updb_const.c 2012-05-27 01:06:57 UTC (rev 715)
@@ -0,0 +1,63 @@
+/* Copyright (C) 2011 D. V. Wiebe
+ *
+ ***************************************************************************
+ *
+ * This file is part of the GetData project.
+ *
+ * GetData is free software; you can redistribute it and/or modify it under
+ * the terms of the GNU Lesser General Public License as published by the
+ * Free Software Foundation; either version 2.1 of the License, or (at your
+ * option) any later version.
+ *
+ * GetData is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
+ * License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with GetData; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+#include "test.h"
+
+int main(void)
+{
+ const char *filedir = "dirfile";
+ const char *format = "dirfile/format";
+ const char *format_data =
+ "early RAW UINT8 c<1>\n"
+ "late RAW UINT8 c<0>\n"
+ "c CARRAY UINT8 2 3\n";
+ int fd, e1, e2, e3, r = 0;
+ unsigned s2, s3;
+ DIRFILE *D;
+
+ rmdirfile();
+ mkdir(filedir, 0777);
+
+ fd = open(format, O_CREAT | O_EXCL | O_WRONLY, 0666);
+ write(fd, format_data, strlen(format_data));
+ close(fd);
+
+ D = gd_open(filedir, GD_RDWR | GD_VERBOSE);
+ gd_validate(D, "early");
+ gd_rename(D, "c", "d", GD_REN_UPDB);
+ e1 = gd_error(D);
+ s2 = gd_spf(D, "early");
+ e2 = gd_error(D);
+ s3 = gd_spf(D, "late");
+ e3 = gd_error(D);
+
+ gd_discard(D);
+
+ unlink(format);
+ rmdir(filedir);
+
+ CHECKI(e1,0);
+ CHECKI(e2,0);
+ CHECKI(e3,0);
+ CHECKU(s2,3);
+ CHECKU(s3,2);
+
+ return r;
+}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ket...@us...> - 2012-05-26 23:17:32
|
Revision: 714
http://getdata.svn.sourceforge.net/getdata/?rev=714&view=rev
Author: ketiltrout
Date: 2012-05-26 23:17:26 +0000 (Sat, 26 May 2012)
Log Message:
-----------
Update mingw cmake defined based on configure under msys.
Modified Paths:
--------------
trunk/getdata/cmake/CMakeLists.txt
trunk/getdata/cmake/test/CMakeLists.txt
trunk/getdata/src/internal.h
trunk/getdata/test/Makefile.am
trunk/getdata/test/get_endian64.c
trunk/getdata/test/get_int64.c
trunk/getdata/test/get_uint64.c
trunk/getdata/test/name_update.c
trunk/getdata/test/name_update_const.c
trunk/getdata/test/put_endian64.c
Modified: trunk/getdata/cmake/CMakeLists.txt
===================================================================
--- trunk/getdata/cmake/CMakeLists.txt 2012-05-26 00:25:05 UTC (rev 713)
+++ trunk/getdata/cmake/CMakeLists.txt 2012-05-26 23:17:26 UTC (rev 714)
@@ -42,6 +42,7 @@
# MSVCRT integer types
set(DEFINE_gd_int64_t "#define gd_int64_t __int64")
set(DEFINE_gd_uint64_t "#define gd_uint64_t unsigned __int64")
+ set(DEFINE_gd_off64_t "#define gd_off64_t __int64")
add_definitions(-D_CRT_SECURE_NO_WARNINGS -D_CRT_NONSTDC_NO_WARNINGS)
add_definitions(
@@ -91,33 +92,76 @@
set(DEFINE_gd_uint16_t "#define gd_uint16_t unsigned __int16")
set(DEFINE_gd_int64_t "#define gd_int64_t __int64")
set(DEFINE_gd_uint64_t "#define gd_uint64_t unsigned __int64")
+ set(DEFINE_gd_off64_t "#define gd_off64_t off64_t")
add_definitions(
- -D__MSVCRT__
-D__MSVCRT_VERSION__=0x0601
- -DSTDC_HEADERS
+ -DGD_DIRSEP='\\\\'
+ -DGD_RESTRICT_ARRAY_OK=1
+ -DHAVE_BASENAME
+ -DHAVE_CABS
+ -DHAVE_COMPLEX_H
+ -DHAVE_DIRECT_H
+ -DHAVE_DIRENT_H
+ -DHAVE_FCNTL_H
+ -DHAVE_FLOAT_H
+ -DHAVE_FSEEKO64
+ -DHAVE_FTELLO64
+ -DHAVE_FTRUNCATE
+ -DHAVE_GETCWD
+ -DHAVE_INTTYPES_H
-DHAVE_IO_H
+ -DHAVE_ISNAN
+ -DHAVE_LIBGEN_H
+ -DHAVE_LSEEK64
+ -DHAVE_MEMORY_H
+ -DHAVE_NAN
+ -DHAVE_OFF64_T
+ -DHAVE_SNPRINTF
+ -DHAVE_SSIZE_T
+ -DHAVE_STDDEF_H
-DHAVE_STDINT_H
- -DHAVE_COMPLEX_H
- -DHAVE_OFF64_T
- -DHAVE_LIBGEN_H
+ -DHAVE_STDLIB_H
+ -DHAVE_STRINGS_H
+ -DHAVE_STRING_H
-DHAVE_STRTOLL
- -DHAVE_DIRENT_H
- -DHAVE_DIRECT_H
+ -DHAVE_STRTOULL
+ -DHAVE_STRUCT___STAT64
+ -DHAVE_SYS_FILE_H
+ -DHAVE_SYS_PARAM_H
+ -DHAVE_SYS_STAT_H
+ -DHAVE_SYS_TYPES_H
+ -DHAVE_UNISTD_H
+ -DHAVE__CHSIZE
-DHAVE__COMMIT
+ -DHAVE__COMPLEX_DOUBLE
+ -DHAVE__COMPLEX_FLOAT
+ -DHAVE__FDOPEN
+ -DHAVE__FSTAT
+ -DHAVE__FSTAT64
+ -DHAVE__GETCWD
+ -DHAVE__ISNAN
+ -DHAVE__LSEEKI64
+ -DHAVE__MKDIR
+ -DHAVE__OPEN
+ -DHAVE__READ
+ -DHAVE__RMDIR
+ -DHAVE__SNPRINTF
-DHAVE__STAT64
-DHAVE__STRTOI64
-DHAVE__STRTOUI64
- -DHAVE_STRUCT___STAT64
- -DHAVE__GETCWD
+ -DHAVE__UNLINK
+ -DHAVE__WRITE
-DMKDIR_NO_MODE
- -DHAVE_SYS_FILE_H
- -DHAVE_SYS_STAT_H
- -DHAVE_DIRENT_H
- -DS_IFLNK=0xa000
- -DHAVE_DECL_OFFSETOF
- -DHAVE__CHSIZE
- -DGD_DIRSEP=0x53
+ -DSIZEOF_INT=4
+ -DSIZEOF_UNSIGNED_INT=4
+ -DSTDC_HEADERS
+ -D_BSD_SOURCE=1
+ -D_GNU_SOURCE=1
+ -D_POSIX_C_SOURCE=1200809L
+ -D_POSIX_SOURCE=1
+ -D_SVID_SOURCE=0
+ -Drestrict=__restrict
)
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=gnu99")
endif()
Modified: trunk/getdata/cmake/test/CMakeLists.txt
===================================================================
--- trunk/getdata/cmake/test/CMakeLists.txt 2012-05-26 00:25:05 UTC (rev 713)
+++ trunk/getdata/cmake/test/CMakeLists.txt 2012-05-26 23:17:26 UTC (rev 714)
@@ -21,23 +21,15 @@
set(tests_ignored
${tests_ignored}
error_verbose error_verbose_prefix
- get64 get_uint64 get_endian64 get_int64 get_off64
- nframes64
- put64 put_endian64 put_off64
- seek64
- tell64
+ get_off64 put_off64
)
endif()
if(MINGW)
set(tests_ignored
${tests_ignored}
- add_crecip89
- alter_crecip89
- endian_alter endian_get endian_move
- header_complex
- madd_crecip89
- move_data_endian
+ error_verbose error_verbose_prefix
+ get_off64 put_off64
)
endif()
@@ -45,7 +37,7 @@
list(REMOVE_ITEM gd_sources ${GD_DIR}/test/${_item}.c)
endforeach()
-#set(gd_sources ${GD_DIR}/test/parse_include_relabs.c)
+#set(gd_sources ${GD_DIR}/test/sie_get_little.c)
foreach(_test ${gd_sources})
get_filename_component(testname ${_test} NAME_WE)
Modified: trunk/getdata/src/internal.h
===================================================================
--- trunk/getdata/src/internal.h 2012-05-26 00:25:05 UTC (rev 713)
+++ trunk/getdata/src/internal.h 2012-05-26 23:17:26 UTC (rev 714)
@@ -112,7 +112,7 @@
#endif
#ifndef HAVE_OFF64_T
-typedef off_t off64_t;
+typedef gd_off64_t off64_t;
#endif
#ifdef _MSC_VER
Modified: trunk/getdata/test/Makefile.am
===================================================================
--- trunk/getdata/test/Makefile.am 2012-05-26 00:25:05 UTC (rev 713)
+++ trunk/getdata/test/Makefile.am 2012-05-26 23:17:26 UTC (rev 714)
@@ -225,7 +225,7 @@
move_index move_meta move_protect move_subdir
NAME_TESTS=name name_affix name_affix_bad name_after name_after_const name_dup \
- name_move name_update name_update_const
+ name_move name_updb name_updb_const
NENTRIES_TESTS=nentries_alias nentries_hidden nentries_scalar
Modified: trunk/getdata/test/get_endian64.c
===================================================================
--- trunk/getdata/test/get_endian64.c 2012-05-26 00:25:05 UTC (rev 713)
+++ trunk/getdata/test/get_endian64.c 2012-05-26 23:17:26 UTC (rev 714)
@@ -59,7 +59,7 @@
? "little" : "big");
for (fd = 0; fd < 128; ++fd)
- data_data[fd] = fd * (0x020100000201LLU);
+ data_data[fd] = fd * (0x020100000201);
fd = open(format, O_CREAT | O_EXCL | O_WRONLY, 0666);
write(fd, format_data, strlen(format_data));
@@ -81,7 +81,7 @@
CHECKI(error, 0);
CHECKI(n, 1);
- CHECKX(c, 0x50a0000050a0000LLU);
+ CHECKX(c, 0x50a0000050a0000);
return r;
}
Modified: trunk/getdata/test/get_int64.c
===================================================================
--- trunk/getdata/test/get_int64.c 2012-05-26 00:25:05 UTC (rev 713)
+++ trunk/getdata/test/get_int64.c 2012-05-26 23:17:26 UTC (rev 714)
@@ -45,7 +45,7 @@
mkdir(filedir, 0777);
for (fd = 0; fd < 64; ++fd)
- data_data[fd] = fd * (0x0200000000000001LLU) * (2 * (fd % 2) - 1);
+ data_data[fd] = fd * (0x0200000000000001) * (2 * (fd % 2) - 1);
fd = open(format, O_CREAT | O_EXCL | O_WRONLY, 0666);
write(fd, format_data, strlen(format_data));
@@ -63,7 +63,7 @@
CHECKI(n, 8);
for (i = 0; i < 8; ++i)
- CHECKIi(i,c[i], (0x5000000000000028LL + i * 0x0200000000000001LL)
+ CHECKIi(i,c[i], (0x5000000000000028 + i * 0x0200000000000001)
* (2 * (i % 2) - 1));
gd_close(D);
Modified: trunk/getdata/test/get_uint64.c
===================================================================
--- trunk/getdata/test/get_uint64.c 2012-05-26 00:25:05 UTC (rev 713)
+++ trunk/getdata/test/get_uint64.c 2012-05-26 23:17:26 UTC (rev 714)
@@ -45,7 +45,7 @@
mkdir(filedir, 0777);
for (fd = 0; fd < 128; ++fd)
- data_data[fd] = fd * (0x0200000000000001LLU);
+ data_data[fd] = fd * (0x0200000000000001);
fd = open(format, O_CREAT | O_EXCL | O_WRONLY, 0666);
write(fd, format_data, strlen(format_data));
@@ -62,7 +62,7 @@
CHECKI(error, 0);
CHECKI(n, 8);
for (i = 0; i < 8; ++i)
- CHECKUi(i,c[i],0x5000000000000028LLU + i * 0x0200000000000001LLU);
+ CHECKUi(i,c[i],0x5000000000000028 + i * 0x0200000000000001);
gd_close(D);
Modified: trunk/getdata/test/name_update.c
===================================================================
--- trunk/getdata/test/name_update.c 2012-05-26 00:25:05 UTC (rev 713)
+++ trunk/getdata/test/name_update.c 2012-05-26 23:17:26 UTC (rev 714)
@@ -1,60 +0,0 @@
-/* Copyright (C) 2011 D. V. Wiebe
- *
- ***************************************************************************
- *
- * This file is part of the GetData project.
- *
- * GetData is free software; you can redistribute it and/or modify it under
- * the terms of the GNU Lesser General Public License as published by the
- * Free Software Foundation; either version 2.1 of the License, or (at your
- * option) any later version.
- *
- * GetData is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
- * License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with GetData; if not, write to the Free Software Foundation, Inc.,
- * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- */
-#include "test.h"
-
-int main(void)
-{
- const char *filedir = "dirfile";
- const char *format = "dirfile/format";
- const char *format_data =
- "early PHASE data 0\n"
- "late PHASE data 0\n"
- "data RAW UINT8 8\n";
- int fd, e1, e2, e3, r = 0;
- DIRFILE *D;
-
- rmdirfile();
- mkdir(filedir, 0777);
-
- fd = open(format, O_CREAT | O_EXCL | O_WRONLY, 0666);
- write(fd, format_data, strlen(format_data));
- close(fd);
-
- D = gd_open(filedir, GD_RDWR | GD_VERBOSE);
- gd_validate(D, "early");
- gd_rename(D, "data", "zata", GD_REN_UPDB);
- e1 = gd_error(D);
- gd_spf(D, "early");
- e2 = gd_error(D);
- gd_spf(D, "late");
- e3 = gd_error(D);
-
- gd_discard(D);
-
- unlink(format);
- rmdir(filedir);
-
- CHECKI(e1,0);
- CHECKI(e2,0);
- CHECKI(e3,0);
-
- return r;
-}
Modified: trunk/getdata/test/name_update_const.c
===================================================================
--- trunk/getdata/test/name_update_const.c 2012-05-26 00:25:05 UTC (rev 713)
+++ trunk/getdata/test/name_update_const.c 2012-05-26 23:17:26 UTC (rev 714)
@@ -1,63 +0,0 @@
-/* Copyright (C) 2011 D. V. Wiebe
- *
- ***************************************************************************
- *
- * This file is part of the GetData project.
- *
- * GetData is free software; you can redistribute it and/or modify it under
- * the terms of the GNU Lesser General Public License as published by the
- * Free Software Foundation; either version 2.1 of the License, or (at your
- * option) any later version.
- *
- * GetData is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
- * License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with GetData; if not, write to the Free Software Foundation, Inc.,
- * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- */
-#include "test.h"
-
-int main(void)
-{
- const char *filedir = "dirfile";
- const char *format = "dirfile/format";
- const char *format_data =
- "early RAW UINT8 c<1>\n"
- "late RAW UINT8 c<0>\n"
- "c CARRAY UINT8 2 3\n";
- int fd, e1, e2, e3, r = 0;
- unsigned s2, s3;
- DIRFILE *D;
-
- rmdirfile();
- mkdir(filedir, 0777);
-
- fd = open(format, O_CREAT | O_EXCL | O_WRONLY, 0666);
- write(fd, format_data, strlen(format_data));
- close(fd);
-
- D = gd_open(filedir, GD_RDWR | GD_VERBOSE);
- gd_validate(D, "early");
- gd_rename(D, "c", "d", GD_REN_UPDB);
- e1 = gd_error(D);
- s2 = gd_spf(D, "early");
- e2 = gd_error(D);
- s3 = gd_spf(D, "late");
- e3 = gd_error(D);
-
- gd_discard(D);
-
- unlink(format);
- rmdir(filedir);
-
- CHECKI(e1,0);
- CHECKI(e2,0);
- CHECKI(e3,0);
- CHECKU(s2,3);
- CHECKU(s3,2);
-
- return r;
-}
Modified: trunk/getdata/test/put_endian64.c
===================================================================
--- trunk/getdata/test/put_endian64.c 2012-05-26 00:25:05 UTC (rev 713)
+++ trunk/getdata/test/put_endian64.c 2012-05-26 23:17:26 UTC (rev 714)
@@ -46,7 +46,7 @@
const char *format = "dirfile/format";
const char *data = "dirfile/data";
char format_data[1000];
- uint64_t c = 0x0203000000040001LLU, d = 0;
+ uint64_t c = 0x0203000000040001, d = 0;
const int big_endian = BigEndian();
int fd, n, error, r = 0;
DIRFILE *D;
@@ -76,7 +76,7 @@
unlink(format);
rmdir(filedir);
- CHECKX(d,0x0100040000000302LLU);
+ CHECKX(d,0x0100040000000302);
CHECKI(n,1);
CHECKI(error,0);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ket...@us...> - 2012-05-26 00:25:16
|
Revision: 713
http://getdata.svn.sourceforge.net/getdata/?rev=713&view=rev
Author: ketiltrout
Date: 2012-05-26 00:25:05 +0000 (Sat, 26 May 2012)
Log Message:
-----------
Change hot the 64-bit off_t API is handled. It's now always available, regardless of platform. Fix C++ bindings to use it, instead of _FILE_OFFSET_BITS.
Modified Paths:
--------------
trunk/getdata/ChangeLog
trunk/getdata/bindings/cxx/dirfile.cpp
trunk/getdata/bindings/cxx/fragment.cpp
trunk/getdata/bindings/cxx/getdata/dirfile.h
trunk/getdata/bindings/perl/Makefile.am
trunk/getdata/configure.ac
trunk/getdata/man/Makefile.am
trunk/getdata/man/gd_framenum_subset64.3
trunk/getdata/man/gd_frameoffset64.3
trunk/getdata/man/gd_getdata64.3
trunk/getdata/man/gd_nframes64.3
trunk/getdata/man/gd_putdata64.3
trunk/getdata/src/common.c
trunk/getdata/src/constant.c
trunk/getdata/src/encoding.c
trunk/getdata/src/flush.c
trunk/getdata/src/getdata.c
trunk/getdata/src/getdata.h.in
trunk/getdata/src/internal.h
trunk/getdata/src/name.c
trunk/getdata/src/putdata.c
trunk/getdata/src/types.c
trunk/getdata/test/Makefile.am
Added Paths:
-----------
trunk/getdata/man/gd_bof64.3
trunk/getdata/man/gd_eof64.3
trunk/getdata/man/gd_seek64.3
trunk/getdata/man/gd_tell64.3
Modified: trunk/getdata/ChangeLog
===================================================================
--- trunk/getdata/ChangeLog 2012-05-23 23:24:48 UTC (rev 712)
+++ trunk/getdata/ChangeLog 2012-05-26 00:25:05 UTC (rev 713)
@@ -1,3 +1,20 @@
+2012-05-25 D. V. Wiebe <ge...@ke...> svn:712
+ * bindings/cxx/fragment.cpp (Fragment::Fragment Fragment::SetEndianness)
+ bindings/cxx/dirfile.cpp (Dirfile::NFrames Dirfile::EoF Dirfile::BoF
+ Dirfile::GetData Dirfile::PutData Dirfile::FrameNum Dirfile::Seek
+ Dirfile::Tell): Call the 64-bit API.
+
+ * src/getdata.h.in: Support GD_64BIT_API and use configure to define
+ gd_off64_t.
+ * src/internal.h bindings/cxx/getdata/dirfile.h: Define GD_64BIT_API before
+ including getdata.h.
+
+ * test/Makefile.am man/Makefile.am: Remove LFS_TRANSITIONAL_API (always
+ enabled).
+
+ * confihure.ac: Figure out a suitable type for gd_off64_t. Remove
+ LFS_TRANSITIONAL_API conditional.
+
2012-05-23 D. V. Wiebe <ge...@ke...> svn:710
* test/test.h: Don't redefine isnan if it's okay as-is.
Modified: trunk/getdata/bindings/cxx/dirfile.cpp
===================================================================
--- trunk/getdata/bindings/cxx/dirfile.cpp 2012-05-23 23:24:48 UTC (rev 712)
+++ trunk/getdata/bindings/cxx/dirfile.cpp 2012-05-26 00:25:05 UTC (rev 713)
@@ -259,17 +259,17 @@
off_t Dirfile::NFrames() const
{
- return gd_nframes(D);
+ return (off_t)gd_nframes64(D);
}
off_t Dirfile::EoF(const char *field_code) const
{
- return gd_eof(D, field_code);
+ return (off_t)gd_eof64(D, field_code);
}
off_t Dirfile::BoF(const char *field_code) const
{
- return gd_bof(D, field_code);
+ return (off_t)gd_bof64(D, field_code);
}
int Dirfile::GetCarray(const char *field_code, DataType type, void *data_out,
@@ -292,8 +292,9 @@
off_t first_sample, size_t num_frames, size_t num_samples,
DataType type, void* data_out) const
{
- return gd_getdata(D, field_code, first_frame, first_sample, num_frames,
- num_samples, (gd_type_t)type, data_out);
+ return gd_getdata64(D, field_code, (gd_off64_t)first_frame,
+ (gd_off64_t)first_sample, num_frames, num_samples, (gd_type_t)type,
+ data_out);
}
size_t Dirfile::GetString(const char *field_code, size_t len, char* data_out)
@@ -322,8 +323,9 @@
off_t first_sample, size_t num_frames, size_t num_samples,
DataType type, const void* data_in) const
{
- return gd_putdata(D, field_code, first_frame, first_sample, num_frames,
- num_samples, (gd_type_t)type, data_in);
+ return gd_putdata64(D, field_code, (gd_off64_t)first_frame,
+ (gd_off64_t)first_sample, num_frames, num_samples, (gd_type_t)type,
+ data_in);
}
size_t Dirfile::PutString(const char *field_code, const char* data_in) const
@@ -424,7 +426,8 @@
double Dirfile::FrameNum(const char* field_code, double value,
off_t frame_start, off_t frame_end) const
{
- return gd_framenum_subset(D, field_code, value, frame_start, frame_end);
+ return gd_framenum_subset64(D, field_code, value, (gd_off64_t)frame_start,
+ (gd_off64_t)frame_end);
}
int Dirfile::FragmentIndex(const char* field_code) const
@@ -445,12 +448,13 @@
off_t Dirfile::Seek(const char* field_code, off_t frame_num,
off_t sample_num, int flags) const
{
- return gd_seek(D, field_code, frame_num, sample_num, flags);
+ return (off_t)gd_seek64(D, field_code, (gd_off64_t)frame_num,
+ (gd_off64_t)sample_num, flags);
}
off_t Dirfile::Tell(const char* field_code) const
{
- return gd_tell(D, field_code);
+ return (off_t)gd_tell64(D, field_code);
}
int Dirfile::AddAlias(const char* field_code, const char* target,
Modified: trunk/getdata/bindings/cxx/fragment.cpp
===================================================================
--- trunk/getdata/bindings/cxx/fragment.cpp 2012-05-23 23:24:48 UTC (rev 712)
+++ trunk/getdata/bindings/cxx/fragment.cpp 2012-05-26 00:25:05 UTC (rev 713)
@@ -31,7 +31,7 @@
ind = index;
enc = (GetData::EncodingScheme)gd_encoding(D->D, index);
end = gd_endianness(D->D, index);
- off = gd_frameoffset(D->D, index);
+ off = (off_t)gd_frameoffset64(D->D, index);
prot = gd_protection(D->D, index);
name = gd_fragmentname(D->D, index);
parent = (index == 0) ? -1 : gd_parent_fragment(D->D, index);
@@ -73,7 +73,7 @@
int Fragment::SetFrameOffset(off_t offset, int recode)
{
- int ret = gd_alter_frameoffset(D->D, offset, ind, recode);
+ int ret = gd_alter_frameoffset64(D->D, (gd_off64_t)offset, ind, recode);
if (!ret)
off = offset;
Modified: trunk/getdata/bindings/cxx/getdata/dirfile.h
===================================================================
--- trunk/getdata/bindings/cxx/getdata/dirfile.h 2012-05-23 23:24:48 UTC (rev 712)
+++ trunk/getdata/bindings/cxx/getdata/dirfile.h 2012-05-26 00:25:05 UTC (rev 713)
@@ -22,16 +22,17 @@
#ifndef GETDATA_DIRFILE_H
#define GETDATA_DIRFILE_H
-#ifndef _FILE_OFFSET_BITS
-# define _FILE_OFFSET_BITS 64
+// Enable the explicit 64-bit API (gd_getdata64() &c.)
+#ifndef GD_64BIT_API
+# define GD_64BIT_API
#endif
-// We don't want the legacy API since its symbols clash with us.
+// Disable the legacy API since its symbols clash with us.
#ifndef GD_NO_LEGACY_API
# define GD_NO_LEGACY_API
#endif
-// We use the C89 API since C++ compilers aren't required to support the
+// Use the C89 API since C++ compilers aren't required to support the
// C99 _Complex keyword
#ifndef GD_C89_API
# define GD_C89_API
Modified: trunk/getdata/bindings/perl/Makefile.am
===================================================================
--- trunk/getdata/bindings/perl/Makefile.am 2012-05-23 23:24:48 UTC (rev 712)
+++ trunk/getdata/bindings/perl/Makefile.am 2012-05-26 00:25:05 UTC (rev 713)
@@ -37,22 +37,23 @@
perlautogetdatadir=${perldir}/auto/GetData
nodist_perlautogetdata_SCRIPTS=blib/arch/auto/GetData/GetData.bs blib/arch/auto/GetData/GetData.so
-t:
- mkdir t
+t lib:
+ mkdir $@
-t/%.t: test/%.t t
+t/%.t: test/%.t
+ $(MAKE) t
cat $< > $@
-lib:
- mkdir lib
-
-lib/GetData.xs: lib GetData.xs
+lib/GetData.xs: GetData.xs
+ $(MAKE) lib
cat $(srcdir)/GetData.xs > $@
-lib/typemap: lib typemap
+lib/typemap: typemap
+ $(MAKE) lib
cat $(srcdir)/typemap > $@
-lib/simple_funcs.xs: lib simple_funcs.xsin simple_funcs.pl
+lib/simple_funcs.xs: simple_funcs.xsin simple_funcs.pl
+ $(MAKE) lib
$(PERL) $(srcdir)/simple_funcs.pl $(srcdir)/simple_funcs.xsin > $@
MANIFEST: MANIFEST.in
@@ -75,6 +76,7 @@
blib/lib/GetData.pm blib/libdoc/GetData.$(PERL_MAN3EXT): Build \
lib/GetData.xs lib/simple_funcs.xs lib/typemap
$(PERL) Build build
+ touch $@
.PRECIOUS: Build
Build: Build.PL GetData.pm lib/GetData.xs lib/simple_funcs.xs lib/typemap \
Modified: trunk/getdata/configure.ac
===================================================================
--- trunk/getdata/configure.ac 2012-05-23 23:24:48 UTC (rev 712)
+++ trunk/getdata/configure.ac 2012-05-26 00:25:05 UTC (rev 713)
@@ -620,17 +620,6 @@
#endif
])
-if test "x$gd_cv_c_need_lfs_defined" = "xyes"; then
- AC_DEFINE([_LARGEFILE64_SOURCE], [1],
- [ Additional functionality from LFS for large files. ])
-fi
-
-if test "x$gd_cv_type_off64_t" = "xyes"; then
- dnl Assume we have the entire LFS defined transitional API
- AC_DEFINE([HAVE_OFF64_T], [1],
- [ Define to 1 if the system has the type `off64_t'. ]) dnl `
-fi
-
dnl integer sizes
AC_CHECK_SIZEOF([short int])
AC_CHECK_SIZEOF([int])
@@ -683,14 +672,31 @@
gd_uint64_t="long long int"
fi
+if test "x$gd_cv_type_off64_t" = "xyes"; then
+ dnl Assume we have the entire LFS defined transitional API
+ AC_DEFINE([HAVE_OFF64_T], [1],
+ [ Define to 1 if the system has the type `off64_t'. ]) dnl `
+ define_lf64s="#ifndef _LARGEFILE64_SOURCE
+#define _LARGEFILE64_SOURCE
+#endif
+"
+ gd_off64_t="off64_t"
+elif test $ac_cv_sizeof_off_t -eq 8;then
+ gd_off64_t="off64_t"
+else
+ gd_off64_t=$gd_int64_t
+fi
+
DEFINE_gd_int16_t="# define gd_int16_t $gd_int16_t";
DEFINE_gd_uint16_t="# define gd_uint16_t $gd_uint16_t";
DEFINE_gd_int64_t="# define gd_int64_t $gd_int64_t";
DEFINE_gd_uint64_t="# define gd_uint64_t $gd_uint64_t";
+DEFINE_gd_off64_t="$define_lf64s# define gd_off64_t $gd_off64_t";
AC_SUBST([DEFINE_gd_int16_t])
AC_SUBST([DEFINE_gd_uint16_t])
AC_SUBST([DEFINE_gd_int64_t])
AC_SUBST([DEFINE_gd_uint64_t])
+AC_SUBST([DEFINE_gd_off64_t])
dnl library functions
echo
@@ -987,7 +993,6 @@
AM_CONDITIONAL(INTEL_F77_COMPILER,
[test "x$gd_cv_f77_compiler_intel" == "xyes"])
AM_CONDITIONAL(INTEL_FC_COMPILER, [test "x$gd_cv_fc_compiler_intel" == "xyes"])
-AM_CONDITIONAL(LFS_TRANSITIONAL_API, [test "x$gd_cv_type_off64_t" = "xyes"])
AM_CONDITIONAL(INCLUDE_LEGACY_API, [test "x$include_legacy_api" != "xno"])
AM_CONDITIONAL(MAKE_CXXBINDINGS, [test "x$make_cxxbindings" = "xyes"])
AM_CONDITIONAL(MAKE_F77BINDINGS, [test "x$make_f77bindings" != "xno"])
@@ -1066,16 +1071,9 @@
enable_debug="assert only"
fi
-if test "x$gd_cv_type_off64_t" = "xyes"; then
- lfs_transitional_api="yes"
-else
- lfs_transitional_api="no"
-fi
-
echo
echo "Configuration summary: "
echo " ANSI C compatibility mode: ${disable_c99}"
-echo " LFS transitional API: ${lfs_transitional_api}"
echo " Legacy API: ${include_legacy_api}"
echo " Verbose debugging: ${enable_debug}"
echo " Use modules: ${use_modules}"
Modified: trunk/getdata/man/Makefile.am
===================================================================
--- trunk/getdata/man/Makefile.am 2012-05-23 23:24:48 UTC (rev 712)
+++ trunk/getdata/man/Makefile.am 2012-05-26 00:25:05 UTC (rev 713)
@@ -20,37 +20,33 @@
#
AUTOMAKE_OPTIONS = foreign
-if LFS_TRANSITIONAL_API
-LFS_transitional_mans = gd_getdata64.3 gd_framenum_subset64.3 \
- gd_frameoffset64.3 gd_nframes64.3 gd_putdata64.3
-MAN3ALIASES64=gd_frameoffset64.3:gd_alter_frameoffset64.3
-endif
-
nodist_man_MANS = gd_alter_encoding.3 gd_alter_endianness.3 \
gd_alter_frameoffset.3
dist_man_MANS = checkdirfile.1 dirfile2ascii.1 gd_add.3 gd_add_alias.3 \
gd_add_bit.3 gd_add_spec.3 gd_alias_target.3 gd_aliases.3 \
gd_alter_affixes.3 gd_alter_bit.3 gd_alter_entry.3 \
- gd_alter_protection.3 gd_alter_spec.3 gd_bof.3 gd_carray_len.3 \
- gd_carrays.3 gd_cbopen.3 gd_close.3 gd_constants.3 gd_delete.3 \
- gd_desync.3 gd_dirfile_standards.3 gd_dirfilename.3 \
- gd_encoding.3 gd_endianness.3 gd_entry.3 gd_entry_list.3 \
- gd_entry_type.3 gd_eof.3 gd_error.3 gd_error_count.3 \
- gd_error_string.3 gd_flags.3 gd_flush.3 gd_fragment_affixes.3 \
- gd_fragment_index.3 gd_fragmentname.3 gd_framenum_subset.3 \
- gd_frameoffset.3 gd_free_entry_strings.3 gd_get_carray_slice.3 \
- gd_get_constant.3 gd_get_string.3 gd_getdata.3 gd_hidden.3 \
- gd_hide.3 gd_include_affix.3 gd_invalid_dirfile.3 \
- gd_madd_bit.3 gd_mcarrays.3 gd_mconstants.3 gd_metaflush.3 \
- gd_move.3 gd_mplex_lookback.3 gd_mstrings.3 gd_naliases.3 \
+ gd_alter_protection.3 gd_alter_spec.3 gd_bof.3 gd_bof64.3 \
+ gd_carray_len.3 gd_carrays.3 gd_cbopen.3 gd_close.3 \
+ gd_constants.3 gd_delete.3 gd_desync.3 gd_dirfile_standards.3 \
+ gd_dirfilename.3 gd_encoding.3 gd_endianness.3 gd_entry.3 \
+ gd_entry_list.3 gd_entry_type.3 gd_eof.3 gd_eof64.3 gd_error.3 \
+ gd_error_count.3 gd_error_string.3 gd_flags.3 gd_flush.3 \
+ gd_fragment_affixes.3 gd_fragment_index.3 gd_fragmentname.3 \
+ gd_framenum_subset.3 gd_framenum_subset64.3 gd_frameoffset.3 \
+ gd_frameoffset64.3 gd_free_entry_strings.3 \
+ gd_get_carray_slice.3 gd_get_constant.3 gd_get_string.3 \
+ gd_getdata.3 gd_getdata64.3 gd_hidden.3 gd_hide.3 \
+ gd_include_affix.3 gd_invalid_dirfile.3 gd_madd_bit.3 \
+ gd_mcarrays.3 gd_mconstants.3 gd_metaflush.3 gd_move.3 \
+ gd_mplex_lookback.3 gd_mstrings.3 gd_naliases.3 \
gd_native_type.3 gd_nentries.3 gd_nfragments.3 gd_nframes.3 \
- gd_parent_fragment.3 gd_parser_callback.3 gd_protection.3 \
- gd_put_carray_slice.3 gd_put_constant.3 gd_put_string.3 \
- gd_putdata.3 gd_raw_filename.3 gd_reference.3 gd_rename.3 \
- gd_rewrite_fragment.3 gd_seek.3 gd_spf.3 gd_strings.3 \
- gd_tell.3 gd_uninclude.3 gd_validate.3 gd_verbose_prefix.3 \
- dirfile.5 dirfile-encoding.5 dirfile-format.5 \
- $(LFS_transitional_mans)
+ gd_nframes64.3 gd_parent_fragment.3 gd_parser_callback.3 \
+ gd_protection.3 gd_put_carray_slice.3 gd_put_constant.3 \
+ gd_put_string.3 gd_putdata.3 gd_putdata64.3 gd_raw_filename.3 \
+ gd_reference.3 gd_rename.3 gd_rewrite_fragment.3 gd_seek.3 \
+ gd_seek64.3 gd_spf.3 gd_strings.3 gd_tell.3 gd_tell64.3 \
+ gd_uninclude.3 gd_validate.3 gd_verbose_prefix.3 dirfile.5 \
+ dirfile-encoding.5 dirfile-format.5
# these are real_file:alias
MAN3ALIASES=gd_add_bit.3:gd_add_carray.3 gd_add_bit.3:gd_add_clincom.3 \
@@ -99,7 +95,7 @@
gd_entry_list.3:gd_field_list.3 gd_entry_list.3:gd_field_list_by_type.3 \
gd_entry_list.3:gd_mfield_list.3 gd_entry_list.3:gd_mfield_list_by_type.3 \
gd_entry_list.3:gd_nmvectore.3 gd_entry_list.3:gd_vector_list.3 \
- $(MAN3ALIASES64)
+ gd_frameoffset64.3:gd_alter_frameoffset64.3
#man conversion
HTMLMANS=$(addsuffix .html,$(nodist_man_MANS)) \
Added: trunk/getdata/man/gd_bof64.3
===================================================================
--- trunk/getdata/man/gd_bof64.3 (rev 0)
+++ trunk/getdata/man/gd_bof64.3 2012-05-26 00:25:05 UTC (rev 713)
@@ -0,0 +1,54 @@
+.\" gd_bof64.3. The gd_bof64 man page.
+.\"
+.\" Copyright (C) 2012 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_bof64 3 "25 May 2012" "Version 0.8.0" "GETDATA"
+.SH NAME
+gd_bof64 \(em retrieve data from a dirfile database, with largefile support
+.SH SYNOPSIS
+.B #define GD_64BIT_API
+
+.B #include <getdata.h>
+.HP
+.nh
+.ad l
+.BI "gd_off64_t gd_bof64(DIRFILE *" dirfile ", const char *" field_code );
+.hy
+.ad n
+.SH DESCRIPTION
+This version of
+.BR gd_bof (3)
+uses a 64-bit offset type
+.RB ( gd_off64_t ),
+where one is available, regardless of the size of
+.BR off_t .
+It is only available if one defines
+.IR GD_64BIT_API
+or
+.IR _LARGEFILE64_SOURCE
+before including getdata.h.
+
+If
+.I off_t
+is a 64-bit type (possibly because
+.I _FILE_OFFSET_BITS
+has been defined to 64), this function will the same as
+.BR gd_bof (3).
+Otherwise,
+.BR gd_bof (3)
+will be a version of this function which uses a 32-bit
+.IR off_t .
+.SH SEE ALSO
+.BR gd_bof (3),
+.BR feature_test_macros (7)
Added: trunk/getdata/man/gd_eof64.3
===================================================================
--- trunk/getdata/man/gd_eof64.3 (rev 0)
+++ trunk/getdata/man/gd_eof64.3 2012-05-26 00:25:05 UTC (rev 713)
@@ -0,0 +1,54 @@
+.\" gd_eof64.3. The gd_eof64 man page.
+.\"
+.\" Copyright (C) 2012 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_eof64 3 "25 May 2012" "Version 0.8.0" "GETDATA"
+.SH NAME
+gd_eof64 \(em retrieve data from a dirfile database, with largefile support
+.SH SYNOPSIS
+.B #define GD_64BIT_API
+
+.B #include <getdata.h>
+.HP
+.nh
+.ad l
+.BI "gd_off64_t gd_eof64(DIRFILE *" dirfile ", const char *" field_code );
+.hy
+.ad n
+.SH DESCRIPTION
+This version of
+.BR gd_eof (3)
+uses a 64-bit offset type
+.RB ( gd_off64_t ),
+where one is available, regardless of the size of
+.BR off_t .
+It is only available if one defines
+.IR GD_64BIT_API
+or
+.IR _LARGEFILE64_SOURCE
+before including getdata.h.
+
+If
+.I off_t
+is a 64-bit type (possibly because
+.I _FILE_OFFSET_BITS
+has been defined to 64), this function will the same as
+.BR gd_eof (3).
+Otherwise,
+.BR gd_eof (3)
+will be a version of this function which uses a 32-bit
+.IR off_t .
+.SH SEE ALSO
+.BR gd_eof (3),
+.BR feature_test_macros (7)
Modified: trunk/getdata/man/gd_framenum_subset64.3
===================================================================
--- trunk/getdata/man/gd_framenum_subset64.3 2012-05-23 23:24:48 UTC (rev 712)
+++ trunk/getdata/man/gd_framenum_subset64.3 2012-05-26 00:25:05 UTC (rev 713)
@@ -1,6 +1,6 @@
.\" gd_framenum_subset64.3. The gd_framenum_subset64 man page.
.\"
-.\" Copyright (C) 2008, 2010 D. V. Wiebe
+.\" Copyright (C) 2008, 2010, 2012 D. V. Wiebe
.\"
.\""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
.\"
@@ -13,37 +13,43 @@
.\" Texts. A copy of the license is included in the `COPYING.DOC' file
.\" as part of this distribution.
.\"
-.TH gd_framenum_subset64 3 "15 July 2010" "Version 0.7.0" "GETDATA"
+.TH gd_framenum_subset64 3 "25 May 2012" "Version 0.8.0" "GETDATA"
.SH NAME
gd_framenum_subset64 \(em perform a reverse look-up on a monotonic dirfile
-field
+field, with largefile support.
.SH SYNOPSIS
-.B #define _LARGEFILE64_SOURCE
+.B #define GD_64BIT_API
.B #include <getdata.h>
.HP
.nh
.ad l
.BI "double gd_framenum_subset64(DIRFILE *" dirfile ,
-.BI "const char *" field_code ", double " value ", off64_t " field_start ,
-.BI "off64_t " field_end );
+.BI "const char *" field_code ", double " value ", gd_off64_t " field_start ,
+.BI "gd_off64_t " field_end );
.hy
.ad n
.SH DESCRIPTION
This version of
.BR gd_framenum_subset (3)
-uses a 64-bit offset type, even if
-.I off_t
-is a 32-bit type. It is only available if one defines
-.IR _LARGEFILE64_SOURCE .
+uses a 64-bit offset type
+.RB ( gd_off64_t ),
+where one is available, regardless of the size of
+.BR off_t .
+It is only available if one defines
+.IR GD_64BIT_API
+or
+.IR _LARGEFILE64_SOURCE
+before including getdata.h.
+
If
.I off_t
-is a 64-bit type (i.e. if
+is a 64-bit type (possibly because
.I _FILE_OFFSET_BITS
-is defined to be 64), this function will be called
-.BR gd_framenum_subset ().
+has been defined to 64), this function will the same as
+.BR gd_framenum_subset (3).
Otherwise,
-.BR gd_framenum_subset ()
+.BR gd_framenum_subset (3)
will be a version of this function which uses a 32-bit
.IR off_t .
.SH SEE ALSO
Modified: trunk/getdata/man/gd_frameoffset64.3
===================================================================
--- trunk/getdata/man/gd_frameoffset64.3 2012-05-23 23:24:48 UTC (rev 712)
+++ trunk/getdata/man/gd_frameoffset64.3 2012-05-26 00:25:05 UTC (rev 713)
@@ -13,47 +13,51 @@
.\" Texts. A copy of the license is included in the `COPYING.DOC' file
.\" as part of this distribution.
.\"
-.TH gd_frameoffset64 3 "16 July 2010" "Version 0.7.0" "GETDATA"
+.TH gd_frameoffset64 3 "25 May 2012" "Version 0.8.0" "GETDATA"
.SH NAME
gd_frameoffset64, gd_alter_frameoffset64 \(em report or change the frame
offset of fields in a dirfile, with largefile support
.SH SYNOPSIS
-.B #define _LARGEFILE64_SOURCE
+.B #define GD_64BIT_API
.B #include <getdata.h>
.HP
.nh
.ad l
-.BI "off64_t gd_frameoffset(DIRFILE *" dirfile ", int " fragment_index );
+.BI "gd_off64_t gd_frameoffset(DIRFILE *" dirfile ", int " fragment_index );
.HP
-.BI "int gd_alter_frameoffset64(DIRFILE *" dirfile ", off64_t " offset ,
+.BI "int gd_alter_frameoffset64(DIRFILE *" dirfile ", gd_off64_t " offset ,
.BI "int " fragment_index ", int " move );
.hy
.ad n
.SH DESCRIPTION
-These version of
+These versions of
.BR gd_frameoffset (3)
and
.BR gd_alter_frameoffset (3)
-use a 64-bit offset type, even if
-.I off_t
-is a 32-bit type. They are only available if the caller defines
-.I _LARGEFILE64_SOURCE
+use a 64-bit offset type
+.RB ( gd_off64_t ),
+where one is available, regardless of the size of
+.BR off_t .
+They are only available if one defines
+.IR GD_64BIT_API
+or
+.IR _LARGEFILE64_SOURCE
before including getdata.h.
If
.I off_t
-is a 64-bit type (i.e. if
+is a 64-bit type (possibly because
.I _FILE_OFFSET_BITS
-is defined to be 64), these function will be called
-.BR gd_frameoffset ()
+has been defined to 64), these functions will the same as
+.BR gd_framenum_subset (3)
and
-.BR gd_alter_frameoffset ().
+.BR gd_alter_frameoffset (3).
Otherwise,
-.BR gd_frameoffset ()
+.BR gd_framenum_subset (3)
and
-.BR gd_alter_frameoffset ()
-will be versions of these functions which use a 32-bit
+.BR gd_alter_frameoffset (3)
+will be versions of these function which use a 32-bit
.IR off_t .
.SH SEE ALSO
.BR gd_alter_frameoffset (3),
Modified: trunk/getdata/man/gd_getdata64.3
===================================================================
--- trunk/getdata/man/gd_getdata64.3 2012-05-23 23:24:48 UTC (rev 712)
+++ trunk/getdata/man/gd_getdata64.3 2012-05-26 00:25:05 UTC (rev 713)
@@ -1,6 +1,6 @@
.\" gd_getdata64.3. The gd_getdata64 man page.
.\"
-.\" Copyright (C) 2008, 2010 D. V. Wiebe
+.\" Copyright (C) 2008, 2010, 2012 D. V. Wiebe
.\"
.\""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
.\"
@@ -13,36 +13,43 @@
.\" Texts. A copy of the license is included in the `COPYING.DOC' file
.\" as part of this distribution.
.\"
-.TH gd_getdata64 3 "25 May 2010" "Version 0.7.0" "GETDATA"
+.TH gd_getdata64 3 "25 May 2012" "Version 0.8.0" "GETDATA"
.SH NAME
-gd_getdata64 \(em retrieve data from a dirfile database with largefile support
+gd_getdata64 \(em retrieve data from a dirfile database, with largefile support
.SH SYNOPSIS
-.B #define _LARGEFILE64_SOURCE
+.B #define GD_64BIT_API
.B #include <getdata.h>
.HP
.nh
.ad l
-.BI "size_t gd_getdata64(DIRFILE *" dirfile ", const char *" field_code ", off64_t"
-.IB first_frame ", off64_t " first_sample ", size_t " num_frames ", size_t"
-.IB num_samples ", gd_type_t " return_type ", void *" data_out );
+.BI "size_t gd_getdata64(DIRFILE *" dirfile ", const char *" field_code ,
+.BI "gd_off64_t " first_frame ", gd_off64_t " first_sample ", size_t
+.IB num_frames ", size_t " num_samples ", gd_type_t " return_type ,
+.BI "void *" data_out );
.hy
.ad n
.SH DESCRIPTION
This version of
.BR gd_getdata (3)
-uses a 64-bit offset type, even if
-.I off_t
-is a 32-bit type. It is only available if one defines
-.IR _LARGEFILE64_SOURCE .
+uses a 64-bit offset type
+.RB ( gd_off64_t ),
+where one is available, regardless of the size of
+.BR off_t .
+It is only available if one defines
+.IR GD_64BIT_API
+or
+.IR _LARGEFILE64_SOURCE
+before including getdata.h.
+
If
.I off_t
-is a 64-bit type (i.e. if
+is a 64-bit type (possibly because
.I _FILE_OFFSET_BITS
-is defined to be 64), this function will be called
-.BR gd_getdata ().
+has been defined to 64), this function will the same as
+.BR gd_getdata (3).
Otherwise,
-.BR gd_getdata ()
+.BR gd_getdata (3)
will be a version of this function which uses a 32-bit
.IR off_t .
.SH SEE ALSO
Modified: trunk/getdata/man/gd_nframes64.3
===================================================================
--- trunk/getdata/man/gd_nframes64.3 2012-05-23 23:24:48 UTC (rev 712)
+++ trunk/getdata/man/gd_nframes64.3 2012-05-26 00:25:05 UTC (rev 713)
@@ -1,6 +1,6 @@
.\" gd_nframes64.3. The gd_nframes64 man page.
.\"
-.\" Copyright (C) 2008, 2010 D. V. Wiebe
+.\" Copyright (C) 2008, 2010, 2012 D. V. Wiebe
.\"
.\""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
.\"
@@ -13,34 +13,40 @@
.\" Texts. A copy of the license is included in the `COPYING.DOC' file
.\" as part of this distribution.
.\"
-.TH gd_nframes64 3 "16 July 2010" "Version 0.7.0" "GETDATA"
+.TH gd_nframes64 3 "25 May 2012" "Version 0.8.0" "GETDATA"
.SH NAME
-gd_nframes64 \(em report the size of a dirfile with largefile support
+gd_nframes64 \(em report the size of a dirfile, with largefile support
.SH SYNOPSIS
-.B #define _LARGEFILE64_SOURCE
+.B #define GD_64BIT_API
.B #include <getdata.h>
.HP
.nh
.ad l
-.BI "off64_t gd_nframes64(DIRFILE *" dirfile );
+.BI "gd_off64_t gd_nframes64(DIRFILE *" dirfile );
.hy
.ad n
.SH DESCRIPTION
This version of
.BR gd_nframes (3)
-uses a 64-bit offset type, even if
-.I off_t
-is a 32-bit type. It is only available if one defines
-.IR _LARGEFILE64_SOURCE .
+uses a 64-bit offset type
+.RB ( gd_off64_t ),
+where one is available, regardless of the size of
+.BR off_t .
+It is only available if one defines
+.IR GD_64BIT_API
+or
+.IR _LARGEFILE64_SOURCE
+before including getdata.h.
+
If
.I off_t
-is a 64-bit type (i.e. if
+is a 64-bit type (possibly because
.I _FILE_OFFSET_BITS
-is defined to be 64), this function will be called
-.BR gd_nframes ().
+has been defined to 64), this function will the same as
+.BR gd_nframes (3).
Otherwise,
-.BR gd_nframes ()
+.BR gd_nframes (3)
will be a version of this function which uses a 32-bit
.IR off_t .
.SH SEE ALSO
Modified: trunk/getdata/man/gd_putdata64.3
===================================================================
--- trunk/getdata/man/gd_putdata64.3 2012-05-23 23:24:48 UTC (rev 712)
+++ trunk/getdata/man/gd_putdata64.3 2012-05-26 00:25:05 UTC (rev 713)
@@ -1,6 +1,6 @@
.\" gd_putdata64.3. The gd_putdata64 man page.
.\"
-.\" Copyright (C) 2008, 2010 D. V. Wiebe
+.\" Copyright (C) 2008, 2010, 2012 D. V. Wiebe
.\"
.\""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
.\"
@@ -13,36 +13,43 @@
.\" Texts. A copy of the license is included in the `COPYING.DOC' file
.\" as part of this distribution.
.\"
-.TH gd_putdata64 3 "25 May 2010" "Version 0.7.0" "GETDATA"
+.TH gd_putdata64 3 "25 May 2012" "Version 0.8.0" "GETDATA"
.SH NAME
-gd_putdata64 \(em write data to a dirfile database with largefile support
+gd_putdata64 \(em write data to a dirfile database, with largefile support
.SH SYNOPSIS
-.B #define _LARGEFILE64_SOURCE
+.B #define GD_64BIT_API
.B #include <getdata.h>
.HP
.nh
.ad l
-.BI "size_t gd_putdata64(DIRFILE *" dirfile ", const char *" field_code ", off64_t"
-.IB first_frame ", off64_t " first_sample ", size_t " num_frames ", size_t"
-.IB num_samples ", gd_type_t " data_type ", const void *" data_out );
+.BI "size_t gd_putdata64(DIRFILE *" dirfile ", const char *" field_code ,
+.BI "gd_off64_t " first_frame ", gd_off64_t " first_sample ", size_t
+.IB num_frames ", size_t " num_samples ", gd_type_t " data_type ,
+.BI "const void *" data_out );
.hy
.ad n
.SH DESCRIPTION
This version of
.BR gd_putdata (3)
-uses a 64-bit offset type, even if
-.I off_t
-is a 32-bit type. It is only available if one defines
-.IR _LARGEFILE64_SOURCE .
+uses a 64-bit offset type
+.RB ( gd_off64_t ),
+where one is available, regardless of the size of
+.BR off_t .
+It is only available if one defines
+.IR GD_64BIT_API
+or
+.IR _LARGEFILE64_SOURCE
+before including getdata.h.
+
If
.I off_t
-is a 64-bit type (i.e. if
+is a 64-bit type (possibly because
.I _FILE_OFFSET_BITS
-is defined to be 64), this function will be called
-.BR gd_putdata ().
+has been defined to 64), this function will the same as
+.BR gd_putdata (3).
Otherwise,
-.BR gd_putdata ()
+.BR gd_putdata (3)
will be a version of this function which uses a 32-bit
.IR off_t .
.SH SEE ALSO
Added: trunk/getdata/man/gd_seek64.3
===================================================================
--- trunk/getdata/man/gd_seek64.3 (rev 0)
+++ trunk/getdata/man/gd_seek64.3 2012-05-26 00:25:05 UTC (rev 713)
@@ -0,0 +1,55 @@
+.\" gd_seek64.3. The gd_seek64 man page.
+.\"
+.\" Copyright (C) 2012 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_seek64 3 "25 May 2012" "Version 0.8.0" "GETDATA"
+.SH NAME
+gd_seek64 \(em retrieve data from a dirfile database, with largefile support
+.SH SYNOPSIS
+.B #define GD_64BIT_API
+
+.B #include <getdata.h>
+.HP
+.nh
+.ad l
+.BI "gd_off64_t gd_seek64(DIRFILE *" dirfile ", const char *" field_code ,
+.BI "gd_off64_t " frame_num ", gd_off64_t " sample_num ", int " flags );
+.hy
+.ad n
+.SH DESCRIPTION
+This version of
+.BR gd_seek (3)
+uses a 64-bit offset type
+.RB ( gd_off64_t ),
+where one is available, regardless of the size of
+.BR off_t .
+It is only available if one defines
+.IR GD_64BIT_API
+or
+.IR _LARGEFILE64_SOURCE
+before including getdata.h.
+
+If
+.I off_t
+is a 64-bit type (possibly because
+.I _FILE_OFFSET_BITS
+has been defined to 64), this function will the same as
+.BR gd_seek (3).
+Otherwise,
+.BR gd_seek (3)
+will be a version of this function which uses a 32-bit
+.IR off_t .
+.SH SEE ALSO
+.BR gd_seek (3),
+.BR feature_test_macros (7)
Added: trunk/getdata/man/gd_tell64.3
===================================================================
--- trunk/getdata/man/gd_tell64.3 (rev 0)
+++ trunk/getdata/man/gd_tell64.3 2012-05-26 00:25:05 UTC (rev 713)
@@ -0,0 +1,54 @@
+.\" gd_tell64.3. The gd_tell64 man page.
+.\"
+.\" Copyright (C) 2012 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_tell64 3 "25 May 2012" "Version 0.8.0" "GETDATA"
+.SH NAME
+gd_tell64 \(em retrieve data from a dirfile database, with largefile support
+.SH SYNOPSIS
+.B #define GD_64BIT_API
+
+.B #include <getdata.h>
+.HP
+.nh
+.ad l
+.BI "gd_off64_t gd_tell64(DIRFILE *" dirfile ", const char *" field_code );
+.hy
+.ad n
+.SH DESCRIPTION
+This version of
+.BR gd_tell (3)
+uses a 64-bit offset type
+.RB ( gd_off64_t ),
+where one is available, regardless of the size of
+.BR off_t .
+It is only available if one defines
+.IR GD_64BIT_API
+or
+.IR _LARGEFILE64_SOURCE
+before including getdata.h.
+
+If
+.I off_t
+is a 64-bit type (possibly because
+.I _FILE_OFFSET_BITS
+has been defined to 64), this function will the same as
+.BR gd_tell (3).
+Otherwise,
+.BR gd_tell (3)
+will be a version of this function which uses a 32-bit
+.IR off_t .
+.SH SEE ALSO
+.BR gd_tell (3),
+.BR feature_test_macros (7)
Modified: trunk/getdata/src/common.c
===================================================================
--- trunk/getdata/src/common.c 2012-05-23 23:24:48 UTC (rev 712)
+++ trunk/getdata/src/common.c 2012-05-26 00:25:05 UTC (rev 713)
@@ -480,8 +480,8 @@
size_t i;
double x;
- dtrace("%p, %p, 0x%x, %i, %p, %" PRNsize_t ", %p, %" PRNsize_t, D, data, type, complex_table,
- data_in, npts, lut, n_ln);
+ dtrace("%p, %p, 0x%x, %i, %p, %" PRNsize_t ", %p, %" PRNsize_t, D, data, type,
+ complex_table, data_in, npts, lut, n_ln);
switch (type) {
case GD_NULL: break;
@@ -574,8 +574,8 @@
{
size_t i;
- dtrace("%p, %i, %p, 0x%x, %p, %p, %p, %p, %p, %" PRNsize_t, D, n, data1, return_type,
- data2, data3, m, b, spf, n_read);
+ dtrace("%p, %i, %p, 0x%x, %p, %p, %p, %p, %p, %" PRNsize_t, D, n, data1,
+ return_type, data2, data3, m, b, spf, n_read);
switch(return_type) {
case GD_NULL: break;
@@ -683,8 +683,8 @@
{
size_t i;
- dtrace("%p, %i, %p, 0x%x, %p, %p, %p, %p, %p, %" PRNsize_t, D, n, data1, return_type,
- data2, data3, m, b, spf, n_read);
+ dtrace("%p, %i, %p, 0x%x, %p, %p, %p, %p, %p, %" PRNsize_t, D, n, data1,
+ return_type, data2, data3, m, b, spf, n_read);
switch(return_type) {
case GD_NULL: break;
@@ -729,7 +729,8 @@
{
size_t i;
- dtrace("%p, %p, 0x%x, %g, %" PRNsize_t, D, data, return_type, dividend, n_read);
+ dtrace("%p, %p, 0x%x, %g, %" PRNsize_t, D, data, return_type, dividend,
+ n_read);
switch(return_type) {
case GD_NULL: break;
@@ -785,8 +786,8 @@
{
size_t i;
- dtrace("%p, %p, 0x%x, %g;%g, %" PRNsize_t, D, data, return_type, creal(dividend),
- cimag(dividend), n_read);
+ dtrace("%p, %p, 0x%x, %g;%g, %" PRNsize_t, D, data, return_type,
+ creal(dividend), cimag(dividend), n_read);
switch(return_type) {
case GD_NULL: break;
Modified: trunk/getdata/src/constant.c
===================================================================
--- trunk/getdata/src/constant.c 2012-05-23 23:24:48 UTC (rev 712)
+++ trunk/getdata/src/constant.c 2012-05-26 00:25:05 UTC (rev 713)
@@ -259,8 +259,8 @@
int repr;
char* field_code;
- dtrace("%p, \"%s\", %i, %" PRNsize_t ", 0x%x, %p", D, field_code_in, first, n, data_type,
- data_in);
+ dtrace("%p, \"%s\", %i, %" PRNsize_t ", 0x%x, %p", D, field_code_in, first, n,
+ data_type, data_in);
if (D->flags & GD_INVALID) {
_GD_SetError(D, GD_E_BAD_DIRFILE, 0, NULL, 0, NULL);
Modified: trunk/getdata/src/encoding.c
===================================================================
--- trunk/getdata/src/encoding.c 2012-05-23 23:24:48 UTC (rev 712)
+++ trunk/getdata/src/encoding.c 2012-05-26 00:25:05 UTC (rev 713)
@@ -456,7 +456,8 @@
{
ssize_t n_wrote;
- dtrace("%p, %p, %p, %p, 0x%X, %" PRNsize_t ", %i", D, E, enc, ptr, type, n, temp);
+ dtrace("%p, %p, %p, %p, 0x%X, %" PRNsize_t ", %i", D, E, enc, ptr, type, n,
+ temp);
if (temp)
n_wrote = (*enc->write)(E->e->u.raw.file + 1, ptr, type, n);
Modified: trunk/getdata/src/flush.c
===================================================================
--- trunk/getdata/src/flush.c 2012-05-23 23:24:48 UTC (rev 712)
+++ trunk/getdata/src/flush.c 2012-05-26 00:25:05 UTC (rev 713)
@@ -275,8 +275,8 @@
int dummy;
char *ptr;
- dtrace("%p, %p, \"%s\", \"%s\", \"%s\", %" PRNsize_t ", %i, %i", D, stream, prefix,
- suffix, in, len, permissive, standards);
+ dtrace("%p, %p, \"%s\", \"%s\", \"%s\", %" PRNsize_t ", %i, %i", D, stream,
+ prefix, suffix, in, len, permissive, standards);
ptr = _GD_MungeCode(D, NULL, prefix, suffix, NULL, NULL, in, &dummy);
Modified: trunk/getdata/src/getdata.c
===================================================================
--- trunk/getdata/src/getdata.c 2012-05-23 23:24:48 UTC (rev 712)
+++ trunk/getdata/src/getdata.c 2012-05-26 00:25:05 UTC (rev 713)
@@ -104,8 +104,8 @@
{
size_t i;
- dtrace("%p, %p, 0x%X, %p, 0x%X, %" PRNsize_t ", %i", D, cdata, in_type, rdata, type, n,
- repr);
+ dtrace("%p, %p, 0x%X, %p, 0x%X, %" PRNsize_t ", %i", D, cdata, in_type, rdata,
+ type, n, repr);
switch (type) {
case GD_UINT8: EXTRACT_REPRS( uint8_t); break;
@@ -258,8 +258,8 @@
char *databuffer;
size_t zero_pad = 0;
- dtrace("%p, %p, %lli, %" PRNsize_t ", 0x%X, %p)", D, E, (long long)s0, ns, return_type,
- data_out);
+ dtrace("%p, %p, %lli, %" PRNsize_t ", 0x%X, %p)", D, E, (long long)s0, ns,
+ return_type, data_out);
if (s0 < E->EN(raw,spf) * D->fragment[E->fragment_index].frame_offset)
zero_pad = E->EN(raw,spf) * D->fragment[E->fragment_index].frame_offset -
@@ -871,8 +871,8 @@
size_t i;
const double NaN = NAN;
- dtrace("%p, %p, %u, %p, %u, 0x%X, %i, {%g,%llx,%lli}, %" PRNsize_t, D, A, spfA, B,
- spfB, type, op, threshold.r, (unsigned long long)threshold.u,
+ dtrace("%p, %p, %u, %p, %u, 0x%X, %i, {%g,%llx,%lli}, %" PRNsize_t, D, A,
+ spfA, B, spfB, type, op, threshold.r, (unsigned long long)threshold.u,
(long long)threshold.i, n);
switch (type) {
@@ -929,8 +929,8 @@
{
size_t i;
- dtrace("%p, %p, %u, %p, %u, 0x%X, %i, %p, %" PRNsize_t, D, A, spfA, B, spfB, type,
- val, start, n);
+ dtrace("%p, %p, %u, %p, %u, 0x%X, %i, %p, %" PRNsize_t, D, A, spfA, B, spfB,
+ type, val, start, n);
switch (type) {
case GD_NULL: break;
@@ -967,8 +967,8 @@
const gd_type_t ntype = (return_type & GD_COMPLEX) ? GD_COMPLEX128
: GD_FLOAT64;
- dtrace("%p, %p, %lli, %" PRNsize_t ", 0x%X, %p", D, E, (long long)first_samp, num_samp,
- return_type, data_out);
+ dtrace("%p, %p, %lli, %" PRNsize_t ", 0x%X, %p", D, E, (long long)first_samp,
+ num_samp, return_type, data_out);
/* input field checks */
for (i = 0; i < E->EN(lincom,n_fields); ++i) {
@@ -1101,8 +1101,8 @@
off64_t first_samp2;
gd_type_t type2;
- dtrace("%p, %p, %lli, %" PRNsize_t ", 0x%X, %p", D, E, (long long)first_samp, num_samp,
- return_type, data_out);
+ dtrace("%p, %p, %lli, %" PRNsize_t ", 0x%X, %p", D, E, (long long)first_samp,
+ num_samp, return_type, data_out);
/* Check input fields */
if (_GD_BadInput(D, E, 0, 1)) {
@@ -1196,8 +1196,8 @@
{
size_t n_read;
- dtrace("%p, %p, %lli, %" PRNsize_t ", 0x%X, %p", D, E, (long long)first_samp, num_samp,
- return_type, data_out);
+ dtrace("%p, %p, %lli, %" PRNsize_t ", 0x%X, %p", D, E, (long long)first_samp,
+ num_samp, return_type, data_out);
/* Check input fields */
if (_GD_BadInput(D, E, 0, 1)) {
@@ -1242,8 +1242,8 @@
off64_t first_samp2;
gd_type_t type2;
- dtrace("%p, %p, %lli, %" PRNsize_t ", 0x%X, %p", D, E, (long long)first_samp, num_samp,
- return_type, data_out);
+ dtrace("%p, %p, %lli, %" PRNsize_t ", 0x%X, %p", D, E, (long long)first_samp,
+ num_samp, return_type, data_out);
/* Check input fields */
if (_GD_BadInput(D, E, 0, 1) || _GD_BadInput(D, E, 1, 1)) {
@@ -1391,8 +1391,8 @@
{
size_t n_read;
- dtrace("%p, %p, %lli, %" PRNsize_t ", 0x%X, %p", D, E, (long long)first_samp, num_samp,
- return_type, data_out);
+ dtrace("%p, %p, %lli, %" PRNsize_t ", 0x%X, %p", D, E, (long long)first_samp,
+ num_samp, return_type, data_out);
if (_GD_BadInput(D, E, 0, 1)) {
dreturn("%i", 0);
@@ -1415,8 +1415,8 @@
size_t n_read = 0;
double* data_in;
- dtrace("%p, %p, %lli, %" PRNsize_t ", 0x%X, %p", D, E, (long long)first_samp, num_samp,
- return_type, data_out);
+ dtrace("%p, %p, %lli, %" PRNsize_t ", 0x%X, %p", D, E, (long long)first_samp,
+ num_samp, return_type, data_out);
if (E->e->u.linterp.table_len < 0) {
_GD_ReadLinterpFile(D, E);
@@ -1465,8 +1465,8 @@
{
size_t n_read;
- dtrace("%p, %p, %lli, %" PRNsize_t ", 0x%X, %p", D, E, (long long)first_samp, num_samp,
- return_type, data_out);
+ dtrace("%p, %p, %lli, %" PRNsize_t ", 0x%X, %p", D, E, (long long)first_samp,
+ num_samp, return_type, data_out);
if (_GD_BadInput(D, E, 0, 1)) {
dreturn("%i", 0);
@@ -1511,8 +1511,8 @@
off64_t first_samp2;
gd_type_t type2;
- dtrace("%p, %p, %lli, %" PRNsize_t ", 0x%X, %p", D, E, (long long)first_samp, num_samp,
- return_type, data_out);
+ dtrace("%p, %p, %lli, %" PRNsize_t ", 0x%X, %p", D, E, (long long)first_samp,
+ num_samp, return_type, data_out);
/* Check input fields */
if (_GD_BadInput(D, E, 0, 1)) {
@@ -1617,8 +1617,8 @@
const size_t size = GD_SIZE(return_type);
off64_t first_samp2;
- dtrace("%p, %p, %lli, %" PRNsize_t ", 0x%X, %p", D, E, (long long)first_samp, num_samp,
- return_type, data_out);
+ dtrace("%p, %p, %lli, %" PRNsize_t ", 0x%X, %p", D, E, (long long)first_samp,
+ num_samp, return_type, data_out);
/* Check input fields */
if (_GD_BadInput(D, E, 0, 1)) {
@@ -1974,9 +1974,9 @@
int repr;
unsigned int spf;
- dtrace("%p, \"%s\", %lli, %lli, %" PRNsize_t ", %" PRNsize_t ", 0x%X, %p", D, field_code_in,
- (long long)first_frame, (long long)first_samp, num_frames, num_samp,
- return_type, data_out);
+ dtrace("%p, \"%s\", %lli, %lli, %" PRNsize_t ", %" PRNsize_t ", 0x%X, %p", D,
+ field_code_in, (long long)first_frame, (long long)first_samp, num_frames,
+ num_samp, return_type, data_out);
if (D->flags & GD_INVALID) {/* don't crash */
_GD_SetError(D, GD_E_BAD_DIRFILE, 0, NULL, 0, NULL);
Modified: trunk/getdata/src/getdata.h.in
===================================================================
--- trunk/getdata/src/getdata.h.in 2012-05-23 23:24:48 UTC (rev 712)
+++ trunk/getdata/src/getdata.h.in 2012-05-26 00:25:05 UTC (rev 713)
@@ -36,6 +36,15 @@
* array of doubles in place of the complex types. This symbol permits
* including these declarations using a non-C99 conforming compiler.
*
+ * - defining GD_64BIT_API will expose the declaration of versions of funtions
+ * using an explicitly 64-bit off_t type, regardless of the actual size of
+ * off_t itself. These functions have "64" appended to their name (e.g.
+ * gd_getdata64()). It will also define th gd_off64_t type, which is used in
+ * these exposed definitions as a replacement for off_t. This symbol is
+ * automatically defined if _LARGEFILE64_SOURCE has been defined before
+ * including this file, and may also be defined on certain platforms where
+ * off_t is 64-bits.
+ *
* - defining GD_FUNCTION_ALIASES will result in a number of function aliases
* which map the version 0.7 function names to the names used in GetData-0.6.
* This feature is provided only to ease transistion, and will be removed in
@@ -1075,13 +1084,14 @@
/* if required, declare the LFS transitional extension */
#if defined _LARGEFILE64_SOURCE || (defined _FILE_OFFSET_BITS && \
_FILE_OFFSET_BITS == 64) || (defined __CYGWIN__) || (defined __APPLE__)
+#if ! defined GD_64BIT_API
+#define GD_64BIT_API
+#endif
+#endif
-#if (defined _FILE_OFFSET_BITS && _FILE_OFFSET_BITS == 64) || \
- (defined __APPLE__) || (defined __CYGWIN__)
-#define gd_off64_t off_t
-#else
-#define gd_off64_t off64_t
-#endif
+#ifdef GD_64BIT_API
+@DEFINE_gd_off64_t@
+
extern int gd_alter_frameoffset64(DIRFILE *dirfile, gd_off64_t offset,
int fragment, int recode) gd_nonnull ((1));
Modified: trunk/getdata/src/internal.h
===================================================================
--- trunk/getdata/src/internal.h 2012-05-23 23:24:48 UTC (rev 712)
+++ trunk/getdata/src/internal.h 2012-05-26 00:25:05 UTC (rev 713)
@@ -26,6 +26,7 @@
#include "gd_config.h"
#endif
+#define GD_64BIT_API
#include "getdata.h"
/* OS X 10.6 deprecates lstat64 */
Modified: trunk/getdata/src/name.c
===================================================================
--- trunk/getdata/src/name.c 2012-05-23 23:24:48 UTC (rev 712)
+++ trunk/getdata/src/name.c 2012-05-26 00:25:05 UTC (rev 713)
@@ -207,7 +207,8 @@
char **list, size_t len, int n, int pass, int *nl)
{
char **ptr;
- dtrace("%p, %p, %p, %p, %" PRNsize_t ", %i, %i, %i", D, T, E, list, len, n, pass, *nl);
+ dtrace("%p, %p, %p, %p, %" PRNsize_t ", %i, %i, %i", D, T, E, list, len, n,
+ pass, *nl);
if (pass & GD_UPDI) {
if ((ptr = (char**)_GD_Realloc(D, list, sizeof(char *) * (*nl + 1)))
@@ -306,7 +307,8 @@
char **list, size_t len, int n, int pass, int *nl)
{
char **ptr;
- dtrace("%p, %p, %p, %p, %" PRNsize_t ", %i, %i, %i", D, T, E, list, len, n, pass, *nl);
+ dtrace("%p, %p, %p, %p, %" PRNsize_t ", %i, %i, %i", D, T, E, list, len, n,
+ pass, *nl);
if (pass != 0 && T->e->entry[n] == NULL)
_GD_BadInput(D, T, n, 0);
Modified: trunk/getdata/src/putdata.c
===================================================================
--- trunk/getdata/src/putdata.c 2012-05-23 23:24:48 UTC (rev 712)
+++ trunk/getdata/src/putdata.c 2012-05-26 00:25:05 UTC (rev 713)
@@ -36,8 +36,8 @@
return 0;
}
- dtrace("%p, %p, %lli, %" PRNsize_t ", 0x%X, %p", D, E, (long long)s0, ns, data_type,
- data_in);
+ dtrace("%p, %p, %lli, %" PRNsize_t ", 0x%X, %p", D, E, (long long)s0, ns,
+ data_type, data_in);
if (s0 < D->fragment[E->fragment_index].frame_offset * E->EN(raw,spf)) {
_GD_SetError(D, GD_E_RANGE, GD_E_OUT_OF_RANGE, NULL, 0, NULL);
@@ -131,8 +131,8 @@
double *tmpbuf;
struct _gd_lut *tmp_lut;
- dtrace("%p, %p, %lli, %" PRNsize_t ", 0x%X, %p", D, E, (long long)first_samp, num_samp,
- data_type, data_in);
+ dtrace("%p, %p, %lli, %" PRNsize_t ", 0x%X, %p", D, E, (long long)first_samp,
+ num_samp, data_type, data_in);
if (_GD_BadInput(D, E, 0, 1)) {
dreturn("%i", 0);
@@ -232,8 +232,8 @@
size_t n_wrote;
void* tmpbuf;
- dtrace("%p, %p, %lli, %" PRNsize_t ", 0x%X, %p", D, E, (long long)first_samp, num_samp,
- data_type, data_in);
+ dtrace("%p, %p, %lli, %" PRNsize_t ", 0x%X, %p", D, E, (long long)first_samp,
+ num_samp, data_type, data_in);
/* we cannot write to LINCOM fields that are a linear combination */
/* of more than one raw field (no way to know how to split data). */
@@ -311,8 +311,8 @@
const uint64_t mask = (E->EN(bit,numbits) == 64) ? 0xffffffffffffffffULL :
((uint64_t)1 << E->EN(bit,numbits)) - 1;
- dtrace("%p, %p, %lli, %" PRNsize_t ", 0x%X, %p", D, E, (long long)first_samp, num_samp,
- data_type, data_in);
+ dtrace("%p, %p, %lli, %" PRNsize_t ", 0x%X, %p", D, E, (long long)first_samp,
+ num_samp, data_type, data_in);
if (_GD_BadInput(D, E, 0, 1)) {
dreturn("%i", 0);
@@ -366,8 +366,8 @@
{
size_t n_wrote;
- dtrace("%p, %p, %lli, %" PRNsize_t ", 0x%X, %p", D, E, (long long)first_samp, num_samp,
- data_type, data_in);
+ dtrace("%p, %p, %lli, %" PRNsize_t ", 0x%X, %p", D, E, (long long)first_samp,
+ num_samp, data_type, data_in);
if (_GD_BadInput(D, E, 0, 1)) {
dreturn("%i", 0);
@@ -389,8 +389,8 @@
size_t n_wrote;
void* tmpbuf;
- dtrace("%p, %p, %lli, %" PRNsize_t ", 0x%X, %p", D, E, (long long)first_samp, num_samp,
- data_type, data_in);
+ dtrace("%p, %p, %lli, %" PRNsize_t ", 0x%X, %p", D, E, (long long)first_samp,
+ num_samp, data_type, data_in);
if (_GD_BadInput(D, E, 0, 1)) {
dreturn("%i", 0);
@@ -435,8 +435,8 @@
size_t n_wrote;
void* tmpbuf;
- dtrace("%p, %p, %lli, %" PRNsize_t ", 0x%X, %p", D, E, (long long)first_samp, num_samp,
- data_type, data_in);
+ dtrace("%p, %p, %lli, %" PRNsize_t ", 0x%X, %p", D, E, (long long)first_samp,
+ num_samp, data_type, data_in);
/* we cannot write to POLYNOM fields that are quadradic or higher order */
@@ -529,8 +529,8 @@
{
size_t i;
- dtrace("%p, %p, %u, %p, %u, %p, 0x%X %i, %" PRNsize_t, D, A, spfA, B, spfB, C, type,
- val, n);
+ dtrace("%p, %p, %u, %p, %u, %p, 0x%X %i, %" PRNsize_t, D, A, spfA, B, spfB, C,
+ type, val, n);
switch (type) {
case GD_NULL: break;
@@ -563,8 +563,8 @@
off64_t first_samp2;
unsigned int spf1, spf2;
- dtrace("%p, %p, %lli, %" PRNsize_t ", 0x%X, %p", D, E, (long long)first_samp, num_samp,
- data_type, data_in);
+ dtrace("%p, %p, %lli, %" PRNsize_t ", 0x%X, %p", D, E, (long long)first_samp,
+ num_samp, data_type, data_in);
if (_GD_BadInput(D, E, 0, 1)) {
dreturn("%i", 0);
@@ -632,8 +632,8 @@
off64_t first, size_t len, gd_type_t data_type,
const void *restrict data_in)
{
- dtrace("%p, %p, %lli, %" PRNsize_t ", 0x%X, %p", D, E, (long long)first, len, data_type,
- data_in);
+ dtrace("%p, %p, %lli, %" PRNsize_t ", 0x%X, %p", D, E, (long long)first, len,
+ data_type, data_in);
/* check protection */
if (D->fragment[E->fragment_index].protection & GD_PROTECT_FORMAT)
@@ -690,8 +690,8 @@
{
size_t n_wrote = 0;
- dtrace("%p, %p, %i, %lli, %" PRNsize_t ", 0x%X, %p", D, E, repr, (long long)first_samp,
- num_samp, data_type, data_in);
+ dtrace("%p, %p, %i, %lli, %" PRNsize_t ", 0x%X, %p", D, E, repr,
+ (long long)first_samp, num_samp, data_type, data_in);
if (++D->recurse_level >= GD_MAX_RECURSE_LEVEL) {
_GD_SetError(D, GD_E_RECURSE_LEVEL, GD_E_RECURSE_CODE, NULL, 0, E->field);
@@ -785,9 +785,9 @@
int repr;
unsigned int spf = 0;
- dtrace("%p, \"%s\", %lli, %lli, %" PRNsize_t ", %" PRNsize_t ", 0x%X, %p", D, field_code_in,
- (long long)first_frame, (long long)first_samp, num_frames, num_samp,
- data_type, data_in);
+ dtrace("%p, \"%s\", %lli, %lli, %" PRNsize_t ", %" PRNsize_t ", 0x%X, %p", D,
+ field_code_in, (long long)first_frame, (long long)first_samp, num_frames,
+ num_samp, data_type, data_in);
if (D->flags & GD_INVALID) {/* don't crash */
_GD_SetError(D, GD_E_BAD_DIRFILE, 0, NULL, 0, NULL);
Modified: trunk/getdata/src/types.c
===================================================================
--- trunk/getdata/src/types.c 2012-05-23 23:24:48 UTC (rev 712)
+++ trunk/getdata/src/types.c 2012-05-26 00:25:05 UTC (rev 713)
@@ -63,8 +63,8 @@
{
size_t i;
- dtrace("%p, %p, 0x%x, %p, 0x%x, %" PRNsize_t, D, data_in, in_type, data_out, out_type,
- n);
+ dtrace("%p, %p, 0x%x, %p, 0x%x, %" PRNsize_t, D, data_in, in_type, data_out,
+ out_type, n);
dreturnvoid();
if (out_type == GD_NULL) /* null return type: don't return data */
Modified: trunk/getdata/test/Makefile.am
===================================================================
--- trunk/getdata/test/Makefile.am 2012-05-23 23:24:48 UTC (rev 712)
+++ trunk/getdata/test/Makefile.am 2012-05-26 00:25:05 UTC (rev 713)
@@ -28,17 +28,6 @@
WEXTRA=-Wextra
endif
-if LFS_TRANSITIONAL_API
-GET64=get64
-GET_OFF64=get_off64
-NFRAMES64=nframes64
-NFRAMES_OFF64=nframes_off64
-PUT64=put64
-PUT_OFF64=put_off64
-SEEK64=seek64
-TELL64=tell64
-endif
-
LDADD=../src/libgetdata.la
INCLUDES=${WALL} $(WEXTRA) -I$(top_srcdir)/src
@@ -179,7 +168,7 @@
fragment_affix_dup fragment_index fragment_index_alias \
fragment_name fragment_name_oor fragment_num fragment_parent
-GET_TESTS=${GET64} get_bad_code get_bit get_carray get_carray_len \
+GET_TESTS=get64 get_bad_code get_bit get_carray get_carray_len \
get_carray_slice get_char get_clincom get_complex128 \
get_complex64 get_const get_const_complex get_const_repr \
get_cpolynom get_divide get_endian8 get_endian16 get_endian32 \
@@ -195,7 +184,7 @@
get_lincom_null get_lincom_spf get_linterp get_linterp_noin \
get_linterp_notab get_linterp_sort get_mplex get_mplex_lb \
get_mplex_lball get_mplex_nolb get_multiply get_multiply_noin \
- get_nonexistent get_null $(GET_OFF64) get_phase get_phase_affix \
+ get_nonexistent get_null get_off64 get_phase get_phase_affix \
get_polynom get_polynom_noin get_recip get_recip_const get_recurse \
get_rofs get_sbit get_sf get_ss get_type get_uint16 get_uint32 \
get_uint64 get_window get_window_clr get_window_ge get_window_gt \
@@ -244,8 +233,8 @@
nfields_type_hidden nfields_type_invalid nfields_vector \
nfields_vector_hidden nfields_vector_invalid
-NFRAMES_TESTS=nframes ${NFRAMES64} nframes_empty nframes_invalid \
- $(NFRAMES_OFF64) nframes_spf
+NFRAMES_TESTS=nframes nframes64 nframes_empty nframes_invalid \
+ nframes_off64 nframes_spf
NMETA_TESTS=nmeta nmeta_hidden nmeta_invalid nmeta_parent nmeta_type \
nmeta_type_hidden nmeta_type_invalid nmeta_type_parent \
@@ -296,7 +285,7 @@
PROTECT_TESTS=protect_alter protect_get
-PUT_TESTS=${PUT64} put_bad_code put_bit put_bof put_carray put_carray_slice \
+PUT_TESTS=put64 put_bad_code put_bit put_bof put_carray put_carray_slice \
put_char put_complex128 put_complex64 put_const put_const_protect \
put_divide put_endian8 put_endian16 put_endian32 put_endian64 \
put_endian_complex128_arm put_endian_complex128_big \
@@ -309,7 +298,7 @@
put_int32 put_int64 put_invalid put_lincom1 put_lincom2 \
put_lincom_noin put_linterp put_linterp_noin put_linterp_nomono \
put_linterp_notab put_linterp_reverse put_mplex put_multiply \
- put_null $(PUT_OFF64) put_phase put_phase_noin put_polynom1 \
+ put_null put_off64 put_phase put_phase_noin put_polynom1 \
put_polynom2 put_polynom_noin put_protect put_rdonly put_recip \
put_recurse put_repr put_rofs put_sbit put_sf put_ss put_string \
put_string_protect put_type put_uint16 put_uint32 put_uint64 \
@@ -322,7 +311,7 @@
repr_real_m repr_real_r repr_uint16 repr_uint32 repr_uint64 \
repr_uint8
-SEEK_TESTS=$(SEEK64) seek_cur seek_end seek_foffs seek_set
+SEEK_TESTS=seek64 seek_cur seek_end seek_foffs seek_set
SIE_TESTS=sie_get_big sie_get_little sie_move_from sie_move_to sie_nframes_big \
sie_nframes_little sie_put_big sie_put_little
@@ -336,7 +325,7 @@
spf_divide spf_lincom spf_multiply \
spf_polynom spf_recip spf_recurse
-TELL_TESTS=tell ${TELL64}
+TELL_TESTS=tell tell64
TRUNC_TESTS=trunc trunc_dir trunc_rdonly trunc_rofs trunc_truncsub
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ket...@us...> - 2012-05-23 23:24:55
|
Revision: 712
http://getdata.svn.sourceforge.net/getdata/?rev=712&view=rev
Author: ketiltrout
Date: 2012-05-23 23:24:48 +0000 (Wed, 23 May 2012)
Log Message:
-----------
Figure out the perl man3 extension at configure time.
Modified Paths:
--------------
trunk/getdata/bindings/perl/Makefile.am
trunk/getdata/m4/perl.m4
Modified: trunk/getdata/bindings/perl/Makefile.am
===================================================================
--- trunk/getdata/bindings/perl/Makefile.am 2012-05-23 18:42:04 UTC (rev 711)
+++ trunk/getdata/bindings/perl/Makefile.am 2012-05-23 23:24:48 UTC (rev 712)
@@ -30,7 +30,7 @@
PERL_TESTS=t/big_test.t t/callback.t
man3dir=${perlmandir}
-nodist_man3_MANS=blib/libdoc/GetData.3
+nodist_man3_MANS=blib/libdoc/GetData.$(PERL_MAN3EXT)
nodist_perl_SCRIPTS=blib/lib/GetData.pm
@@ -71,20 +71,11 @@
$(PERL) $(srcdir)/funclist.pl lib/GetData.xs lib/simple_funcs.xs > $@
chmod a-w $@
-blib/arch/auto/GetData/GetData.bs: Build lib/GetData.xs lib/simple_funcs.xs \
- lib/typemap
+blib/arch/auto/GetData/GetData.bs blib/arch/auto/GetData/GetData.so \
+ blib/lib/GetData.pm blib/libdoc/GetData.$(PERL_MAN3EXT): Build \
+ lib/GetData.xs lib/simple_funcs.xs lib/typemap
$(PERL) Build build
- touch $@
-blib/arch/auto/GetData/GetData.so: blib/arch/auto/GetData/GetData.bs
- touch $@
-
-blib/lib/GetData.pm: blib/arch/auto/GetData/GetData.bs
- touch $@
-
-blib/libdoc/GetData.3: blib/arch/auto/GetData/GetData.bs
- touch $@
-
.PRECIOUS: Build
Build: Build.PL GetData.pm lib/GetData.xs lib/simple_funcs.xs lib/typemap \
MANIFEST
Modified: trunk/getdata/m4/perl.m4
===================================================================
--- trunk/getdata/m4/perl.m4 2012-05-23 18:42:04 UTC (rev 711)
+++ trunk/getdata/m4/perl.m4 2012-05-23 23:24:48 UTC (rev 712)
@@ -46,9 +46,20 @@
fi
])
+dnl GD_PERL_MAN3EXT
+dnl ---------------------------------------------------------------
+dnl Define PERL_MAN3EXT to the section 3 manual extension used by Module::Build
+AC_DEFUN([GD_PERL_MAN3EXT],
+[
+AC_MSG_CHECKING([for the section 3 manual page extension])
+PERL_MAN3EXT=`$PERL -MModule::Build -e 'print Module::Build->new(module_name=>"conftest",dist_version=>0)->config('man3ext');'`
+AC_MSG_RESULT([.$PERL_MAN3EXT])
+AC_SUBST([PERL_MAN3EXT])
+])
+
dnl GD_PERL_CHECK_MODULE
dnl ---------------------------------------------------------------
-dnl Define HAVE_<MODULE_NAME> if the specified encoding exists
+dnl Define HAVE_<MODULE_NAME> if the specified module exists
AC_DEFUN([GD_PERL_CHECK_MODULE],
[
AC_MSG_CHECKING([for $1])
@@ -180,5 +191,6 @@
AC_SUBST([perlmandir])
AC_MSG_RESULT([$perlmandir])
+ GD_PERL_MAN3EXT
fi
])
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ket...@us...> - 2012-05-23 18:42:10
|
Revision: 711
http://getdata.svn.sourceforge.net/getdata/?rev=711&view=rev
Author: ketiltrout
Date: 2012-05-23 18:42:04 +0000 (Wed, 23 May 2012)
Log Message:
-----------
Disabled on Cygwin.
Modified Paths:
--------------
trunk/getdata/test/error_verbose.c
trunk/getdata/test/error_verbose_prefix.c
Modified: trunk/getdata/test/error_verbose.c
===================================================================
--- trunk/getdata/test/error_verbose.c 2012-05-23 17:40:23 UTC (rev 710)
+++ trunk/getdata/test/error_verbose.c 2012-05-23 18:42:04 UTC (rev 711)
@@ -31,7 +31,7 @@
int main(void)
{
-#if !defined HAVE_MKFIFO || !defined HAVE_WORKING_FORK
+#if !defined HAVE_MKFIFO || !defined HAVE_WORKING_FORK || defined __CYGWIN__
return 77; /* skip */
#else
const char *fifo = "./dirfile";
Modified: trunk/getdata/test/error_verbose_prefix.c
===================================================================
--- trunk/getdata/test/error_verbose_prefix.c 2012-05-23 17:40:23 UTC (rev 710)
+++ trunk/getdata/test/error_verbose_prefix.c 2012-05-23 18:42:04 UTC (rev 711)
@@ -31,7 +31,7 @@
int main(void)
{
-#if !defined HAVE_MKFIFO || !defined HAVE_WORKING_FORK
+#if !defined HAVE_MKFIFO || !defined HAVE_WORKING_FORK || defined __CYGWIN__
return 77; /* skip */
#else
const char *filedir = "dirfile";
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|