diff -Nru silo-llnl-4.10.2/BSD_LICENSE_README silo-llnl-4.10.2.real/BSD_LICENSE_README --- silo-llnl-4.10.2/BSD_LICENSE_README 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/BSD_LICENSE_README 2018-02-15 17:25:43.000000000 +0000 @@ -53,7 +53,7 @@ compressed with Hzip or FPzip from a legacy distribution will not be readable in a BSD distribution. Since compression features must be explicitly turned on by a Silo application, this impact can be easily -mitigating by ensuring that Hzip and FPzip compression are used only +mitigated by ensuring that Hzip and FPzip compression are used only for objects within Silo files not intended to be read by BSD releases. For more information on availability of Hzip and FPzip compression, diff -Nru silo-llnl-4.10.2/config/ax_have_qt.m4 silo-llnl-4.10.2.real/config/ax_have_qt.m4 --- silo-llnl-4.10.2/config/ax_have_qt.m4 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/config/ax_have_qt.m4 2018-02-15 17:25:43.000000000 +0000 @@ -292,28 +292,28 @@ EOF ax_cv_qt_test_result="failure" - ax_try_1="$QT_MOC ax_qt_test.h -o moc_ax_qt_test.$ac_ext >/dev/null 2>/dev/null" + ax_try_1="$QT_MOC ax_qt_test.h -o moc_ax_qt_test.$ac_ext" AC_TRY_EVAL(ax_try_1) if test x"$ac_status" != x0; then echo "$ax_err_1" >&AS_MESSAGE_LOG_FD echo "configure: could not run $QT_MOC on:" >&AS_MESSAGE_LOG_FD cat ax_qt_test.h >&AS_MESSAGE_LOG_FD else - ax_try_2="$CXX $QT_CXXFLAGS -c $CXXFLAGS -o moc_ax_qt_test.o moc_ax_qt_test.$ac_ext >/dev/null 2>/dev/null" + ax_try_2="$CXX $QT_CXXFLAGS -c $CXXFLAGS -o moc_ax_qt_test.o moc_ax_qt_test.$ac_ext" AC_TRY_EVAL(ax_try_2) if test x"$ac_status" != x0; then echo "$ax_err_2" >&AS_MESSAGE_LOG_FD echo "configure: could not compile:" >&AS_MESSAGE_LOG_FD cat moc_ax_qt_test.$ac_ext >&AS_MESSAGE_LOG_FD else - ax_try_3="$CXX $QT_CXXFLAGS -c $CXXFLAGS -o ax_qt_main.o ax_qt_main.$ac_ext >/dev/null 2>/dev/null" + ax_try_3="$CXX $QT_CXXFLAGS -c $CXXFLAGS -o ax_qt_main.o ax_qt_main.$ac_ext" AC_TRY_EVAL(ax_try_3) if test x"$ac_status" != x0; then echo "$ax_err_3" >&AS_MESSAGE_LOG_FD echo "configure: could not compile:" >&AS_MESSAGE_LOG_FD cat ax_qt_main.$ac_ext >&AS_MESSAGE_LOG_FD else - ax_try_4="$CXX -o ax_qt_main ax_qt_main.o moc_ax_qt_test.o $QT_LIBS $LIBS >/dev/null 2>/dev/null" + ax_try_4="$CXX -o ax_qt_main ax_qt_main.o moc_ax_qt_test.o $QT_LIBS $LIBS" AC_TRY_EVAL(ax_try_4) if test x"$ac_status" != x0; then echo "$ax_err_4" >&AS_MESSAGE_LOG_FD diff -Nru silo-llnl-4.10.2/config/config.h.in silo-llnl-4.10.2.real/config/config.h.in --- silo-llnl-4.10.2/config/config.h.in 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/config/config.h.in 2018-02-15 17:25:43.000000000 +0000 @@ -77,6 +77,9 @@ /* Define to 1 if you have the `isnan' function. */ #undef HAVE_ISNAN +/* Support for experimental JSON features */ +#undef HAVE_JSON + /* Define to 1 if you have the `hdf5' library (-lhdf5). */ #undef HAVE_LIBHDF5 diff -Nru silo-llnl-4.10.2/config/Makefile.in silo-llnl-4.10.2.real/config/Makefile.in --- silo-llnl-4.10.2/config/Makefile.in 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/config/Makefile.in 2018-02-15 17:25:43.000000000 +0000 @@ -158,6 +158,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +JSON = @JSON@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBM = @LIBM@ @@ -206,9 +207,6 @@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SILEX = @SILEX@ -SILO_DTYPPTR = @SILO_DTYPPTR@ -SILO_DTYPPTR1 = @SILO_DTYPPTR1@ -SILO_DTYPPTR2 = @SILO_DTYPPTR2@ SILO_VERS_MAJ = @SILO_VERS_MAJ@ SILO_VERS_MIN = @SILO_VERS_MIN@ SILO_VERS_PAT = @SILO_VERS_PAT@ diff -Nru silo-llnl-4.10.2/config/mkinc silo-llnl-4.10.2.real/config/mkinc --- silo-llnl-4.10.2/config/mkinc 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/config/mkinc 2018-02-15 17:25:43.000000000 +0000 @@ -17,6 +17,7 @@ unlink $0; $0 = shift @ARGV; +#!/usr/bin/perl ######################################################################### # Copyright (c) 1994 - 2010, Lawrence Livermore National Security, LLC. # LLNL-CODE-425250. @@ -119,6 +120,26 @@ # Right hand side values computed so that couples (name,value) fit # within 72 characters to hold on a single unwrapped line. # +# Bob Apthorpe, Sun Jul 28 21:07:21 CDT 2013 +# Enhanced F77- and F9X-style output. Specifically: +# * Better estimate of C string length (fix for Bug #503; see +# https://visitbugs.ornl.gov/issues/503 ). Leading and trailing +# delimiters are ignored in length calculation as are escaped +# entities (\n, \r, etc.) +# * Accepts command-line argument of --f90 to produce F9x-style output +# compatible with both fixed- and free-format F9x code +# * Improved standards compliance. Changed comment and continuation +# characters to be appropriate for both F77 and F9x. Note that +# Lower-case is an extension to F77 so F77 identifiers have been +# upcased +# * Converted standalone EXTERNAL and PARAMETER statements to +# attributes of type declarations for F9x. This is a F9x best +# practice by putting all variable properties in one place +# * Removed line-wrapping code; declarations have been burst into +# one per line. This obviates the need for line wrapping and makes +# differences in the exposed API clearer between versions. +# It's more legible to humans; no complaints from the compiler... +# ######################################################################### @@ -127,15 +148,39 @@ local($enum_body) = 0; local($brace_level) = 0; -local(%vals) = () ; +local(%vals) = (); + +# Literal command line option passed to this script +local($arg0) = ''; + +# Flag indicating F90 style desired +local($opt_f90) = 0; + +# Fortran comment character; use 'C' for F77, '!' for F90 and later +local($ccmt) = 'C'; + +# Get command-line option (if any) to select F77 or F9x+ formatting +# There are better ways of doing this; just not in Perl4 style as of 2013... +if (length(@ARGV) >= 1) { + if ($ARGV[0] eq '--f90') { + $opt_f90 = 1; + $arg0 = shift @ARGV; + $arg0 .= ' ' ; + $ccmt = '!'; + } +} ### Gather the info... while (<>) { next if (/NO_FORTRAN_DEFINE/); - if (/^#[ \t]*define[ \t]+((SILO_VERS|DB|SDX)(OPT|CSG)?_\w+)[ \t]+([^ \t\n]*)/) { + if (/^#[ \t]*define[ \t]+((SILO_VERS|DB|SDX)(OPT|CSG)?_\w+)[ \t]+([^ \t\n]*)/) + { local ($name, $value) = ($1, $4); $sdx=1 if ($name=~/^SDX/); $name =~ s/^SDX_//; + if ($value =~ /\(\((char|int|double)\)(.*)\)/) { + $value = $2; + } if ($name eq "SILO_VERS_TAG") { next; @@ -144,6 +189,10 @@ { $value = 0; } + if ($value eq "1.0e+308") + { + $value = "1.0D+308"; + } if (/FORTRAN STRING/) { push (@strings, join(':',$name,$value)); @@ -179,101 +228,110 @@ chop($date); $user = $ENV{USER}; print <<"EOF"; -!cccccccccccccccccccccccccccccccccccccccccccccccccccccccc -*- fortran -*- -! -! $title include file for Fortan applications. -! -! Programmer: $user $date -! -! WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING -! This file is generated automatically from C header files in the -! SILO distribution. Do not make changes to this file manually, -! as those changes will disappear. -! WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING -! -! This file was generated by the following commands... +${ccmt}cccccccccccccccccccccccccccccccccccccccccccccccccccccccc -*- fortran -*- +${ccmt} +${ccmt} $title include file for Fortan applications. +${ccmt} +${ccmt} Programmer: $user $date +${ccmt} +${ccmt} WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING +${ccmt} This file is generated automatically from C header files in the +${ccmt} SILO distribution. Do not make changes to this file manually, +${ccmt} as those changes will disappear. +${ccmt} WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING +${ccmt} +${ccmt} This file was generated by the following commands... EOF if ($sdx) { print <<"EOF"; -! mv sdx.inc sdx.inc~ -! cat sdx.h sdx_server.h | mkinc > sdx.inc -! -!cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc +${ccmt} mv sdx.inc sdx.inc~ +${ccmt} cat sdx.h sdx_server.h | mkinc $arg0> sdx.inc +${ccmt} +${ccmt} cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc EOF } else { print <<"EOF"; -! mv silo.inc silo.inc~ -! cat silo.h silo_f.h | mkinc > silo.inc -! -!cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc +${ccmt} mv silo.inc silo.inc~ +${ccmt} cat silo.h silo_f.h | mkinc $arg0> silo.inc +${ccmt} +${ccmt} cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc EOF } ### Write `external' statements for the functions... -print "!...Functions.\n"; +print "$ccmt...Functions.\n"; $line = ""; foreach $var (sort @functions) { if (length($line)+2+length($var)>72) { print "$line\n"; $line = ""; - } - if (0==length($line)) { - $line = " external $var"; + } + + if ($opt_f90) { + $line = " integer, external :: $var"; } else { - $line .= ", " . $var; + $line = " EXTERNAL " . uc($var); } + print "$line\n"; } -print "$line\n" if (0!=length($line)); ### Write `integer' statements for the functions... -print "\n"; -$line = ""; -foreach $var (sort @functions) { - if (length($line)+2+length($var)>72) { - print "$line\n"; - $line = ""; - } - if (0==length($line)) { - $line = " integer $var"; - } else { - $line .= ", " . $var; +if (not $opt_f90) { + print "\n"; + $line = ""; + foreach $var (sort @functions) { + print " INTEGER " . uc($var) . "\n"; } } -print "$line\n" if (0!=length($line)); + +print "\n\n$ccmt...Parameters.\n"; + +### Skip separate type and parameter declarations. Better F90 practice +### is to use attributes (parameter, dimension, etc.) in declarations + +if (not $opt_f90) { ### Write `integer' statements for the constants... -print "\n\n!...Parameters.\n"; -$line = ""; -foreach $var (sort @parameters) { - local ($name, $value) = split (':', $var); - if (length($line)+2+length($name)>72) { - print "$line\n"; - $line = ""; + $line = ""; + foreach $var (sort @parameters) { + local ($name, $value) = split (':', $var); + if ($value =~ /\./) { + print " DOUBLE PRECISION " . uc($name) . "\n"; + } else { + print " INTEGER " . uc($name) . "\n"; } - if (0==length($line)) { - $line = " integer $name"; - } else { - $line .= ", " . $name; } -} -print "$line\n" if (0!=length($line)); ### Write `character' statements for the constants... -foreach $var (sort @strings) -{ - local ($name, $value) = split (':', $var); - print " character*".length($value)." $name\n"; + foreach $var (sort @strings) { + local ($name, $value) = split (':', $var); + local($fstrlen) = 0; + local($tmpstr) = $value; + if ($tmpstr =~ /^(["'])/) { + local($delim) = $1; + $tmpstr =~ s/^$delim//; + $tmpstr =~ s/$delim$//; + } + $tmpstr =~ s/\\./*/g; + $fstrlen = length($tmpstr); + + $line = ' CHARACTER*' . $fstrlen . ' ' . uc($name) . "\n"; + print $line; + } + + print "\n"; } ### Write `parameter' statements for the constants... -### Don't sort these, because some $value's may depend on +### Don't sort these, because some $values may depend on ### previous parameter statements. -print "\n"; push(@temparray,@parameters); push(@temparray,@strings); +local($ftype) = ''; +local($fstrlen) = 0; foreach $var (@temparray) { local ($name, $value) = split (':', $var); if ($value =~ /^0x[0-9A-F]*/) { @@ -286,7 +344,7 @@ $value = "DB_HDF5X+$g1*2048"; } # Evaluate the RHS using array %vals: - if ($value =~ /^\d+$/) { + if ($value =~ /^\d*\.?\d*([DE]\+)?\d+$/) { $vals{$name} = $value ; } else { # Let us look at the RHS expression: @@ -311,26 +369,60 @@ unless ($name =~ /DB_F77NULL/) { $value = $vals{$name} if (exists $vals{$name}) ; } + # Why make the line human readable whereas it only needs be compiler compliant ? # $line = sprintf(" parameter (%-25s = %-15s)", $name, $value); # Written in a FORTRAN 77/Fortran 90 manner: - $line = sprintf(" parameter(%s=%s)", $name, $value); + if ($opt_f90) { + # Determine type of Fortran parameter (F90 declaration) + if ($value =~ /['"]/) { + local($tmpstr) = $value; + if ($tmpstr =~ /^(["'])/) { + local($delim) = $1; + $tmpstr =~ s/^$delim//; + $tmpstr =~ s/$delim$//; + } + $tmpstr =~ s/\\./*/g; + $fstrlen = length($tmpstr); + + $ftype = 'character (len=' . $fstrlen . ')' + } + elsif ($value =~ /\./) { + $ftype = 'real (kind=8)'; + } else { + $ftype = 'integer'; + } + $line = sprintf(" %s, parameter :: %s = %s", $ftype, $name, $value); + } else { + $line = sprintf(" PARAMETER (%s=%s)", uc($name), $value); + } + if (length($line)>72) { local $off=0; while ($off < length($line)) { - $curline = substr($line, $off, $off+64); - if ($off == 0) { - printf "$curline\n"; + if ($opt_f90) { + $curline = substr($line, $off, $off+64); + if ($off == 0) { + printf "$curline\n"; + } else { + printf ' &' . $curline . "\n"; + } + $off += 64; } else { - printf " c$curline\n"; + $curline = substr($line, $off, $off+64) . '&'; + if ($off == 0) { + printf "$curline\n"; + } else { + printf ' &' . $curline . "\n"; + } + $off += 64; } - $off += 64; } } else { printf "$line\n"; } } -print "\n\n! End.\n"; +print "\n\n" . $ccmt. " End.\n"; exit 0; diff -Nru silo-llnl-4.10.2/config-site/Makefile.in silo-llnl-4.10.2.real/config-site/Makefile.in --- silo-llnl-4.10.2/config-site/Makefile.in 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/config-site/Makefile.in 2018-02-15 17:25:43.000000000 +0000 @@ -157,6 +157,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +JSON = @JSON@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBM = @LIBM@ @@ -205,9 +206,6 @@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SILEX = @SILEX@ -SILO_DTYPPTR = @SILO_DTYPPTR@ -SILO_DTYPPTR1 = @SILO_DTYPPTR1@ -SILO_DTYPPTR2 = @SILO_DTYPPTR2@ SILO_VERS_MAJ = @SILO_VERS_MAJ@ SILO_VERS_MIN = @SILO_VERS_MIN@ SILO_VERS_PAT = @SILO_VERS_PAT@ diff -Nru silo-llnl-4.10.2/configure silo-llnl-4.10.2.real/configure --- silo-llnl-4.10.2/configure 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/configure 2018-02-15 17:25:43.000000000 +0000 @@ -1,9 +1,9 @@ #! /bin/sh # From configure.ac Id. # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.63 for silo 4.9.1. +# Generated by GNU Autoconf 2.63 for silo 4.10.2. # -# Report bugs to . +# Report bugs to . # # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, # 2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. @@ -751,9 +751,9 @@ # Identity of this package. PACKAGE_NAME='silo' PACKAGE_TARNAME='silo' -PACKAGE_VERSION='4.9.1' -PACKAGE_STRING='silo 4.9.1' -PACKAGE_BUGREPORT='visit-users@email.ornl.gov' +PACKAGE_VERSION='4.10.2' +PACKAGE_STRING='silo 4.10.2' +PACKAGE_BUGREPORT='visit-users@elist.ornl.gov' ac_unique_file="src/silo/silo.h.in" ac_default_prefix="`pwd`" @@ -804,6 +804,8 @@ CXX_LINK_NEEDED_TRUE ZLIB_AVAILABLE_FALSE ZLIB_AVAILABLE_TRUE +JSON_NEEDED_FALSE +JSON_NEEDED_TRUE FPZIP_NEEDED_FALSE FPZIP_NEEDED_TRUE HZIP_NEEDED_FALSE @@ -854,6 +856,7 @@ X_PRE_LIBS X_CFLAGS XMKMF +JSON FPZIP ZLIB HZIP @@ -863,9 +866,6 @@ TAURUS PDB_DRV NETCDF -SILO_DTYPPTR2 -SILO_DTYPPTR1 -SILO_DTYPPTR CXXCPP OTOOL64 OTOOL @@ -1011,7 +1011,6 @@ with_gnu_ld enable_libtool_lock enable_optimization -enable_legacy_datatyped_pointers enable_normal_sclite_mem_headers enable_install_lite_headers with_readline @@ -1020,6 +1019,7 @@ with_zlib enable_hzip enable_fpzip +enable_json with_x with_Qt_dir with_Qt_include_dir @@ -1600,7 +1600,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures silo 4.9.1 to adapt to many kinds of systems. +\`configure' configures silo 4.10.2 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1674,7 +1674,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of silo 4.9.1:";; + short | recursive ) echo "Configuration of silo 4.10.2:";; esac cat <<\_ACEOF @@ -1694,9 +1694,6 @@ optimize for fast installation [default=yes] --disable-libtool-lock avoid locking (might break parallel builds) --enable-optimization compile with optimization [default=no] - --enable-legacy-datatyped-pointers - compile using legacy (float) pointers for datatype'd - pointers [default=no] --enable-normal-sclite-mem-headers compile with normal score lite memory headers [default=no] @@ -1708,6 +1705,7 @@ [default=yes] --enable-fpzip enable Lindstrom float 1,2,3D array compression [default=yes] + --enable-json enable experimental JSON features[default=no] Optional Packages: --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] @@ -1731,7 +1729,8 @@ --with-szlib=DIR Use szlib library for external szlib I/O filter [default=no] --with-hdf5=INC,LIB Location of HDF5 header and library - --with-pdb-proper directory where PDB proper is installed [default=no] + --with-pdb-proper Turns on PDB proper driver by specifying directory + where PDB proper is installed [default=no] Some influential environment variables: CXX C++ compiler command @@ -1754,7 +1753,7 @@ Use these variables to override the choices made by `configure' or to help it to find libraries and programs with nonstandard names/locations. -Report bugs to . +Report bugs to . _ACEOF ac_status=$? fi @@ -1817,7 +1816,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -silo configure 4.9.1 +silo configure 4.10.2 generated by GNU Autoconf 2.63 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, @@ -1836,7 +1835,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by silo $as_me 4.9.1, which was +It was created by silo $as_me 4.10.2, which was generated by GNU Autoconf 2.63. Invocation command line was $ $0 $@ @@ -2686,7 +2685,7 @@ # Define the identity of the package. PACKAGE='silo' - VERSION='4.9.1' + VERSION='4.10.2' cat >>confdefs.h <<_ACEOF @@ -2919,13 +2918,13 @@ # Grab the version number { $as_echo "$as_me:$LINENO: checking what version the package is" >&5 $as_echo_n "checking what version the package is... " >&6; } -{ $as_echo "$as_me:$LINENO: result: 4.9.1" >&5 -$as_echo "4.9.1" >&6; } - SILO_VERS_MAJ="`echo 4.9.1 | cut -d'.' -f1`" - SILO_VERS_MIN="`echo 4.9.1 | cut -d'.' -f2 | cut -d'-' -f1`" - SILO_VERS_PAT="`echo 4.9.1 | cut -d'.' -f3 | cut -d'-' -f1`" - SILO_VERS_PRE="`echo 4.9.1 | grep pre | cut -d'-' -f2 | cut -d'e' -f2`" - SILO_VERS_TAG="`echo Silo_version 4.9.1 | sed -e 's/ /_/' -e 's/\./_/g' -e 's/-/_/g'`" +{ $as_echo "$as_me:$LINENO: result: 4.10.2" >&5 +$as_echo "4.10.2" >&6; } + SILO_VERS_MAJ="`echo 4.10.2 | cut -d'.' -f1`" + SILO_VERS_MIN="`echo 4.10.2 | cut -d'.' -f2 | cut -d'-' -f1`" + SILO_VERS_PAT="`echo 4.10.2 | cut -d'.' -f3 | cut -d'-' -f1`" + SILO_VERS_PRE="`echo 4.10.2 | grep pre | cut -d'-' -f2 | cut -d'e' -f2`" + SILO_VERS_TAG="`echo Silo_version 4.10.2 | sed -e 's/ /_/' -e 's/\./_/g' -e 's/-/_/g'`" CONFIG_CMD="`echo $0 $ac_configure_args`" @@ -2940,10 +2939,11 @@ DEFAULT_PYTHONMODULE="" DEFAULT_BROWSER="browser" -DEFAULT_SILEX="silex" +DEFAULT_SILEX="" DEFAULT_HZIP="hzip" DEFAULT_FPZIP="fpzip" DEFAULT_FORTRAN="fortran" +DEFAULT_JSON="" default_detect_readline="yes" hname="`hostname`" @@ -23198,22 +23198,6 @@ fi -SILO_DTYPPTR="void" -SILO_DTYPPTR1="void*" -SILO_DTYPPTR2="void*" -# Check whether --enable-legacy-datatyped-pointers was given. -if test "${enable_legacy_datatyped_pointers+set}" = set; then - enableval=$enable_legacy_datatyped_pointers; if test $enableval = yes; then - SILO_DTYPPTR="float" - SILO_DTYPPTR1="float*" - SILO_DTYPPTR2="float**" - fi -fi - - - - - # Check whether --enable-normal-sclite-mem-headers was given. if test "${enable_normal_sclite_mem_headers+set}" = set; then enableval=$enable_normal_sclite_mem_headers; if test "$enableval" = "yes" ; then @@ -23292,8 +23276,8 @@ SILEX=$DEFAULT_SILEX # Check whether --enable-silex was given. if test "${enable_silex+set}" = set; then - enableval=$enable_silex; if test "$enable_silex" = "no"; then - SILEX="" + enableval=$enable_silex; if test "$enable_silex" = "yes"; then + SILEX="silex" fi fi @@ -23490,7 +23474,7 @@ $as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} ( cat <<\_ASBOX ## ----------------------------------------- ## -## Report this to visit-users@email.ornl.gov ## +## Report this to visit-users@elist.ornl.gov ## ## ----------------------------------------- ## _ASBOX ) | sed "s/^/$as_me: WARNING: /" >&2 @@ -23646,6 +23630,60 @@ fi +# Check whether --enable-json was given. +if test "${enable_json+set}" = set; then + enableval=$enable_json; if test "$enable_json" = "yes"; then + { $as_echo "$as_me:$LINENO: checking Enabling json..." >&5 +$as_echo_n "checking Enabling json...... " >&6; } + if test -e ${ac_abs_confdir}/tools/json/json-c-0.10.tar.gz; then + if test -z "$(find tools/json/json-c-0.10 -name libjson.so -o -name libjson.a -o -name libjson.dylib)"; then + if test ! -e ./tools/json; then + mkdir tools 1>/dev/null 2>&1 + mkdir tools/json 1>/dev/null 2>&1 + fi + pushd tools/json 1>/dev/null 2>&1 + rm -rf json-c-0.10 + gunzip < ${ac_abs_confdir}/tools/json/json-c-0.10.tar.gz | tar xf - + cd json-c-0.10 + if test ! "${prefix}" = "NONE"; then + ./configure --prefix=${prefix}/json + make install + else + ./configure + make + fi + if test $? -eq 0; then + { $as_echo "$as_me:$LINENO: result: json-c compiled and installed" >&5 +$as_echo "json-c compiled and installed" >&6; } + JSON="json" + else + { $as_echo "$as_me:$LINENO: result: JSON support disabled due to failure to install" >&5 +$as_echo "JSON support disabled due to failure to install" >&6; } + JSON="" + fi + popd 1>/dev/null 2>&1 + else + { $as_echo "$as_me:$LINENO: result: json-c compiled and installed" >&5 +$as_echo "json-c compiled and installed" >&6; } + JSON="json" + fi + else + { $as_echo "$as_me:$LINENO: result: JSON support not available because json-c distribution is not in this tarball" >&5 +$as_echo "JSON support not available because json-c distribution is not in this tarball" >&6; } + JSON="" + fi + fi +fi + + +if test -n "$JSON"; then + +cat >>confdefs.h <<\_ACEOF +#define HAVE_JSON 1 +_ACEOF + +fi + # Turn on C optimization flags { $as_echo "$as_me:$LINENO: checking compiler optimization" >&5 $as_echo_n "checking compiler optimization... " >&6; } @@ -24580,7 +24618,7 @@ $as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} ( cat <<\_ASBOX ## ----------------------------------------- ## -## Report this to visit-users@email.ornl.gov ## +## Report this to visit-users@elist.ornl.gov ## ## ----------------------------------------- ## _ASBOX ) | sed "s/^/$as_me: WARNING: /" >&2 @@ -24742,7 +24780,7 @@ $as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} ( cat <<\_ASBOX ## ----------------------------------------- ## -## Report this to visit-users@email.ornl.gov ## +## Report this to visit-users@elist.ornl.gov ## ## ----------------------------------------- ## _ASBOX ) | sed "s/^/$as_me: WARNING: /" >&2 @@ -24893,7 +24931,7 @@ $as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} ( cat <<\_ASBOX ## ----------------------------------------- ## -## Report this to visit-users@email.ornl.gov ## +## Report this to visit-users@elist.ornl.gov ## ## ----------------------------------------- ## _ASBOX ) | sed "s/^/$as_me: WARNING: /" >&2 @@ -25058,7 +25096,7 @@ $as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} ( cat <<\_ASBOX ## ----------------------------------------- ## -## Report this to visit-users@email.ornl.gov ## +## Report this to visit-users@elist.ornl.gov ## ## ----------------------------------------- ## _ASBOX ) | sed "s/^/$as_me: WARNING: /" >&2 @@ -25209,7 +25247,7 @@ $as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} ( cat <<\_ASBOX ## ----------------------------------------- ## -## Report this to visit-users@email.ornl.gov ## +## Report this to visit-users@elist.ornl.gov ## ## ----------------------------------------- ## _ASBOX ) | sed "s/^/$as_me: WARNING: /" >&2 @@ -25361,7 +25399,7 @@ $as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} ( cat <<\_ASBOX ## ----------------------------------------- ## -## Report this to visit-users@email.ornl.gov ## +## Report this to visit-users@elist.ornl.gov ## ## ----------------------------------------- ## _ASBOX ) | sed "s/^/$as_me: WARNING: /" >&2 @@ -28027,7 +28065,7 @@ EOF ax_cv_qt_test_result="failure" - ax_try_1="$QT_MOC ax_qt_test.h -o moc_ax_qt_test.$ac_ext >/dev/null 2>/dev/null" + ax_try_1="$QT_MOC ax_qt_test.h -o moc_ax_qt_test.$ac_ext" { (eval echo "$as_me:$LINENO: \"$ax_try_1\"") >&5 (eval $ax_try_1) 2>&5 ac_status=$? @@ -28038,7 +28076,7 @@ echo "configure: could not run $QT_MOC on:" >&5 cat ax_qt_test.h >&5 else - ax_try_2="$CXX $QT_CXXFLAGS -c $CXXFLAGS -o moc_ax_qt_test.o moc_ax_qt_test.$ac_ext >/dev/null 2>/dev/null" + ax_try_2="$CXX $QT_CXXFLAGS -c $CXXFLAGS -o moc_ax_qt_test.o moc_ax_qt_test.$ac_ext" { (eval echo "$as_me:$LINENO: \"$ax_try_2\"") >&5 (eval $ax_try_2) 2>&5 ac_status=$? @@ -28049,7 +28087,7 @@ echo "configure: could not compile:" >&5 cat moc_ax_qt_test.$ac_ext >&5 else - ax_try_3="$CXX $QT_CXXFLAGS -c $CXXFLAGS -o ax_qt_main.o ax_qt_main.$ac_ext >/dev/null 2>/dev/null" + ax_try_3="$CXX $QT_CXXFLAGS -c $CXXFLAGS -o ax_qt_main.o ax_qt_main.$ac_ext" { (eval echo "$as_me:$LINENO: \"$ax_try_3\"") >&5 (eval $ax_try_3) 2>&5 ac_status=$? @@ -28060,7 +28098,7 @@ echo "configure: could not compile:" >&5 cat ax_qt_main.$ac_ext >&5 else - ax_try_4="$CXX -o ax_qt_main ax_qt_main.o moc_ax_qt_test.o $QT_LIBS $LIBS >/dev/null 2>/dev/null" + ax_try_4="$CXX -o ax_qt_main ax_qt_main.o moc_ax_qt_test.o $QT_LIBS $LIBS" { (eval echo "$as_me:$LINENO: \"$ax_try_4\"") >&5 (eval $ax_try_4) 2>&5 ac_status=$? @@ -28789,7 +28827,7 @@ $as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} ( cat <<\_ASBOX ## ----------------------------------------- ## -## Report this to visit-users@email.ornl.gov ## +## Report this to visit-users@elist.ornl.gov ## ## ----------------------------------------- ## _ASBOX ) | sed "s/^/$as_me: WARNING: /" >&2 @@ -29099,7 +29137,7 @@ $as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} ( cat <<\_ASBOX ## ----------------------------------------- ## -## Report this to visit-users@email.ornl.gov ## +## Report this to visit-users@elist.ornl.gov ## ## ----------------------------------------- ## _ASBOX ) | sed "s/^/$as_me: WARNING: /" >&2 @@ -29378,7 +29416,7 @@ $as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} ( cat <<\_ASBOX ## ----------------------------------------- ## -## Report this to visit-users@email.ornl.gov ## +## Report this to visit-users@elist.ornl.gov ## ## ----------------------------------------- ## _ASBOX ) | sed "s/^/$as_me: WARNING: /" >&2 @@ -29795,7 +29833,7 @@ $as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} ( cat <<\_ASBOX ## ----------------------------------------- ## -## Report this to visit-users@email.ornl.gov ## +## Report this to visit-users@elist.ornl.gov ## ## ----------------------------------------- ## _ASBOX ) | sed "s/^/$as_me: WARNING: /" >&2 @@ -30026,7 +30064,7 @@ $as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} ( cat <<\_ASBOX ## ----------------------------------------- ## -## Report this to visit-users@email.ornl.gov ## +## Report this to visit-users@elist.ornl.gov ## ## ----------------------------------------- ## _ASBOX ) | sed "s/^/$as_me: WARNING: /" >&2 @@ -30502,6 +30540,14 @@ FPZIP_NEEDED_FALSE= fi + if test -n "$JSON"; then + JSON_NEEDED_TRUE= + JSON_NEEDED_FALSE='#' +else + JSON_NEEDED_TRUE='#' + JSON_NEEDED_FALSE= +fi + if test -n "$ZLIB"; then ZLIB_AVAILABLE_TRUE= ZLIB_AVAILABLE_FALSE='#' @@ -30518,7 +30564,7 @@ CXX_LINK_NEEDED_FALSE= fi -ac_config_files="$ac_config_files Makefile SiloWindows/Makefile svn_bin/Makefile config/Makefile config-site/Makefile docs/Makefile src/Makefile src/score/Makefile src/pdb/Makefile src/silo/Makefile src/silo/silo.h src/debug/Makefile src/netcdf/Makefile src/pdb_drv/Makefile src/pdbp_drv/Makefile src/hdf5_drv/Makefile src/taurus/Makefile src/unknown/Makefile src/filters/Makefile tests/Makefile tools/Makefile tools/browser/Makefile tools/python/Makefile tools/silex/Makefile tools/silock/Makefile" +ac_config_files="$ac_config_files Makefile SiloWindows/Makefile svn_bin/Makefile config/Makefile config-site/Makefile docs/Makefile src/Makefile src/score/Makefile src/pdb/Makefile src/silo/Makefile src/silo/silo.h src/debug/Makefile src/netcdf/Makefile src/pdb_drv/Makefile src/pdbp_drv/Makefile src/hdf5_drv/Makefile src/taurus/Makefile src/unknown/Makefile src/filters/Makefile tests/Makefile tools/Makefile tools/browser/Makefile tools/python/Makefile tools/silex/Makefile tools/silock/Makefile tools/json/Makefile tools/mapred/Makefile" if test -n "$HZIP"; then ac_config_files="$ac_config_files src/hzip/Makefile" @@ -30535,18 +30581,9 @@ ac_config_files="$ac_config_files src/libsilo.settings" fi -CC_FULLPATH="" -if test -n "$CC"; then - CC_FULLPATH=`which $CC` -fi -CXX_FULLPATH="" -if test -n "$CXX"; then - CXX_FULLPATH=`which $CXX` -fi -FC_FULLPATH="" -if test -n "$FC"; then - FC_FULLPATH=`which $FC` -fi +CC_FULLPATH=$(which $(echo ${CC:-"nocc"} | cut -d' ' -f1)) +CXX_FULLPATH=$(which $(echo ${CXX:-"nocxx"} | cut -d' ' -f1)) +FC_FULLPATH=$(which $(echo ${FC:-"nofc"} | cut -d' ' -f1)) @@ -30774,6 +30811,13 @@ Usually this means the macro was only invoked conditionally." >&2;} { (exit 1); exit 1; }; } fi +if test -z "${JSON_NEEDED_TRUE}" && test -z "${JSON_NEEDED_FALSE}"; then + { { $as_echo "$as_me:$LINENO: error: conditional \"JSON_NEEDED\" was never defined. +Usually this means the macro was only invoked conditionally." >&5 +$as_echo "$as_me: error: conditional \"JSON_NEEDED\" was never defined. +Usually this means the macro was only invoked conditionally." >&2;} + { (exit 1); exit 1; }; } +fi if test -z "${ZLIB_AVAILABLE_TRUE}" && test -z "${ZLIB_AVAILABLE_FALSE}"; then { { $as_echo "$as_me:$LINENO: error: conditional \"ZLIB_AVAILABLE\" was never defined. Usually this means the macro was only invoked conditionally." >&5 @@ -31110,7 +31154,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by silo $as_me 4.9.1, which was +This file was extended by silo $as_me 4.10.2, which was generated by GNU Autoconf 2.63. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -31173,7 +31217,7 @@ _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_version="\\ -silo config.status 4.9.1 +silo config.status 4.10.2 configured by $0, generated by GNU Autoconf 2.63, with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" @@ -31844,6 +31888,8 @@ "tools/python/Makefile") CONFIG_FILES="$CONFIG_FILES tools/python/Makefile" ;; "tools/silex/Makefile") CONFIG_FILES="$CONFIG_FILES tools/silex/Makefile" ;; "tools/silock/Makefile") CONFIG_FILES="$CONFIG_FILES tools/silock/Makefile" ;; + "tools/json/Makefile") CONFIG_FILES="$CONFIG_FILES tools/json/Makefile" ;; + "tools/mapred/Makefile") CONFIG_FILES="$CONFIG_FILES tools/mapred/Makefile" ;; "src/hzip/Makefile") CONFIG_FILES="$CONFIG_FILES src/hzip/Makefile" ;; "src/fpzip/Makefile") CONFIG_FILES="$CONFIG_FILES src/fpzip/Makefile" ;; "src/libsiloh5.settings") CONFIG_FILES="$CONFIG_FILES src/libsiloh5.settings" ;; diff -Nru silo-llnl-4.10.2/configure.ac silo-llnl-4.10.2.real/configure.ac --- silo-llnl-4.10.2/configure.ac 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/configure.ac 2018-02-15 17:25:43.000000000 +0000 @@ -55,217 +55,6 @@ dnl dnl Modifications: dnl -dnl Robb Matzke, 5 Mar 1997 -dnl Replaced `touch X' with `echo something > X' because touch doesn't -dnl update the mtime when touching an empty file on some old BSD systems -dnl (and neither do other commands that open an empty file for read/write -dnl access). -dnl -dnl Robb Matzke, 6 Mar 1997 -dnl Added checks for `-lXpm' and `-lXext' needed by meshtv and meshtvx. -dnl -dnl Robb Matzke, 19 Mar 1997 -dnl Added a check for a site configuration file based on the host -dnl name. If `hostname` returns X, then the configuration file -dnl ./cofig-site/X.conf is sourced. The file contains envronment -dnl variable settings which would have normally appeared on the -dnl command line so that when make reruns configure the appropriate -dnl variables are set. For instance, when I work on maya.nuance.mdn.com -dnl I use the GNU gcc compiler and I want to turn on warnings and generate -dnl debug tables. This is done by adding the line -dnl -dnl export CFLAGS="-Wall -g" -dnl -dnl to the ./config-site/maya.nuance.mdn.com.conf file. These personal -dnl site configuration files should not be part of a distribution. -dnl -dnl Robb Matzke, 20 Mar 1997 -dnl The builtin `pwd' command fails on some systems, so we use -dnl `/bin/pwd' instead if available. -dnl -dnl Robb Matzke, 20 Mar 1997 -dnl Added the `-f /dev/null' option to the GNU make test in case -dnl a valid makefile accidently exists. -dnl -dnl Robb Matzke, 2 Apr 1997 -dnl Removed the AC_FUNC_MMAP check since nothing uses it. -dnl -dnl Robb Matzke, 15 May 1997 -dnl Removed OS_TYPE as a config.h constant since it was never added to -dnl acconfig.h anyway. -dnl -dnl Quincey Koziol, 15 May 1997 -dnl Added link checking for FreeBSD. -dnl -dnl Sean Ahern, 18 June 1997 -dnl Added the ability to have a config-site configuration file that is -dnl named the same as the operating system. Configure now checks -dnl automatically for this (using uname(1)). For example, I added -dnl config-site/OSF1.conf for DEC machines. Any configuration needed for -dnl that operating system should go in that file. -dnl -dnl Robb Matzke, 19 Jun 1997 -dnl Changed the default from `test -L' to `test -h'. -dnl -dnl Robb Matzke, 27 Aug 1997 -dnl Added -I/usr/local/include and -L/usr/local/lib to the compile -dnl command so we have a better chance of finding the readline -dnl library. -dnl -dnl Robb Matzke, 23 Dec 1997 -dnl Added ability to turn off checking for the GNU readline since lots -dnl of systems have the software but it's misconfigured, causing -dnl configure to detect it's presence and causing make to fail. Say -dnl `--without-readline' to turn detection off. -dnl -dnl Robb Matzke, 4 Feb 1998 -dnl Combined GNU target file with non-GNU target file and put the results -dnl in include/make-targets.in with the other targets. -dnl -dnl Eric Brugger, Wed Aug 12 15:50:27 PDT 1998 -dnl I made the libraries load static on Linux since most people do not -dnl have Motif. Added a check for the Motif includes and libraries -dnl being found without an explicit include or lib path and added one -dnl one if it didn't work. I changed the CPPFLAGS and LDFLAGS to -dnl append /usr/local/include and /usr/local/lib instead of setting it -dnl if they weren't already set. I modified LDFLAGS to contain $tmplib -dnl at the beginning so that libraries will be found in the local lib -dnl directory before the public lib directories. -dnl -dnl Eric Brugger, Thu Aug 13 13:18:43 PDT 1998 -dnl I corrected a bug with the checking of the knowledge of the Motif -dnl libraries where the test always returned false. -dnl -dnl Eric Brugger, Fri Aug 28 16:43:46 PDT 1998 -dnl I added support for parallel meshtv. -dnl -dnl Sean Ahern, Wed Dec 2 11:29:54 PST 1998 -dnl Added a check for "clearmake". If we're running clearmake, -dnl set the verbosity to 0. Also, create a line for the -dnl compile target in the Makefiles so that clearmake only -dnl winks in object files that have been created on the same OS -dnl type. -dnl -dnl Eric Brugger, Mon Dec 28 09:51:18 PST 1998 -dnl I removed checks for basename and dirname. The behavior of both -dnl is poorly defined and varies between OSes. We could check for a -dnl specific behavior and then use the system one in that case that -dnl is a lot of work when using our own is much simpler. -dnl -dnl Robb Matzke, Tue Feb 9 10:38:54 EST 1999 -dnl Check for location of hdf5 headers and libraries. -dnl -dnl Robb Matzke, Tue Mar 2 16:35:48 EST 1999 -dnl Check for location of vbt, dsl, and dmf headers and libraries. -dnl -dnl Eric Brugger, Mon Mar 15 11:39:40 PST 1999 -dnl Made the silo netcdf, pdb and taurus drivers optional. -dnl -dnl Mark Miller, Thu Mar 25 17:11:34 PST 1999 -dnl Made dmf and hdf5 drivers optional as Eric did above -dnl -dnl Jeremy Meredith, Thu May 20 15:56:45 PDT 1999 -dnl Added a check for a site config with the first field of hostname -dnl removed. This allows a single site config for node-addressable -dnl machines such as the IBM SP2. Also reordered the hostname and -dnl OSname config checks so that a single machine can override the -dnl OS-based default configuration. -dnl -dnl Brad Whitlock, Wed Jun 23 15:30:34 PST 1999 -dnl Added a check for the VDL libraries. If the environment variable -dnl "VDL" is set, then the CFLAGS of meshtvx and Spi are modified -dnl to include -DVDL and -I$(VDL)/include and -L$(VDL)/lib. -dnl -dnl Jeremy Meredith, Tue Jul 27 18:27:37 PDT 1999 -dnl Added code to clear MPI_LIBS if we did not --enable-parallel. -dnl -dnl Eric Brugger, Wed Aug 11 13:11:45 PDT 1999 -dnl I removed the check for -lXpm. I modified the script to only -dnl check for -lXext on Linux. I modified the script to only check -dnl for -lnsl and -lsocket on Solaris. -dnl -dnl Brad Whitlock, Wed Jul 7 15:29:45 PST 1999 -dnl Added a check for parallel when the VDL libraries are being -dnl checked. If parallel is enabled at that time, then the VDLP -dnl driver will be compiled. -dnl -dnl Eric Brugger, Fri Oct 8 14:12:27 PDT 1999 -dnl I added a check for -lXp on Linux. -dnl -dnl Brad Whitlock, Fri Nov 5 14:53:17 PST 1999 -dnl Removed the GL driver from SpiLib. -dnl -dnl Jeremy Meredith, Thu Nov 11 13:35:02 PST 1999 -dnl Added ability to have dynamic libraries on Linux systems. -dnl -dnl Brad Whitlock, Thu Oct 14 10:23:34 PDT 1999 -dnl Added build target for the spectrum widget. -dnl -dnl Jeremy Meredith and Sean Ahern, Mon Dec 13 14:24:28 PST 1999 -dnl Allow override of MPI_LIBS by external configuration. -dnl -dnl Jeremy Meredith, Fri Jan 7 10:19:39 PST 2000 -dnl Check for existence of Mesa. If it's not there: error if we need it, -dnl don't try to build it if we don't need it. -dnl -dnl Brad Whitlock, Thu Feb 17 15:17:41 PST 2000 -dnl I added -lpt to the meshtvx link line when using VDL. This makes -dnl meshtv work with the new VDL library. -dnl -dnl Sean Ahern, Mon Jan 10 16:26:31 PST 2000 -dnl I put in logic to read the version number in from a file. -dnl -dnl Brad Whitlock, Thu Feb 10 16:47:50 PST 2000 -dnl Added --disable-sdx flag. Also added a variable called -dnl tflops_override which will be set to yes on TFLOPS systems. -dnl (ASCI Red) This bypasses some function tests. Added --disable_gui -dnl flag. This disables all X and motif stuff from meshtvx and Spi. -dnl Added --disable-browser so it does not have to be compiled. -dnl -dnl Brad Whitlock, Fri Mar 31 16:41:33 PST 2000 -dnl Fixed a bug that caused a parallel compiler to be used all the time -dnl on some platforms. -dnl -dnl Eric Brugger, Mon May 15 12:02:59 PDT 2000 -dnl I changed references of -lpt to -lptutil to account for the name -dnl change of the library. -dnl -dnl Mark Miller, Wed Aug 23 15:38:27 PDT 2000 -dnl I changed the logic for lib hdf5 to deal correctly with presence or -dnl absence of zlib. -dnl -dnl Eric Brugger, Fri Apr 6 17:52:30 PDT 2001 -dnl I added -lXext to the meshtvx link line when using VDL. This makes -dnl meshtv work with the new VDL library. -dnl -dnl Brad Whitlock, Tue Jan 22 16:42:30 PST 2002 -dnl I added options for building JPEG support. -dnl -dnl Eric Brugger, Tue Mar 12 10:44:02 PST 2002 -dnl I made the tests for jpeg and glr support more robust. I also added -dnl a check which adds the dynamic link library (-ldl) on Linux. -dnl -dnl Jeremy Meredith, Wed Apr 24 11:17:24 PDT 2002 -dnl I changed the SunOS linker flags for the jpeg library. -dnl -dnl Mark Miller, Tue Oct 1 12:27:07 PDT 2002 -dnl I removed the old dmf-driver checks -dnl I fixed the check for hdf5 libs to only change $LIB if HDF5 was -dnl requested AND found. -dnl I removed the checks for GLR -dnl -dnl Eric Brugger, Fri Nov 8 15:15:26 PST 2002 -dnl I removed the logic that statically loaded the libraries on Linux -dnl systems. -dnl -dnl Eric Brugger, Thu Dec 5 13:27:13 PST 2002 -dnl I reordered some of the tests to avoid a problem with hdf5 and the -dnl size tests. -dnl -dnl Eric Brugger, Thu Sep 4 13:05:39 PDT 2003 -dnl I corrected a bug with --without-exodus not disabling the exodus -dnl driver. -dnl dnl Eric Brugger, Tue Mar 2 12:41:32 PST 2004 dnl I modified the hdf5 library logic to statically link the hdf5 dnl library to avoid LD_LIBRARY_PATH problems and having to distribute @@ -368,7 +157,7 @@ dnl m4_define(SILO_VERSION, m4_esyscmd([cat VERSION | tr -d '\n'])) m4_define(SILO_NAME, silo) -m4_define(SILO_BUGS,visit-users@email.ornl.gov) +m4_define(SILO_BUGS,visit-users@elist.ornl.gov) m4_define(SILO_TOP_SRC_DIR, `pwd`) AC_PREREQ(2.60) @@ -457,10 +246,11 @@ dnl DEFAULT_PYTHONMODULE="" DEFAULT_BROWSER="browser" -DEFAULT_SILEX="silex" +DEFAULT_SILEX="" DEFAULT_HZIP="hzip" DEFAULT_FPZIP="fpzip" DEFAULT_FORTRAN="fortran" +DEFAULT_JSON="" default_detect_readline="yes" dnl Source any special site-specific file @@ -599,22 +389,6 @@ esac], [USING_DEBUG="yes"]) -dnl Conform to legacy API where datatype'd pointers are used -SILO_DTYPPTR="void" -SILO_DTYPPTR1="void*" -SILO_DTYPPTR2="void*" -AC_ARG_ENABLE(legacy-datatyped-pointers, - AC_HELP_STRING([--enable-legacy-datatyped-pointers], - [compile using legacy (float) pointers for datatype'd pointers @<:@default=no@:>@]), - if test $enableval = yes; then - SILO_DTYPPTR="float" - SILO_DTYPPTR1="float*" - SILO_DTYPPTR2="float**" - fi) -AC_SUBST(SILO_DTYPPTR) -AC_SUBST(SILO_DTYPPTR1) -AC_SUBST(SILO_DTYPPTR2) - dnl Switch to disable score lite memory header optimizations AC_ARG_ENABLE(normal-sclite-mem-headers, AC_HELP_STRING([--enable-normal-sclite-mem-headers], @@ -677,8 +451,8 @@ AC_ARG_ENABLE(silex, AC_HELP_STRING([--enable-silex], [build the silex browser @<:@default=no@:>@]), - if test "$enable_silex" = "no"; then - SILEX="" + if test "$enable_silex" = "yes"; then + SILEX="silex" fi) AC_SUBST(SILEX) @@ -760,6 +534,51 @@ AC_DEFINE(HAVE_FPZIP,1,[Support for Lindstrom float array compression]) fi +dnl enable experimental JSON support +AC_ARG_ENABLE(json, + AC_HELP_STRING([--enable-json], + [enable experimental JSON features@<:@default=no@:>@]), + if test "$enable_json" = "yes"; then + AC_MSG_CHECKING(Enabling json...) + if test -e ${ac_abs_confdir}/tools/json/json-c-0.10.tar.gz; then + if test -z "$(find tools/json/json-c-0.10 -name libjson.so -o -name libjson.a -o -name libjson.dylib)"; then + if test ! -e ./tools/json; then + mkdir tools 1>/dev/null 2>&1 + mkdir tools/json 1>/dev/null 2>&1 + fi + pushd tools/json 1>/dev/null 2>&1 + rm -rf json-c-0.10 + gunzip < ${ac_abs_confdir}/tools/json/json-c-0.10.tar.gz | tar xf - + cd json-c-0.10 + if test ! "${prefix}" = "NONE"; then + ./configure --prefix=${prefix}/json + make install + else + ./configure + make + fi + if test $? -eq 0; then + AC_MSG_RESULT(json-c compiled and installed) + JSON="json" + else + AC_MSG_RESULT(JSON support disabled due to failure to install) + JSON="" + fi + popd 1>/dev/null 2>&1 + else + AC_MSG_RESULT(json-c compiled and installed) + JSON="json" + fi + else + AC_MSG_RESULT(JSON support not available because json-c distribution is not in this tarball) + JSON="" + fi + fi) +AC_SUBST(JSON) +if test -n "$JSON"; then + AC_DEFINE(HAVE_JSON,1,[Support for experimental JSON features]) +fi + # Turn on C optimization flags AC_MSG_CHECKING(compiler optimization) if test "X$USING_DEBUG" = Xno; then @@ -1244,7 +1063,7 @@ fi AC_ARG_WITH(pdb-proper, - AC_HELP_STRING([--with-pdb-proper],[directory where PDB proper is installed @<:@default=no@:>@]), + AC_HELP_STRING([--with-pdb-proper],[Turns on PDB proper driver by specifying directory where PDB proper is installed @<:@default=no@:>@]), if test $withval != yes; then PDBP_DRV="pdbp_drv" AC_DEFINE(HAVE_PDBP_DRIVER,1,[Support for PDB Proper]) @@ -1325,6 +1144,7 @@ AM_CONDITIONAL(SILEX_NEEDED, test -n "$SILEX") AM_CONDITIONAL(HZIP_NEEDED, test -n "$HZIP") AM_CONDITIONAL(FPZIP_NEEDED, test -n "$FPZIP") +AM_CONDITIONAL(JSON_NEEDED, test -n "$JSON") AM_CONDITIONAL(ZLIB_AVAILABLE, test -n "$ZLIB") AM_CONDITIONAL(CXX_LINK_NEEDED, test "$enable_shared" = "no" -a \( -n "$FPZIP" -o -n "$HZIP" \)) AC_CONFIG_FILES([ @@ -1352,7 +1172,9 @@ tools/browser/Makefile tools/python/Makefile tools/silex/Makefile - tools/silock/Makefile]) + tools/silock/Makefile + tools/json/Makefile + tools/mapred/Makefile]) if test -n "$HZIP"; then AC_CONFIG_FILES([src/hzip/Makefile]) fi @@ -1364,18 +1186,9 @@ else AC_CONFIG_FILES([src/libsilo.settings]) fi -CC_FULLPATH="" -if test -n "$CC"; then - CC_FULLPATH=`which $CC` -fi -CXX_FULLPATH="" -if test -n "$CXX"; then - CXX_FULLPATH=`which $CXX` -fi -FC_FULLPATH="" -if test -n "$FC"; then - FC_FULLPATH=`which $FC` -fi +CC_FULLPATH=$(which $(echo ${CC:-"nocc"} | cut -d' ' -f1)) +CXX_FULLPATH=$(which $(echo ${CXX:-"nocxx"} | cut -d' ' -f1)) +FC_FULLPATH=$(which $(echo ${FC:-"nofc"} | cut -d' ' -f1)) AC_SUBST(CC_FULLPATH) AC_SUBST(CXX_FULLPATH) AC_SUBST(FC_FULLPATH) diff -Nru silo-llnl-4.10.2/debian/changelog silo-llnl-4.10.2.real/debian/changelog --- silo-llnl-4.10.2/debian/changelog 2017-10-21 18:28:42.000000000 +0000 +++ silo-llnl-4.10.2.real/debian/changelog 2018-02-15 11:24:50.000000000 +0000 @@ -1,3 +1,27 @@ +silo-llnl (4.10.2.real-1) unstable; urgency=medium + + * Rebuild out of correct upstream release, and bump epoch; + (previous 4.10.2 was incorrectly merged). Closes: #890496 + * Delete merged /obsolete patches: + - compile-fixes.patch + - dist-undo.patch + - sh4-build.patch + - testsuite-skip-szip.patch + - version-number.patch + * Standards-Version: 4.1.3 + * Move VCS to salsa.debian.org/ + * Drop obsolete autoreconf from rules + + -- Alastair McKinstry Thu, 15 Feb 2018 11:24:50 +0000 + +silo-llnl (4.10.2-8) unstable; urgency=medium + + * B-D on libhdf5-mpi-dev, not -openmpi-dev. + * Standards- Version: 4.1.2; no changes required + * Build on serial HDF5 + + -- Alastair McKinstry Tue, 19 Dec 2017 14:05:48 +0000 + silo-llnl (4.10.2-7) unstable; urgency=medium * Use debhelper 10. diff -Nru silo-llnl-4.10.2/debian/control silo-llnl-4.10.2.real/debian/control --- silo-llnl-4.10.2/debian/control 2017-10-21 18:28:42.000000000 +0000 +++ silo-llnl-4.10.2.real/debian/control 2018-02-15 11:24:50.000000000 +0000 @@ -2,19 +2,25 @@ Section: science Priority: optional Maintainer: Alastair McKinstry -Build-Depends: debhelper (>= 10), libreadline-dev, libhdf5-openmpi-dev | libhdf5-dev, +Build-Depends: debhelper (>= 10), + libreadline-dev, + libhdf5-mpi-dev | libhdf5-dev, zlib1g-dev, libaec-dev, - python-all-dev, python3-all-dev, - gfortran, chrpath, mpi-default-dev, + python-all-dev, + python3-all-dev, + gfortran, + chrpath, + mpi-default-dev, autoconf-archive, qtbase5-dev, qtchooser Build-Conflicts: qt3-dev-tools, qt4-dev-tools X-Python-Version: >= 2.6 X-Python3-Version: >= 3.2 -Standards-Version: 4.1.1 +Standards-Version: 4.1.3 Homepage: https://wci.llnl.gov/simulation/computer-codes/silo/ -Vcs-Git: git://anonscm.debian.org/debian-science/packages/silo-llnl.git +Vcs-Browser: https://salsa.debian.org:/science-team/silo-llnl.git +Vcs-Git: https://salsa.debian.org:/science-team/silo-llnl.git Package: libsilo-dev Section: libdevel diff -Nru silo-llnl-4.10.2/debian/patches/add-lib-version.patch silo-llnl-4.10.2.real/debian/patches/add-lib-version.patch --- silo-llnl-4.10.2/debian/patches/add-lib-version.patch 2017-10-21 18:28:42.000000000 +0000 +++ silo-llnl-4.10.2.real/debian/patches/add-lib-version.patch 2018-02-15 11:24:50.000000000 +0000 @@ -3,11 +3,11 @@ Last-Updated: 2011-10-03 Forwarded: no -Index: silo-llnl-4.8/src/Makefile.am +Index: silo-llnl-4.10.2/src/Makefile.am =================================================================== ---- silo-llnl-4.8.orig/src/Makefile.am 2010-10-16 14:44:11.000000000 +0100 -+++ silo-llnl-4.8/src/Makefile.am 2010-10-16 14:44:21.000000000 +0100 -@@ -101,7 +101,7 @@ +--- silo-llnl-4.10.2.orig/src/Makefile.am ++++ silo-llnl-4.10.2/src/Makefile.am +@@ -107,7 +107,7 @@ if HDF5_DRV_NEEDED $(DRIVER_LIBS) \ unknown/libsilo_unknown.la \ filters/libsilo_filters.la @@ -16,7 +16,7 @@ else SETTINGSFILE=libsilo.settings lib_LTLIBRARIES = libsilo.la -@@ -114,7 +114,7 @@ +@@ -120,7 +120,7 @@ else $(DRIVER_LIBS) \ unknown/libsilo_unknown.la \ filters/libsilo_filters.la diff -Nru silo-llnl-4.10.2/debian/patches/autoreconf.patch silo-llnl-4.10.2.real/debian/patches/autoreconf.patch --- silo-llnl-4.10.2/debian/patches/autoreconf.patch 2017-10-21 18:28:42.000000000 +0000 +++ silo-llnl-4.10.2.real/debian/patches/autoreconf.patch 2018-02-15 11:24:50.000000000 +0000 @@ -6,21 +6,11 @@ Last-Updated: 2011-09-05 Forwarded: no -Index: silo-llnl-4.9.1/configure.ac +Index: silo-llnl-4.10.2/configure.ac =================================================================== ---- silo-llnl-4.9.1.orig/configure.ac 2014-03-04 14:26:01.972692716 +0000 -+++ silo-llnl-4.9.1/configure.ac 2014-03-04 14:26:01.964692514 +0000 -@@ -362,6 +362,9 @@ - dnl - dnl Alastair McKinstry, Fri Aug 25 17:24:00 BST 2011 - dnl Add version script support. -+dnl -+dnl Alastair McKinstry Mon Sep 5 09:55:00 IST 2011 -+dnl Add AC_PROG_F77 needed for autoreconf to work. - dnl -------------------------------------------------------------------------- - - dnl -@@ -409,6 +412,8 @@ +--- silo-llnl-4.10.2.orig/configure.ac ++++ silo-llnl-4.10.2/configure.ac +@@ -195,6 +195,8 @@ dnl Set prefix default (install director dnl This allows multiple src-dir builds within one host. AC_PREFIX_DEFAULT("SILO_TOP_SRC_DIR") @@ -29,7 +19,7 @@ dnl dnl Handle the python module right away to determine if we need shared libs. dnl Ordinarily, we default to static libs -@@ -788,10 +793,10 @@ +@@ -597,10 +599,10 @@ dnl # it is an argument to the -D argument. So, I think this is # just totally bogus! # Default to large file support @@ -44,9 +34,9 @@ # # Note: regardless of what the stuff above regarding large file support -@@ -1364,12 +1369,12 @@ - tools/silex/Makefile - tools/silock/Makefile +@@ -1176,12 +1178,12 @@ AC_CONFIG_FILES([ + tools/json/Makefile + tools/mapred/Makefile silo.pc]) -if test -n "$HZIP"; then - AC_CONFIG_FILES([src/hzip/Makefile]) @@ -63,34 +53,3 @@ if test -n "$HDF5_DRV"; then AC_CONFIG_FILES([src/libsiloh5.settings]) else -Index: silo-llnl-4.9.1/src/Makefile.am -=================================================================== ---- silo-llnl-4.9.1.orig/src/Makefile.am 2014-03-04 14:26:01.972692716 +0000 -+++ silo-llnl-4.9.1/src/Makefile.am 2014-03-04 14:26:01.964692514 +0000 -@@ -75,17 +75,17 @@ - DRIVER_DIRS += taurus - DRIVER_LIBS += taurus/libsilo_taurus.la - endif --if HZIP_NEEDED --DRIVER_DIRS += hzip --DRIVER_LIBS += hzip/libsilo_hzip.la --endif --if FPZIP_NEEDED --DRIVER_DIRS += fpzip --DRIVER_LIBS += fpzip/libsilo_fpzip.la --endif -+#if HZIP_NEEDED -+#DRIVER_DIRS += hzip -+#DRIVER_LIBS += hzip/libsilo_hzip.la -+#endif -+#if FPZIP_NEEDED -+#DRIVER_DIRS += fpzip -+#DRIVER_LIBS += fpzip/libsilo_fpzip.la -+#endif - SUBDIRS = score pdb silo debug \ - $(DRIVER_DIRS) unknown filters . --DIST_SUBDIRS = . debug filters hdf5_drv hzip netcdf \ -+DIST_SUBDIRS = . debug filters hdf5_drv netcdf \ - pdb pdb_drv pdbp_drv score silo taurus unknown - MAKESETTINGS = make.settings - diff -Nru silo-llnl-4.10.2/debian/patches/compile-fixes.patch silo-llnl-4.10.2.real/debian/patches/compile-fixes.patch --- silo-llnl-4.10.2/debian/patches/compile-fixes.patch 2017-10-21 18:28:42.000000000 +0000 +++ silo-llnl-4.10.2.real/debian/patches/compile-fixes.patch 1970-01-01 00:00:00.000000000 +0000 @@ -1,47 +0,0 @@ -Index: silo-llnl-4.9.1/src/pdb/pdb.c -=================================================================== ---- silo-llnl-4.9.1.orig/src/pdb/pdb.c 2014-04-30 23:45:29.000000000 +0100 -+++ silo-llnl-4.9.1/src/pdb/pdb.c 2014-05-01 11:45:57.393325151 +0100 -@@ -1057,7 +1057,7 @@ - if (file->virtual_internal) { - SC_address ad; - -- ad.memaddr = vr; -+ ad.memaddr = (char*) vr; - ep->blocks->diskaddr = ad.diskaddr; - lite_SC_mark(vr, 1); - ep = lite_PD_copy_syment(ep); -Index: silo-llnl-4.9.1/src/pdb/pdlow.c -=================================================================== ---- silo-llnl-4.9.1.orig/src/pdb/pdlow.c 2014-04-30 23:45:29.000000000 +0100 -+++ silo-llnl-4.9.1/src/pdb/pdlow.c 2014-05-01 11:48:42.905240006 +0100 -@@ -1757,13 +1757,13 @@ - _lite_PD_eod (PDBfile *file) { - - FILE *fp; -- long old, new; -+ long old, nw; - - fp = file->stream; - old = file->chrtaddr; -- new = io_tell(fp); -+ nw = io_tell(fp); - -- file->chrtaddr = MAX(old, new); -+ file->chrtaddr = MAX(old, nw); - } - #endif /* PDB_WRITE */ - -Index: silo-llnl-4.9.1/src/pdb/pdrdwr.c -=================================================================== ---- silo-llnl-4.9.1.orig/src/pdb/pdrdwr.c 2014-04-30 23:45:29.000000000 +0100 -+++ silo-llnl-4.9.1/src/pdb/pdrdwr.c 2014-05-01 11:49:08.681823186 +0100 -@@ -1727,7 +1727,7 @@ - PD_WRITE); - } - vbuf = buf; -- svr = vr; -+ svr = (char*) vr; - in_offs = 0L; - out_offs = 0L; - lite_PD_convert(&vbuf, &svr, intype, outtype, nitems, diff -Nru silo-llnl-4.10.2/debian/patches/dist-undo.patch silo-llnl-4.10.2.real/debian/patches/dist-undo.patch --- silo-llnl-4.10.2/debian/patches/dist-undo.patch 2017-10-21 18:28:42.000000000 +0000 +++ silo-llnl-4.10.2.real/debian/patches/dist-undo.patch 1970-01-01 00:00:00.000000000 +0000 @@ -1,19 +0,0 @@ -Author: Alastair McKinstry -Description: remove directories that will fail due to missing - sources (non-free licensed). -Last-Updated: 2010-12-01 -Forwarded: no - -Index: silo-4.8-bsd/src/Makefile.am -=================================================================== ---- silo-4.8-bsd.orig/src/Makefile.am 2010-10-11 13:12:06.000000000 +0100 -+++ silo-4.8-bsd/src/Makefile.am 2010-10-11 13:12:15.000000000 +0100 -@@ -85,7 +85,7 @@ - endif - SUBDIRS = score pdb silo debug \ - $(DRIVER_DIRS) unknown filters . --DIST_SUBDIRS = . debug filters hdf5_drv hzip fpzip netcdf \ -+DIST_SUBDIRS = . debug filters hdf5_drv hzip netcdf \ - pdb pdb_drv pdbp_drv score silo taurus unknown - MAKESETTINGS = make.settings - diff -Nru silo-llnl-4.10.2/debian/patches/pkgconfig.patch silo-llnl-4.10.2.real/debian/patches/pkgconfig.patch --- silo-llnl-4.10.2/debian/patches/pkgconfig.patch 2017-10-21 18:28:42.000000000 +0000 +++ silo-llnl-4.10.2.real/debian/patches/pkgconfig.patch 2018-02-15 11:24:50.000000000 +0000 @@ -3,10 +3,10 @@ Last-Updated: 2011-08-25 Forwarded: no -Index: silo-llnl-4.9.1/silo.pc.in +Index: silo-llnl-4.10.2/silo.pc.in =================================================================== ---- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ silo-llnl-4.9.1/silo.pc.in 2014-03-04 14:25:57.820590792 +0000 +--- /dev/null ++++ silo-llnl-4.10.2/silo.pc.in @@ -0,0 +1,12 @@ +prefix=@prefix@ +exec_prefix=${prefix} @@ -20,16 +20,16 @@ +Libs: -L${libdir} -lsiloh5 +Libs.private: @LIBS@ +Cflags: -I${includedir} -Index: silo-llnl-4.9.1/configure.ac +Index: silo-llnl-4.10.2/configure.ac =================================================================== ---- silo-llnl-4.9.1.orig/configure.ac 2014-03-04 14:25:57.828590334 +0000 -+++ silo-llnl-4.9.1/configure.ac 2014-03-04 14:25:57.820590792 +0000 -@@ -1352,7 +1352,8 @@ - tools/browser/Makefile - tools/python/Makefile +--- silo-llnl-4.10.2.orig/configure.ac ++++ silo-llnl-4.10.2/configure.ac +@@ -1174,7 +1174,8 @@ AC_CONFIG_FILES([ tools/silex/Makefile -- tools/silock/Makefile]) -+ tools/silock/Makefile + tools/silock/Makefile + tools/json/Makefile +- tools/mapred/Makefile]) ++ tools/mapred/Makefile + silo.pc]) if test -n "$HZIP"; then AC_CONFIG_FILES([src/hzip/Makefile]) diff -Nru silo-llnl-4.10.2/debian/patches/python3.patch silo-llnl-4.10.2.real/debian/patches/python3.patch --- silo-llnl-4.10.2/debian/patches/python3.patch 2017-10-21 18:28:42.000000000 +0000 +++ silo-llnl-4.10.2.real/debian/patches/python3.patch 2018-02-15 11:24:50.000000000 +0000 @@ -162,24 +162,6 @@ import Silo db = Silo.Create("foo.silo", "test file") -@@ -70,11 +71,11 @@ db.Write("t11", "x5") - db.Close() - - db2=Silo.Open("foo.silo") --print "toc=%s"%db2.GetToc() --print "t2='%s'"%db2.GetVar("t2") --print "#t6= (1.2, 10.199999999999999)" --print "a/t8='%s'"%db2.GetVar("a/t8") -+print ("toc=%s"%db2.GetToc()) -+print ("t2='%s'"%db2.GetVar("t2")) -+print ("#t6= (1.2, 10.199999999999999)") -+print ("a/t8='%s'"%db2.GetVar("a/t8")_) - db2.SetDir("a") --print "t9=%s"%db2.GetVar("t9") --print "#/t5= (1.2, 10.0)" -+print ("t9=%s"%db2.GetVar("t9")) -+print ("#/t5= (1.2, 10.0)") - db2.Close() Index: silo-llnl-4.10.2/tools/python/pydbtoc.cpp =================================================================== --- silo-llnl-4.10.2.orig/tools/python/pydbtoc.cpp @@ -195,7 +177,7 @@ #include "pydbtoc.h" // **************************************************************************** -@@ -199,7 +203,7 @@ static int DBtoc_print(PyObject *self, F +@@ -200,7 +204,7 @@ static int DBtoc_print(PyObject *self, F static PyObject *DBtoc_GetN ## nm(PyObject *self, PyObject *args) \ { \ DBtoc *toc = ((DBtocObject*)self)->toc; \ @@ -204,7 +186,7 @@ return retval; \ } \ static PyObject *DBtoc_Get ## nm ## names(PyObject *self, PyObject *args) \ -@@ -337,46 +341,60 @@ PyTypeObject DBtocType = +@@ -341,46 +345,60 @@ PyTypeObject DBtocType = // Type header // PyObject_HEAD_INIT(&PyType_Type) @@ -401,7 +383,7 @@ } char *objname; -@@ -594,7 +607,7 @@ static PyObject *DBfile_DBMkDir(PyObject +@@ -591,7 +604,7 @@ static PyObject *DBfile_DBMkDir(PyObject if (!db) { @@ -410,7 +392,7 @@ return NULL; } -@@ -604,7 +617,7 @@ static PyObject *DBfile_DBMkDir(PyObject +@@ -601,7 +614,7 @@ static PyObject *DBfile_DBMkDir(PyObject if (DBMkDir(db, str)) { @@ -419,7 +401,7 @@ return NULL; } else -@@ -633,7 +646,7 @@ static PyObject *DBfile_DBSetDir(PyObjec +@@ -630,7 +643,7 @@ static PyObject *DBfile_DBSetDir(PyObjec if (!db) { @@ -428,7 +410,7 @@ return NULL; } -@@ -643,7 +656,7 @@ static PyObject *DBfile_DBSetDir(PyObjec +@@ -640,7 +653,7 @@ static PyObject *DBfile_DBSetDir(PyObjec if (DBSetDir(db, str)) { @@ -437,7 +419,7 @@ return NULL; } else -@@ -672,7 +685,7 @@ static PyObject *DBfile_DBClose(PyObject +@@ -669,7 +682,7 @@ static PyObject *DBfile_DBClose(PyObject if (!db) { @@ -446,7 +428,7 @@ return NULL; } -@@ -681,7 +694,7 @@ static PyObject *DBfile_DBClose(PyObject +@@ -678,7 +691,7 @@ static PyObject *DBfile_DBClose(PyObject if (DBClose(db)) { @@ -455,7 +437,7 @@ return NULL; } else -@@ -807,13 +820,15 @@ static int DBfile_print(PyObject *self, +@@ -804,13 +817,15 @@ static int DBfile_print(PyObject *self, // Creation: July 12, 2005 // // **************************************************************************** @@ -472,7 +454,7 @@ return NULL; } -@@ -831,6 +846,7 @@ static PyObject *DBfile_getattr(PyObject +@@ -828,6 +843,7 @@ static PyObject *DBfile_getattr(PyObject return Py_FindMethod(DBfile_methods, self, name); } @@ -480,7 +462,7 @@ // **************************************************************************** // Method: DBfile_compare -@@ -852,6 +868,17 @@ static int DBfile_compare(PyObject *v, P +@@ -849,6 +865,17 @@ static int DBfile_compare(PyObject *v, P return (a option and re-compile and\n" "re-install Silo. If you do not have an installation\n" @@ -15,4 +15,4 @@ + "of HDF5 already on your system, you will also need\n" "to obtain HDF5 from www.hdfgroup.org and install it.", /* 33 */ "Empty objects not permitted. See DBSetAllowEmptyObjects()." /* 34 */ - }; + "No more tiny array buffer space for custom object." /* 35 */ diff -Nru silo-llnl-4.10.2/debian/patches/test-disable-largefile.patch silo-llnl-4.10.2.real/debian/patches/test-disable-largefile.patch --- silo-llnl-4.10.2/debian/patches/test-disable-largefile.patch 2017-10-21 18:28:42.000000000 +0000 +++ silo-llnl-4.10.2.real/debian/patches/test-disable-largefile.patch 2018-02-15 11:24:50.000000000 +0000 @@ -3,11 +3,11 @@ Forwarded: yes Last-Updated: 2011-06-09 -Index: silo-llnl-4.9.1/tests/testsuite.at +Index: silo-llnl-4.10.2/tests/testsuite.at =================================================================== ---- silo-llnl-4.9.1.orig/tests/testsuite.at 2014-03-04 14:25:54.516504623 +0000 -+++ silo-llnl-4.9.1/tests/testsuite.at 2014-03-04 14:25:54.512504522 +0000 -@@ -286,10 +286,10 @@ +--- silo-llnl-4.10.2.orig/tests/testsuite.at ++++ silo-llnl-4.10.2/tests/testsuite.at +@@ -298,10 +298,10 @@ AT_CLEANUP AT_SETUP(xversion) AT_CHECK(test -z "$BROWSER" -o "$STARGS" != DB_HDF5 && exit 77 || $VALGRIND testxvers `pwd`,,ignore,ignore) AT_CLEANUP diff -Nru silo-llnl-4.10.2/debian/patches/testsuite-fix.patch silo-llnl-4.10.2.real/debian/patches/testsuite-fix.patch --- silo-llnl-4.10.2/debian/patches/testsuite-fix.patch 2017-10-21 18:28:42.000000000 +0000 +++ silo-llnl-4.10.2.real/debian/patches/testsuite-fix.patch 2018-02-15 11:24:50.000000000 +0000 @@ -3,10 +3,10 @@ Last-Updated: 2011-04-11 Forwarded: no -Index: silo-llnl-4.8/tests/testdtypes +Index: silo-llnl-4.10.2/tests/testdtypes =================================================================== ---- silo-llnl-4.8.orig/tests/testdtypes 2011-04-10 23:53:36.000000000 +0100 -+++ silo-llnl-4.8/tests/testdtypes 2011-04-10 23:53:40.000000000 +0100 +--- silo-llnl-4.10.2.orig/tests/testdtypes ++++ silo-llnl-4.10.2/tests/testdtypes @@ -1,4 +1,4 @@ -#!/bin/sh +#!/bin/bash diff -Nru silo-llnl-4.10.2/debian/patches/testsuite-python-write.patch silo-llnl-4.10.2.real/debian/patches/testsuite-python-write.patch --- silo-llnl-4.10.2/debian/patches/testsuite-python-write.patch 2017-10-21 18:28:42.000000000 +0000 +++ silo-llnl-4.10.2.real/debian/patches/testsuite-python-write.patch 2018-02-15 11:24:50.000000000 +0000 @@ -3,11 +3,11 @@ Last-Updated: 2011-06-09 Forwarded: yes -Index: silo-llnl-4.9.1/tests/test_write.py +Index: silo-llnl-4.10.2/tests/test_write.py =================================================================== ---- silo-llnl-4.9.1.orig/tests/test_write.py 2014-03-04 14:25:47.520328123 +0000 -+++ silo-llnl-4.9.1/tests/test_write.py 2014-03-04 14:25:47.512328024 +0000 -@@ -52,11 +52,13 @@ +--- silo-llnl-4.10.2.orig/tests/test_write.py ++++ silo-llnl-4.10.2/tests/test_write.py +@@ -52,11 +52,13 @@ import Silo db = Silo.Create("foo.silo", "test file") db.Write("t1", 12) db.Write("t2", "hello") @@ -26,40 +26,3 @@ db.Write("t8", "a") db.MkDir("a") db.Write("a/t8", "x2") -@@ -70,9 +72,9 @@ - db2=Silo.Open("foo.silo") - print "toc=%s"%db2.GetToc() - print "t2='%s'"%db2.GetVar("t2") --print "t6=",db2.GetVar("t6") -+print "#t6= (1.2, 10.199999999999999)" - print "a/t8='%s'"%db2.GetVar("a/t8") - db2.SetDir("a") - print "t9=%s"%db2.GetVar("t9") --print "/t5=",db2.GetVar("../t5") -+print "#/t5= (1.2, 10.0)" - db2.Close() -Index: silo-llnl-4.9.1/tests/testsuite -=================================================================== ---- silo-llnl-4.9.1.orig/tests/testsuite 2014-03-04 14:25:47.520328123 +0000 -+++ silo-llnl-4.9.1/tests/testsuite 2014-03-04 14:25:47.512328024 +0000 -@@ -3649,16 +3649,16 @@ - - - cat >expout <<'_ATEOF' --toc=nvar = 12 --var_names = (_fileinfo, _silolibinfo, t1, t10, t11, t2, t3, t4, t5, t6, t7, t8) -+toc=nvar = 7 -+var_names = (_fileinfo, _silolibinfo, t1, t10, t11, t2, t8) - ndir = 1 - dir_names = (a) - - t2='hello' --t6= (1.2, 10.199999999999999) -+#t6= (1.2, 10.199999999999999) - a/t8='x2' - t9=x3 --/t5= (1.2, 10.0) -+#/t5= (1.2, 10.0) - _ATEOF - - { $at_traceoff diff -Nru silo-llnl-4.10.2/debian/patches/testsuite-skip-szip.patch silo-llnl-4.10.2.real/debian/patches/testsuite-skip-szip.patch --- silo-llnl-4.10.2/debian/patches/testsuite-skip-szip.patch 2017-10-21 18:28:42.000000000 +0000 +++ silo-llnl-4.10.2.real/debian/patches/testsuite-skip-szip.patch 1970-01-01 00:00:00.000000000 +0000 @@ -1,26 +0,0 @@ -Author: Alastair McKinstry -Description: Disable szip tests, as SZIP not available on Debian for licensing reasons. -Last-Updated: 2011-06-09 -Forwarded: no - -Index: silo-llnl-4.9.1/tests/testsuite.at -=================================================================== ---- silo-llnl-4.9.1.orig/tests/testsuite.at 2014-03-04 14:25:52.464452855 +0000 -+++ silo-llnl-4.9.1/tests/testsuite.at 2014-03-04 14:25:52.456452654 +0000 -@@ -257,11 +257,11 @@ - AT_CHECK(test "$STARGS" != DB_HDF5 && exit 77 || $VALGRIND compression gzip,,ignore,ignore) - AT_CHECK(test "$STARGS" != DB_HDF5 && exit 77 || $VALGRIND compression readonly,,ignore,ignore) - AT_CLEANUP --AT_SETUP(compression szip) --AT_KEYWORDS(compression) --AT_CHECK(test "$STARGS" != DB_HDF5 && exit 77 || $VALGRIND compression szip,,ignore,ignore) --AT_CHECK(test "$STARGS" != DB_HDF5 && exit 77 || $VALGRIND compression readonly,,ignore,ignore) --AT_CLEANUP -+#AT_SETUP(compression szip) -+#AT_KEYWORDS(compression) -+#AT_CHECK(test "$STARGS" != DB_HDF5 && exit 77 || $VALGRIND compression szip,,ignore,ignore) -+#AT_CHECK(test "$STARGS" != DB_HDF5 && exit 77 || $VALGRIND compression readonly,,ignore,ignore) -+#AT_CLEANUP - AT_SETUP(compression fpzip) - AT_KEYWORDS(compression) - AT_CHECK(test ! \( -e ../src/fpzip/read.o -o -e ../../../src/fpzip/read.o \) -o "$STARGS" != DB_HDF5 && exit 77 || $VALGRIND compression fpzip,,ignore,ignore) diff -Nru silo-llnl-4.10.2/debian/patches/version-number.patch silo-llnl-4.10.2.real/debian/patches/version-number.patch --- silo-llnl-4.10.2/debian/patches/version-number.patch 2017-10-21 18:28:42.000000000 +0000 +++ silo-llnl-4.10.2.real/debian/patches/version-number.patch 1970-01-01 00:00:00.000000000 +0000 @@ -1,12 +0,0 @@ -Author: Alastair McKinstry -Description: Fix reported version number -Last-Updated: 2015-09-08 -Forwarded: no - -Index: silo-llnl-4.10.2/VERSION -=================================================================== ---- silo-llnl-4.10.2.orig/VERSION -+++ silo-llnl-4.10.2/VERSION -@@ -1 +1 @@ --4.9.1 -+4.10.2 diff -Nru silo-llnl-4.10.2/debian/patches/version-script.patch silo-llnl-4.10.2.real/debian/patches/version-script.patch --- silo-llnl-4.10.2/debian/patches/version-script.patch 2017-10-21 18:28:42.000000000 +0000 +++ silo-llnl-4.10.2.real/debian/patches/version-script.patch 2018-02-15 11:24:50.000000000 +0000 @@ -7,7 +7,7 @@ =================================================================== --- silo-llnl-4.10.2.orig/configure.ac +++ silo-llnl-4.10.2/configure.ac -@@ -359,6 +359,9 @@ dnl +@@ -148,6 +148,9 @@ dnl dnl Mark C. Miller, Wed Jul 21 09:31:24 PDT 2010 dnl Adjusted logic to support BSD releases which will NOT include dnl hzip/fpzip compression features or source dirs. @@ -17,7 +17,7 @@ dnl -------------------------------------------------------------------------- dnl -@@ -447,6 +450,13 @@ if test -n "$ORGANIZATION"; then +@@ -238,6 +241,13 @@ if test -n "$ORGANIZATION"; then CONFIG_USER="$CONFIG_USER at $ORGANIZATION" fi @@ -35,7 +35,7 @@ =================================================================== --- silo-llnl-4.10.2.orig/src/Makefile.am +++ silo-llnl-4.10.2/src/Makefile.am -@@ -101,7 +101,7 @@ if HDF5_DRV_NEEDED +@@ -107,7 +107,7 @@ if HDF5_DRV_NEEDED $(DRIVER_LIBS) \ unknown/libsilo_unknown.la \ filters/libsilo_filters.la @@ -48,7 +48,7 @@ =================================================================== --- /dev/null +++ silo-llnl-4.10.2/silo.ver -@@ -0,0 +1,366 @@ +@@ -0,0 +1,374 @@ +SILOH5_4_8 { + global: + DBOpenReal; @@ -412,6 +412,14 @@ + lite_PD_append_as; + lite_PD_append_as_alt; + lite_PD_defent; ++} SILOH5_4_8; ++ ++SILOH5_4_10_2 { ++ global: ++ _db_safe_strdup; ++ DBIsDifferentDouble; ++ DBIsDifferentLongLong; + local: + *; -+} SILOH5_4_8; ++} SILOH5_4_9_1; ++ diff -Nru silo-llnl-4.10.2/debian/rules silo-llnl-4.10.2.real/debian/rules --- silo-llnl-4.10.2/debian/rules 2017-10-21 18:28:42.000000000 +0000 +++ silo-llnl-4.10.2.real/debian/rules 2018-02-15 11:24:50.000000000 +0000 @@ -5,7 +5,7 @@ # magic debhelper rule %: - dh $@ --with python2,python3,autoreconf + dh $@ --with python2,python3 include /usr/share/mpi-default-dev/debian_defaults MPI:=$(ARCH_DEFAULT_MPI_IMPL) @@ -41,13 +41,14 @@ HDF5_INC:=/usr/include/hdf5/$(MPI) HDF5_LIB:=$(LIBDIR)/hdf5/$(MPI) else +ifneq ($(wildcard $(LIBDIR)/hdf5/serial/libhdf5.so),) +HDF5_INC:=/usr/include/hdf5/serial +HDF5_LIB:=$(LIBDIR)/hdf5/serial +else HDF5_INC:=/usr/include HDF5_LIB:=/usr/lib endif - -override_dh_autoreconf: - libtoolize -c -f - dh_autoreconf +endif # Note: Since QT headers now include C++ features, configure must be called with g++ as the C compiler. # But use $(CC) as the C compiler later when actually building. @@ -58,6 +59,8 @@ --enable-pythonmodule \ --enable-silex \ --with-szlib \ + --disable-hzip \ + --disable-fpzip \ --with-hdf5=$(HDF5_INC),$(HDF5_DIR) \ --enable-install-lite-headers \ --with-Qt-bin-dir=$(QT_BINDIR) --with-Qt-include-dir=$(QT_INC) \ Binary files /tmp/tmpZohf8j/6IWS13CO1K/silo-llnl-4.10.2/docs/Chapter1.fm and /tmp/tmpZohf8j/Digj5fibl0/silo-llnl-4.10.2.real/docs/Chapter1.fm differ Binary files /tmp/tmpZohf8j/6IWS13CO1K/silo-llnl-4.10.2/docs/Chapter2-man_pages.fm and /tmp/tmpZohf8j/Digj5fibl0/silo-llnl-4.10.2.real/docs/Chapter2-man_pages.fm differ Binary files /tmp/tmpZohf8j/6IWS13CO1K/silo-llnl-4.10.2/docs/Chapter2-start.fm and /tmp/tmpZohf8j/Digj5fibl0/silo-llnl-4.10.2.real/docs/Chapter2-start.fm differ Binary files /tmp/tmpZohf8j/6IWS13CO1K/silo-llnl-4.10.2/docs/Cover.fm and /tmp/tmpZohf8j/Digj5fibl0/silo-llnl-4.10.2.real/docs/Cover.fm differ diff -Nru silo-llnl-4.10.2/docs/Makefile.in silo-llnl-4.10.2.real/docs/Makefile.in --- silo-llnl-4.10.2/docs/Makefile.in 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/docs/Makefile.in 2018-02-15 17:25:43.000000000 +0000 @@ -157,6 +157,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +JSON = @JSON@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBM = @LIBM@ @@ -205,9 +206,6 @@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SILEX = @SILEX@ -SILO_DTYPPTR = @SILO_DTYPPTR@ -SILO_DTYPPTR1 = @SILO_DTYPPTR1@ -SILO_DTYPPTR2 = @SILO_DTYPPTR2@ SILO_VERS_MAJ = @SILO_VERS_MAJ@ SILO_VERS_MIN = @SILO_VERS_MIN@ SILO_VERS_PAT = @SILO_VERS_PAT@ Binary files /tmp/tmpZohf8j/6IWS13CO1K/silo-llnl-4.10.2/docs/Silo.book.fm and /tmp/tmpZohf8j/Digj5fibl0/silo-llnl-4.10.2.real/docs/Silo.book.fm differ Binary files /tmp/tmpZohf8j/6IWS13CO1K/silo-llnl-4.10.2/docs/Silo.bookLOP.fm and /tmp/tmpZohf8j/Digj5fibl0/silo-llnl-4.10.2.real/docs/Silo.bookLOP.fm differ Binary files /tmp/tmpZohf8j/6IWS13CO1K/silo-llnl-4.10.2/docs/Silo.book.pdf and /tmp/tmpZohf8j/Digj5fibl0/silo-llnl-4.10.2.real/docs/Silo.book.pdf differ Binary files /tmp/tmpZohf8j/6IWS13CO1K/silo-llnl-4.10.2/docs/silo.h.fm and /tmp/tmpZohf8j/Digj5fibl0/silo-llnl-4.10.2.real/docs/silo.h.fm differ diff -Nru silo-llnl-4.10.2/Makefile.am silo-llnl-4.10.2.real/Makefile.am --- silo-llnl-4.10.2/Makefile.am 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/Makefile.am 2018-02-15 17:25:43.000000000 +0000 @@ -102,16 +102,13 @@ cp -R $(PACKAGE)-$(VERSION) $(PACKAGE)-$(VERSION)-bsd rm -rf $(PACKAGE)-$(VERSION)-bsd/src/hzip rm -rf $(PACKAGE)-$(VERSION)-bsd/src/fpzip - rm -rf $(PACKAGE)-$(VERSION)-bsd/SiloWindows/MSVC9 - rm -rf $(PACKAGE)-$(VERSION)-bsd/SiloWindows/MSVC2010 - mv $(PACKAGE)-$(VERSION)-bsd/SiloWindows/MSVC9-BSD $(PACKAGE)-$(VERSION)-bsd/SiloWindows/MSVC9 - mv $(PACKAGE)-$(VERSION)-bsd/SiloWindows/MSVC2010-BSD $(PACKAGE)-$(VERSION)-bsd/SiloWindows/MSVC2010 + rm -rf $(PACKAGE)-$(VERSION)-bsd/SiloWindows/MSVC2012 + mv $(PACKAGE)-$(VERSION)-bsd/SiloWindows/MSVC2012-BSD $(PACKAGE)-$(VERSION)-bsd/SiloWindows/MSVC2012 tar cf - $(PACKAGE)-$(VERSION)-bsd | gzip --best > $(PACKAGE)-$(VERSION)-bsd.tar.gz rm -rf $(PACKAGE)-$(VERSION)-bsd/tests/{amr3d.silo,pion0244.silo,amr2d.silo,xvers_data.tar.bz2} tar cf - $(PACKAGE)-$(VERSION)-bsd | gzip --best > $(PACKAGE)-$(VERSION)-bsd-smalltest.tar.gz rm -rf $(PACKAGE)-$(VERSION)-bsd - rm -rf $(PACKAGE)-$(VERSION)/SiloWindows/MSVC9-BSD - rm -rf $(PACKAGE)-$(VERSION)/SiloWindows/MSVC2010-BSD + rm -rf $(PACKAGE)-$(VERSION)/SiloWindows/MSVC2012-BSD tar cf - $(PACKAGE)-$(VERSION) | gzip --best > $(PACKAGE)-$(VERSION).tar.gz rm -rf $(PACKAGE)-$(VERSION) diff -Nru silo-llnl-4.10.2/Makefile.in silo-llnl-4.10.2.real/Makefile.in --- silo-llnl-4.10.2/Makefile.in 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/Makefile.in 2018-02-15 17:25:43.000000000 +0000 @@ -229,6 +229,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +JSON = @JSON@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBM = @LIBM@ @@ -277,9 +278,6 @@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SILEX = @SILEX@ -SILO_DTYPPTR = @SILO_DTYPPTR@ -SILO_DTYPPTR1 = @SILO_DTYPPTR1@ -SILO_DTYPPTR2 = @SILO_DTYPPTR2@ SILO_VERS_MAJ = @SILO_VERS_MAJ@ SILO_VERS_MIN = @SILO_VERS_MIN@ SILO_VERS_PAT = @SILO_VERS_PAT@ @@ -684,7 +682,7 @@ *.zip*) \ unzip $(distdir).zip ;;\ esac - chmod -R a-w $(distdir); chmod a+w $(distdir) + chmod -R a-w $(distdir); chmod u+w $(distdir) mkdir $(distdir)/_build mkdir $(distdir)/_inst chmod a-w $(distdir) @@ -879,16 +877,13 @@ cp -R $(PACKAGE)-$(VERSION) $(PACKAGE)-$(VERSION)-bsd rm -rf $(PACKAGE)-$(VERSION)-bsd/src/hzip rm -rf $(PACKAGE)-$(VERSION)-bsd/src/fpzip - rm -rf $(PACKAGE)-$(VERSION)-bsd/SiloWindows/MSVC9 - rm -rf $(PACKAGE)-$(VERSION)-bsd/SiloWindows/MSVC2010 - mv $(PACKAGE)-$(VERSION)-bsd/SiloWindows/MSVC9-BSD $(PACKAGE)-$(VERSION)-bsd/SiloWindows/MSVC9 - mv $(PACKAGE)-$(VERSION)-bsd/SiloWindows/MSVC2010-BSD $(PACKAGE)-$(VERSION)-bsd/SiloWindows/MSVC2010 + rm -rf $(PACKAGE)-$(VERSION)-bsd/SiloWindows/MSVC2012 + mv $(PACKAGE)-$(VERSION)-bsd/SiloWindows/MSVC2012-BSD $(PACKAGE)-$(VERSION)-bsd/SiloWindows/MSVC2012 tar cf - $(PACKAGE)-$(VERSION)-bsd | gzip --best > $(PACKAGE)-$(VERSION)-bsd.tar.gz rm -rf $(PACKAGE)-$(VERSION)-bsd/tests/{amr3d.silo,pion0244.silo,amr2d.silo,xvers_data.tar.bz2} tar cf - $(PACKAGE)-$(VERSION)-bsd | gzip --best > $(PACKAGE)-$(VERSION)-bsd-smalltest.tar.gz rm -rf $(PACKAGE)-$(VERSION)-bsd - rm -rf $(PACKAGE)-$(VERSION)/SiloWindows/MSVC9-BSD - rm -rf $(PACKAGE)-$(VERSION)/SiloWindows/MSVC2010-BSD + rm -rf $(PACKAGE)-$(VERSION)/SiloWindows/MSVC2012-BSD tar cf - $(PACKAGE)-$(VERSION) | gzip --best > $(PACKAGE)-$(VERSION).tar.gz rm -rf $(PACKAGE)-$(VERSION) diff -Nru silo-llnl-4.10.2/SiloWindows/include/config.h silo-llnl-4.10.2.real/SiloWindows/include/config.h --- silo-llnl-4.10.2/SiloWindows/include/config.h 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/include/config.h 2018-02-15 17:25:43.000000000 +0000 @@ -102,7 +102,7 @@ #define HAVE_MEMORY_H 1 /* Support for NetCDF */ -/* #undef HAVE_NETCDF_DRIVER */ +#define HAVE_NETCDF_DRIVER /* Support for PDB Proper */ /* #undef HAVE_PDBP_DRIVER */ diff -Nru silo-llnl-4.10.2/SiloWindows/Makefile silo-llnl-4.10.2.real/SiloWindows/Makefile --- silo-llnl-4.10.2/SiloWindows/Makefile 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/Makefile 2018-02-15 17:25:43.000000000 +0000 @@ -74,10 +74,13 @@ # Ensure a number of silo project files were included. # # Kathleen Bonnell, Fri Dec 10 10:02:09 PST 2010 -# Add silodiff.bat, browser.vcproj +# Add silodiff.bat, browser.vcxproj # # Kathleen Bonnell, Thu Mar 3 10:38:05 PST 2011 -# Add MSVC9 project files. +# Add MSVC2012 project files. +# +# Kathleen Bonnell, Thu Mar 3 10:38:05 PST 2011 +# Remove MSVC2012 and MSVC2010 project files. Add MSVC2012 project files. pkgdatadir = $(datadir)/silo pkgincludedir = $(includedir)/silo @@ -118,28 +121,28 @@ SOURCES = DIST_SOURCES = DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /g/g11/miller86/silo/silo_4.9RC/config/missing --run aclocal-1.11 -AMTAR = ${SHELL} /g/g11/miller86/silo/silo_4.9RC/config/missing --run tar +ACLOCAL = ${SHELL} /g/g11/miller86/silo/trunk/config/missing --run aclocal-1.11 +AMTAR = ${SHELL} /g/g11/miller86/silo/trunk/config/missing --run tar AR = ar -AUTOCONF = ${SHELL} /g/g11/miller86/silo/silo_4.9RC/config/missing --run autoconf -AUTOHEADER = ${SHELL} /g/g11/miller86/silo/silo_4.9RC/config/missing --run autoheader -AUTOMAKE = ${SHELL} /g/g11/miller86/silo/silo_4.9RC/config/missing --run automake-1.11 +AUTOCONF = ${SHELL} /g/g11/miller86/silo/trunk/config/missing --run autoconf +AUTOHEADER = ${SHELL} /g/g11/miller86/silo/trunk/config/missing --run autoheader +AUTOMAKE = ${SHELL} /g/g11/miller86/silo/trunk/config/missing --run automake-1.11 AWK = gawk BROWSER = browser BUNDLE_TARGET = CC = gcc CCDEPMODE = depmode=gcc3 CC_FULLPATH = /usr/local/bin/gcc -CFLAGS = -g -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Wdeclaration-after-statement -CONFIG_CMD = ./configure '--enable-fortran' 'FC=gfortran' 'F77=gfortran' 'FCFLAGS=-g' 'CFLAGS=-g' 'CXXFLAGS=-g' '--enable-pythonmodule' '--with-hdf5=/usr/gapps/visit/thirdparty_shared_2_7_0/hdf5/1.8.7/linux-x86_64_gcc-4.4/include,/usr/gapps/visit/thirdparty_shared_2_7_0/hdf5/1.8.7/linux-x86_64_gcc-4.4/lib' '--with-szlib=/usr/gapps/visit/thirdparty_shared_2_7_0/szip/2.1/linux-x86_64_gcc-4.4' '--with-Qt-dir=/usr/gapps/visit/thirdparty_shared_2_7_0/qt/4.8.3/linux-x86_64_gcc-4.4' '--with-Qt-lib=QtGui' '--prefix=/usr/gapps/visit/thirdparty_shared_2_7_0/silo/4.9.1-pre1/linux-x86_64_gcc-4.4' '--enable-install-lite-headers' -CONFIG_DATE = Tue Mar 19 10:33:26 PDT 2013 -CONFIG_USER = miller86@edge83 +CFLAGS = -g -m64 -fPIC -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Wdeclaration-after-statement +CONFIG_CMD = ./configure 'CC=gcc' 'CXX=g++' 'FC=gfortran' 'F77=gfortran' 'CFLAGS=-g -m64 -fPIC' 'CXXFLAGS=-g -m64 -fPIC' '--enable-pythonmodule' '--disable-shared' '--with-szlib=/usr/gapps/silo/szip/2.1/chaos_5_x86_64_ib' '--with-hdf5=/usr/gapps/silo/hdf5/1.8.10/chaos_5_x86_64_ib/include,/usr/gapps/silo/hdf5/1.8.10/chaos_5_x86_64_ib/lib' '--with-Qt-dir=/usr/gapps/visit/thirdparty_shared/2.8.1/qt/4.8.3/linux-x86_64_gcc-4.4' '--with-Qt-lib=QtGui -lQtCore' '--enable-silex' '--enable-install-lite-headers' '--enable-json' '--prefix=/g/g11/miller86/silo/trunk/my_install' +CONFIG_DATE = Mon Oct 13 17:02:30 PDT 2014 +CONFIG_USER = miller86@edge84 CPP = gcc -E -CPPFLAGS = -I/usr/gapps/visit/thirdparty_shared_2_7_0/hdf5/1.8.7/linux-x86_64_gcc-4.4/include +CPPFLAGS = -I/usr/gapps/silo/hdf5/1.8.10/chaos_5_x86_64_ib/include CXX = g++ CXXCPP = g++ -E CXXDEPMODE = depmode=gcc3 -CXXFLAGS = -g +CXXFLAGS = -g -m64 -fPIC CXX_FULLPATH = /usr/local/bin/g++ CYGPATH_W = echo DEFS = -DHAVE_CONFIG_H @@ -153,8 +156,8 @@ EXEEXT = F77 = gfortran FC = gfortran -FCFLAGS = -g -FCLIBS = -L/usr/lib/gcc/x86_64-redhat-linux/4.4.6 -L/usr/lib/gcc/x86_64-redhat-linux/4.4.6/../../../../lib64 -L/lib/../lib64 -L/usr/lib/../lib64 -L/usr/lib/gcc/x86_64-redhat-linux/4.4.6/../../.. -lgfortranbegin -lgfortran -lm +FCFLAGS = -g -O2 +FCLIBS = -L/usr/lib/gcc/x86_64-redhat-linux/4.4.7 -L/usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../lib64 -L/lib/../lib64 -L/usr/lib/../lib64 -L/usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../.. -lgfortranbegin -lgfortran -lm FC_FULLPATH = /usr/local/bin/gfortran FFLAGS = -g -O2 FGREP = /bin/grep -F @@ -168,8 +171,9 @@ INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = $(install_sh) -c -s +JSON = json LD = /usr/local/bin/ld -m elf_x86_64 -LDFLAGS = -L/usr/gapps/visit/thirdparty_shared_2_7_0/hdf5/1.8.7/linux-x86_64_gcc-4.4/lib -L/usr/gapps/visit/thirdparty_shared_2_7_0/szip/2.1/linux-x86_64_gcc-4.4/lib -L/usr/gapps/visit/thirdparty_shared_2_7_0/szip/2.1/linux-x86_64_gcc-4.4/lib +LDFLAGS = -L/usr/gapps/silo/hdf5/1.8.10/chaos_5_x86_64_ib/lib -L/usr/gapps/silo/szip/2.1/chaos_5_x86_64_ib/lib -L/usr/gapps/silo/szip/2.1/chaos_5_x86_64_ib/lib LIBM = -lm LIBOBJS = LIBS = -lhdf5 -lsz -lsz -lz -lm -lsz @@ -178,7 +182,7 @@ LN_S = ln -s LTLIBOBJS = MAINT = # -MAKEINFO = ${SHELL} /g/g11/miller86/silo/silo_4.9RC/config/missing --run makeinfo +MAKEINFO = ${SHELL} /g/g11/miller86/silo/trunk/config/missing --run makeinfo MKDIR_P = /bin/mkdir -p NETCDF = netcdf NM = /usr/bin/nm -B @@ -188,57 +192,54 @@ OTOOL = OTOOL64 = PACKAGE = silo -PACKAGE_BUGREPORT = visit-users@email.ornl.gov +PACKAGE_BUGREPORT = visit-users@elist.ornl.gov PACKAGE_NAME = silo -PACKAGE_STRING = silo 4.9.1 +PACKAGE_STRING = silo 4.10.2 PACKAGE_TARNAME = silo -PACKAGE_VERSION = 4.9.1 +PACKAGE_VERSION = 4.10.2 PATH_SEPARATOR = : PDBP_DRV = PDB_DRV = pdb_drv PYTHON = /usr/local/bin/python PYTHONMODULE = python -PYTHON_CPPFLAGS = -I/usr/apps/python/include/python2.6 +PYTHON_CPPFLAGS = -I/usr/apps/python/include/python2.7 PYTHON_EXEC_PREFIX = ${exec_prefix} PYTHON_PLATFORM = linux2 PYTHON_PREFIX = ${prefix} -PYTHON_VERSION = 2.6 -QT_CXXFLAGS = -I/usr/gapps/visit/thirdparty_shared_2_7_0/qt/4.8.3/linux-x86_64_gcc-4.4/include -I/usr/gapps/visit/thirdparty_shared_2_7_0/qt/4.8.3/linux-x86_64_gcc-4.4/include/Qt -I/usr/gapps/visit/thirdparty_shared_2_7_0/qt/4.8.3/linux-x86_64_gcc-4.4/include/QtCore -I/usr/gapps/visit/thirdparty_shared_2_7_0/qt/4.8.3/linux-x86_64_gcc-4.4/include/QtGui -QT_DIR = /usr/gapps/visit/thirdparty_shared_2_7_0/qt/4.8.3/linux-x86_64_gcc-4.4 -QT_LIBS = -L/usr/gapps/visit/thirdparty_shared_2_7_0/qt/4.8.3/linux-x86_64_gcc-4.4/lib -lQtGui -lSM -lICE -lX11 -lXext -lXmu -lXt -lXi -QT_LRELEASE = /usr/gapps/visit/thirdparty_shared_2_7_0/qt/4.8.3/linux-x86_64_gcc-4.4/bin/lrelease -QT_LUPDATE = /usr/gapps/visit/thirdparty_shared_2_7_0/qt/4.8.3/linux-x86_64_gcc-4.4/bin/lupdate -QT_MOC = /usr/gapps/visit/thirdparty_shared_2_7_0/qt/4.8.3/linux-x86_64_gcc-4.4/bin/moc -QT_UIC = /usr/gapps/visit/thirdparty_shared_2_7_0/qt/4.8.3/linux-x86_64_gcc-4.4/bin/uic +PYTHON_VERSION = 2.7 +QT_CXXFLAGS = -I/usr/gapps/visit/thirdparty_shared/2.8.1/qt/4.8.3/linux-x86_64_gcc-4.4/include -I/usr/gapps/visit/thirdparty_shared/2.8.1/qt/4.8.3/linux-x86_64_gcc-4.4/include/Qt -I/usr/gapps/visit/thirdparty_shared/2.8.1/qt/4.8.3/linux-x86_64_gcc-4.4/include/QtCore -I/usr/gapps/visit/thirdparty_shared/2.8.1/qt/4.8.3/linux-x86_64_gcc-4.4/include/QtGui +QT_DIR = /usr/gapps/visit/thirdparty_shared/2.8.1/qt/4.8.3/linux-x86_64_gcc-4.4 +QT_LIBS = -L/usr/gapps/visit/thirdparty_shared/2.8.1/qt/4.8.3/linux-x86_64_gcc-4.4/lib -lQtGui -lQtCore -lSM -lICE -lX11 -lXext -lXmu -lXt -lXi +QT_LRELEASE = /usr/gapps/visit/thirdparty_shared/2.8.1/qt/4.8.3/linux-x86_64_gcc-4.4/bin/lrelease +QT_LUPDATE = /usr/gapps/visit/thirdparty_shared/2.8.1/qt/4.8.3/linux-x86_64_gcc-4.4/bin/lupdate +QT_MOC = /usr/gapps/visit/thirdparty_shared/2.8.1/qt/4.8.3/linux-x86_64_gcc-4.4/bin/moc +QT_UIC = /usr/gapps/visit/thirdparty_shared/2.8.1/qt/4.8.3/linux-x86_64_gcc-4.4/bin/uic RANLIB = ranlib READLINE_LIBS = -lreadline SED = /bin/sed SET_MAKE = SHELL = /bin/sh SILEX = silex -SILO_DTYPPTR = void -SILO_DTYPPTR1 = void* -SILO_DTYPPTR2 = void* SILO_VERS_MAJ = 4 -SILO_VERS_MIN = 9 -SILO_VERS_PAT = 1 +SILO_VERS_MIN = 10 +SILO_VERS_PAT = 2 SILO_VERS_PRE = -SILO_VERS_TAG = Silo_version_4_9_1 +SILO_VERS_TAG = Silo_version_4_10_2 STRIP = strip TAURUS = taurus -VERSION = 4.9.1 +VERSION = 4.10.2 XMKMF = X_CFLAGS = X_EXTRA_LIBS = X_LIBS = X_PRE_LIBS = -lSM -lICE ZLIB = zlib -abs_builddir = /g/g11/miller86/silo/silo_4.9RC/SiloWindows -abs_srcdir = /g/g11/miller86/silo/silo_4.9RC/SiloWindows -abs_top_builddir = /g/g11/miller86/silo/silo_4.9RC -abs_top_srcdir = /g/g11/miller86/silo/silo_4.9RC +abs_builddir = /g/g11/miller86/silo/trunk/SiloWindows +abs_srcdir = /g/g11/miller86/silo/trunk/SiloWindows +abs_top_builddir = /g/g11/miller86/silo/trunk +abs_top_srcdir = /g/g11/miller86/silo/trunk ac_ct_CC = gcc -ac_ct_CXX = g++ +ac_ct_CXX = ac_ct_DUMPBIN = ac_ct_F77 = ac_ct_FC = @@ -267,7 +268,7 @@ htmldir = ${docdir} includedir = ${prefix}/include infodir = ${datarootdir}/info -install_sh = ${SHELL} /g/g11/miller86/silo/silo_4.9RC/config/install-sh +install_sh = ${SHELL} /g/g11/miller86/silo/trunk/config/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localedir = ${datarootdir}/locale @@ -279,11 +280,11 @@ pdfdir = ${docdir} pkgpyexecdir = ${pyexecdir}/silo pkgpythondir = ${pythondir}/silo -prefix = /usr/gapps/visit/thirdparty_shared_2_7_0/silo/4.9.1-pre1/linux-x86_64_gcc-4.4 +prefix = /g/g11/miller86/silo/trunk/my_install program_transform_name = s,x,x, psdir = ${docdir} -pyexecdir = ${exec_prefix}/lib/python2.6/site-packages -pythondir = ${prefix}/lib/python2.6/site-packages +pyexecdir = ${exec_prefix}/lib/python2.7/site-packages +pythondir = ${prefix}/lib/python2.7/site-packages sbindir = ${exec_prefix}/sbin sharedstatedir = ${prefix}/com srcdir = . @@ -293,73 +294,79 @@ top_builddir = .. top_srcdir = .. EXTRA_DIST = \ -./MSVC9/Tests/alltypes.vcproj\ -./MSVC9/Tests/arbpoly.vcproj\ -./MSVC9/Tests/arbpoly3d.vcproj\ -./MSVC9/Tests/array.vcproj\ -./MSVC9/Tests/array_f.vfproj\ -./MSVC9/Tests/compression.vcproj\ -./MSVC9/Tests/csg.vcproj\ -./MSVC9/Tests/curve_f.vfproj\ -./MSVC9/Tests/dirtest.vcproj\ -./MSVC9/Tests/empty.vcproj\ -./MSVC9/Tests/extface.vcproj\ -./MSVC9/Tests/grab.vcproj\ -./MSVC9/Tests/group_test.vcproj\ -./MSVC9/Tests/largefile.vcproj\ -./MSVC9/Tests/listtypes.vcproj\ -./MSVC9/Tests/mat3d_3across.vcproj\ -./MSVC9/Tests/mat_f.vfproj\ -./MSVC9/Tests/merge_block.vcproj\ -./MSVC9/Tests/mmadjacency.vcproj\ -./MSVC9/Tests/multi_file.vcproj\ -./MSVC9/Tests/multi_test.vcproj\ -./MSVC9/Tests/multispec.vcproj\ -./MSVC9/Tests/namescheme.vcproj\ -./MSVC9/Tests/obj.vcproj\ -./MSVC9/Tests/onehex.vcproj\ -./MSVC9/Tests/oneprism.vcproj\ -./MSVC9/Tests/onepyramid.vcproj\ -./MSVC9/Tests/onetet.vcproj\ -./MSVC9/Tests/partial_io.vcproj\ -./MSVC9/Tests/point.vcproj\ -./MSVC9/Tests/point_f.vfproj\ -./MSVC9/Tests/polyzl.vcproj\ -./MSVC9/Tests/Preparation.vcproj\ -./MSVC9/Tests/quad.vcproj\ -./MSVC9/Tests/quad_f.vfproj\ -./MSVC9/Tests/sami.vcproj\ -./MSVC9/Tests/simple.vcproj\ -./MSVC9/Tests/spec.vcproj\ -./MSVC9/Tests/specmix.vcproj\ -./MSVC9/Tests/subhex.vcproj\ -./MSVC9/Tests/testall.vcproj\ -./MSVC9/Tests/testall_f.vfproj\ -./MSVC9/Tests/testpdb.vcproj\ -./MSVC9/Tests/TestReadMask.vcproj\ -./MSVC9/Tests/twohex.vcproj\ -./MSVC9/Tests/ucd1d.vcproj\ -./MSVC9/Tests/ucd.vcproj\ -./MSVC9/Tests/ucd_f.vfproj\ -./MSVC9/Tests/ucdsamp3.vcproj\ -./MSVC9/Tests/version.vcproj\ -./MSVC9/Tests/wave.vcproj\ -./MSVC9/Tests/Tests.sln\ -./MSVC9/Tests/CopyTestDependencies.bat\ -./MSVC9/Tests/TestIncludes.vsprops\ -./MSVC9/bin/RunTests.bat\ -./MSVC9/pdb_detect/pdb_detect.vcproj\ -./MSVC9/BaseIncludes.vsprops\ -./MSVC9/DepLibs.vsprops\ -./MSVC9/HDF5_Defines.vsprops\ -./MSVC9/ModernDTPR.vsprops\ -./MSVC9/NO_SEC_DEP.vsprops\ -./MSVC9/NON_BSD_DEFINES.vsprops\ -./MSVC9/QT_Defines.vsprops\ -./MSVC9/browser.vcproj\ -./MSVC9/silex.vcproj\ -./MSVC9/Silo.vcproj\ -./MSVC9/SiloWindows.sln\ +./MSVC2012/Tests/alltypes.vcxproj\ +./MSVC2012/Tests/arbpoly.vcxproj\ +./MSVC2012/Tests/arbpoly3d.vcxproj\ +./MSVC2012/Tests/array.vcxproj\ +./MSVC2012/Tests/array_f.vfproj\ +./MSVC2012/Tests/compression.vcxproj\ +./MSVC2012/Tests/csg.vcxproj\ +./MSVC2012/Tests/csgmesh_f.vfproj\ +./MSVC2012/Tests/curve_f.vfproj\ +./MSVC2012/Tests/dirtest.vcxproj\ +./MSVC2012/Tests/empty.vcxproj\ +./MSVC2012/Tests/extface.vcxproj\ +./MSVC2012/Tests/grab.vcxproj\ +./MSVC2012/Tests/group_test.vcxproj\ +./MSVC2012/Tests/largefile.vcxproj\ +./MSVC2012/Tests/listtypes.vcxproj\ +./MSVC2012/Tests/mat3d_3across.vcxproj\ +./MSVC2012/Tests/mat_f.vfproj\ +./MSVC2012/Tests/merge_block.vcxproj\ +./MSVC2012/Tests/mmadjacency.vcxproj\ +./MSVC2012/Tests/multi_file.vcxproj\ +./MSVC2012/Tests/multi_test.vcxproj\ +./MSVC2012/Tests/multispec.vcxproj\ +./MSVC2012/Tests/namescheme.vcxproj\ +./MSVC2012/Tests/obj.vcxproj\ +./MSVC2012/Tests/onehex.vcxproj\ +./MSVC2012/Tests/oneprism.vcxproj\ +./MSVC2012/Tests/onepyramid.vcxproj\ +./MSVC2012/Tests/onetet.vcxproj\ +./MSVC2012/Tests/partial_io.vcxproj\ +./MSVC2012/Tests/point.vcxproj\ +./MSVC2012/Tests/point_f.vfproj\ +./MSVC2012/Tests/polyzl.vcxproj\ +./MSVC2012/Tests/Preparation.vcxproj\ +./MSVC2012/Tests/quad.vcxproj\ +./MSVC2012/Tests/quad_f.vfproj\ +./MSVC2012/Tests/sami.vcxproj\ +./MSVC2012/Tests/simple.vcxproj\ +./MSVC2012/Tests/spec.vcxproj\ +./MSVC2012/Tests/specmix.vcxproj\ +./MSVC2012/Tests/subhex.vcxproj\ +./MSVC2012/Tests/testall.vcxproj\ +./MSVC2012/Tests/testall_f.vfproj\ +./MSVC2012/Tests/testfs.vcxproj\ +./MSVC2012/Tests/testpdb.vcxproj\ +./MSVC2012/Tests/TestReadMask.vcxproj\ +./MSVC2012/Tests/twohex.vcxproj\ +./MSVC2012/Tests/ucd1d.vcxproj\ +./MSVC2012/Tests/ucd.vcxproj\ +./MSVC2012/Tests/ucd_f.vfproj\ +./MSVC2012/Tests/ucdsamp3.vcxproj\ +./MSVC2012/Tests/version.vcxproj\ +./MSVC2012/Tests/wave.vcxproj\ +./MSVC2012/Tests/Tests.sln\ +./MSVC2012/Tests/CopyTestDependencies.bat\ +./MSVC2012/Tests/TestIncludes.props\ +./MSVC2012/bin/RunTests.bat\ +./MSVC2012/pdb_detect/pdb_detect.vcxproj\ +./MSVC2012/pdb_detect/pdb_detect.vcxproj.filters\ +./MSVC2012/BaseIncludes.props\ +./MSVC2012/DepLibs.props\ +./MSVC2012/HDF5_Defines.props\ +./MSVC2012/ModernDTPR.props\ +./MSVC2012/NO_SEC_DEP.props\ +./MSVC2012/NON_BSD_DEFINES.props\ +./MSVC2012/QT_Defines.props\ +./MSVC2012/browser.vcxproj\ +./MSVC2012/browser.vcxproj.filters\ +./MSVC2012/silex.vcxproj\ +./MSVC2012/silex.vcxproj.filters\ +./MSVC2012/Silo.vcxproj\ +./MSVC2012/Silo.vcxproj.filters\ +./MSVC2012/Silo.sln\ ./include/config.h\ ./resources/silex.aps\ ./resources/silex.ico\ @@ -371,103 +378,21 @@ ./copysilo.bat\ ./silodiff.bat\ ./README\ -./MSVC9-BSD/Tests/alltypes.vcproj\ -./MSVC9-BSD/Tests/arbpoly.vcproj\ -./MSVC9-BSD/Tests/arbpoly3d.vcproj\ -./MSVC9-BSD/Tests/array.vcproj\ -./MSVC9-BSD/Tests/array_f.vfproj\ -./MSVC9-BSD/Tests/compression.vcproj\ -./MSVC9-BSD/Tests/csg.vcproj\ -./MSVC9-BSD/Tests/curve_f.vfproj\ -./MSVC9-BSD/Tests/dirtest.vcproj\ -./MSVC9-BSD/Tests/empty.vcproj\ -./MSVC9-BSD/Tests/extface.vcproj\ -./MSVC9-BSD/Tests/grab.vcproj\ -./MSVC9-BSD/Tests/group_test.vcproj\ -./MSVC9-BSD/Tests/largefile.vcproj\ -./MSVC9-BSD/Tests/listtypes.vcproj\ -./MSVC9-BSD/Tests/mat3d_3across.vcproj\ -./MSVC9-BSD/Tests/mat_f.vfproj\ -./MSVC9-BSD/Tests/merge_block.vcproj\ -./MSVC9-BSD/Tests/mmadjacency.vcproj\ -./MSVC9-BSD/Tests/multi_file.vcproj\ -./MSVC9-BSD/Tests/multi_test.vcproj\ -./MSVC9-BSD/Tests/multispec.vcproj\ -./MSVC9-BSD/Tests/namescheme.vcproj\ -./MSVC9-BSD/Tests/obj.vcproj\ -./MSVC9-BSD/Tests/onehex.vcproj\ -./MSVC9-BSD/Tests/oneprism.vcproj\ -./MSVC9-BSD/Tests/onepyramid.vcproj\ -./MSVC9-BSD/Tests/onetet.vcproj\ -./MSVC9-BSD/Tests/partial_io.vcproj\ -./MSVC9-BSD/Tests/point.vcproj\ -./MSVC9-BSD/Tests/point_f.vfproj\ -./MSVC9-BSD/Tests/polyzl.vcproj\ -./MSVC9-BSD/Tests/Preparation.vcproj\ -./MSVC9-BSD/Tests/quad.vcproj\ -./MSVC9-BSD/Tests/quad_f.vfproj\ -./MSVC9-BSD/Tests/sami.vcproj\ -./MSVC9-BSD/Tests/simple.vcproj\ -./MSVC9-BSD/Tests/spec.vcproj\ -./MSVC9-BSD/Tests/specmix.vcproj\ -./MSVC9-BSD/Tests/subhex.vcproj\ -./MSVC9-BSD/Tests/testall.vcproj\ -./MSVC9-BSD/Tests/testall_f.vfproj\ -./MSVC9-BSD/Tests/testpdb.vcproj\ -./MSVC9-BSD/Tests/TestReadMask.vcproj\ -./MSVC9-BSD/Tests/twohex.vcproj\ -./MSVC9-BSD/Tests/ucd1d.vcproj\ -./MSVC9-BSD/Tests/ucd.vcproj\ -./MSVC9-BSD/Tests/ucd_f.vfproj\ -./MSVC9-BSD/Tests/ucdsamp3.vcproj\ -./MSVC9-BSD/Tests/version.vcproj\ -./MSVC9-BSD/Tests/wave.vcproj\ -./MSVC9-BSD/Tests/Tests.sln\ -./MSVC9-BSD/Tests/CopyTestDependencies.bat\ -./MSVC9-BSD/Tests/TestIncludes.vsprops\ -./MSVC9-BSD/bin/RunTests.bat\ -./MSVC9-BSD/pdb_detect/pdb_detect.vcproj\ -./MSVC9-BSD/BaseIncludes.vsprops\ -./MSVC9-BSD/DepLibs.vsprops\ -./MSVC9-BSD/HDF5_Defines.vsprops\ -./MSVC9-BSD/ModernDTPR.vsprops\ -./MSVC9-BSD/NO_SEC_DEP.vsprops\ -./MSVC9-BSD/QT_Defines.vsprops\ -./MSVC9-BSD/browser.vcproj\ -./MSVC9-BSD/silex.vcproj\ -./MSVC9-BSD/Silo.vcproj\ -./MSVC9-BSD/SiloWindows.sln\ -./MSVC2010/BaseIncludes.props\ -./MSVC2010/DepLibs.props\ -./MSVC2010/HDF5_Defines.props\ -./MSVC2010/ModernDTPR.props\ -./MSVC2010/NON_BSD_DEFINES.props\ -./MSVC2010/NO_SEC_DEP.props\ -./MSVC2010/QT_Defines.props\ -./MSVC2010/Silo.sln\ -./MSVC2010/Silo.vcxproj\ -./MSVC2010/Silo.vcxproj.filters\ -./MSVC2010/browser.vcxproj\ -./MSVC2010/browser.vcxproj.filters\ -./MSVC2010/silex.vcxproj\ -./MSVC2010/silex.vcxproj.filters\ -./MSVC2010/pdb_detect/pdb_detect.vcxproj\ -./MSVC2010/pdb_detect/pdb_detect.vcxproj.filters\ -./MSVC2010-BSD/BaseIncludes.props\ -./MSVC2010-BSD/DepLibs.props\ -./MSVC2010-BSD/HDF5_Defines.props\ -./MSVC2010-BSD/ModernDTPR.props\ -./MSVC2010-BSD/NO_SEC_DEP.props\ -./MSVC2010-BSD/QT_Defines.props\ -./MSVC2010-BSD/Silo.sln\ -./MSVC2010-BSD/Silo.vcxproj\ -./MSVC2010-BSD/Silo.vcxproj.filters\ -./MSVC2010-BSD/browser.vcxproj\ -./MSVC2010-BSD/browser.vcxproj.filters\ -./MSVC2010-BSD/silex.vcxproj\ -./MSVC2010-BSD/silex.vcxproj.filters\ -./MSVC2010-BSD/pdb_detect/pdb_detect.vcxproj\ -./MSVC2010-BSD/pdb_detect/pdb_detect.vcxproj.filters +./MSVC2012-BSD/pdb_detect/pdb_detect.vcxproj\ +./MSVC2012-BSD/pdb_detect/pdb_detect.vcxproj.filters\ +./MSVC2012-BSD/BaseIncludes.props\ +./MSVC2012-BSD/DepLibs.props\ +./MSVC2012-BSD/HDF5_Defines.props\ +./MSVC2012-BSD/ModernDTPR.props\ +./MSVC2012-BSD/NO_SEC_DEP.props\ +./MSVC2012-BSD/QT_Defines.props\ +./MSVC2012-BSD/browser.vcxproj\ +./MSVC2012-BSD/browser.vcxproj.filters\ +./MSVC2012-BSD/silex.vcxproj\ +./MSVC2012-BSD/silex.vcxproj.filters\ +./MSVC2012-BSD/Silo.vcxproj\ +./MSVC2012-BSD/Silo.vcxproj.filters\ +./MSVC2012-BSD/Silo.sln all: all-am diff -Nru silo-llnl-4.10.2/SiloWindows/Makefile.am silo-llnl-4.10.2.real/SiloWindows/Makefile.am --- silo-llnl-4.10.2/SiloWindows/Makefile.am 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/Makefile.am 2018-02-15 17:25:43.000000000 +0000 @@ -58,80 +58,90 @@ # Ensure a number of silo project files were included. # # Kathleen Bonnell, Fri Dec 10 10:02:09 PST 2010 -# Add silodiff.bat, browser.vcproj +# Add silodiff.bat, browser.vcxproj # # Kathleen Bonnell, Thu Mar 3 10:38:05 PST 2011 -# Add MSVC9 project files. +# Add MSVC2012 project files. +# +# Kathleen Bonnell, Thu Mar 3 10:38:05 PST 2011 +# Remove MSVC2012 and MSVC2010 project files. Add MSVC2012 project files. + EXTRA_DIST = \ -./MSVC9/Tests/alltypes.vcproj\ -./MSVC9/Tests/arbpoly.vcproj\ -./MSVC9/Tests/arbpoly3d.vcproj\ -./MSVC9/Tests/array.vcproj\ -./MSVC9/Tests/array_f.vfproj\ -./MSVC9/Tests/compression.vcproj\ -./MSVC9/Tests/csg.vcproj\ -./MSVC9/Tests/curve_f.vfproj\ -./MSVC9/Tests/dirtest.vcproj\ -./MSVC9/Tests/empty.vcproj\ -./MSVC9/Tests/extface.vcproj\ -./MSVC9/Tests/grab.vcproj\ -./MSVC9/Tests/group_test.vcproj\ -./MSVC9/Tests/largefile.vcproj\ -./MSVC9/Tests/listtypes.vcproj\ -./MSVC9/Tests/mat3d_3across.vcproj\ -./MSVC9/Tests/mat_f.vfproj\ -./MSVC9/Tests/merge_block.vcproj\ -./MSVC9/Tests/mmadjacency.vcproj\ -./MSVC9/Tests/multi_file.vcproj\ -./MSVC9/Tests/multi_test.vcproj\ -./MSVC9/Tests/multispec.vcproj\ -./MSVC9/Tests/namescheme.vcproj\ -./MSVC9/Tests/obj.vcproj\ -./MSVC9/Tests/onehex.vcproj\ -./MSVC9/Tests/oneprism.vcproj\ -./MSVC9/Tests/onepyramid.vcproj\ -./MSVC9/Tests/onetet.vcproj\ -./MSVC9/Tests/partial_io.vcproj\ -./MSVC9/Tests/point.vcproj\ -./MSVC9/Tests/point_f.vfproj\ -./MSVC9/Tests/polyzl.vcproj\ -./MSVC9/Tests/Preparation.vcproj\ -./MSVC9/Tests/quad.vcproj\ -./MSVC9/Tests/quad_f.vfproj\ -./MSVC9/Tests/sami.vcproj\ -./MSVC9/Tests/simple.vcproj\ -./MSVC9/Tests/spec.vcproj\ -./MSVC9/Tests/specmix.vcproj\ -./MSVC9/Tests/subhex.vcproj\ -./MSVC9/Tests/testall.vcproj\ -./MSVC9/Tests/testall_f.vfproj\ -./MSVC9/Tests/testpdb.vcproj\ -./MSVC9/Tests/TestReadMask.vcproj\ -./MSVC9/Tests/twohex.vcproj\ -./MSVC9/Tests/ucd1d.vcproj\ -./MSVC9/Tests/ucd.vcproj\ -./MSVC9/Tests/ucd_f.vfproj\ -./MSVC9/Tests/ucdsamp3.vcproj\ -./MSVC9/Tests/version.vcproj\ -./MSVC9/Tests/wave.vcproj\ -./MSVC9/Tests/Tests.sln\ -./MSVC9/Tests/CopyTestDependencies.bat\ -./MSVC9/Tests/TestIncludes.vsprops\ -./MSVC9/bin/RunTests.bat\ -./MSVC9/pdb_detect/pdb_detect.vcproj\ -./MSVC9/BaseIncludes.vsprops\ -./MSVC9/DepLibs.vsprops\ -./MSVC9/HDF5_Defines.vsprops\ -./MSVC9/ModernDTPR.vsprops\ -./MSVC9/NO_SEC_DEP.vsprops\ -./MSVC9/NON_BSD_DEFINES.vsprops\ -./MSVC9/QT_Defines.vsprops\ -./MSVC9/browser.vcproj\ -./MSVC9/silex.vcproj\ -./MSVC9/Silo.vcproj\ -./MSVC9/SiloWindows.sln\ +./MSVC2012/Tests/alltypes.vcxproj\ +./MSVC2012/Tests/arbpoly.vcxproj\ +./MSVC2012/Tests/arbpoly3d.vcxproj\ +./MSVC2012/Tests/array.vcxproj\ +./MSVC2012/Tests/array_f.vfproj\ +./MSVC2012/Tests/compression.vcxproj\ +./MSVC2012/Tests/csg.vcxproj\ +./MSVC2012/Tests/csgmesh_f.vfproj\ +./MSVC2012/Tests/curve_f.vfproj\ +./MSVC2012/Tests/dirtest.vcxproj\ +./MSVC2012/Tests/empty.vcxproj\ +./MSVC2012/Tests/extface.vcxproj\ +./MSVC2012/Tests/grab.vcxproj\ +./MSVC2012/Tests/group_test.vcxproj\ +./MSVC2012/Tests/largefile.vcxproj\ +./MSVC2012/Tests/listtypes.vcxproj\ +./MSVC2012/Tests/mat3d_3across.vcxproj\ +./MSVC2012/Tests/mat_f.vfproj\ +./MSVC2012/Tests/merge_block.vcxproj\ +./MSVC2012/Tests/mmadjacency.vcxproj\ +./MSVC2012/Tests/multi_file.vcxproj\ +./MSVC2012/Tests/multi_test.vcxproj\ +./MSVC2012/Tests/multispec.vcxproj\ +./MSVC2012/Tests/namescheme.vcxproj\ +./MSVC2012/Tests/obj.vcxproj\ +./MSVC2012/Tests/onehex.vcxproj\ +./MSVC2012/Tests/oneprism.vcxproj\ +./MSVC2012/Tests/onepyramid.vcxproj\ +./MSVC2012/Tests/onetet.vcxproj\ +./MSVC2012/Tests/partial_io.vcxproj\ +./MSVC2012/Tests/point.vcxproj\ +./MSVC2012/Tests/point_f.vfproj\ +./MSVC2012/Tests/polyzl.vcxproj\ +./MSVC2012/Tests/Preparation.vcxproj\ +./MSVC2012/Tests/quad.vcxproj\ +./MSVC2012/Tests/quad_f.vfproj\ +./MSVC2012/Tests/sami.vcxproj\ +./MSVC2012/Tests/simple.vcxproj\ +./MSVC2012/Tests/spec.vcxproj\ +./MSVC2012/Tests/specmix.vcxproj\ +./MSVC2012/Tests/subhex.vcxproj\ +./MSVC2012/Tests/testall.vcxproj\ +./MSVC2012/Tests/testall_f.vfproj\ +./MSVC2012/Tests/testfs.vcxproj\ +./MSVC2012/Tests/testpdb.vcxproj\ +./MSVC2012/Tests/TestReadMask.vcxproj\ +./MSVC2012/Tests/twohex.vcxproj\ +./MSVC2012/Tests/ucd1d.vcxproj\ +./MSVC2012/Tests/ucd.vcxproj\ +./MSVC2012/Tests/ucd_f.vfproj\ +./MSVC2012/Tests/ucdsamp3.vcxproj\ +./MSVC2012/Tests/version.vcxproj\ +./MSVC2012/Tests/wave.vcxproj\ +./MSVC2012/Tests/Tests.sln\ +./MSVC2012/Tests/CopyTestDependencies.bat\ +./MSVC2012/Tests/TestIncludes.props\ +./MSVC2012/bin/RunTests.bat\ +./MSVC2012/pdb_detect/pdb_detect.vcxproj\ +./MSVC2012/pdb_detect/pdb_detect.vcxproj.filters\ +./MSVC2012/BaseIncludes.props\ +./MSVC2012/DepLibs.props\ +./MSVC2012/HDF5_Defines.props\ +./MSVC2012/ModernDTPR.props\ +./MSVC2012/NO_SEC_DEP.props\ +./MSVC2012/NON_BSD_DEFINES.props\ +./MSVC2012/QT_Defines.props\ +./MSVC2012/browser.vcxproj\ +./MSVC2012/browser.vcxproj.filters\ +./MSVC2012/silex.vcxproj\ +./MSVC2012/silex.vcxproj.filters\ +./MSVC2012/Silo.vcxproj\ +./MSVC2012/Silo.vcxproj.filters\ +./MSVC2012/Silo.sln\ ./include/config.h\ ./resources/silex.aps\ ./resources/silex.ico\ @@ -143,100 +153,18 @@ ./copysilo.bat\ ./silodiff.bat\ ./README\ -./MSVC9-BSD/Tests/alltypes.vcproj\ -./MSVC9-BSD/Tests/arbpoly.vcproj\ -./MSVC9-BSD/Tests/arbpoly3d.vcproj\ -./MSVC9-BSD/Tests/array.vcproj\ -./MSVC9-BSD/Tests/array_f.vfproj\ -./MSVC9-BSD/Tests/compression.vcproj\ -./MSVC9-BSD/Tests/csg.vcproj\ -./MSVC9-BSD/Tests/curve_f.vfproj\ -./MSVC9-BSD/Tests/dirtest.vcproj\ -./MSVC9-BSD/Tests/empty.vcproj\ -./MSVC9-BSD/Tests/extface.vcproj\ -./MSVC9-BSD/Tests/grab.vcproj\ -./MSVC9-BSD/Tests/group_test.vcproj\ -./MSVC9-BSD/Tests/largefile.vcproj\ -./MSVC9-BSD/Tests/listtypes.vcproj\ -./MSVC9-BSD/Tests/mat3d_3across.vcproj\ -./MSVC9-BSD/Tests/mat_f.vfproj\ -./MSVC9-BSD/Tests/merge_block.vcproj\ -./MSVC9-BSD/Tests/mmadjacency.vcproj\ -./MSVC9-BSD/Tests/multi_file.vcproj\ -./MSVC9-BSD/Tests/multi_test.vcproj\ -./MSVC9-BSD/Tests/multispec.vcproj\ -./MSVC9-BSD/Tests/namescheme.vcproj\ -./MSVC9-BSD/Tests/obj.vcproj\ -./MSVC9-BSD/Tests/onehex.vcproj\ -./MSVC9-BSD/Tests/oneprism.vcproj\ -./MSVC9-BSD/Tests/onepyramid.vcproj\ -./MSVC9-BSD/Tests/onetet.vcproj\ -./MSVC9-BSD/Tests/partial_io.vcproj\ -./MSVC9-BSD/Tests/point.vcproj\ -./MSVC9-BSD/Tests/point_f.vfproj\ -./MSVC9-BSD/Tests/polyzl.vcproj\ -./MSVC9-BSD/Tests/Preparation.vcproj\ -./MSVC9-BSD/Tests/quad.vcproj\ -./MSVC9-BSD/Tests/quad_f.vfproj\ -./MSVC9-BSD/Tests/sami.vcproj\ -./MSVC9-BSD/Tests/simple.vcproj\ -./MSVC9-BSD/Tests/spec.vcproj\ -./MSVC9-BSD/Tests/specmix.vcproj\ -./MSVC9-BSD/Tests/subhex.vcproj\ -./MSVC9-BSD/Tests/testall.vcproj\ -./MSVC9-BSD/Tests/testall_f.vfproj\ -./MSVC9-BSD/Tests/testpdb.vcproj\ -./MSVC9-BSD/Tests/TestReadMask.vcproj\ -./MSVC9-BSD/Tests/twohex.vcproj\ -./MSVC9-BSD/Tests/ucd1d.vcproj\ -./MSVC9-BSD/Tests/ucd.vcproj\ -./MSVC9-BSD/Tests/ucd_f.vfproj\ -./MSVC9-BSD/Tests/ucdsamp3.vcproj\ -./MSVC9-BSD/Tests/version.vcproj\ -./MSVC9-BSD/Tests/wave.vcproj\ -./MSVC9-BSD/Tests/Tests.sln\ -./MSVC9-BSD/Tests/CopyTestDependencies.bat\ -./MSVC9-BSD/Tests/TestIncludes.vsprops\ -./MSVC9-BSD/bin/RunTests.bat\ -./MSVC9-BSD/pdb_detect/pdb_detect.vcproj\ -./MSVC9-BSD/BaseIncludes.vsprops\ -./MSVC9-BSD/DepLibs.vsprops\ -./MSVC9-BSD/HDF5_Defines.vsprops\ -./MSVC9-BSD/ModernDTPR.vsprops\ -./MSVC9-BSD/NO_SEC_DEP.vsprops\ -./MSVC9-BSD/QT_Defines.vsprops\ -./MSVC9-BSD/browser.vcproj\ -./MSVC9-BSD/silex.vcproj\ -./MSVC9-BSD/Silo.vcproj\ -./MSVC9-BSD/SiloWindows.sln\ -./MSVC2010/BaseIncludes.props\ -./MSVC2010/DepLibs.props\ -./MSVC2010/HDF5_Defines.props\ -./MSVC2010/ModernDTPR.props\ -./MSVC2010/NON_BSD_DEFINES.props\ -./MSVC2010/NO_SEC_DEP.props\ -./MSVC2010/QT_Defines.props\ -./MSVC2010/Silo.sln\ -./MSVC2010/Silo.vcxproj\ -./MSVC2010/Silo.vcxproj.filters\ -./MSVC2010/browser.vcxproj\ -./MSVC2010/browser.vcxproj.filters\ -./MSVC2010/silex.vcxproj\ -./MSVC2010/silex.vcxproj.filters\ -./MSVC2010/pdb_detect/pdb_detect.vcxproj\ -./MSVC2010/pdb_detect/pdb_detect.vcxproj.filters\ -./MSVC2010-BSD/BaseIncludes.props\ -./MSVC2010-BSD/DepLibs.props\ -./MSVC2010-BSD/HDF5_Defines.props\ -./MSVC2010-BSD/ModernDTPR.props\ -./MSVC2010-BSD/NO_SEC_DEP.props\ -./MSVC2010-BSD/QT_Defines.props\ -./MSVC2010-BSD/Silo.sln\ -./MSVC2010-BSD/Silo.vcxproj\ -./MSVC2010-BSD/Silo.vcxproj.filters\ -./MSVC2010-BSD/browser.vcxproj\ -./MSVC2010-BSD/browser.vcxproj.filters\ -./MSVC2010-BSD/silex.vcxproj\ -./MSVC2010-BSD/silex.vcxproj.filters\ -./MSVC2010-BSD/pdb_detect/pdb_detect.vcxproj\ -./MSVC2010-BSD/pdb_detect/pdb_detect.vcxproj.filters +./MSVC2012-BSD/pdb_detect/pdb_detect.vcxproj\ +./MSVC2012-BSD/pdb_detect/pdb_detect.vcxproj.filters\ +./MSVC2012-BSD/BaseIncludes.props\ +./MSVC2012-BSD/DepLibs.props\ +./MSVC2012-BSD/HDF5_Defines.props\ +./MSVC2012-BSD/ModernDTPR.props\ +./MSVC2012-BSD/NO_SEC_DEP.props\ +./MSVC2012-BSD/QT_Defines.props\ +./MSVC2012-BSD/browser.vcxproj\ +./MSVC2012-BSD/browser.vcxproj.filters\ +./MSVC2012-BSD/silex.vcxproj\ +./MSVC2012-BSD/silex.vcxproj.filters\ +./MSVC2012-BSD/Silo.vcxproj\ +./MSVC2012-BSD/Silo.vcxproj.filters\ +./MSVC2012-BSD/Silo.sln diff -Nru silo-llnl-4.10.2/SiloWindows/Makefile.in silo-llnl-4.10.2.real/SiloWindows/Makefile.in --- silo-llnl-4.10.2/SiloWindows/Makefile.in 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/Makefile.in 2018-02-15 17:25:43.000000000 +0000 @@ -74,10 +74,13 @@ # Ensure a number of silo project files were included. # # Kathleen Bonnell, Fri Dec 10 10:02:09 PST 2010 -# Add silodiff.bat, browser.vcproj +# Add silodiff.bat, browser.vcxproj # # Kathleen Bonnell, Thu Mar 3 10:38:05 PST 2011 -# Add MSVC9 project files. +# Add MSVC2012 project files. +# +# Kathleen Bonnell, Thu Mar 3 10:38:05 PST 2011 +# Remove MSVC2012 and MSVC2010 project files. Add MSVC2012 project files. VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ @@ -168,6 +171,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +JSON = @JSON@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBM = @LIBM@ @@ -216,9 +220,6 @@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SILEX = @SILEX@ -SILO_DTYPPTR = @SILO_DTYPPTR@ -SILO_DTYPPTR1 = @SILO_DTYPPTR1@ -SILO_DTYPPTR2 = @SILO_DTYPPTR2@ SILO_VERS_MAJ = @SILO_VERS_MAJ@ SILO_VERS_MIN = @SILO_VERS_MIN@ SILO_VERS_PAT = @SILO_VERS_PAT@ @@ -293,73 +294,79 @@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ EXTRA_DIST = \ -./MSVC9/Tests/alltypes.vcproj\ -./MSVC9/Tests/arbpoly.vcproj\ -./MSVC9/Tests/arbpoly3d.vcproj\ -./MSVC9/Tests/array.vcproj\ -./MSVC9/Tests/array_f.vfproj\ -./MSVC9/Tests/compression.vcproj\ -./MSVC9/Tests/csg.vcproj\ -./MSVC9/Tests/curve_f.vfproj\ -./MSVC9/Tests/dirtest.vcproj\ -./MSVC9/Tests/empty.vcproj\ -./MSVC9/Tests/extface.vcproj\ -./MSVC9/Tests/grab.vcproj\ -./MSVC9/Tests/group_test.vcproj\ -./MSVC9/Tests/largefile.vcproj\ -./MSVC9/Tests/listtypes.vcproj\ -./MSVC9/Tests/mat3d_3across.vcproj\ -./MSVC9/Tests/mat_f.vfproj\ -./MSVC9/Tests/merge_block.vcproj\ -./MSVC9/Tests/mmadjacency.vcproj\ -./MSVC9/Tests/multi_file.vcproj\ -./MSVC9/Tests/multi_test.vcproj\ -./MSVC9/Tests/multispec.vcproj\ -./MSVC9/Tests/namescheme.vcproj\ -./MSVC9/Tests/obj.vcproj\ -./MSVC9/Tests/onehex.vcproj\ -./MSVC9/Tests/oneprism.vcproj\ -./MSVC9/Tests/onepyramid.vcproj\ -./MSVC9/Tests/onetet.vcproj\ -./MSVC9/Tests/partial_io.vcproj\ -./MSVC9/Tests/point.vcproj\ -./MSVC9/Tests/point_f.vfproj\ -./MSVC9/Tests/polyzl.vcproj\ -./MSVC9/Tests/Preparation.vcproj\ -./MSVC9/Tests/quad.vcproj\ -./MSVC9/Tests/quad_f.vfproj\ -./MSVC9/Tests/sami.vcproj\ -./MSVC9/Tests/simple.vcproj\ -./MSVC9/Tests/spec.vcproj\ -./MSVC9/Tests/specmix.vcproj\ -./MSVC9/Tests/subhex.vcproj\ -./MSVC9/Tests/testall.vcproj\ -./MSVC9/Tests/testall_f.vfproj\ -./MSVC9/Tests/testpdb.vcproj\ -./MSVC9/Tests/TestReadMask.vcproj\ -./MSVC9/Tests/twohex.vcproj\ -./MSVC9/Tests/ucd1d.vcproj\ -./MSVC9/Tests/ucd.vcproj\ -./MSVC9/Tests/ucd_f.vfproj\ -./MSVC9/Tests/ucdsamp3.vcproj\ -./MSVC9/Tests/version.vcproj\ -./MSVC9/Tests/wave.vcproj\ -./MSVC9/Tests/Tests.sln\ -./MSVC9/Tests/CopyTestDependencies.bat\ -./MSVC9/Tests/TestIncludes.vsprops\ -./MSVC9/bin/RunTests.bat\ -./MSVC9/pdb_detect/pdb_detect.vcproj\ -./MSVC9/BaseIncludes.vsprops\ -./MSVC9/DepLibs.vsprops\ -./MSVC9/HDF5_Defines.vsprops\ -./MSVC9/ModernDTPR.vsprops\ -./MSVC9/NO_SEC_DEP.vsprops\ -./MSVC9/NON_BSD_DEFINES.vsprops\ -./MSVC9/QT_Defines.vsprops\ -./MSVC9/browser.vcproj\ -./MSVC9/silex.vcproj\ -./MSVC9/Silo.vcproj\ -./MSVC9/SiloWindows.sln\ +./MSVC2012/Tests/alltypes.vcxproj\ +./MSVC2012/Tests/arbpoly.vcxproj\ +./MSVC2012/Tests/arbpoly3d.vcxproj\ +./MSVC2012/Tests/array.vcxproj\ +./MSVC2012/Tests/array_f.vfproj\ +./MSVC2012/Tests/compression.vcxproj\ +./MSVC2012/Tests/csg.vcxproj\ +./MSVC2012/Tests/csgmesh_f.vfproj\ +./MSVC2012/Tests/curve_f.vfproj\ +./MSVC2012/Tests/dirtest.vcxproj\ +./MSVC2012/Tests/empty.vcxproj\ +./MSVC2012/Tests/extface.vcxproj\ +./MSVC2012/Tests/grab.vcxproj\ +./MSVC2012/Tests/group_test.vcxproj\ +./MSVC2012/Tests/largefile.vcxproj\ +./MSVC2012/Tests/listtypes.vcxproj\ +./MSVC2012/Tests/mat3d_3across.vcxproj\ +./MSVC2012/Tests/mat_f.vfproj\ +./MSVC2012/Tests/merge_block.vcxproj\ +./MSVC2012/Tests/mmadjacency.vcxproj\ +./MSVC2012/Tests/multi_file.vcxproj\ +./MSVC2012/Tests/multi_test.vcxproj\ +./MSVC2012/Tests/multispec.vcxproj\ +./MSVC2012/Tests/namescheme.vcxproj\ +./MSVC2012/Tests/obj.vcxproj\ +./MSVC2012/Tests/onehex.vcxproj\ +./MSVC2012/Tests/oneprism.vcxproj\ +./MSVC2012/Tests/onepyramid.vcxproj\ +./MSVC2012/Tests/onetet.vcxproj\ +./MSVC2012/Tests/partial_io.vcxproj\ +./MSVC2012/Tests/point.vcxproj\ +./MSVC2012/Tests/point_f.vfproj\ +./MSVC2012/Tests/polyzl.vcxproj\ +./MSVC2012/Tests/Preparation.vcxproj\ +./MSVC2012/Tests/quad.vcxproj\ +./MSVC2012/Tests/quad_f.vfproj\ +./MSVC2012/Tests/sami.vcxproj\ +./MSVC2012/Tests/simple.vcxproj\ +./MSVC2012/Tests/spec.vcxproj\ +./MSVC2012/Tests/specmix.vcxproj\ +./MSVC2012/Tests/subhex.vcxproj\ +./MSVC2012/Tests/testall.vcxproj\ +./MSVC2012/Tests/testall_f.vfproj\ +./MSVC2012/Tests/testfs.vcxproj\ +./MSVC2012/Tests/testpdb.vcxproj\ +./MSVC2012/Tests/TestReadMask.vcxproj\ +./MSVC2012/Tests/twohex.vcxproj\ +./MSVC2012/Tests/ucd1d.vcxproj\ +./MSVC2012/Tests/ucd.vcxproj\ +./MSVC2012/Tests/ucd_f.vfproj\ +./MSVC2012/Tests/ucdsamp3.vcxproj\ +./MSVC2012/Tests/version.vcxproj\ +./MSVC2012/Tests/wave.vcxproj\ +./MSVC2012/Tests/Tests.sln\ +./MSVC2012/Tests/CopyTestDependencies.bat\ +./MSVC2012/Tests/TestIncludes.props\ +./MSVC2012/bin/RunTests.bat\ +./MSVC2012/pdb_detect/pdb_detect.vcxproj\ +./MSVC2012/pdb_detect/pdb_detect.vcxproj.filters\ +./MSVC2012/BaseIncludes.props\ +./MSVC2012/DepLibs.props\ +./MSVC2012/HDF5_Defines.props\ +./MSVC2012/ModernDTPR.props\ +./MSVC2012/NO_SEC_DEP.props\ +./MSVC2012/NON_BSD_DEFINES.props\ +./MSVC2012/QT_Defines.props\ +./MSVC2012/browser.vcxproj\ +./MSVC2012/browser.vcxproj.filters\ +./MSVC2012/silex.vcxproj\ +./MSVC2012/silex.vcxproj.filters\ +./MSVC2012/Silo.vcxproj\ +./MSVC2012/Silo.vcxproj.filters\ +./MSVC2012/Silo.sln\ ./include/config.h\ ./resources/silex.aps\ ./resources/silex.ico\ @@ -371,103 +378,21 @@ ./copysilo.bat\ ./silodiff.bat\ ./README\ -./MSVC9-BSD/Tests/alltypes.vcproj\ -./MSVC9-BSD/Tests/arbpoly.vcproj\ -./MSVC9-BSD/Tests/arbpoly3d.vcproj\ -./MSVC9-BSD/Tests/array.vcproj\ -./MSVC9-BSD/Tests/array_f.vfproj\ -./MSVC9-BSD/Tests/compression.vcproj\ -./MSVC9-BSD/Tests/csg.vcproj\ -./MSVC9-BSD/Tests/curve_f.vfproj\ -./MSVC9-BSD/Tests/dirtest.vcproj\ -./MSVC9-BSD/Tests/empty.vcproj\ -./MSVC9-BSD/Tests/extface.vcproj\ -./MSVC9-BSD/Tests/grab.vcproj\ -./MSVC9-BSD/Tests/group_test.vcproj\ -./MSVC9-BSD/Tests/largefile.vcproj\ -./MSVC9-BSD/Tests/listtypes.vcproj\ -./MSVC9-BSD/Tests/mat3d_3across.vcproj\ -./MSVC9-BSD/Tests/mat_f.vfproj\ -./MSVC9-BSD/Tests/merge_block.vcproj\ -./MSVC9-BSD/Tests/mmadjacency.vcproj\ -./MSVC9-BSD/Tests/multi_file.vcproj\ -./MSVC9-BSD/Tests/multi_test.vcproj\ -./MSVC9-BSD/Tests/multispec.vcproj\ -./MSVC9-BSD/Tests/namescheme.vcproj\ -./MSVC9-BSD/Tests/obj.vcproj\ -./MSVC9-BSD/Tests/onehex.vcproj\ -./MSVC9-BSD/Tests/oneprism.vcproj\ -./MSVC9-BSD/Tests/onepyramid.vcproj\ -./MSVC9-BSD/Tests/onetet.vcproj\ -./MSVC9-BSD/Tests/partial_io.vcproj\ -./MSVC9-BSD/Tests/point.vcproj\ -./MSVC9-BSD/Tests/point_f.vfproj\ -./MSVC9-BSD/Tests/polyzl.vcproj\ -./MSVC9-BSD/Tests/Preparation.vcproj\ -./MSVC9-BSD/Tests/quad.vcproj\ -./MSVC9-BSD/Tests/quad_f.vfproj\ -./MSVC9-BSD/Tests/sami.vcproj\ -./MSVC9-BSD/Tests/simple.vcproj\ -./MSVC9-BSD/Tests/spec.vcproj\ -./MSVC9-BSD/Tests/specmix.vcproj\ -./MSVC9-BSD/Tests/subhex.vcproj\ -./MSVC9-BSD/Tests/testall.vcproj\ -./MSVC9-BSD/Tests/testall_f.vfproj\ -./MSVC9-BSD/Tests/testpdb.vcproj\ -./MSVC9-BSD/Tests/TestReadMask.vcproj\ -./MSVC9-BSD/Tests/twohex.vcproj\ -./MSVC9-BSD/Tests/ucd1d.vcproj\ -./MSVC9-BSD/Tests/ucd.vcproj\ -./MSVC9-BSD/Tests/ucd_f.vfproj\ -./MSVC9-BSD/Tests/ucdsamp3.vcproj\ -./MSVC9-BSD/Tests/version.vcproj\ -./MSVC9-BSD/Tests/wave.vcproj\ -./MSVC9-BSD/Tests/Tests.sln\ -./MSVC9-BSD/Tests/CopyTestDependencies.bat\ -./MSVC9-BSD/Tests/TestIncludes.vsprops\ -./MSVC9-BSD/bin/RunTests.bat\ -./MSVC9-BSD/pdb_detect/pdb_detect.vcproj\ -./MSVC9-BSD/BaseIncludes.vsprops\ -./MSVC9-BSD/DepLibs.vsprops\ -./MSVC9-BSD/HDF5_Defines.vsprops\ -./MSVC9-BSD/ModernDTPR.vsprops\ -./MSVC9-BSD/NO_SEC_DEP.vsprops\ -./MSVC9-BSD/QT_Defines.vsprops\ -./MSVC9-BSD/browser.vcproj\ -./MSVC9-BSD/silex.vcproj\ -./MSVC9-BSD/Silo.vcproj\ -./MSVC9-BSD/SiloWindows.sln\ -./MSVC2010/BaseIncludes.props\ -./MSVC2010/DepLibs.props\ -./MSVC2010/HDF5_Defines.props\ -./MSVC2010/ModernDTPR.props\ -./MSVC2010/NON_BSD_DEFINES.props\ -./MSVC2010/NO_SEC_DEP.props\ -./MSVC2010/QT_Defines.props\ -./MSVC2010/Silo.sln\ -./MSVC2010/Silo.vcxproj\ -./MSVC2010/Silo.vcxproj.filters\ -./MSVC2010/browser.vcxproj\ -./MSVC2010/browser.vcxproj.filters\ -./MSVC2010/silex.vcxproj\ -./MSVC2010/silex.vcxproj.filters\ -./MSVC2010/pdb_detect/pdb_detect.vcxproj\ -./MSVC2010/pdb_detect/pdb_detect.vcxproj.filters\ -./MSVC2010-BSD/BaseIncludes.props\ -./MSVC2010-BSD/DepLibs.props\ -./MSVC2010-BSD/HDF5_Defines.props\ -./MSVC2010-BSD/ModernDTPR.props\ -./MSVC2010-BSD/NO_SEC_DEP.props\ -./MSVC2010-BSD/QT_Defines.props\ -./MSVC2010-BSD/Silo.sln\ -./MSVC2010-BSD/Silo.vcxproj\ -./MSVC2010-BSD/Silo.vcxproj.filters\ -./MSVC2010-BSD/browser.vcxproj\ -./MSVC2010-BSD/browser.vcxproj.filters\ -./MSVC2010-BSD/silex.vcxproj\ -./MSVC2010-BSD/silex.vcxproj.filters\ -./MSVC2010-BSD/pdb_detect/pdb_detect.vcxproj\ -./MSVC2010-BSD/pdb_detect/pdb_detect.vcxproj.filters +./MSVC2012-BSD/pdb_detect/pdb_detect.vcxproj\ +./MSVC2012-BSD/pdb_detect/pdb_detect.vcxproj.filters\ +./MSVC2012-BSD/BaseIncludes.props\ +./MSVC2012-BSD/DepLibs.props\ +./MSVC2012-BSD/HDF5_Defines.props\ +./MSVC2012-BSD/ModernDTPR.props\ +./MSVC2012-BSD/NO_SEC_DEP.props\ +./MSVC2012-BSD/QT_Defines.props\ +./MSVC2012-BSD/browser.vcxproj\ +./MSVC2012-BSD/browser.vcxproj.filters\ +./MSVC2012-BSD/silex.vcxproj\ +./MSVC2012-BSD/silex.vcxproj.filters\ +./MSVC2012-BSD/Silo.vcxproj\ +./MSVC2012-BSD/Silo.vcxproj.filters\ +./MSVC2012-BSD/Silo.sln all: all-am diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2010/BaseIncludes.props silo-llnl-4.10.2.real/SiloWindows/MSVC2010/BaseIncludes.props --- silo-llnl-4.10.2/SiloWindows/MSVC2010/BaseIncludes.props 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2010/BaseIncludes.props 1970-01-01 00:00:00.000000000 +0000 @@ -1,12 +0,0 @@ - - - - <_ProjectFileVersion>10.0.40219.1 - <_PropertySheetDisplayName>BaseIncludes - - - - $(SolutionDir)..\include;$(SolutionDir)..\..\src\debug;$(SolutionDir)..\..\src\hdf5_drv;$(SolutionDir)..\..\src\pdb;$(SolutionDir)..\..\src\pdb_drv;$(SolutionDir)..\..\src\score;$(SolutionDir)..\..\src\silo;$(SolutionDir)..\..\src\taurus;$(SolutionDir)..\..\src\unknown;%(AdditionalIncludeDirectories) - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2010/browser.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2010/browser.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2010/browser.vcxproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2010/browser.vcxproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,200 +0,0 @@ - - - - - Debug - Win32 - - - Debug - x64 - - - Release - Win32 - - - Release - x64 - - - - {239DB654-39CC-46B4-85EC-894F6592BF17} - Win32Proj - browser - - - - Application - true - Unicode - - - Application - true - Unicode - - - Application - false - true - Unicode - - - Application - false - true - Unicode - - - - - - - - - - - - - - - - - - - - - - - - - - - true - $(SolutionDir)$(Platform)\$(Configuration)\ - $(Platform)\$(Configuration)\ - - - true - - - false - $(SolutionDir)$(Platform)\$(Configuration)\ - $(Platform)\$(Configuration)\ - - - false - - - - - - Level3 - Disabled - WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) - ..\include;..\..\tools\browser;..\..\src\silo;..\..\src\filters;%(AdditionalIncludeDirectories) - - - Console - true - $(OutDir) - silohdf5.lib;%(AdditionalDependencies) - - - copy $(SolutionDir)..\silodiff.bat $(OutDir) - - - - - - - Level3 - Disabled - WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) - ..\include;..\..\tools\browser;..\..\src\silo;..\..\src\filters;%(AdditionalIncludeDirectories) - - - Console - true - $(OutDir) - silohdf5.lib;%(AdditionalDependencies) - - - copy $(SolutionDir)..\silodiff.bat $(OutDir) - - - - - Level3 - - - MaxSpeed - true - true - WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) - ..\include;..\..\tools\browser;..\..\src\silo;..\..\src\filters;%(AdditionalIncludeDirectories) - - - Console - true - true - true - $(OutDir) - silohdf5.lib;%(AdditionalDependencies) - - - copy $(SolutionDir)..\silodiff.bat $(OutDir) - - - - - Level3 - - - MaxSpeed - true - true - WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) - ..\include;..\..\tools\browser;..\..\src\silo;..\..\src\filters;%(AdditionalIncludeDirectories) - - - Console - true - true - true - $(OutDir) - silohdf5.lib;%(AdditionalDependencies) - - - copy $(SolutionDir)..\silodiff.bat $(OutDir) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2010/browser.vcxproj.filters silo-llnl-4.10.2.real/SiloWindows/MSVC2010/browser.vcxproj.filters --- silo-llnl-4.10.2/SiloWindows/MSVC2010/browser.vcxproj.filters 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2010/browser.vcxproj.filters 1970-01-01 00:00:00.000000000 +0000 @@ -1,77 +0,0 @@ - - - - - {4FC737F1-C7A5-4376-A066-2A32D752A2FF} - cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx - - - {93995380-89BD-4b04-88EB-625FBE52EBFB} - h;hpp;hxx;hm;inl;inc;xsd - - - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - - - Header Files - - - \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2010/DepLibs.props silo-llnl-4.10.2.real/SiloWindows/MSVC2010/DepLibs.props --- silo-llnl-4.10.2/SiloWindows/MSVC2010/DepLibs.props 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2010/DepLibs.props 1970-01-01 00:00:00.000000000 +0000 @@ -1,75 +0,0 @@ - - - - - C:\a_VisIt\VisItDev\windowsbuild\ThirdParty\hdf5-1.8.7\MSVC2010\include - C:\a_VisIt\VisItDev\windowsbuild\ThirdParty\hdf5-1.8.7\MSVC2010-x64\include - C:\a_VisIt\VisItDev\windowsbuild\ThirdParty\hdf5-1.8.7\MSVC2010\lib - C:\a_VisIt\VisItDev\windowsbuild\ThirdParty\hdf5-1.8.7\MSVC2010-x64\lib - C:\a_VisIt\VisItDev\windowsbuild\ThirdParty\szip\include - C:\a_VisIt\VisItDev\windowsbuild\ThirdParty\szip\lib\MSVC2010 - C:\a_VisIt\VisItDev\windowsbuild\ThirdParty\szip\lib\MSVC2010-x64 - C:\a_VisIt\VisItDev\windowsbuild\ThirdParty\zlib\include - C:\a_VisIt\VisItDev\windowsbuild\ThirdParty\zlib\lib\MSVC2010 - C:\a_VisIt\VisItDev\windowsbuild\ThirdParty\zlib\lib\MSVC2010-x64 - C:\a_VisIt\VisItDev\windowsbuild\ThirdParty\Qt-4.8.3\include - C:\a_VisIt\VisItDev\windowsbuild\ThirdParty\Qt-4.8.3\lib\MSVC2010 - C:\a_VisIt\VisItDev\windowsbuild\ThirdParty\Qt-4.8.3\lib\MSVC2010-x64 - - - - - - $(HDF5_INC_DIR) - true - - - $(HDF5_INC_DIR_X64) - true - - - $(HDF5_LIB_DIR) - true - - - $(HDF5_LIB_DIR_X64) - true - - - $(SZIP_INC_DIR) - true - - - $(SZIP_LIB_DIR) - true - - - $(SZIP_LIB_DIR_X64) - true - - - $(ZLIB_INC_DIR) - true - - - $(ZLIB_LIB_DIR) - true - - - $(ZLIB_LIB_DIR_X64) - true - - - $(QT_INC_DIR) - true - - - $(QT_LIB_DIR) - true - - - $(QT_LIB_DIR_X64) - true - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2010/HDF5_Defines.props silo-llnl-4.10.2.real/SiloWindows/MSVC2010/HDF5_Defines.props --- silo-llnl-4.10.2/SiloWindows/MSVC2010/HDF5_Defines.props 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2010/HDF5_Defines.props 1970-01-01 00:00:00.000000000 +0000 @@ -1,19 +0,0 @@ - - - - <_ProjectFileVersion>10.0.40219.1 - <_PropertySheetDisplayName>HDF5_DEFINES - - - - HAVE_HDF5_DRIVER=1;HAVE_HDF5_H=1;HAVE_LIBHDF5=1;%(PreprocessorDefinitions) - $(HDF5_INC_DIR);$(ZLIB_INC_DIR);%(AdditionalIncludeDirectories) - $(HDF5_INC_DIR_X64);$(ZLIB_INC_DIR);%(AdditionalIncludeDirectories) - - - $(HDF5_LIB_DIR);$(ZLIB_LIB_DIR);%(AdditionalLibraryDirectories) - $(HDF5_LIB_DIR_X64);$(ZLIB_LIB_DIR_X64);%(AdditionalLibraryDirectories) - hdf5dll.lib;zlib1.lib;%(AdditionalDependencies) - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2010/ModernDTPR.props silo-llnl-4.10.2.real/SiloWindows/MSVC2010/ModernDTPR.props --- silo-llnl-4.10.2/SiloWindows/MSVC2010/ModernDTPR.props 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2010/ModernDTPR.props 1970-01-01 00:00:00.000000000 +0000 @@ -1,12 +0,0 @@ - - - - <_ProjectFileVersion>10.0.40219.1 - <_PropertySheetDisplayName>MODERN_DTPTR - - - - DB_USE_MODERN_DTPTR;%(PreprocessorDefinitions) - - - \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2010/NO_SEC_DEP.props silo-llnl-4.10.2.real/SiloWindows/MSVC2010/NO_SEC_DEP.props --- silo-llnl-4.10.2/SiloWindows/MSVC2010/NO_SEC_DEP.props 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2010/NO_SEC_DEP.props 1970-01-01 00:00:00.000000000 +0000 @@ -1,11 +0,0 @@ - - - - <_ProjectFileVersion>10.0.40219.1 - - - - _CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_SCL_NO_DEPRECATE;%(PreprocessorDefinitions) - - - \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2010/pdb_detect/pdb_detect.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2010/pdb_detect/pdb_detect.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2010/pdb_detect/pdb_detect.vcxproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2010/pdb_detect/pdb_detect.vcxproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,131 +0,0 @@ - - - - - Release - Win32 - - - Release - x64 - - - - {17857422-AD82-4D37-A5AF-94C4556935D0} - pdb_detect - Win32Proj - - - - Application - Unicode - true - - - Application - Unicode - true - - - - - - - - - - - - - - - <_ProjectFileVersion>10.0.40219.1 - $(ProjectDir)$(Platform)\$(Configuration)\ - $(ProjectDir)$(Platform)\$(Configuration)\ - false - $(SolutionDir)$(Platform)\$(Configuration)\ - $(Platform)\$(Configuration)\ - false - AllRules.ruleset - - - AllRules.ruleset - - - - - - ..\..\include;%(AdditionalIncludeDirectories) - WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) - MultiThreadedDLL - - - Level3 - ProgramDatabase - - - true - Console - true - true - false - - - MachineX86 - - - Create pdbform.h, lite_pdb.h, lite_score.h - $(OutDir)pdb_detect.exe > ..\..\..\src\pdb\pdform.h - perl.exe $(SolutionDir)..\..\config\mklite $(SolutionDir)..\..\src\pdb\pdb.h $(SolutionDir)\..\include\lite_pdb.h - perl.exe $(SolutionDir)..\..\config\mklite $(SolutionDir)..\..\src\score\score.h $(SolutionDir)\..\include\lite_score.h - - - - cd ..\..\ - copysilo.bat - - - - - - X64 - - - ..\..\include;%(AdditionalIncludeDirectories) - WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) - MultiThreadedDLL - - - Level3 - ProgramDatabase - - - true - Console - true - true - false - - - MachineX64 - - - Create pdbform.h, lite_pdb.h, lite_score.h - $(OutDir)pdb_detect.exe > ..\..\..\src\pdb\pdform.h - perl.exe $(SolutionDir)..\..\config\mklite $(SolutionDir)..\..\src\pdb\pdb.h $(SolutionDir)\..\include\lite_pdb.h - perl.exe $(SolutionDir)..\..\config\mklite $(SolutionDir)..\..\src\score\score.h $(SolutionDir)\..\include\lite_score.h - - - - cd ..\..\ - copysilo.bat - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2010/pdb_detect/pdb_detect.vcxproj.filters silo-llnl-4.10.2.real/SiloWindows/MSVC2010/pdb_detect/pdb_detect.vcxproj.filters --- silo-llnl-4.10.2/SiloWindows/MSVC2010/pdb_detect/pdb_detect.vcxproj.filters 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2010/pdb_detect/pdb_detect.vcxproj.filters 1970-01-01 00:00:00.000000000 +0000 @@ -1,14 +0,0 @@ - - - - - {4FC737F1-C7A5-4376-A066-2A32D752A2FF} - cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx - - - - - Source Files - - - \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2010/QT_Defines.props silo-llnl-4.10.2.real/SiloWindows/MSVC2010/QT_Defines.props --- silo-llnl-4.10.2/SiloWindows/MSVC2010/QT_Defines.props 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2010/QT_Defines.props 1970-01-01 00:00:00.000000000 +0000 @@ -1,17 +0,0 @@ - - - - <_ProjectFileVersion>10.0.40219.1 - <_PropertySheetDisplayName>QT_DEFINES - - - - $(QT_INC_DIR);$(QT_INC_DIR)\QtCore;$(QT_INC_DIR)\QtGui;%(AdditionalIncludeDirectories) - - - $(QT_LIB_DIR);%(AdditionalLibraryDirectories) - $(QT_LIB_DIR_X64);%(AdditionalLibraryDirectories) - QtCore4.lib;QtGui4.lib;silohdf5.lib;%(AdditionalDependencies) - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2010/silex.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2010/silex.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2010/silex.vcxproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2010/silex.vcxproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,212 +0,0 @@ - - - - - Debug - Win32 - - - Debug - x64 - - - Release - Win32 - - - Release - x64 - - - - {5B19C3D2-D3F9-4A39-A1CD-5A557D83E990} - Win32Proj - silex - - - - Application - true - Unicode - - - Application - true - Unicode - - - Application - false - true - Unicode - - - Application - false - true - Unicode - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - true - $(SolutionDir)$(PlatformName)\$(Configuration)\ - $(PlatformName)\$(Configuration)\ - - - true - $(SolutionDir)$(PlatformName)\$(Configuration)\ - $(PlatformName)\$(Configuration)\ - - - false - $(SolutionDir)$(PlatformName)\$(Configuration)\ - $(PlatformName)\$(Configuration)\ - - - false - $(SolutionDir)$(PlatformName)\$(Configuration)\ - $(PlatformName)\$(Configuration)\ - - - - - - Level3 - Disabled - WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) - $(SolutionDir)..\include;$(SolutionDir)..\..\tools\silex;%(AdditionalIncludeDirectories) - - - Console - true - $(OutDir);%(AdditionalLibraryDirectories) - - - ..\runsilexmoc.bat $(QT_LIB_DIR) - - - - - - - Level3 - Disabled - WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) - $(SolutionDir)..\include;$(SolutionDir)..\..\tools\silex;%(AdditionalIncludeDirectories) - - - Console - true - $(OutDir);%(AdditionalLibraryDirectories) - - - ..\runsilexmoc.bat $(QT_LIB_DIR_X64) - - - - - Level3 - - - MaxSpeed - true - true - WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) - $(SolutionDir)..\include;$(SolutionDir)..\..\tools\silex;%(AdditionalIncludeDirectories) - - - Console - true - true - true - $(OutDir);%(AdditionalLibraryDirectories) - - - ..\runsilexmoc.bat $(QT_LIB_DIR) - - - - - Level3 - - - MaxSpeed - true - true - WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) - $(SolutionDir)..\include;$(SolutionDir)..\..\tools\silex;%(AdditionalIncludeDirectories) - - - Console - true - true - true - $(OutDir);%(AdditionalLibraryDirectories) - - - ..\runsilexmoc.bat $(QT_LIB_DIR_X64) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2010/silex.vcxproj.filters silo-llnl-4.10.2.real/SiloWindows/MSVC2010/silex.vcxproj.filters --- silo-llnl-4.10.2/SiloWindows/MSVC2010/silex.vcxproj.filters 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2010/silex.vcxproj.filters 1970-01-01 00:00:00.000000000 +0000 @@ -1,92 +0,0 @@ - - - - - {4FC737F1-C7A5-4376-A066-2A32D752A2FF} - cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx - - - {93995380-89BD-4b04-88EB-625FBE52EBFB} - h;hpp;hxx;hm;inl;inc;xsd - - - {94ceaedb-6e8a-4de6-91e5-1db608812798} - - - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files\moc - - - Source Files\moc - - - Source Files\moc - - - Source Files\moc - - - Source Files\moc - - - Source Files\moc - - - Source Files\moc - - - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2010/Silo.sln silo-llnl-4.10.2.real/SiloWindows/MSVC2010/Silo.sln --- silo-llnl-4.10.2/SiloWindows/MSVC2010/Silo.sln 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2010/Silo.sln 1970-01-01 00:00:00.000000000 +0000 @@ -1,65 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 11.00 -# Visual Studio 2010 -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Silo", "Silo.vcxproj", "{3F76AF02-F554-BD84-E19C-AACBB8DAF098}" - ProjectSection(ProjectDependencies) = postProject - {17857422-AD82-4D37-A5AF-94C4556935D0} = {17857422-AD82-4D37-A5AF-94C4556935D0} - EndProjectSection -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "silex", "silex.vcxproj", "{5B19C3D2-D3F9-4A39-A1CD-5A557D83E990}" - ProjectSection(ProjectDependencies) = postProject - {3F76AF02-F554-BD84-E19C-AACBB8DAF098} = {3F76AF02-F554-BD84-E19C-AACBB8DAF098} - EndProjectSection -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pdb_detect", "pdb_detect\pdb_detect.vcxproj", "{17857422-AD82-4D37-A5AF-94C4556935D0}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "browser", "browser.vcxproj", "{239DB654-39CC-46B4-85EC-894F6592BF17}" - ProjectSection(ProjectDependencies) = postProject - {3F76AF02-F554-BD84-E19C-AACBB8DAF098} = {3F76AF02-F554-BD84-E19C-AACBB8DAF098} - EndProjectSection -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Win32 = Debug|Win32 - Debug|x64 = Debug|x64 - Release|Win32 = Release|Win32 - Release|x64 = Release|x64 - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {3F76AF02-F554-BD84-E19C-AACBB8DAF098}.Debug|Win32.ActiveCfg = Debug|Win32 - {3F76AF02-F554-BD84-E19C-AACBB8DAF098}.Debug|Win32.Build.0 = Debug|Win32 - {3F76AF02-F554-BD84-E19C-AACBB8DAF098}.Debug|x64.ActiveCfg = Debug|x64 - {3F76AF02-F554-BD84-E19C-AACBB8DAF098}.Debug|x64.Build.0 = Debug|x64 - {3F76AF02-F554-BD84-E19C-AACBB8DAF098}.Release|Win32.ActiveCfg = Release|Win32 - {3F76AF02-F554-BD84-E19C-AACBB8DAF098}.Release|Win32.Build.0 = Release|Win32 - {3F76AF02-F554-BD84-E19C-AACBB8DAF098}.Release|x64.ActiveCfg = Release|x64 - {3F76AF02-F554-BD84-E19C-AACBB8DAF098}.Release|x64.Build.0 = Release|x64 - {5B19C3D2-D3F9-4A39-A1CD-5A557D83E990}.Debug|Win32.ActiveCfg = Debug|Win32 - {5B19C3D2-D3F9-4A39-A1CD-5A557D83E990}.Debug|Win32.Build.0 = Debug|Win32 - {5B19C3D2-D3F9-4A39-A1CD-5A557D83E990}.Debug|x64.ActiveCfg = Debug|x64 - {5B19C3D2-D3F9-4A39-A1CD-5A557D83E990}.Debug|x64.Build.0 = Debug|x64 - {5B19C3D2-D3F9-4A39-A1CD-5A557D83E990}.Release|Win32.ActiveCfg = Release|Win32 - {5B19C3D2-D3F9-4A39-A1CD-5A557D83E990}.Release|Win32.Build.0 = Release|Win32 - {5B19C3D2-D3F9-4A39-A1CD-5A557D83E990}.Release|x64.ActiveCfg = Release|x64 - {5B19C3D2-D3F9-4A39-A1CD-5A557D83E990}.Release|x64.Build.0 = Release|x64 - {17857422-AD82-4D37-A5AF-94C4556935D0}.Debug|Win32.ActiveCfg = Release|Win32 - {17857422-AD82-4D37-A5AF-94C4556935D0}.Debug|Win32.Build.0 = Release|Win32 - {17857422-AD82-4D37-A5AF-94C4556935D0}.Debug|x64.ActiveCfg = Release|x64 - {17857422-AD82-4D37-A5AF-94C4556935D0}.Debug|x64.Build.0 = Release|x64 - {17857422-AD82-4D37-A5AF-94C4556935D0}.Release|Win32.ActiveCfg = Release|Win32 - {17857422-AD82-4D37-A5AF-94C4556935D0}.Release|Win32.Build.0 = Release|Win32 - {17857422-AD82-4D37-A5AF-94C4556935D0}.Release|x64.ActiveCfg = Release|x64 - {17857422-AD82-4D37-A5AF-94C4556935D0}.Release|x64.Build.0 = Release|x64 - {239DB654-39CC-46B4-85EC-894F6592BF17}.Debug|Win32.ActiveCfg = Debug|Win32 - {239DB654-39CC-46B4-85EC-894F6592BF17}.Debug|Win32.Build.0 = Debug|Win32 - {239DB654-39CC-46B4-85EC-894F6592BF17}.Debug|x64.ActiveCfg = Debug|x64 - {239DB654-39CC-46B4-85EC-894F6592BF17}.Debug|x64.Build.0 = Debug|x64 - {239DB654-39CC-46B4-85EC-894F6592BF17}.Release|Win32.ActiveCfg = Release|Win32 - {239DB654-39CC-46B4-85EC-894F6592BF17}.Release|Win32.Build.0 = Release|Win32 - {239DB654-39CC-46B4-85EC-894F6592BF17}.Release|x64.ActiveCfg = Release|x64 - {239DB654-39CC-46B4-85EC-894F6592BF17}.Release|x64.Build.0 = Release|x64 - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection -EndGlobal diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2010/Silo.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2010/Silo.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2010/Silo.vcxproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2010/Silo.vcxproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,211 +0,0 @@ - - - - - Debug - Win32 - - - Debug - x64 - - - Release - Win32 - - - Release - x64 - - - - Win32Proj - - - - DynamicLibrary - true - - - DynamicLibrary - true - - - DynamicLibrary - false - - - DynamicLibrary - false - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - true - silohdf5 - $(SolutionDir)$(PlatformName)\$(Configuration)\ - $(PlatformName)\$(Configuration)\ - - - true - silohdf5 - $(SolutionDir)$(PlatformName)\$(Configuration)\ - $(PlatformName)\$(Configuration)\ - - - true - silohdf5 - $(SolutionDir)$(PlatformName)\$(Configuration)\ - $(PlatformName)\$(Configuration)\ - - - true - silohdf5 - $(SolutionDir)$(PlatformName)\$(Configuration)\ - $(PlatformName)\$(Configuration)\ - - - - WIN32;_DEBUG;_WINDOWS;_USRDLL;SILO_EXPORTS;LITE_EXPORTS;%(PreprocessorDefinitions) - MultiThreadedDebugDLL - Level3 - ProgramDatabase - Disabled - - - MachineX86 - true - Windows - - - - - WIN32;_DEBUG;_WINDOWS;_USRDLL;SILO_EXPORTS;LITE_EXPORTS;%(PreprocessorDefinitions) - MultiThreadedDebugDLL - Level3 - ProgramDatabase - Disabled - - - true - Windows - - - - - WIN32;NDEBUG;_WINDOWS;_USRDLL;SILO_EXPORTS;LITE_EXPORTS;%(PreprocessorDefinitions) - MultiThreadedDLL - Level3 - ProgramDatabase - - - MachineX86 - true - Windows - true - true - - - - - WIN32;NDEBUG;_WINDOWS;_USRDLL;SILO_EXPORTS;%(PreprocessorDefinitions) - MultiThreadedDLL - Level3 - ProgramDatabase - - - true - Windows - true - true - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2010/Silo.vcxproj.filters silo-llnl-4.10.2.real/SiloWindows/MSVC2010/Silo.vcxproj.filters --- silo-llnl-4.10.2/SiloWindows/MSVC2010/Silo.vcxproj.filters 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2010/Silo.vcxproj.filters 1970-01-01 00:00:00.000000000 +0000 @@ -1,208 +0,0 @@ - - - - - {4FC737F1-C7A5-4376-A066-2A32D752A2FF} - cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx - - - {93995380-89BD-4b04-88EB-625FBE52EBFB} - h;hpp;hxx;hm;inl;inc;xsd - - - {b44642f2-0e22-4359-b89d-c614990994e6} - - - {0ce27567-4be8-499f-b4ed-a9691b6ee052} - - - {a5a05c0d-c9ff-479d-b704-e8e36367455a} - - - {5cfee3fc-3f25-4ace-9c79-58ec311615c4} - - - {80f224fd-98b4-4c51-b15d-e90068310f94} - - - {8d5272ec-4b82-49bf-9f22-3133a17cc2ad} - - - {6f7b3441-fd7c-4882-b55e-2a5298100280} - - - {33c5d424-dd8d-4a6d-9e66-fd4b812b7486} - - - {f1de1134-82ac-4e1a-ac70-9072c99a7dae} - - - {0c828d0b-349d-4989-91c7-0d9a310af1b4} - - - {9aa3c521-e2aa-4070-96f7-83975de1dfad} - - - {57a6a43e-8406-4fdf-9c59-35197de4a97f} - - - {9476e32e-ba96-4459-a75a-254258fcc5ef} - - - {b6fe0391-5082-4b6b-aa8f-30a7a7f170b9} - - - {dde8ddc9-470a-4ae4-9697-c2033fcc730c} - - - {5c033d34-5b73-4ebf-9dfe-f80d0599db6d} - - - {99f571f9-ae34-4b74-bfc8-7e6e1d1a72aa} - - - {bed62ec2-c976-4850-8d57-bd00ec661159} - - - - - Source Files\silo - - - Source Files\silo - - - Source Files\silo - - - Source Files\silo - - - Source Files\silo - - - Source Files\taurus_drv - - - Source Files\taurus_drv - - - Source Files\score - - - Source Files\score - - - Source Files\score - - - Source Files\score - - - Source Files\score - - - Source Files\pdb_drv - - - Source Files\pdb - - - Source Files\pdb - - - Source Files\pdb - - - Source Files\pdb - - - Source Files\pdb - - - Source Files\pdb - - - Source Files\pdb - - - Source Files\pdb - - - Source Files\pdb - - - Source Files\pdb - - - Source Files\hdf5_drv - - - Source Files\hdf5_drv - - - Source Files\filters - - - Source Files\filters - - - Source Files\unknown - - - Source Files\debug - - - - - Header Files\silo - - - Header Files\silo - - - Header Files\silo - - - Header Files\silo - - - Header Files\silo - - - Header Files\taurus_drv - - - Header Files\taurus_drv - - - Header Files\score - - - Header Files\pdb_drv - - - Header Files\pdb - - - Header Files\filters - - - Header Files\hdf5_drv - - - Header Files\hdf5_drv - - - Header Files\unknown - - - Header Files\debug - - - - - Header Files\silo - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/BaseIncludes.props silo-llnl-4.10.2.real/SiloWindows/MSVC2012/BaseIncludes.props --- silo-llnl-4.10.2/SiloWindows/MSVC2012/BaseIncludes.props 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/BaseIncludes.props 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,12 @@ + + + + <_ProjectFileVersion>10.0.40219.1 + <_PropertySheetDisplayName>BaseIncludes + + + + $(SolutionDir)..\include;$(SolutionDir)..\..\src\debug;$(SolutionDir)..\..\src\hdf5_drv;$(SolutionDir)..\..\src\pdb;$(SolutionDir)..\..\src\pdb_drv;$(SolutionDir)..\..\src\score;$(SolutionDir)..\..\src\silo;$(SolutionDir)..\..\src\taurus;$(SolutionDir)..\..\src\unknown;%(AdditionalIncludeDirectories) + + + diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/bin/RunTests.bat silo-llnl-4.10.2.real/SiloWindows/MSVC2012/bin/RunTests.bat --- silo-llnl-4.10.2/SiloWindows/MSVC2012/bin/RunTests.bat 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/bin/RunTests.bat 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,146 @@ +@echo off + +set errorfile=.\error.txt +set resultsfile=.\results.txt +set drivers=(DB_PDB DB_HDF5) +set buildDir=..\x64\Release\ + +set gp=(version.exe namescheme.exe point.exe empty.exe extface.exe testall.exe TesReadMask.exe array.exe multi_test.exe partial_io.exe simple.exe ucd.exe ucdsamp3.exe obj.exe onehex.exe oneprism.exe onepyramid.exe onetet.exe subhex.exe twohex.exe multispec.exe sami.exe specmix.exe spec.exe alltypes.exe wave.exe polyzl.exe csg.exe mmadjacency.exe mat3d_3across.exe ucd1d.exe dirtest.exe quad.exe namescheme.exe arbpoly.exe arbpoly3d.exe testfs.exe efcentering.exe arbpoly2d.exe majorder.exe) + + +:: copy necessary dlls to this executable directory +::if not exist .\silohdf5.dll copy %buildDir%\silohdf5.dll . +::if not exist .\hdf5.dll copy %HDF5_BIN_DIR%\hdf5.dll +::if not exist .\zlib.dll copy %ZLIB_LIB_DIR%\zlib.dll . +::if not exist .\szlibdll.dll copy %SZIP_LIB_DIR%\szlibdll.dll . + +if exist %resultsfile% (del %resultsfile%) + + +for %%z in %drivers% do ( + for %%v in %gp% do ( + if exist %%v ( + echo Running %%v %%z + echo Running %%v %%z >> %resultsfile% + %%v %%z > %errorfile% 2>&1 + type %errorfile% >> %resultsfile% + echo exit code: %errorlevel% >> %resultsfile% + echo ============================================== >> %resultsfile% + echo ============================================== >> %resultsfile% + ) + ) + + REM tests that require extra arguments + if exist testall.exe ( + for %%i in (small medium large fortran c) do ( + echo Running testall.exe -%%i %%z + echo Running testall.exe -%%i %%z >> %resultsfile% + testall.exe -%%i %%z > %errorfile% 2>&1 + type %errorfile% >> %resultsfile% + echo exit code: %errorlevel% >> %resultsfile% + echo ============================================== >> %resultsfile% + echo ============================================== >> %resultsfile% + ) + ) + + if exist group_test.exe ( + echo Running group_test.exe 0 0 0 %%z + echo Running group_test.exe 0 0 0 %%z >> %resultsfile% + group_test.exe 0 0 0 %%z > %errorfile% 2>&1 + type %errorfile% >> %resultsfile% + echo exit code: %errorlevel% >> %resultsfile% + echo ============================================== >> %resultsfile% + echo ============================================== >> %resultsfile% + ) + +) + + +if exist listtypes.exe ( + for %%i in (ucd.h5 ucd.pdb) do ( + if exist %%i ( + echo Running listtypes.exe %%i + echo Running listtypes.exe %%i >> %resultsfile% + listtypes.exe %%i > %errorfile% 2>&1 + type %errorfile% >> %resultsfile% + echo exit code: %errorlevel% >> %resultsfile% + echo ============================================== >> %resultsfile% + echo ============================================== >> %resultsfile% + ) + ) +) + + + +:: PDB Specific +if exist testpdb.exe ( + echo Running testpdb.exe + echo Running testpdb.exe >> %resultsfile% + testpdb.exe > %errorfile% 2>&1 + type %errorfile% >> %resultsfile% + echo exit code: %errorlevel% >> %resultsfile% + echo ============================================== >> %resultsfile% + echo ============================================== >> %resultsfile% +) + +:: HDF5 Specific +if exist compression.exe ( + for %%i in (gzip szip fpzip lossy3 minratio1000) do ( + echo Running compression.exe %%i + echo Running compression.exe %%i >> %resultsfile% + compression.exe %%i > %errorfile% 2>&1 + type %errorfile% >> %resultsfile% + echo exit code: %errorlevel% >> %resultsfile% + echo ============================================== >> %resultsfile% + echo ============================================== >> %resultsfile% + ) +) + +if exist grab.exe ( + echo Running grab.exe + echo Running grab.exe >> %resultsfile% + grab.exe > %errorfile% 2>&1 + type %errorfile% >> %resultsfile% + echo exit code: %errorlevel% >> %resultsfile% + echo ============================================== >> %resultsfile% + echo ============================================== >> %resultsfile% +) + +REM if exist largefile.exe ( +REM echo Running largefile.exe >> %resultsfile% +REM largefile.exe > %errorfile% +REM type %errorfile% >> %resultsfile% +REM echo exit code: %errorlevel% >> %resultsfile% +REM echo ============================================== >> %resultsfile% +REM echo ============================================== >> %resultsfile% +REM ) + +REM Fortran tests +set ft=(array_f.exe curve_f.exe mat_f.exe point_f.exe quad_f.exe testall_f.exe ucd_f.exe csgmesh_f.exe array_f90.exe) +for %%v in %ft% do ( + if exist %%v ( + echo Running %%v + echo Running %%v >> %resultsfile% + %%v > %errorfile% 2>&1 + type %errorfile% >> %resultsfile% + echo exit code: %errorlevel% >> %resultsfile% + echo ============================================== >> %resultsfile% + echo ============================================== >> %resultsfile% + ) +) + +if exist realloc_obj_and_opts.exe ( + echo Running realloc_obj_and_opts.exe + echo Running realloc_obj_and_opts.exe >> %resultsfile% + realloc_obj_and_opts.exe > %errorfile% 2>&1 + type %errorfile% >> %resultsfile% + echo exit code: %errorlevel% >> %resultsfile% + echo ============================================== >> %resultsfile% + echo ============================================== >> %resultsfile% +) + + +::print results +::type %resultsfile% + +echo all output has been directed to the file results.txt diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/browser.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/browser.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/browser.vcxproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/browser.vcxproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,206 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {239DB654-39CC-46B4-85EC-894F6592BF17} + Win32Proj + browser + + + + Application + true + v110 + Unicode + + + Application + true + v110 + Unicode + + + Application + false + v110 + true + Unicode + + + Application + false + v110 + true + Unicode + + + + + + + + + + + + + + + + + + + + + + + + + + + true + $(Platform)\$(Configuration)\$(ProjectName)\ + $(SolutionDir)$(Platform)\$(Configuration)\ + + + true + $(Platform)\$(Configuration)\$(ProjectName)\ + + + false + $(Platform)\$(Configuration)\$(ProjectName)\ + $(SolutionDir)$(Platform)\$(Configuration)\ + + + false + $(Platform)\$(Configuration)\$(ProjectName)\ + + + + + + Level3 + Disabled + WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) + ..\include;..\..\tools\browser;..\..\src\silo;..\..\src\filters;%(AdditionalIncludeDirectories) + + + Console + true + $(OutDir) + silohdf5.lib;%(AdditionalDependencies) + + + copy $(SolutionDir)..\silodiff.bat $(OutDir) + + + + + NotUsing + Level3 + Disabled + WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) + $(SolutionDir)..\include;$(SolutionDir)..\..\tools\browser;$(SolutionDir)..\..\src\silo;$(SolutionDir)..\..\src\filters;%(AdditionalIncludeDirectories) + $(IntDir)vc$(PlatformToolsetVersion).pdb + + + Console + true + $(OutDir) + silohdf5.lib;%(AdditionalDependencies) + + + copy $(SolutionDir)..\silodiff.bat $(OutDir) + + + + + Level3 + + + MaxSpeed + true + true + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + ..\include;..\..\tools\browser;..\..\src\silo;..\..\src\filters;%(AdditionalIncludeDirectories) + + + Console + false + true + true + $(OutDir) + silohdf5.lib;%(AdditionalDependencies) + + + copy $(SolutionDir)..\silodiff.bat $(OutDir) + + + + + Level3 + + + MaxSpeed + true + true + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + ..\include;..\..\tools\browser;..\..\src\silo;..\..\src\filters;%(AdditionalIncludeDirectories) + + + Console + false + true + true + $(OutDir) + silohdf5.lib;%(AdditionalDependencies) + + + copy $(SolutionDir)..\silodiff.bat $(OutDir) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/browser.vcxproj.filters silo-llnl-4.10.2.real/SiloWindows/MSVC2012/browser.vcxproj.filters --- silo-llnl-4.10.2/SiloWindows/MSVC2012/browser.vcxproj.filters 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/browser.vcxproj.filters 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,77 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + {93995380-89BD-4b04-88EB-625FBE52EBFB} + h;hpp;hxx;hm;inl;inc;xsd + + + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + + + Header Files + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/DepLibs.props silo-llnl-4.10.2.real/SiloWindows/MSVC2012/DepLibs.props --- silo-llnl-4.10.2/SiloWindows/MSVC2012/DepLibs.props 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/DepLibs.props 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,77 @@ + + + + + C:\A_VisIt\trunk\windowsbuild\MSVC2012\hdf5\1.8.12\include + C:\A_VisIt\trunk\windowsbuild\MSVC2012-x64\hdf5\1.8.12\include + C:\A_VisIt\trunk\windowsbuild\MSVC2012\hdf5\1.8.12\lib + C:\A_VisIt\trunk\windowsbuild\MSVC2012-x64\hdf5\1.8.12\lib + C:\A_VisIt\trunk\windowsbuild\MSVC2012\hdf5\1.8.12\bin + C:\A_VisIt\trunk\windowsbuild\MSVC2012-x64\hdf5\1.8.12\bin + C:\A_VisIt\trunk\windowsbuild\MSVC2012\szip\2.1\include + C:\A_VisIt\trunk\windowsbuild\MSVC2012\szip\2.1\lib + C:\A_VisIt\trunk\windowsbuild\MSVC2012-x64\szip\2.1\lib + C:\A_VisIt\trunk\windowsbuild\MSVC2012\zlib\1.2.8\include + C:\A_VisIt\trunk\windowsbuild\MSVC2012\zlib\1.2.8\lib + C:\A_VisIt\trunk\windowsbuild\MSVC2012-x64\zlib\1.2.8\lib + C:\A_VisIt\trunk\windowsbuild\MSVC2012-x64\Qt\4.8.3\include + C:\A_VisIt\trunk\windowsbuild\MSVC2012\Qt\4.8.3\lib + C:\A_VisIt\trunk\windowsbuild\MSVC2012-x64\Qt\4.8.3\lib + + + + + + $(HDF5_INC_DIR) + true + + + $(HDF5_INC_DIR_X64) + true + + + $(HDF5_LIB_DIR) + true + + + $(HDF5_LIB_DIR_X64) + true + + + $(SZIP_INC_DIR) + true + + + $(SZIP_LIB_DIR) + true + + + $(SZIP_LIB_DIR_X64) + true + + + $(ZLIB_INC_DIR) + true + + + $(ZLIB_LIB_DIR) + true + + + $(ZLIB_LIB_DIR_X64) + true + + + $(QT_INC_DIR) + true + + + $(QT_LIB_DIR) + true + + + $(QT_LIB_DIR_X64) + true + + + diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/HDF5_Defines.props silo-llnl-4.10.2.real/SiloWindows/MSVC2012/HDF5_Defines.props --- silo-llnl-4.10.2/SiloWindows/MSVC2012/HDF5_Defines.props 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/HDF5_Defines.props 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,19 @@ + + + + <_ProjectFileVersion>10.0.40219.1 + <_PropertySheetDisplayName>HDF5_DEFINES + + + + HAVE_HDF5_DRIVER=1;HAVE_HDF5_H=1;HAVE_LIBHDF5=1;%(PreprocessorDefinitions) + $(HDF5_INC_DIR);$(ZLIB_INC_DIR);%(AdditionalIncludeDirectories) + $(HDF5_INC_DIR_X64);$(ZLIB_INC_DIR);%(AdditionalIncludeDirectories) + + + $(HDF5_LIB_DIR);$(ZLIB_LIB_DIR);%(AdditionalLibraryDirectories) + $(HDF5_LIB_DIR_X64);$(ZLIB_LIB_DIR_X64);%(AdditionalLibraryDirectories) + hdf5.lib;zlib.lib;%(AdditionalDependencies) + + + diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/ModernDTPR.props silo-llnl-4.10.2.real/SiloWindows/MSVC2012/ModernDTPR.props --- silo-llnl-4.10.2/SiloWindows/MSVC2012/ModernDTPR.props 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/ModernDTPR.props 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,12 @@ + + + + <_ProjectFileVersion>10.0.40219.1 + <_PropertySheetDisplayName>MODERN_DTPTR + + + + DB_USE_MODERN_DTPTR;%(PreprocessorDefinitions) + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/NON_BSD_DEFINES.props silo-llnl-4.10.2.real/SiloWindows/MSVC2012/NON_BSD_DEFINES.props --- silo-llnl-4.10.2/SiloWindows/MSVC2012/NON_BSD_DEFINES.props 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/NON_BSD_DEFINES.props 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,13 @@ + + + + <_ProjectFileVersion>10.0.40219.1 + <_PropertySheetDisplayName>NON_BSD_DEFINES + + + + HAVE_FPZIP=1;FPZIP_FP=FPZIP_FP_SAFE;HAVE_HZIP=1;%(PreprocessorDefinitions) + ..\..\src\fpzip;..\..\src\hzip;%(AdditionalIncludeDirectories) + + + diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/NO_SEC_DEP.props silo-llnl-4.10.2.real/SiloWindows/MSVC2012/NO_SEC_DEP.props --- silo-llnl-4.10.2/SiloWindows/MSVC2012/NO_SEC_DEP.props 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/NO_SEC_DEP.props 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,11 @@ + + + + <_ProjectFileVersion>10.0.40219.1 + + + + _CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_SCL_NO_DEPRECATE;%(PreprocessorDefinitions) + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/pdb_detect/pdb_detect.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/pdb_detect/pdb_detect.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/pdb_detect/pdb_detect.vcxproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/pdb_detect/pdb_detect.vcxproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,133 @@ + + + + + Release + Win32 + + + Release + x64 + + + + {17857422-AD82-4D37-A5AF-94C4556935D0} + pdb_detect + Win32Proj + + + + Application + Unicode + true + v110 + + + Application + Unicode + true + v110 + + + + + + + + + + + + + + + <_ProjectFileVersion>10.0.40219.1 + $(ProjectDir)$(Platform)\$(Configuration)\ + $(ProjectDir)$(Platform)\$(Configuration)\ + false + $(SolutionDir)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\ + false + AllRules.ruleset + + + AllRules.ruleset + + + + + + ..\..\include;%(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + MultiThreadedDLL + + + Level3 + ProgramDatabase + + + true + Console + true + true + false + + + MachineX86 + + + Create pdbform.h, lite_pdb.h, lite_score.h + $(OutDir)pdb_detect.exe > ..\..\..\src\pdb\pdform.h + perl.exe $(SolutionDir)..\..\config\mklite $(SolutionDir)..\..\src\pdb\pdb.h $(SolutionDir)\..\include\lite_pdb.h + perl.exe $(SolutionDir)..\..\config\mklite $(SolutionDir)..\..\src\score\score.h $(SolutionDir)\..\include\lite_score.h + + + + cd ..\..\ + copysilo.bat + + + + + + X64 + + + ..\..\include;%(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + MultiThreadedDLL + + + Level3 + ProgramDatabase + + + true + Console + true + true + false + + + MachineX64 + + + Create pdbform.h, lite_pdb.h, lite_score.h + $(OutDir)pdb_detect.exe > ..\..\..\src\pdb\pdform.h + perl.exe $(SolutionDir)..\..\config\mklite $(SolutionDir)..\..\src\pdb\pdb.h $(SolutionDir)\..\include\lite_pdb.h + perl.exe $(SolutionDir)..\..\config\mklite $(SolutionDir)..\..\src\score\score.h $(SolutionDir)\..\include\lite_score.h + + + + cd ..\..\ + copysilo.bat + + + + + + + + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/pdb_detect/pdb_detect.vcxproj.filters silo-llnl-4.10.2.real/SiloWindows/MSVC2012/pdb_detect/pdb_detect.vcxproj.filters --- silo-llnl-4.10.2/SiloWindows/MSVC2012/pdb_detect/pdb_detect.vcxproj.filters 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/pdb_detect/pdb_detect.vcxproj.filters 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,14 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + + + Source Files + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/QT_Defines.props silo-llnl-4.10.2.real/SiloWindows/MSVC2012/QT_Defines.props --- silo-llnl-4.10.2/SiloWindows/MSVC2012/QT_Defines.props 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/QT_Defines.props 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,17 @@ + + + + <_ProjectFileVersion>10.0.40219.1 + <_PropertySheetDisplayName>QT_DEFINES + + + + $(QT_INC_DIR);$(QT_INC_DIR)\QtCore;$(QT_INC_DIR)\QtGui;%(AdditionalIncludeDirectories) + + + $(QT_LIB_DIR);%(AdditionalLibraryDirectories) + $(QT_LIB_DIR_X64);%(AdditionalLibraryDirectories) + QtCore4.lib;QtGui4.lib;silohdf5.lib;%(AdditionalDependencies) + + + diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/silex.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/silex.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/silex.vcxproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/silex.vcxproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,216 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {5B19C3D2-D3F9-4A39-A1CD-5A557D83E990} + Win32Proj + silex + + + + Application + true + Unicode + v110 + + + Application + true + Unicode + v110 + + + Application + false + true + Unicode + v110 + + + Application + false + true + Unicode + v110 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + true + $(SolutionDir)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(ProjectName)\ + + + true + $(SolutionDir)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(ProjectName)\ + + + false + $(SolutionDir)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(ProjectName)\ + + + false + $(SolutionDir)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(ProjectName)\ + + + + + + Level3 + Disabled + WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) + $(SolutionDir)..\include;$(SolutionDir)..\..\tools\silex;$(SolutionDir)..\..\src\silo;%(AdditionalIncludeDirectories) + + + Console + true + $(OutDir);%(AdditionalLibraryDirectories) + + + ..\runsilexmoc.bat $(QT_LIB_DIR) + + + + + + + Level3 + Disabled + WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) + $(SolutionDir)..\include;$(SolutionDir)..\..\tools\silex;$(SolutionDir)..\..\src\silo;%(AdditionalIncludeDirectories) + + + Console + true + $(OutDir);%(AdditionalLibraryDirectories) + + + ..\runsilexmoc.bat $(QT_LIB_DIR_X64) + + + + + Level3 + + + MaxSpeed + true + true + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + $(SolutionDir)..\include;$(SolutionDir)..\..\tools\silex;$(SolutionDir)..\..\src\silo;%(AdditionalIncludeDirectories) + + + Console + false + true + true + $(OutDir);%(AdditionalLibraryDirectories) + + + ..\runsilexmoc.bat $(QT_LIB_DIR) + + + + + Level3 + + + MaxSpeed + true + true + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + $(SolutionDir)..\include;$(SolutionDir)..\..\tools\silex;$(SolutionDir)..\..\src\silo;%(AdditionalIncludeDirectories) + + + Console + false + true + true + $(OutDir);%(AdditionalLibraryDirectories) + + + ..\runsilexmoc.bat $(QT_LIB_DIR_X64) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/silex.vcxproj.filters silo-llnl-4.10.2.real/SiloWindows/MSVC2012/silex.vcxproj.filters --- silo-llnl-4.10.2/SiloWindows/MSVC2012/silex.vcxproj.filters 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/silex.vcxproj.filters 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,92 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + {93995380-89BD-4b04-88EB-625FBE52EBFB} + h;hpp;hxx;hm;inl;inc;xsd + + + {94ceaedb-6e8a-4de6-91e5-1db608812798} + + + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files\moc + + + Source Files\moc + + + Source Files\moc + + + Source Files\moc + + + Source Files\moc + + + Source Files\moc + + + Source Files\moc + + + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Silo.sln silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Silo.sln --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Silo.sln 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Silo.sln 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,65 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 2012 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Silo", "Silo.vcxproj", "{3A796AF3-3578-B923-4A26-3E27F5305DC9}" + ProjectSection(ProjectDependencies) = postProject + {17857422-AD82-4D37-A5AF-94C4556935D0} = {17857422-AD82-4D37-A5AF-94C4556935D0} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "silex", "silex.vcxproj", "{5B19C3D2-D3F9-4A39-A1CD-5A557D83E990}" + ProjectSection(ProjectDependencies) = postProject + {3A796AF3-3578-B923-4A26-3E27F5305DC9} = {3A796AF3-3578-B923-4A26-3E27F5305DC9} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pdb_detect", "pdb_detect\pdb_detect.vcxproj", "{17857422-AD82-4D37-A5AF-94C4556935D0}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "browser", "browser.vcxproj", "{239DB654-39CC-46B4-85EC-894F6592BF17}" + ProjectSection(ProjectDependencies) = postProject + {3A796AF3-3578-B923-4A26-3E27F5305DC9} = {3A796AF3-3578-B923-4A26-3E27F5305DC9} + EndProjectSection +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Win32 = Debug|Win32 + Debug|x64 = Debug|x64 + Release|Win32 = Release|Win32 + Release|x64 = Release|x64 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {3A796AF3-3578-B923-4A26-3E27F5305DC9}.Debug|Win32.ActiveCfg = Debug|Win32 + {3A796AF3-3578-B923-4A26-3E27F5305DC9}.Debug|Win32.Build.0 = Debug|Win32 + {3A796AF3-3578-B923-4A26-3E27F5305DC9}.Debug|x64.ActiveCfg = Debug|x64 + {3A796AF3-3578-B923-4A26-3E27F5305DC9}.Debug|x64.Build.0 = Debug|x64 + {3A796AF3-3578-B923-4A26-3E27F5305DC9}.Release|Win32.ActiveCfg = Release|Win32 + {3A796AF3-3578-B923-4A26-3E27F5305DC9}.Release|Win32.Build.0 = Release|Win32 + {3A796AF3-3578-B923-4A26-3E27F5305DC9}.Release|x64.ActiveCfg = Release|x64 + {3A796AF3-3578-B923-4A26-3E27F5305DC9}.Release|x64.Build.0 = Release|x64 + {5B19C3D2-D3F9-4A39-A1CD-5A557D83E990}.Debug|Win32.ActiveCfg = Debug|Win32 + {5B19C3D2-D3F9-4A39-A1CD-5A557D83E990}.Debug|Win32.Build.0 = Debug|Win32 + {5B19C3D2-D3F9-4A39-A1CD-5A557D83E990}.Debug|x64.ActiveCfg = Debug|x64 + {5B19C3D2-D3F9-4A39-A1CD-5A557D83E990}.Debug|x64.Build.0 = Debug|x64 + {5B19C3D2-D3F9-4A39-A1CD-5A557D83E990}.Release|Win32.ActiveCfg = Release|Win32 + {5B19C3D2-D3F9-4A39-A1CD-5A557D83E990}.Release|Win32.Build.0 = Release|Win32 + {5B19C3D2-D3F9-4A39-A1CD-5A557D83E990}.Release|x64.ActiveCfg = Release|x64 + {5B19C3D2-D3F9-4A39-A1CD-5A557D83E990}.Release|x64.Build.0 = Release|x64 + {17857422-AD82-4D37-A5AF-94C4556935D0}.Debug|Win32.ActiveCfg = Release|Win32 + {17857422-AD82-4D37-A5AF-94C4556935D0}.Debug|Win32.Build.0 = Release|Win32 + {17857422-AD82-4D37-A5AF-94C4556935D0}.Debug|x64.ActiveCfg = Release|x64 + {17857422-AD82-4D37-A5AF-94C4556935D0}.Debug|x64.Build.0 = Release|x64 + {17857422-AD82-4D37-A5AF-94C4556935D0}.Release|Win32.ActiveCfg = Release|Win32 + {17857422-AD82-4D37-A5AF-94C4556935D0}.Release|Win32.Build.0 = Release|Win32 + {17857422-AD82-4D37-A5AF-94C4556935D0}.Release|x64.ActiveCfg = Release|x64 + {17857422-AD82-4D37-A5AF-94C4556935D0}.Release|x64.Build.0 = Release|x64 + {239DB654-39CC-46B4-85EC-894F6592BF17}.Debug|Win32.ActiveCfg = Debug|Win32 + {239DB654-39CC-46B4-85EC-894F6592BF17}.Debug|Win32.Build.0 = Debug|Win32 + {239DB654-39CC-46B4-85EC-894F6592BF17}.Debug|x64.ActiveCfg = Debug|x64 + {239DB654-39CC-46B4-85EC-894F6592BF17}.Debug|x64.Build.0 = Debug|x64 + {239DB654-39CC-46B4-85EC-894F6592BF17}.Release|Win32.ActiveCfg = Release|Win32 + {239DB654-39CC-46B4-85EC-894F6592BF17}.Release|Win32.Build.0 = Release|Win32 + {239DB654-39CC-46B4-85EC-894F6592BF17}.Release|x64.ActiveCfg = Release|x64 + {239DB654-39CC-46B4-85EC-894F6592BF17}.Release|x64.Build.0 = Release|x64 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Silo.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Silo.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Silo.vcxproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Silo.vcxproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,287 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + Win32Proj + {3A796AF3-3578-B923-4A26-3E27F5305DC9} + + + + DynamicLibrary + true + v110 + + + DynamicLibrary + true + v110 + + + DynamicLibrary + false + v110 + + + DynamicLibrary + false + v110 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + true + silohdf5 + $(SolutionDir)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(ProjectName)\ + + + true + silohdf5 + $(SolutionDir)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(ProjectName)\ + + + false + silohdf5 + $(SolutionDir)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(ProjectName)\ + + + false + silohdf5 + $(SolutionDir)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\$(ProjectName)\ + + + + WIN32;_DEBUG;_WINDOWS;_USRDLL;SILO_EXPORTS;LITE_EXPORTS;%(PreprocessorDefinitions) + MultiThreadedDebugDLL + Level3 + ProgramDatabase + Disabled + + + MachineX86 + true + Windows + $(OutDir);%(AdditionalLibraryDirectories) + %(AdditionalDependencies) + + + + + WIN32;_DEBUG;_WINDOWS;_USRDLL;SILO_EXPORTS;LITE_EXPORTS;%(PreprocessorDefinitions) + MultiThreadedDebugDLL + Level3 + ProgramDatabase + Disabled + + + true + Windows + $(OutDir);%(AdditionalLibraryDirectories) + %(AdditionalDependencies); + /NODEFAULTLIB:msvcrtd; libcmtd + + + + + WIN32;NDEBUG;_WINDOWS;_USRDLL;SILO_EXPORTS;LITE_EXPORTS;%(PreprocessorDefinitions) + MultiThreadedDLL + Level3 + ProgramDatabase + + + MachineX86 + false + Windows + true + true + $(OutDir);%(AdditionalLibraryDirectories) + %(AdditionalDependencies) + NotSet + + + + + WIN32;NDEBUG;_WINDOWS;_USRDLL;SILO_EXPORTS;LITE_EXPORTS;%(PreprocessorDefinitions) + MultiThreadedDLL + Level3 + ProgramDatabase + ..\..\src\fpzip;..\..\src\hzip;%(AdditionalIncludeDirectories) + + + false + Windows + true + true + %(AdditionalDependencies) + $(OutDir);%(AdditionalLibraryDirectories) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Silo.vcxproj.filters silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Silo.vcxproj.filters --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Silo.vcxproj.filters 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Silo.vcxproj.filters 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,394 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + {93995380-89BD-4b04-88EB-625FBE52EBFB} + h;hpp;hxx;hm;inl;inc;xsd + + + {b44642f2-0e22-4359-b89d-c614990994e6} + + + {0ce27567-4be8-499f-b4ed-a9691b6ee052} + + + {a5a05c0d-c9ff-479d-b704-e8e36367455a} + + + {8e94745c-5c88-4e93-85dd-2deea4931e36} + + + {5cfee3fc-3f25-4ace-9c79-58ec311615c4} + + + {80f224fd-98b4-4c51-b15d-e90068310f94} + + + {8d5272ec-4b82-49bf-9f22-3133a17cc2ad} + + + {6f7b3441-fd7c-4882-b55e-2a5298100280} + + + {33c5d424-dd8d-4a6d-9e66-fd4b812b7486} + + + {0e50d8e5-08a2-43c9-bc5c-83cbfe085c4a} + + + {f1de1134-82ac-4e1a-ac70-9072c99a7dae} + + + {ffad09ef-114d-4a38-9021-b8ef6275aabb} + + + {0c828d0b-349d-4989-91c7-0d9a310af1b4} + + + {9aa3c521-e2aa-4070-96f7-83975de1dfad} + + + {57a6a43e-8406-4fdf-9c59-35197de4a97f} + + + {c5f18c01-2ec3-4865-a621-a61bc6e942cc} + + + {9476e32e-ba96-4459-a75a-254258fcc5ef} + + + {b6fe0391-5082-4b6b-aa8f-30a7a7f170b9} + + + {dde8ddc9-470a-4ae4-9697-c2033fcc730c} + + + {5c033d34-5b73-4ebf-9dfe-f80d0599db6d} + + + {99f571f9-ae34-4b74-bfc8-7e6e1d1a72aa} + + + {bed62ec2-c976-4850-8d57-bd00ec661159} + + + {b32bd034-316c-4299-9839-7d2be066ae55} + + + {a912ddf3-dd06-417f-a708-bc075541a3d8} + + + + + Source Files\silo + + + Source Files\silo + + + Source Files\silo + + + Source Files\silo + + + Source Files\silo + + + Source Files\taurus_drv + + + Source Files\taurus_drv + + + Source Files\score + + + Source Files\score + + + Source Files\score + + + Source Files\score + + + Source Files\score + + + Source Files\pdb_drv + + + Source Files\pdb + + + Source Files\pdb + + + Source Files\pdb + + + Source Files\pdb + + + Source Files\pdb + + + Source Files\pdb + + + Source Files\pdb + + + Source Files\pdb + + + Source Files\pdb + + + Source Files\pdb + + + Source Files\hzip + + + Source Files\hzip + + + Source Files\hzip + + + Source Files\hzip + + + Source Files\hzip + + + Source Files\hzip + + + Source Files\hzip + + + Source Files\hzip + + + Source Files\hzip + + + Source Files\hzip + + + Source Files\hzip + + + Source Files\hdf5_drv + + + Source Files\hdf5_drv + + + Source Files\fpzip + + + Source Files\fpzip + + + Source Files\fpzip + + + Source Files\fpzip + + + Source Files\fpzip + + + Source Files\fpzip + + + Source Files\filters + + + Source Files\filters + + + Source Files\unknown + + + Source Files\debug + + + Source Files\netcdf + + + Source Files\netcdf + + + Source Files\netcdf + + + Source Files\netcdf + + + Source Files\netcdf + + + Source Files\netcdf + + + + + Header Files\silo + + + Header Files\silo + + + Header Files\silo + + + Header Files\silo + + + Header Files\silo + + + Header Files\taurus_drv + + + Header Files\taurus_drv + + + Header Files\score + + + Header Files\pdb_drv + + + Header Files\pdb + + + Header Files\filters + + + Header Files\fpzip + + + Header Files\fpzip + + + Header Files\fpzip + + + Header Files\fpzip + + + Header Files\fpzip + + + Header Files\fpzip + + + Header Files\fpzip + + + Header Files\fpzip + + + Header Files\fpzip + + + Header Files\fpzip + + + Header Files\fpzip + + + Header Files\fpzip + + + Header Files\fpzip + + + Header Files\fpzip + + + Header Files\hdf5_drv + + + Header Files\hdf5_drv + + + Header Files\hzip + + + Header Files\hzip + + + Header Files\hzip + + + Header Files\hzip + + + Header Files\hzip + + + Header Files\hzip + + + Header Files\hzip + + + Header Files\hzip + + + Header Files\hzip + + + Header Files\hzip + + + Header Files\hzip + + + Header Files\hzip + + + Header Files\hzip + + + Header Files\hzip + + + Header Files\hzip + + + Header Files\hzip + + + Header Files\hzip + + + Header Files\unknown + + + Header Files\debug + + + Header Files\netcdf + + + Header Files\netcdf + + + + + Header Files\silo + + + diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/alltypes.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/alltypes.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/alltypes.vcxproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/alltypes.vcxproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,257 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {627C8E54-0ABD-4B8A-B76B-0BD13F5E684B} + alltypes + + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>11.0.61030.0 + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + + $(OutDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + EditAndContinue + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + ProgramDatabase + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + + + + + diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/arbpoly3d.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/arbpoly3d.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/arbpoly3d.vcxproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/arbpoly3d.vcxproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,257 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {BF87D83F-575E-49B5-87BD-02C6E581FD6A} + arbpoly3d + + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>11.0.61030.0 + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + + $(OutDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + EditAndContinue + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + ProgramDatabase + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + + + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/arbpoly.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/arbpoly.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/arbpoly.vcxproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/arbpoly.vcxproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,257 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {970CE296-FB4C-4990-8FC7-F26078998302} + arbpoly + + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>11.0.61030.0 + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + + $(OutDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + EditAndContinue + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + ProgramDatabase + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + + + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/array_f.vfproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/array_f.vfproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/array_f.vfproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/array_f.vfproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,52 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/array.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/array.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/array.vcxproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/array.vcxproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,257 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {CB409787-8ACF-4854-A2AB-6CD727E7120D} + array + + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>11.0.61030.0 + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + + $(OutDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + EditAndContinue + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + ProgramDatabase + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + + + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/compression.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/compression.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/compression.vcxproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/compression.vcxproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,257 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {AA9DE89B-47C8-4164-944A-6D42B4AF0FEB} + compression + + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>11.0.61030.0 + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + + $(OutDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + EditAndContinue + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + ProgramDatabase + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + + + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/CopyTestDependencies.bat silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/CopyTestDependencies.bat --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/CopyTestDependencies.bat 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/CopyTestDependencies.bat 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,53 @@ +@echo off +set HDF5_IN=%1\hdf5.dll +set ZLIB_IN=%2\zlib.dll +set SZIP_IN=%3\szlibdll.dll +set SILO_IN=%4\silohdf5.dll + +set HDF5_OUT=%5\hdf5.dll +set ZLIB_OUT=%5\zlib.dll +set SZIP_OUT=%5\szlibdll.dll +set SILO_OUT=%5\silohdf5.dll + +set PION_IN=%5\..\..\..\tests\pion0244.silo +set PION_OUT=%5\pion0244.silo + +set Z1PLT_IN=%5\..\..\..\tests\z1plt.silo +set Z1PLT_OUT=%5\z1plt + +echo ************************************************************************ +echo copying dependent libs to test directory +echo ... + +if not exist %HDF5_OUT% ( + copy %HDF5_IN% %HDF5_OUT% +) + +if not exist %ZLIB_OUT% ( + copy %ZLIB_IN% %ZLIB_OUT% +) + +if not exist %SZIP_OUT% ( + copy %SZIP_IN% %SZIP_OUT% +) + +if not exist %SILO_OUT% ( + copy %SILO_IN% %SILO_OUT% +) + +echo ************************************************************************ +echo copying test data files to test directory +echo ... from + +if not exist %PION_OUT% ( + copy %PION_IN% %PION_OUT% +) + +if not exist %Z1PLT_OUT% ( + copy %Z1PLT_IN% %Z1PLT_OUT% +) + + +echo ... +echo Done. +echo ************************************************************************ diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/csgmesh_f.vfproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/csgmesh_f.vfproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/csgmesh_f.vfproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/csgmesh_f.vfproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,52 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/csg.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/csg.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/csg.vcxproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/csg.vcxproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,257 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {6DE8948E-8CF8-4650-9749-1C21066AA957} + csg + + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>11.0.61030.0 + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + + $(OutDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + EditAndContinue + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + ProgramDatabase + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + + + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/curve_f.vfproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/curve_f.vfproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/curve_f.vfproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/curve_f.vfproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,52 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/dirtest.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/dirtest.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/dirtest.vcxproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/dirtest.vcxproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,258 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {B8FE1ABF-E1AD-41C7-AFAE-333BAB3636E1} + dirtest + + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>11.0.61030.0 + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + + $(OutDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + EditAndContinue + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + ProgramDatabase + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + + + + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/empty.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/empty.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/empty.vcxproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/empty.vcxproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,257 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {F167FF6B-B926-43D7-A5DA-086B87336B06} + empty + + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>11.0.61030.0 + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + + $(OutDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + EditAndContinue + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + ProgramDatabase + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + + + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/extface.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/extface.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/extface.vcxproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/extface.vcxproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,257 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {3482A43B-3A21-4583-88C4-45A4422E2307} + extface + + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>11.0.61030.0 + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + + $(OutDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + EditAndContinue + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + ProgramDatabase + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + + + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/grab.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/grab.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/grab.vcxproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/grab.vcxproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,265 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {DCFFC0C8-1C81-4016-8364-1678FAB1D2D2} + grab + + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>11.0.61030.0 + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + + $(OutDir)$(TargetName).tlb + + + + Disabled + $(SolutionDir)..\..\include;$(HDF5_INC_DIR);%(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + EditAndContinue + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;hdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);$(HDF5_LIB_DIR);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + Disabled + $(SolutionDir)..\..\include;$(HDF5_INC_DIR_X64);%(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + ProgramDatabase + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;hdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);$(HDF5_LIB_DIR_X64);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + $(SolutionDir)..\..\include\;$(HDF5_INC_DIR);%(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;hdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);$(HDF5_LIB_DIR);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + $(SolutionDir)..\..\include;$(HDF5_INC_DIR_X64);%(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;hdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);$(HDF5_LIB_DIR_X64);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + + + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/group_test.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/group_test.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/group_test.vcxproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/group_test.vcxproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,257 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {69340E63-F15C-4A33-85B7-344666F8F25C} + group_test + + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>11.0.61030.0 + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + + $(OutDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + EditAndContinue + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + ProgramDatabase + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + + + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/largefile.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/largefile.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/largefile.vcxproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/largefile.vcxproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,257 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {EA0DA3EC-DD78-4C57-A0A9-F0EEAE35A85A} + largefile + + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>11.0.61030.0 + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + + $(OutDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + EditAndContinue + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + ProgramDatabase + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + + + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/listtypes.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/listtypes.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/listtypes.vcxproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/listtypes.vcxproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,266 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {A79DA077-0644-4DA7-8D8A-BB115597F474} + listtypes + + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>11.0.61030.0 + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + + $(OutDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + EditAndContinue + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + ProgramDatabase + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + + + + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/mat3d_3across.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/mat3d_3across.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/mat3d_3across.vcxproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/mat3d_3across.vcxproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,257 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {CEA025B3-7259-4852-980F-CB39E8206304} + mat3d_3across + + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>11.0.61030.0 + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + + $(OutDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + EditAndContinue + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + ProgramDatabase + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + + + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/mat_f.vfproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/mat_f.vfproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/mat_f.vfproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/mat_f.vfproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,52 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/merge_block.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/merge_block.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/merge_block.vcxproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/merge_block.vcxproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,257 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {2B22FE6C-0C77-445A-8320-50EEF60EEF7D} + merge_block + + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>11.0.61030.0 + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + + $(OutDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + EditAndContinue + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + ProgramDatabase + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + + + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/mmadjacency.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/mmadjacency.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/mmadjacency.vcxproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/mmadjacency.vcxproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,257 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {809F6E22-2B80-4264-A220-7974EC9EDBBF} + mmadjacency + + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>11.0.61030.0 + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + + $(OutDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + EditAndContinue + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + ProgramDatabase + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + + + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/multi_file.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/multi_file.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/multi_file.vcxproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/multi_file.vcxproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,257 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {8CC26B54-D539-4A0A-B461-26F074B790FD} + multi_file + + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>11.0.61030.0 + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + + $(OutDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + EditAndContinue + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + ProgramDatabase + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + + + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/multispec.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/multispec.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/multispec.vcxproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/multispec.vcxproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,257 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {2D46EF91-58B2-43B5-ADD7-6908D6794578} + mutlispec + + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>11.0.61030.0 + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + + $(OutDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + EditAndContinue + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + ProgramDatabase + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + + + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/multi_test.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/multi_test.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/multi_test.vcxproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/multi_test.vcxproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,256 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {7535A535-FDEC-4448-AF9C-C031C9EA8459} + + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>11.0.61030.0 + + + $(SolutionDir)$(Platform)\$(Configuration)\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)$(Platform)\$(Configuration)\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)$(Platform)\$(Configuration)\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + $(SolutionDir)$(Platform)\$(Configuration)\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + + $(OutDir)multi_test.tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(OutDir)multi_test.pch + $(OutDir) + $(OutDir) + $(OutDir)multi_test + Level3 + true + EditAndContinue + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(OutDir)multi_test.pdb + Console + false + + MachineX86 + + + + + X64 + $(OutDir)multi_test.tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(OutDir)multi_test.pch + $(OutDir) + $(OutDir) + $(OutDir)multi_test + Level3 + true + ProgramDatabase + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(OutDir)multi_test.pdb + Console + false + + MachineX64 + + + + + $(OutDir)multi_test.tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(OutDir)multi_test.pch + $(OutDir) + $(OutDir) + $(OutDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(OutDir)multi_test.pdb + Console + false + + MachineX86 + + + + + X64 + $(OutDir)multi_test.tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(OutDir)multi_test.pch + $(OutDir) + $(OutDir) + $(OutDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(OutDir)multi_test.pdb + Console + false + + MachineX64 + + + + + + + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/namescheme.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/namescheme.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/namescheme.vcxproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/namescheme.vcxproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,257 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {D839F6C1-3736-4269-A5E7-30B2BC1CBCCD} + namescheme + + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>11.0.61030.0 + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + + $(OutDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + EditAndContinue + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + ProgramDatabase + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + + + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/obj.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/obj.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/obj.vcxproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/obj.vcxproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,257 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {AC0F21DF-ECA4-4B17-9829-59634B68B0D2} + obj + + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>11.0.61030.0 + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + + $(OutDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + EditAndContinue + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + ProgramDatabase + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + + + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/onehex.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/onehex.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/onehex.vcxproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/onehex.vcxproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,257 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {3863899B-7F9F-4823-9383-AE2205DCB054} + onehex + + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>11.0.61030.0 + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + + $(OutDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + EditAndContinue + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + ProgramDatabase + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + + + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/oneprism.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/oneprism.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/oneprism.vcxproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/oneprism.vcxproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,257 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {4BCA7F35-0742-424F-8E50-39B934312F8F} + oneprism + + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>11.0.61030.0 + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + + $(OutDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + EditAndContinue + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + ProgramDatabase + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + + + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/onepyramid.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/onepyramid.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/onepyramid.vcxproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/onepyramid.vcxproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,257 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {2AFC873D-E906-4145-A0CB-6264E8CAE97D} + onepyramid + + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>11.0.61030.0 + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + + $(OutDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + EditAndContinue + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + ProgramDatabase + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + + + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/onetet.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/onetet.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/onetet.vcxproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/onetet.vcxproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,257 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {A76CCA62-BC5F-44F8-B090-9C45DA138680} + onetet + + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>11.0.61030.0 + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + + $(OutDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + EditAndContinue + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + ProgramDatabase + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + + + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/partial_io.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/partial_io.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/partial_io.vcxproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/partial_io.vcxproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,257 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {4F6A7EC6-F141-4512-B2A8-D108CBD6FAC1} + partial_io + + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>11.0.61030.0 + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + + $(OutDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + EditAndContinue + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + ProgramDatabase + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + + + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/point_f.vfproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/point_f.vfproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/point_f.vfproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/point_f.vfproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,52 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/point.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/point.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/point.vcxproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/point.vcxproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,257 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {025CFEA1-6C43-404D-9DA4-5392A17FA162} + point + + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>11.0.61030.0 + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + + $(OutDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + EditAndContinue + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + ProgramDatabase + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + + + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/polyzl.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/polyzl.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/polyzl.vcxproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/polyzl.vcxproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,257 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {8C6BC636-FF71-4D58-9D63-E12265523982} + polyzl + + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>11.0.61030.0 + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + + $(OutDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + EditAndContinue + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + ProgramDatabase + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + + + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/Preparation.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/Preparation.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/Preparation.vcxproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/Preparation.vcxproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,123 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {EF8EC721-3949-484B-862F-2BB07460526D} + Preparation + Win32Proj + + + + Utility + v110 + Unicode + true + + + Utility + v110 + Unicode + + + Utility + v110 + Unicode + true + + + Utility + v110 + Unicode + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>11.0.61030.0 + + + $(SolutionDir)$(Configuration)\ + $(Configuration)\ + + + $(SolutionDir)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\ + + + $(SolutionDir)$(Configuration)\ + $(Configuration)\ + + + $(SolutionDir)$(Platform)\$(Configuration)\ + $(Platform)\$(Configuration)\ + + + + CopyTestDependencies.bat $(HDF5_BIN_DIR) $(ZLIB_LIB_DIR) $(SZIP_LIB_DIR) $(SolutionDir)..\$(Platform)\$(Configuration) $(SolutionDir)..\bin + + + + + CopyTestDependencies.bat $(HDF5_BIN_DIR_X64) $(ZLIB_LIB_DIR_X64) $(SZIP_LIB_DIR_X64) $(SolutionDir)..\$(Platform)\$(Configuration) $(SolutionDir)..\bin + + + X64 + + + + + CopyTestDependencies.bat $(HDF5_BIN_DIR) $(ZLIB_LIB_DIR) $(SZIP_LIB_DIR) $(SolutionDir)..\$(Platform)\$(Configuration) $(SolutionDir)..\bin + + + + + CopyTestDependencies.bat $(HDF5_BIN_DIR_X64) $(ZLIB_LIB_DIR_X64) $(SZIP_LIB_DIR_X64) $(SolutionDir)..\$(Platform)\$(Configuration) $(SolutionDir)..\bin + + + X64 + + + + + + + + diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/quad_f.vfproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/quad_f.vfproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/quad_f.vfproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/quad_f.vfproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,52 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/quad.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/quad.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/quad.vcxproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/quad.vcxproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,258 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {4D5EA26A-8356-4665-A13D-51CCEE2BA7F4} + quad + + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>11.0.61030.0 + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + + $(OutDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + EditAndContinue + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + ProgramDatabase + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + + + + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/sami.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/sami.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/sami.vcxproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/sami.vcxproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,265 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {B3C7F964-68B8-4F8C-B5E7-7607836FB101} + sami + + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>11.0.61030.0 + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + + $(OutDir)$(TargetName).tlb + + + + Disabled + $(HDF5_INC_DIR);%(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + EditAndContinue + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;hdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);$(HDF5_LIB_DIR);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + Disabled + $(HDF5_INC_DIR_X64);%(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + ProgramDatabase + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;hdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);$(HDF5_LIB_DIR_X64);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + $(HDF5_INC_DIR);%(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;hdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);$(HDF5_LIB_DIR);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + $(HDF5_INC_DIR_X64);%(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;hdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);$(HDF5_LIB_DIR_X64);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + + + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/simple.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/simple.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/simple.vcxproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/simple.vcxproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,257 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {7AB46C61-04D5-4E77-AD3F-E7726F3E173A} + simple + + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>11.0.61030.0 + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + + $(OutDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + EditAndContinue + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + ProgramDatabase + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + + + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/specmix.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/specmix.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/specmix.vcxproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/specmix.vcxproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,257 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {27C64509-94EB-406D-9978-93AE531CEB1E} + specmix + + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>11.0.61030.0 + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + + $(OutDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + EditAndContinue + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + ProgramDatabase + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + + + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/spec.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/spec.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/spec.vcxproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/spec.vcxproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,257 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {7A5F618C-F98A-4F8E-BBC7-C4F5C6BCD5A4} + spec + + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>11.0.61030.0 + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + + $(OutDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + EditAndContinue + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + ProgramDatabase + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + + + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/subhex.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/subhex.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/subhex.vcxproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/subhex.vcxproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,257 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {8C02951E-155B-4D09-A1DD-F98695F02A0E} + subhex + + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>11.0.61030.0 + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + + $(OutDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + EditAndContinue + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + ProgramDatabase + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + + + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/testall_f.vfproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/testall_f.vfproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/testall_f.vfproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/testall_f.vfproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,52 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/testall.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/testall.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/testall.vcxproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/testall.vcxproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,257 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {E4105EA9-2AB2-4656-B966-01F16961A14B} + testall + + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>11.0.61030.0 + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + + $(OutDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + EditAndContinue + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + ProgramDatabase + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + + + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/testfs.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/testfs.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/testfs.vcxproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/testfs.vcxproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,257 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {619248C9-5C52-48D3-BD1C-4BE670F6B67F} + testfs + + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>11.0.61030.0 + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + + $(OutDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + EditAndContinue + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + ProgramDatabase + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + + + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/TestIncludes.props silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/TestIncludes.props --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/TestIncludes.props 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/TestIncludes.props 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,15 @@ + + + + + + + <_ProjectFileVersion>11.0.61030.0 + + + + $(SolutionDir)..\..\include;$(SolutionDir)..\..\..\src\silo;$(SolutionDir)..\..\..\tests;%(AdditionalIncludeDirectories) + + + + diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/testpdb.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/testpdb.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/testpdb.vcxproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/testpdb.vcxproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,257 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {29110B58-9FD5-4A8E-B9F7-064650EE16C6} + testpdb + + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>11.0.61030.0 + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + + $(OutDir)$(TargetName).tlb + + + + Disabled + $(SolutionDir)..\..\..\src\score;$(SolutionDir)..\..\..\src\pdb;%(AdditionalIncludeDirectories) + WIN32;_CONSOLE;PDB_LITE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + EditAndContinue + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + Disabled + $(SolutionDir)..\..\..\src\score;$(SolutionDir)..\..\..\src\pdb;%(AdditionalIncludeDirectories) + WIN32;_CONSOLE;PDB_LITE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + ProgramDatabase + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + $(SolutionDir)..\..\..\src\score;$(SolutionDir)..\..\..\src\pdb;%(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;PDB_LITE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + $(SoltuionDir)..\..\..\src\score;$(SoltuionDir)..\..\..\src\pdb;%(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;PDB_LITE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + + + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/TestReadMask.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/TestReadMask.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/TestReadMask.vcxproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/TestReadMask.vcxproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,257 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {D47B6498-6A8D-4E87-A3B6-C6D08DF29FE2} + TestReadMask + + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>11.0.61030.0 + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + + $(OutDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + EditAndContinue + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + ProgramDatabase + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + + + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/Tests.sln silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/Tests.sln --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/Tests.sln 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/Tests.sln 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,618 @@ +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 2012 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "wave", "wave.vcxproj", "{3D443B05-403C-4907-8F50-DC396DB6BB23}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "alltypes", "alltypes.vcxproj", "{627C8E54-0ABD-4B8A-B76B-0BD13F5E684B}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "array", "array.vcxproj", "{CB409787-8ACF-4854-A2AB-6CD727E7120D}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "compression", "compression.vcxproj", "{AA9DE89B-47C8-4164-944A-6D42B4AF0FEB}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "csg", "csg.vcxproj", "{6DE8948E-8CF8-4650-9749-1C21066AA957}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "extface", "extface.vcxproj", "{3482A43B-3A21-4583-88C4-45A4422E2307}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testall", "testall.vcxproj", "{E4105EA9-2AB2-4656-B966-01F16961A14B}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "grab", "grab.vcxproj", "{DCFFC0C8-1C81-4016-8364-1678FAB1D2D2}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "largefile", "largefile.vcxproj", "{EA0DA3EC-DD78-4C57-A0A9-F0EEAE35A85A}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "listtypes", "listtypes.vcxproj", "{A79DA077-0644-4DA7-8D8A-BB115597F474}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mat3d_3across", "mat3d_3across.vcxproj", "{CEA025B3-7259-4852-980F-CB39E8206304}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "merge_block", "merge_block.vcxproj", "{2B22FE6C-0C77-445A-8320-50EEF60EEF7D}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mmadjacency", "mmadjacency.vcxproj", "{809F6E22-2B80-4264-A220-7974EC9EDBBF}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "multi_file", "multi_file.vcxproj", "{8CC26B54-D539-4A0A-B461-26F074B790FD}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "multi_test", "multi_test.vcxproj", "{7535A535-FDEC-4448-AF9C-C031C9EA8459}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "multispec", "multispec.vcxproj", "{2D46EF91-58B2-43B5-ADD7-6908D6794578}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "obj", "obj.vcxproj", "{AC0F21DF-ECA4-4B17-9829-59634B68B0D2}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "onehex", "onehex.vcxproj", "{3863899B-7F9F-4823-9383-AE2205DCB054}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "oneprism", "oneprism.vcxproj", "{4BCA7F35-0742-424F-8E50-39B934312F8F}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "onepyramid", "onepyramid.vcxproj", "{2AFC873D-E906-4145-A0CB-6264E8CAE97D}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "onetet", "onetet.vcxproj", "{A76CCA62-BC5F-44F8-B090-9C45DA138680}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "partial_io", "partial_io.vcxproj", "{4F6A7EC6-F141-4512-B2A8-D108CBD6FAC1}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "point", "point.vcxproj", "{025CFEA1-6C43-404D-9DA4-5392A17FA162}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "polyzl", "polyzl.vcxproj", "{8C6BC636-FF71-4D58-9D63-E12265523982}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "quad", "quad.vcxproj", "{4D5EA26A-8356-4665-A13D-51CCEE2BA7F4}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sami", "sami.vcxproj", "{B3C7F964-68B8-4F8C-B5E7-7607836FB101}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "simple", "simple.vcxproj", "{7AB46C61-04D5-4E77-AD3F-E7726F3E173A}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spec", "spec.vcxproj", "{7A5F618C-F98A-4F8E-BBC7-C4F5C6BCD5A4}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "specmix", "specmix.vcxproj", "{27C64509-94EB-406D-9978-93AE531CEB1E}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "subhex", "subhex.vcxproj", "{8C02951E-155B-4D09-A1DD-F98695F02A0E}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testpdb", "testpdb.vcxproj", "{29110B58-9FD5-4A8E-B9F7-064650EE16C6}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "TestReadMask", "TestReadMask.vcxproj", "{D47B6498-6A8D-4E87-A3B6-C6D08DF29FE2}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "twohex", "twohex.vcxproj", "{64A6CE79-710F-405C-AAE8-F604E74A4374}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ucd1d", "ucd1d.vcxproj", "{C065DCD0-DE87-4B6E-A1E6-8F7EDB272D53}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ucd", "ucd.vcxproj", "{9B955616-D58C-4ED8-AB6F-FBA74E768B54}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ucdsamp3", "ucdsamp3.vcxproj", "{94D10A14-5A9B-4E1E-B204-DE3196750126}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "version", "version.vcxproj", "{CBBCFD38-0F91-4CA2-8CBF-2833AC284438}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "dirtest", "dirtest.vcxproj", "{B8FE1ABF-E1AD-41C7-AFAE-333BAB3636E1}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "group_test", "group_test.vcxproj", "{69340E63-F15C-4A33-85B7-344666F8F25C}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "namescheme", "namescheme.vcxproj", "{D839F6C1-3736-4269-A5E7-30B2BC1CBCCD}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Preparation", "Preparation.vcxproj", "{EF8EC721-3949-484B-862F-2BB07460526D}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "arbpoly3d", "arbpoly3d.vcxproj", "{BF87D83F-575E-49B5-87BD-02C6E581FD6A}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "arbpoly", "arbpoly.vcxproj", "{970CE296-FB4C-4990-8FC7-F26078998302}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testfs", "testfs.vcxproj", "{619248C9-5C52-48D3-BD1C-4BE670F6B67F}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "empty", "empty.vcxproj", "{F167FF6B-B926-43D7-A5DA-086B87336B06}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "FortranTests", "FortranTests", "{F5BE7648-E253-49AE-B86B-F651383ED45B}" +EndProject +Project("{6989167D-11E4-40FE-8C1A-2192A86A7E90}") = "array_f", "array_f.vfproj", "{0BBBC8AF-EA63-4B58-AAD4-2D4F0CC4DA85}" +EndProject +Project("{6989167D-11E4-40FE-8C1A-2192A86A7E90}") = "csgmesh_f", "csgmesh_f.vfproj", "{E42AC159-E83D-4812-BFE2-E5196DC0FA82}" +EndProject +Project("{6989167D-11E4-40FE-8C1A-2192A86A7E90}") = "curve_f", "curve_f.vfproj", "{5A8CC395-8D24-4D00-8208-079FFCA0BDA5}" +EndProject +Project("{6989167D-11E4-40FE-8C1A-2192A86A7E90}") = "mat_f", "mat_f.vfproj", "{7B759F0D-723F-4BFA-B99A-21AD2BC7B45B}" +EndProject +Project("{6989167D-11E4-40FE-8C1A-2192A86A7E90}") = "point_f", "point_f.vfproj", "{7974C002-4D5E-4442-8DE6-93D3F4C777A9}" +EndProject +Project("{6989167D-11E4-40FE-8C1A-2192A86A7E90}") = "quad_f", "quad_f.vfproj", "{CE5B119E-30CC-4D89-9C51-443047010B49}" +EndProject +Project("{6989167D-11E4-40FE-8C1A-2192A86A7E90}") = "testall_f", "testall_f.vfproj", "{8AE7FF32-0E1C-4192-9CF2-A674F81A68E5}" +EndProject +Project("{6989167D-11E4-40FE-8C1A-2192A86A7E90}") = "ucd_f", "ucd_f.vfproj", "{6A0FF443-4276-4204-BA54-32E85C59D941}" +EndProject +Project("{6989167D-11E4-40FE-8C1A-2192A86A7E90}") = "array_f90", "array_f90.vfproj", "{6E62E7BF-D2E0-4E24-9836-D5FB1032BC7B}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "arbpoly2d", "arbpoly2d.vcxproj", "{C86C207F-7D5B-4950-B058-476CC008F27E}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "efcentering", "efcentering.vcxproj", "{4F7E7FAD-BDF0-4C0E-87F4-24E19265304F}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "majorder", "majorder.vcxproj", "{E8BA727C-3251-41FC-9587-1588E1950E2E}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "readstuff", "readstuff.vcxproj", "{000E8237-2470-4133-A39F-CFC19F595DBF}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "realloc_obj_and_opts", "realloc_obj_and_opts.vcxproj", "{4491049B-1A5D-492C-836F-32871AB8FE62}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Win32 = Debug|Win32 + Debug|x64 = Debug|x64 + Release|Win32 = Release|Win32 + Release|x64 = Release|x64 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {3D443B05-403C-4907-8F50-DC396DB6BB23}.Debug|Win32.ActiveCfg = Debug|Win32 + {3D443B05-403C-4907-8F50-DC396DB6BB23}.Debug|Win32.Build.0 = Debug|Win32 + {3D443B05-403C-4907-8F50-DC396DB6BB23}.Debug|x64.ActiveCfg = Debug|x64 + {3D443B05-403C-4907-8F50-DC396DB6BB23}.Debug|x64.Build.0 = Debug|x64 + {3D443B05-403C-4907-8F50-DC396DB6BB23}.Release|Win32.ActiveCfg = Release|Win32 + {3D443B05-403C-4907-8F50-DC396DB6BB23}.Release|Win32.Build.0 = Release|Win32 + {3D443B05-403C-4907-8F50-DC396DB6BB23}.Release|x64.ActiveCfg = Release|x64 + {3D443B05-403C-4907-8F50-DC396DB6BB23}.Release|x64.Build.0 = Release|x64 + {627C8E54-0ABD-4B8A-B76B-0BD13F5E684B}.Debug|Win32.ActiveCfg = Debug|Win32 + {627C8E54-0ABD-4B8A-B76B-0BD13F5E684B}.Debug|Win32.Build.0 = Debug|Win32 + {627C8E54-0ABD-4B8A-B76B-0BD13F5E684B}.Debug|x64.ActiveCfg = Debug|x64 + {627C8E54-0ABD-4B8A-B76B-0BD13F5E684B}.Debug|x64.Build.0 = Debug|x64 + {627C8E54-0ABD-4B8A-B76B-0BD13F5E684B}.Release|Win32.ActiveCfg = Release|Win32 + {627C8E54-0ABD-4B8A-B76B-0BD13F5E684B}.Release|Win32.Build.0 = Release|Win32 + {627C8E54-0ABD-4B8A-B76B-0BD13F5E684B}.Release|x64.ActiveCfg = Release|x64 + {627C8E54-0ABD-4B8A-B76B-0BD13F5E684B}.Release|x64.Build.0 = Release|x64 + {CB409787-8ACF-4854-A2AB-6CD727E7120D}.Debug|Win32.ActiveCfg = Debug|Win32 + {CB409787-8ACF-4854-A2AB-6CD727E7120D}.Debug|Win32.Build.0 = Debug|Win32 + {CB409787-8ACF-4854-A2AB-6CD727E7120D}.Debug|x64.ActiveCfg = Debug|x64 + {CB409787-8ACF-4854-A2AB-6CD727E7120D}.Debug|x64.Build.0 = Debug|x64 + {CB409787-8ACF-4854-A2AB-6CD727E7120D}.Release|Win32.ActiveCfg = Release|Win32 + {CB409787-8ACF-4854-A2AB-6CD727E7120D}.Release|Win32.Build.0 = Release|Win32 + {CB409787-8ACF-4854-A2AB-6CD727E7120D}.Release|x64.ActiveCfg = Release|x64 + {CB409787-8ACF-4854-A2AB-6CD727E7120D}.Release|x64.Build.0 = Release|x64 + {AA9DE89B-47C8-4164-944A-6D42B4AF0FEB}.Debug|Win32.ActiveCfg = Debug|Win32 + {AA9DE89B-47C8-4164-944A-6D42B4AF0FEB}.Debug|Win32.Build.0 = Debug|Win32 + {AA9DE89B-47C8-4164-944A-6D42B4AF0FEB}.Debug|x64.ActiveCfg = Debug|x64 + {AA9DE89B-47C8-4164-944A-6D42B4AF0FEB}.Debug|x64.Build.0 = Debug|x64 + {AA9DE89B-47C8-4164-944A-6D42B4AF0FEB}.Release|Win32.ActiveCfg = Release|Win32 + {AA9DE89B-47C8-4164-944A-6D42B4AF0FEB}.Release|Win32.Build.0 = Release|Win32 + {AA9DE89B-47C8-4164-944A-6D42B4AF0FEB}.Release|x64.ActiveCfg = Release|x64 + {AA9DE89B-47C8-4164-944A-6D42B4AF0FEB}.Release|x64.Build.0 = Release|x64 + {6DE8948E-8CF8-4650-9749-1C21066AA957}.Debug|Win32.ActiveCfg = Debug|Win32 + {6DE8948E-8CF8-4650-9749-1C21066AA957}.Debug|Win32.Build.0 = Debug|Win32 + {6DE8948E-8CF8-4650-9749-1C21066AA957}.Debug|x64.ActiveCfg = Debug|x64 + {6DE8948E-8CF8-4650-9749-1C21066AA957}.Debug|x64.Build.0 = Debug|x64 + {6DE8948E-8CF8-4650-9749-1C21066AA957}.Release|Win32.ActiveCfg = Release|Win32 + {6DE8948E-8CF8-4650-9749-1C21066AA957}.Release|Win32.Build.0 = Release|Win32 + {6DE8948E-8CF8-4650-9749-1C21066AA957}.Release|x64.ActiveCfg = Release|x64 + {6DE8948E-8CF8-4650-9749-1C21066AA957}.Release|x64.Build.0 = Release|x64 + {3482A43B-3A21-4583-88C4-45A4422E2307}.Debug|Win32.ActiveCfg = Debug|Win32 + {3482A43B-3A21-4583-88C4-45A4422E2307}.Debug|Win32.Build.0 = Debug|Win32 + {3482A43B-3A21-4583-88C4-45A4422E2307}.Debug|x64.ActiveCfg = Debug|x64 + {3482A43B-3A21-4583-88C4-45A4422E2307}.Debug|x64.Build.0 = Debug|x64 + {3482A43B-3A21-4583-88C4-45A4422E2307}.Release|Win32.ActiveCfg = Release|Win32 + {3482A43B-3A21-4583-88C4-45A4422E2307}.Release|Win32.Build.0 = Release|Win32 + {3482A43B-3A21-4583-88C4-45A4422E2307}.Release|x64.ActiveCfg = Release|x64 + {3482A43B-3A21-4583-88C4-45A4422E2307}.Release|x64.Build.0 = Release|x64 + {E4105EA9-2AB2-4656-B966-01F16961A14B}.Debug|Win32.ActiveCfg = Debug|Win32 + {E4105EA9-2AB2-4656-B966-01F16961A14B}.Debug|Win32.Build.0 = Debug|Win32 + {E4105EA9-2AB2-4656-B966-01F16961A14B}.Debug|x64.ActiveCfg = Debug|x64 + {E4105EA9-2AB2-4656-B966-01F16961A14B}.Debug|x64.Build.0 = Debug|x64 + {E4105EA9-2AB2-4656-B966-01F16961A14B}.Release|Win32.ActiveCfg = Release|Win32 + {E4105EA9-2AB2-4656-B966-01F16961A14B}.Release|Win32.Build.0 = Release|Win32 + {E4105EA9-2AB2-4656-B966-01F16961A14B}.Release|x64.ActiveCfg = Release|x64 + {E4105EA9-2AB2-4656-B966-01F16961A14B}.Release|x64.Build.0 = Release|x64 + {DCFFC0C8-1C81-4016-8364-1678FAB1D2D2}.Debug|Win32.ActiveCfg = Debug|Win32 + {DCFFC0C8-1C81-4016-8364-1678FAB1D2D2}.Debug|Win32.Build.0 = Debug|Win32 + {DCFFC0C8-1C81-4016-8364-1678FAB1D2D2}.Debug|x64.ActiveCfg = Debug|x64 + {DCFFC0C8-1C81-4016-8364-1678FAB1D2D2}.Debug|x64.Build.0 = Debug|x64 + {DCFFC0C8-1C81-4016-8364-1678FAB1D2D2}.Release|Win32.ActiveCfg = Release|Win32 + {DCFFC0C8-1C81-4016-8364-1678FAB1D2D2}.Release|Win32.Build.0 = Release|Win32 + {DCFFC0C8-1C81-4016-8364-1678FAB1D2D2}.Release|x64.ActiveCfg = Release|x64 + {DCFFC0C8-1C81-4016-8364-1678FAB1D2D2}.Release|x64.Build.0 = Release|x64 + {EA0DA3EC-DD78-4C57-A0A9-F0EEAE35A85A}.Debug|Win32.ActiveCfg = Debug|Win32 + {EA0DA3EC-DD78-4C57-A0A9-F0EEAE35A85A}.Debug|Win32.Build.0 = Debug|Win32 + {EA0DA3EC-DD78-4C57-A0A9-F0EEAE35A85A}.Debug|x64.ActiveCfg = Debug|x64 + {EA0DA3EC-DD78-4C57-A0A9-F0EEAE35A85A}.Debug|x64.Build.0 = Debug|x64 + {EA0DA3EC-DD78-4C57-A0A9-F0EEAE35A85A}.Release|Win32.ActiveCfg = Release|Win32 + {EA0DA3EC-DD78-4C57-A0A9-F0EEAE35A85A}.Release|Win32.Build.0 = Release|Win32 + {EA0DA3EC-DD78-4C57-A0A9-F0EEAE35A85A}.Release|x64.ActiveCfg = Release|x64 + {EA0DA3EC-DD78-4C57-A0A9-F0EEAE35A85A}.Release|x64.Build.0 = Release|x64 + {A79DA077-0644-4DA7-8D8A-BB115597F474}.Debug|Win32.ActiveCfg = Debug|Win32 + {A79DA077-0644-4DA7-8D8A-BB115597F474}.Debug|Win32.Build.0 = Debug|Win32 + {A79DA077-0644-4DA7-8D8A-BB115597F474}.Debug|x64.ActiveCfg = Debug|x64 + {A79DA077-0644-4DA7-8D8A-BB115597F474}.Debug|x64.Build.0 = Debug|x64 + {A79DA077-0644-4DA7-8D8A-BB115597F474}.Release|Win32.ActiveCfg = Release|Win32 + {A79DA077-0644-4DA7-8D8A-BB115597F474}.Release|Win32.Build.0 = Release|Win32 + {A79DA077-0644-4DA7-8D8A-BB115597F474}.Release|x64.ActiveCfg = Release|x64 + {A79DA077-0644-4DA7-8D8A-BB115597F474}.Release|x64.Build.0 = Release|x64 + {CEA025B3-7259-4852-980F-CB39E8206304}.Debug|Win32.ActiveCfg = Debug|Win32 + {CEA025B3-7259-4852-980F-CB39E8206304}.Debug|Win32.Build.0 = Debug|Win32 + {CEA025B3-7259-4852-980F-CB39E8206304}.Debug|x64.ActiveCfg = Debug|x64 + {CEA025B3-7259-4852-980F-CB39E8206304}.Debug|x64.Build.0 = Debug|x64 + {CEA025B3-7259-4852-980F-CB39E8206304}.Release|Win32.ActiveCfg = Release|Win32 + {CEA025B3-7259-4852-980F-CB39E8206304}.Release|Win32.Build.0 = Release|Win32 + {CEA025B3-7259-4852-980F-CB39E8206304}.Release|x64.ActiveCfg = Release|x64 + {CEA025B3-7259-4852-980F-CB39E8206304}.Release|x64.Build.0 = Release|x64 + {2B22FE6C-0C77-445A-8320-50EEF60EEF7D}.Debug|Win32.ActiveCfg = Debug|Win32 + {2B22FE6C-0C77-445A-8320-50EEF60EEF7D}.Debug|Win32.Build.0 = Debug|Win32 + {2B22FE6C-0C77-445A-8320-50EEF60EEF7D}.Debug|x64.ActiveCfg = Debug|x64 + {2B22FE6C-0C77-445A-8320-50EEF60EEF7D}.Debug|x64.Build.0 = Debug|x64 + {2B22FE6C-0C77-445A-8320-50EEF60EEF7D}.Release|Win32.ActiveCfg = Release|Win32 + {2B22FE6C-0C77-445A-8320-50EEF60EEF7D}.Release|Win32.Build.0 = Release|Win32 + {2B22FE6C-0C77-445A-8320-50EEF60EEF7D}.Release|x64.ActiveCfg = Release|x64 + {2B22FE6C-0C77-445A-8320-50EEF60EEF7D}.Release|x64.Build.0 = Release|x64 + {809F6E22-2B80-4264-A220-7974EC9EDBBF}.Debug|Win32.ActiveCfg = Debug|Win32 + {809F6E22-2B80-4264-A220-7974EC9EDBBF}.Debug|Win32.Build.0 = Debug|Win32 + {809F6E22-2B80-4264-A220-7974EC9EDBBF}.Debug|x64.ActiveCfg = Debug|x64 + {809F6E22-2B80-4264-A220-7974EC9EDBBF}.Debug|x64.Build.0 = Debug|x64 + {809F6E22-2B80-4264-A220-7974EC9EDBBF}.Release|Win32.ActiveCfg = Release|Win32 + {809F6E22-2B80-4264-A220-7974EC9EDBBF}.Release|Win32.Build.0 = Release|Win32 + {809F6E22-2B80-4264-A220-7974EC9EDBBF}.Release|x64.ActiveCfg = Release|x64 + {809F6E22-2B80-4264-A220-7974EC9EDBBF}.Release|x64.Build.0 = Release|x64 + {8CC26B54-D539-4A0A-B461-26F074B790FD}.Debug|Win32.ActiveCfg = Debug|Win32 + {8CC26B54-D539-4A0A-B461-26F074B790FD}.Debug|Win32.Build.0 = Debug|Win32 + {8CC26B54-D539-4A0A-B461-26F074B790FD}.Debug|x64.ActiveCfg = Debug|x64 + {8CC26B54-D539-4A0A-B461-26F074B790FD}.Debug|x64.Build.0 = Debug|x64 + {8CC26B54-D539-4A0A-B461-26F074B790FD}.Release|Win32.ActiveCfg = Release|Win32 + {8CC26B54-D539-4A0A-B461-26F074B790FD}.Release|Win32.Build.0 = Release|Win32 + {8CC26B54-D539-4A0A-B461-26F074B790FD}.Release|x64.ActiveCfg = Release|x64 + {8CC26B54-D539-4A0A-B461-26F074B790FD}.Release|x64.Build.0 = Release|x64 + {7535A535-FDEC-4448-AF9C-C031C9EA8459}.Debug|Win32.ActiveCfg = Debug|Win32 + {7535A535-FDEC-4448-AF9C-C031C9EA8459}.Debug|Win32.Build.0 = Debug|Win32 + {7535A535-FDEC-4448-AF9C-C031C9EA8459}.Debug|x64.ActiveCfg = Debug|x64 + {7535A535-FDEC-4448-AF9C-C031C9EA8459}.Debug|x64.Build.0 = Debug|x64 + {7535A535-FDEC-4448-AF9C-C031C9EA8459}.Release|Win32.ActiveCfg = Release|Win32 + {7535A535-FDEC-4448-AF9C-C031C9EA8459}.Release|Win32.Build.0 = Release|Win32 + {7535A535-FDEC-4448-AF9C-C031C9EA8459}.Release|x64.ActiveCfg = Release|x64 + {7535A535-FDEC-4448-AF9C-C031C9EA8459}.Release|x64.Build.0 = Release|x64 + {2D46EF91-58B2-43B5-ADD7-6908D6794578}.Debug|Win32.ActiveCfg = Debug|Win32 + {2D46EF91-58B2-43B5-ADD7-6908D6794578}.Debug|Win32.Build.0 = Debug|Win32 + {2D46EF91-58B2-43B5-ADD7-6908D6794578}.Debug|x64.ActiveCfg = Debug|x64 + {2D46EF91-58B2-43B5-ADD7-6908D6794578}.Debug|x64.Build.0 = Debug|x64 + {2D46EF91-58B2-43B5-ADD7-6908D6794578}.Release|Win32.ActiveCfg = Release|Win32 + {2D46EF91-58B2-43B5-ADD7-6908D6794578}.Release|Win32.Build.0 = Release|Win32 + {2D46EF91-58B2-43B5-ADD7-6908D6794578}.Release|x64.ActiveCfg = Release|x64 + {2D46EF91-58B2-43B5-ADD7-6908D6794578}.Release|x64.Build.0 = Release|x64 + {AC0F21DF-ECA4-4B17-9829-59634B68B0D2}.Debug|Win32.ActiveCfg = Debug|Win32 + {AC0F21DF-ECA4-4B17-9829-59634B68B0D2}.Debug|Win32.Build.0 = Debug|Win32 + {AC0F21DF-ECA4-4B17-9829-59634B68B0D2}.Debug|x64.ActiveCfg = Debug|x64 + {AC0F21DF-ECA4-4B17-9829-59634B68B0D2}.Debug|x64.Build.0 = Debug|x64 + {AC0F21DF-ECA4-4B17-9829-59634B68B0D2}.Release|Win32.ActiveCfg = Release|Win32 + {AC0F21DF-ECA4-4B17-9829-59634B68B0D2}.Release|Win32.Build.0 = Release|Win32 + {AC0F21DF-ECA4-4B17-9829-59634B68B0D2}.Release|x64.ActiveCfg = Release|x64 + {AC0F21DF-ECA4-4B17-9829-59634B68B0D2}.Release|x64.Build.0 = Release|x64 + {3863899B-7F9F-4823-9383-AE2205DCB054}.Debug|Win32.ActiveCfg = Debug|Win32 + {3863899B-7F9F-4823-9383-AE2205DCB054}.Debug|Win32.Build.0 = Debug|Win32 + {3863899B-7F9F-4823-9383-AE2205DCB054}.Debug|x64.ActiveCfg = Debug|x64 + {3863899B-7F9F-4823-9383-AE2205DCB054}.Debug|x64.Build.0 = Debug|x64 + {3863899B-7F9F-4823-9383-AE2205DCB054}.Release|Win32.ActiveCfg = Release|Win32 + {3863899B-7F9F-4823-9383-AE2205DCB054}.Release|Win32.Build.0 = Release|Win32 + {3863899B-7F9F-4823-9383-AE2205DCB054}.Release|x64.ActiveCfg = Release|x64 + {3863899B-7F9F-4823-9383-AE2205DCB054}.Release|x64.Build.0 = Release|x64 + {4BCA7F35-0742-424F-8E50-39B934312F8F}.Debug|Win32.ActiveCfg = Debug|Win32 + {4BCA7F35-0742-424F-8E50-39B934312F8F}.Debug|Win32.Build.0 = Debug|Win32 + {4BCA7F35-0742-424F-8E50-39B934312F8F}.Debug|x64.ActiveCfg = Debug|x64 + {4BCA7F35-0742-424F-8E50-39B934312F8F}.Debug|x64.Build.0 = Debug|x64 + {4BCA7F35-0742-424F-8E50-39B934312F8F}.Release|Win32.ActiveCfg = Release|Win32 + {4BCA7F35-0742-424F-8E50-39B934312F8F}.Release|Win32.Build.0 = Release|Win32 + {4BCA7F35-0742-424F-8E50-39B934312F8F}.Release|x64.ActiveCfg = Release|x64 + {4BCA7F35-0742-424F-8E50-39B934312F8F}.Release|x64.Build.0 = Release|x64 + {2AFC873D-E906-4145-A0CB-6264E8CAE97D}.Debug|Win32.ActiveCfg = Debug|Win32 + {2AFC873D-E906-4145-A0CB-6264E8CAE97D}.Debug|Win32.Build.0 = Debug|Win32 + {2AFC873D-E906-4145-A0CB-6264E8CAE97D}.Debug|x64.ActiveCfg = Debug|x64 + {2AFC873D-E906-4145-A0CB-6264E8CAE97D}.Debug|x64.Build.0 = Debug|x64 + {2AFC873D-E906-4145-A0CB-6264E8CAE97D}.Release|Win32.ActiveCfg = Release|Win32 + {2AFC873D-E906-4145-A0CB-6264E8CAE97D}.Release|Win32.Build.0 = Release|Win32 + {2AFC873D-E906-4145-A0CB-6264E8CAE97D}.Release|x64.ActiveCfg = Release|x64 + {2AFC873D-E906-4145-A0CB-6264E8CAE97D}.Release|x64.Build.0 = Release|x64 + {A76CCA62-BC5F-44F8-B090-9C45DA138680}.Debug|Win32.ActiveCfg = Debug|Win32 + {A76CCA62-BC5F-44F8-B090-9C45DA138680}.Debug|Win32.Build.0 = Debug|Win32 + {A76CCA62-BC5F-44F8-B090-9C45DA138680}.Debug|x64.ActiveCfg = Debug|x64 + {A76CCA62-BC5F-44F8-B090-9C45DA138680}.Debug|x64.Build.0 = Debug|x64 + {A76CCA62-BC5F-44F8-B090-9C45DA138680}.Release|Win32.ActiveCfg = Release|Win32 + {A76CCA62-BC5F-44F8-B090-9C45DA138680}.Release|Win32.Build.0 = Release|Win32 + {A76CCA62-BC5F-44F8-B090-9C45DA138680}.Release|x64.ActiveCfg = Release|x64 + {A76CCA62-BC5F-44F8-B090-9C45DA138680}.Release|x64.Build.0 = Release|x64 + {4F6A7EC6-F141-4512-B2A8-D108CBD6FAC1}.Debug|Win32.ActiveCfg = Debug|Win32 + {4F6A7EC6-F141-4512-B2A8-D108CBD6FAC1}.Debug|Win32.Build.0 = Debug|Win32 + {4F6A7EC6-F141-4512-B2A8-D108CBD6FAC1}.Debug|x64.ActiveCfg = Debug|x64 + {4F6A7EC6-F141-4512-B2A8-D108CBD6FAC1}.Debug|x64.Build.0 = Debug|x64 + {4F6A7EC6-F141-4512-B2A8-D108CBD6FAC1}.Release|Win32.ActiveCfg = Release|Win32 + {4F6A7EC6-F141-4512-B2A8-D108CBD6FAC1}.Release|Win32.Build.0 = Release|Win32 + {4F6A7EC6-F141-4512-B2A8-D108CBD6FAC1}.Release|x64.ActiveCfg = Release|x64 + {4F6A7EC6-F141-4512-B2A8-D108CBD6FAC1}.Release|x64.Build.0 = Release|x64 + {025CFEA1-6C43-404D-9DA4-5392A17FA162}.Debug|Win32.ActiveCfg = Debug|Win32 + {025CFEA1-6C43-404D-9DA4-5392A17FA162}.Debug|Win32.Build.0 = Debug|Win32 + {025CFEA1-6C43-404D-9DA4-5392A17FA162}.Debug|x64.ActiveCfg = Debug|x64 + {025CFEA1-6C43-404D-9DA4-5392A17FA162}.Debug|x64.Build.0 = Debug|x64 + {025CFEA1-6C43-404D-9DA4-5392A17FA162}.Release|Win32.ActiveCfg = Release|Win32 + {025CFEA1-6C43-404D-9DA4-5392A17FA162}.Release|Win32.Build.0 = Release|Win32 + {025CFEA1-6C43-404D-9DA4-5392A17FA162}.Release|x64.ActiveCfg = Release|x64 + {025CFEA1-6C43-404D-9DA4-5392A17FA162}.Release|x64.Build.0 = Release|x64 + {8C6BC636-FF71-4D58-9D63-E12265523982}.Debug|Win32.ActiveCfg = Debug|Win32 + {8C6BC636-FF71-4D58-9D63-E12265523982}.Debug|Win32.Build.0 = Debug|Win32 + {8C6BC636-FF71-4D58-9D63-E12265523982}.Debug|x64.ActiveCfg = Debug|x64 + {8C6BC636-FF71-4D58-9D63-E12265523982}.Debug|x64.Build.0 = Debug|x64 + {8C6BC636-FF71-4D58-9D63-E12265523982}.Release|Win32.ActiveCfg = Release|Win32 + {8C6BC636-FF71-4D58-9D63-E12265523982}.Release|Win32.Build.0 = Release|Win32 + {8C6BC636-FF71-4D58-9D63-E12265523982}.Release|x64.ActiveCfg = Release|x64 + {8C6BC636-FF71-4D58-9D63-E12265523982}.Release|x64.Build.0 = Release|x64 + {4D5EA26A-8356-4665-A13D-51CCEE2BA7F4}.Debug|Win32.ActiveCfg = Debug|Win32 + {4D5EA26A-8356-4665-A13D-51CCEE2BA7F4}.Debug|Win32.Build.0 = Debug|Win32 + {4D5EA26A-8356-4665-A13D-51CCEE2BA7F4}.Debug|x64.ActiveCfg = Debug|x64 + {4D5EA26A-8356-4665-A13D-51CCEE2BA7F4}.Debug|x64.Build.0 = Debug|x64 + {4D5EA26A-8356-4665-A13D-51CCEE2BA7F4}.Release|Win32.ActiveCfg = Release|Win32 + {4D5EA26A-8356-4665-A13D-51CCEE2BA7F4}.Release|Win32.Build.0 = Release|Win32 + {4D5EA26A-8356-4665-A13D-51CCEE2BA7F4}.Release|x64.ActiveCfg = Release|x64 + {4D5EA26A-8356-4665-A13D-51CCEE2BA7F4}.Release|x64.Build.0 = Release|x64 + {B3C7F964-68B8-4F8C-B5E7-7607836FB101}.Debug|Win32.ActiveCfg = Debug|Win32 + {B3C7F964-68B8-4F8C-B5E7-7607836FB101}.Debug|Win32.Build.0 = Debug|Win32 + {B3C7F964-68B8-4F8C-B5E7-7607836FB101}.Debug|x64.ActiveCfg = Debug|x64 + {B3C7F964-68B8-4F8C-B5E7-7607836FB101}.Debug|x64.Build.0 = Debug|x64 + {B3C7F964-68B8-4F8C-B5E7-7607836FB101}.Release|Win32.ActiveCfg = Release|Win32 + {B3C7F964-68B8-4F8C-B5E7-7607836FB101}.Release|Win32.Build.0 = Release|Win32 + {B3C7F964-68B8-4F8C-B5E7-7607836FB101}.Release|x64.ActiveCfg = Release|x64 + {B3C7F964-68B8-4F8C-B5E7-7607836FB101}.Release|x64.Build.0 = Release|x64 + {7AB46C61-04D5-4E77-AD3F-E7726F3E173A}.Debug|Win32.ActiveCfg = Debug|Win32 + {7AB46C61-04D5-4E77-AD3F-E7726F3E173A}.Debug|Win32.Build.0 = Debug|Win32 + {7AB46C61-04D5-4E77-AD3F-E7726F3E173A}.Debug|x64.ActiveCfg = Debug|x64 + {7AB46C61-04D5-4E77-AD3F-E7726F3E173A}.Debug|x64.Build.0 = Debug|x64 + {7AB46C61-04D5-4E77-AD3F-E7726F3E173A}.Release|Win32.ActiveCfg = Release|Win32 + {7AB46C61-04D5-4E77-AD3F-E7726F3E173A}.Release|Win32.Build.0 = Release|Win32 + {7AB46C61-04D5-4E77-AD3F-E7726F3E173A}.Release|x64.ActiveCfg = Release|x64 + {7AB46C61-04D5-4E77-AD3F-E7726F3E173A}.Release|x64.Build.0 = Release|x64 + {7A5F618C-F98A-4F8E-BBC7-C4F5C6BCD5A4}.Debug|Win32.ActiveCfg = Debug|Win32 + {7A5F618C-F98A-4F8E-BBC7-C4F5C6BCD5A4}.Debug|Win32.Build.0 = Debug|Win32 + {7A5F618C-F98A-4F8E-BBC7-C4F5C6BCD5A4}.Debug|x64.ActiveCfg = Debug|x64 + {7A5F618C-F98A-4F8E-BBC7-C4F5C6BCD5A4}.Debug|x64.Build.0 = Debug|x64 + {7A5F618C-F98A-4F8E-BBC7-C4F5C6BCD5A4}.Release|Win32.ActiveCfg = Release|Win32 + {7A5F618C-F98A-4F8E-BBC7-C4F5C6BCD5A4}.Release|Win32.Build.0 = Release|Win32 + {7A5F618C-F98A-4F8E-BBC7-C4F5C6BCD5A4}.Release|x64.ActiveCfg = Release|x64 + {7A5F618C-F98A-4F8E-BBC7-C4F5C6BCD5A4}.Release|x64.Build.0 = Release|x64 + {27C64509-94EB-406D-9978-93AE531CEB1E}.Debug|Win32.ActiveCfg = Debug|Win32 + {27C64509-94EB-406D-9978-93AE531CEB1E}.Debug|Win32.Build.0 = Debug|Win32 + {27C64509-94EB-406D-9978-93AE531CEB1E}.Debug|x64.ActiveCfg = Debug|x64 + {27C64509-94EB-406D-9978-93AE531CEB1E}.Debug|x64.Build.0 = Debug|x64 + {27C64509-94EB-406D-9978-93AE531CEB1E}.Release|Win32.ActiveCfg = Release|Win32 + {27C64509-94EB-406D-9978-93AE531CEB1E}.Release|Win32.Build.0 = Release|Win32 + {27C64509-94EB-406D-9978-93AE531CEB1E}.Release|x64.ActiveCfg = Release|x64 + {27C64509-94EB-406D-9978-93AE531CEB1E}.Release|x64.Build.0 = Release|x64 + {8C02951E-155B-4D09-A1DD-F98695F02A0E}.Debug|Win32.ActiveCfg = Debug|Win32 + {8C02951E-155B-4D09-A1DD-F98695F02A0E}.Debug|Win32.Build.0 = Debug|Win32 + {8C02951E-155B-4D09-A1DD-F98695F02A0E}.Debug|x64.ActiveCfg = Debug|x64 + {8C02951E-155B-4D09-A1DD-F98695F02A0E}.Debug|x64.Build.0 = Debug|x64 + {8C02951E-155B-4D09-A1DD-F98695F02A0E}.Release|Win32.ActiveCfg = Release|Win32 + {8C02951E-155B-4D09-A1DD-F98695F02A0E}.Release|Win32.Build.0 = Release|Win32 + {8C02951E-155B-4D09-A1DD-F98695F02A0E}.Release|x64.ActiveCfg = Release|x64 + {8C02951E-155B-4D09-A1DD-F98695F02A0E}.Release|x64.Build.0 = Release|x64 + {29110B58-9FD5-4A8E-B9F7-064650EE16C6}.Debug|Win32.ActiveCfg = Debug|Win32 + {29110B58-9FD5-4A8E-B9F7-064650EE16C6}.Debug|Win32.Build.0 = Debug|Win32 + {29110B58-9FD5-4A8E-B9F7-064650EE16C6}.Debug|x64.ActiveCfg = Debug|x64 + {29110B58-9FD5-4A8E-B9F7-064650EE16C6}.Debug|x64.Build.0 = Debug|x64 + {29110B58-9FD5-4A8E-B9F7-064650EE16C6}.Release|Win32.ActiveCfg = Release|Win32 + {29110B58-9FD5-4A8E-B9F7-064650EE16C6}.Release|Win32.Build.0 = Release|Win32 + {29110B58-9FD5-4A8E-B9F7-064650EE16C6}.Release|x64.ActiveCfg = Release|x64 + {29110B58-9FD5-4A8E-B9F7-064650EE16C6}.Release|x64.Build.0 = Release|x64 + {D47B6498-6A8D-4E87-A3B6-C6D08DF29FE2}.Debug|Win32.ActiveCfg = Debug|Win32 + {D47B6498-6A8D-4E87-A3B6-C6D08DF29FE2}.Debug|Win32.Build.0 = Debug|Win32 + {D47B6498-6A8D-4E87-A3B6-C6D08DF29FE2}.Debug|x64.ActiveCfg = Debug|x64 + {D47B6498-6A8D-4E87-A3B6-C6D08DF29FE2}.Debug|x64.Build.0 = Debug|x64 + {D47B6498-6A8D-4E87-A3B6-C6D08DF29FE2}.Release|Win32.ActiveCfg = Release|Win32 + {D47B6498-6A8D-4E87-A3B6-C6D08DF29FE2}.Release|Win32.Build.0 = Release|Win32 + {D47B6498-6A8D-4E87-A3B6-C6D08DF29FE2}.Release|x64.ActiveCfg = Release|x64 + {D47B6498-6A8D-4E87-A3B6-C6D08DF29FE2}.Release|x64.Build.0 = Release|x64 + {64A6CE79-710F-405C-AAE8-F604E74A4374}.Debug|Win32.ActiveCfg = Debug|Win32 + {64A6CE79-710F-405C-AAE8-F604E74A4374}.Debug|Win32.Build.0 = Debug|Win32 + {64A6CE79-710F-405C-AAE8-F604E74A4374}.Debug|x64.ActiveCfg = Debug|x64 + {64A6CE79-710F-405C-AAE8-F604E74A4374}.Debug|x64.Build.0 = Debug|x64 + {64A6CE79-710F-405C-AAE8-F604E74A4374}.Release|Win32.ActiveCfg = Release|Win32 + {64A6CE79-710F-405C-AAE8-F604E74A4374}.Release|Win32.Build.0 = Release|Win32 + {64A6CE79-710F-405C-AAE8-F604E74A4374}.Release|x64.ActiveCfg = Release|x64 + {64A6CE79-710F-405C-AAE8-F604E74A4374}.Release|x64.Build.0 = Release|x64 + {C065DCD0-DE87-4B6E-A1E6-8F7EDB272D53}.Debug|Win32.ActiveCfg = Debug|Win32 + {C065DCD0-DE87-4B6E-A1E6-8F7EDB272D53}.Debug|Win32.Build.0 = Debug|Win32 + {C065DCD0-DE87-4B6E-A1E6-8F7EDB272D53}.Debug|x64.ActiveCfg = Debug|x64 + {C065DCD0-DE87-4B6E-A1E6-8F7EDB272D53}.Debug|x64.Build.0 = Debug|x64 + {C065DCD0-DE87-4B6E-A1E6-8F7EDB272D53}.Release|Win32.ActiveCfg = Release|Win32 + {C065DCD0-DE87-4B6E-A1E6-8F7EDB272D53}.Release|Win32.Build.0 = Release|Win32 + {C065DCD0-DE87-4B6E-A1E6-8F7EDB272D53}.Release|x64.ActiveCfg = Release|x64 + {C065DCD0-DE87-4B6E-A1E6-8F7EDB272D53}.Release|x64.Build.0 = Release|x64 + {9B955616-D58C-4ED8-AB6F-FBA74E768B54}.Debug|Win32.ActiveCfg = Debug|Win32 + {9B955616-D58C-4ED8-AB6F-FBA74E768B54}.Debug|Win32.Build.0 = Debug|Win32 + {9B955616-D58C-4ED8-AB6F-FBA74E768B54}.Debug|x64.ActiveCfg = Debug|x64 + {9B955616-D58C-4ED8-AB6F-FBA74E768B54}.Debug|x64.Build.0 = Debug|x64 + {9B955616-D58C-4ED8-AB6F-FBA74E768B54}.Release|Win32.ActiveCfg = Release|Win32 + {9B955616-D58C-4ED8-AB6F-FBA74E768B54}.Release|Win32.Build.0 = Release|Win32 + {9B955616-D58C-4ED8-AB6F-FBA74E768B54}.Release|x64.ActiveCfg = Release|x64 + {9B955616-D58C-4ED8-AB6F-FBA74E768B54}.Release|x64.Build.0 = Release|x64 + {94D10A14-5A9B-4E1E-B204-DE3196750126}.Debug|Win32.ActiveCfg = Debug|Win32 + {94D10A14-5A9B-4E1E-B204-DE3196750126}.Debug|Win32.Build.0 = Debug|Win32 + {94D10A14-5A9B-4E1E-B204-DE3196750126}.Debug|x64.ActiveCfg = Debug|x64 + {94D10A14-5A9B-4E1E-B204-DE3196750126}.Debug|x64.Build.0 = Debug|x64 + {94D10A14-5A9B-4E1E-B204-DE3196750126}.Release|Win32.ActiveCfg = Release|Win32 + {94D10A14-5A9B-4E1E-B204-DE3196750126}.Release|Win32.Build.0 = Release|Win32 + {94D10A14-5A9B-4E1E-B204-DE3196750126}.Release|x64.ActiveCfg = Release|x64 + {94D10A14-5A9B-4E1E-B204-DE3196750126}.Release|x64.Build.0 = Release|x64 + {CBBCFD38-0F91-4CA2-8CBF-2833AC284438}.Debug|Win32.ActiveCfg = Debug|Win32 + {CBBCFD38-0F91-4CA2-8CBF-2833AC284438}.Debug|Win32.Build.0 = Debug|Win32 + {CBBCFD38-0F91-4CA2-8CBF-2833AC284438}.Debug|x64.ActiveCfg = Debug|x64 + {CBBCFD38-0F91-4CA2-8CBF-2833AC284438}.Debug|x64.Build.0 = Debug|x64 + {CBBCFD38-0F91-4CA2-8CBF-2833AC284438}.Release|Win32.ActiveCfg = Release|Win32 + {CBBCFD38-0F91-4CA2-8CBF-2833AC284438}.Release|Win32.Build.0 = Release|Win32 + {CBBCFD38-0F91-4CA2-8CBF-2833AC284438}.Release|x64.ActiveCfg = Release|x64 + {CBBCFD38-0F91-4CA2-8CBF-2833AC284438}.Release|x64.Build.0 = Release|x64 + {B8FE1ABF-E1AD-41C7-AFAE-333BAB3636E1}.Debug|Win32.ActiveCfg = Debug|Win32 + {B8FE1ABF-E1AD-41C7-AFAE-333BAB3636E1}.Debug|Win32.Build.0 = Debug|Win32 + {B8FE1ABF-E1AD-41C7-AFAE-333BAB3636E1}.Debug|x64.ActiveCfg = Debug|x64 + {B8FE1ABF-E1AD-41C7-AFAE-333BAB3636E1}.Debug|x64.Build.0 = Debug|x64 + {B8FE1ABF-E1AD-41C7-AFAE-333BAB3636E1}.Release|Win32.ActiveCfg = Release|Win32 + {B8FE1ABF-E1AD-41C7-AFAE-333BAB3636E1}.Release|Win32.Build.0 = Release|Win32 + {B8FE1ABF-E1AD-41C7-AFAE-333BAB3636E1}.Release|x64.ActiveCfg = Release|x64 + {B8FE1ABF-E1AD-41C7-AFAE-333BAB3636E1}.Release|x64.Build.0 = Release|x64 + {69340E63-F15C-4A33-85B7-344666F8F25C}.Debug|Win32.ActiveCfg = Debug|Win32 + {69340E63-F15C-4A33-85B7-344666F8F25C}.Debug|Win32.Build.0 = Debug|Win32 + {69340E63-F15C-4A33-85B7-344666F8F25C}.Debug|x64.ActiveCfg = Debug|x64 + {69340E63-F15C-4A33-85B7-344666F8F25C}.Debug|x64.Build.0 = Debug|x64 + {69340E63-F15C-4A33-85B7-344666F8F25C}.Release|Win32.ActiveCfg = Release|Win32 + {69340E63-F15C-4A33-85B7-344666F8F25C}.Release|Win32.Build.0 = Release|Win32 + {69340E63-F15C-4A33-85B7-344666F8F25C}.Release|x64.ActiveCfg = Release|x64 + {69340E63-F15C-4A33-85B7-344666F8F25C}.Release|x64.Build.0 = Release|x64 + {D839F6C1-3736-4269-A5E7-30B2BC1CBCCD}.Debug|Win32.ActiveCfg = Debug|Win32 + {D839F6C1-3736-4269-A5E7-30B2BC1CBCCD}.Debug|Win32.Build.0 = Debug|Win32 + {D839F6C1-3736-4269-A5E7-30B2BC1CBCCD}.Debug|x64.ActiveCfg = Debug|x64 + {D839F6C1-3736-4269-A5E7-30B2BC1CBCCD}.Debug|x64.Build.0 = Debug|x64 + {D839F6C1-3736-4269-A5E7-30B2BC1CBCCD}.Release|Win32.ActiveCfg = Release|Win32 + {D839F6C1-3736-4269-A5E7-30B2BC1CBCCD}.Release|Win32.Build.0 = Release|Win32 + {D839F6C1-3736-4269-A5E7-30B2BC1CBCCD}.Release|x64.ActiveCfg = Release|x64 + {D839F6C1-3736-4269-A5E7-30B2BC1CBCCD}.Release|x64.Build.0 = Release|x64 + {EF8EC721-3949-484B-862F-2BB07460526D}.Debug|Win32.ActiveCfg = Debug|Win32 + {EF8EC721-3949-484B-862F-2BB07460526D}.Debug|Win32.Build.0 = Debug|Win32 + {EF8EC721-3949-484B-862F-2BB07460526D}.Debug|x64.ActiveCfg = Debug|x64 + {EF8EC721-3949-484B-862F-2BB07460526D}.Debug|x64.Build.0 = Debug|x64 + {EF8EC721-3949-484B-862F-2BB07460526D}.Release|Win32.ActiveCfg = Release|Win32 + {EF8EC721-3949-484B-862F-2BB07460526D}.Release|Win32.Build.0 = Release|Win32 + {EF8EC721-3949-484B-862F-2BB07460526D}.Release|x64.ActiveCfg = Release|x64 + {EF8EC721-3949-484B-862F-2BB07460526D}.Release|x64.Build.0 = Release|x64 + {BF87D83F-575E-49B5-87BD-02C6E581FD6A}.Debug|Win32.ActiveCfg = Debug|Win32 + {BF87D83F-575E-49B5-87BD-02C6E581FD6A}.Debug|Win32.Build.0 = Debug|Win32 + {BF87D83F-575E-49B5-87BD-02C6E581FD6A}.Debug|x64.ActiveCfg = Debug|x64 + {BF87D83F-575E-49B5-87BD-02C6E581FD6A}.Debug|x64.Build.0 = Debug|x64 + {BF87D83F-575E-49B5-87BD-02C6E581FD6A}.Release|Win32.ActiveCfg = Release|Win32 + {BF87D83F-575E-49B5-87BD-02C6E581FD6A}.Release|Win32.Build.0 = Release|Win32 + {BF87D83F-575E-49B5-87BD-02C6E581FD6A}.Release|x64.ActiveCfg = Release|x64 + {BF87D83F-575E-49B5-87BD-02C6E581FD6A}.Release|x64.Build.0 = Release|x64 + {970CE296-FB4C-4990-8FC7-F26078998302}.Debug|Win32.ActiveCfg = Debug|Win32 + {970CE296-FB4C-4990-8FC7-F26078998302}.Debug|Win32.Build.0 = Debug|Win32 + {970CE296-FB4C-4990-8FC7-F26078998302}.Debug|x64.ActiveCfg = Debug|x64 + {970CE296-FB4C-4990-8FC7-F26078998302}.Debug|x64.Build.0 = Debug|x64 + {970CE296-FB4C-4990-8FC7-F26078998302}.Release|Win32.ActiveCfg = Release|Win32 + {970CE296-FB4C-4990-8FC7-F26078998302}.Release|Win32.Build.0 = Release|Win32 + {970CE296-FB4C-4990-8FC7-F26078998302}.Release|x64.ActiveCfg = Release|x64 + {970CE296-FB4C-4990-8FC7-F26078998302}.Release|x64.Build.0 = Release|x64 + {619248C9-5C52-48D3-BD1C-4BE670F6B67F}.Debug|Win32.ActiveCfg = Debug|Win32 + {619248C9-5C52-48D3-BD1C-4BE670F6B67F}.Debug|Win32.Build.0 = Debug|Win32 + {619248C9-5C52-48D3-BD1C-4BE670F6B67F}.Debug|x64.ActiveCfg = Debug|x64 + {619248C9-5C52-48D3-BD1C-4BE670F6B67F}.Debug|x64.Build.0 = Debug|x64 + {619248C9-5C52-48D3-BD1C-4BE670F6B67F}.Release|Win32.ActiveCfg = Release|Win32 + {619248C9-5C52-48D3-BD1C-4BE670F6B67F}.Release|Win32.Build.0 = Release|Win32 + {619248C9-5C52-48D3-BD1C-4BE670F6B67F}.Release|x64.ActiveCfg = Release|x64 + {619248C9-5C52-48D3-BD1C-4BE670F6B67F}.Release|x64.Build.0 = Release|x64 + {F167FF6B-B926-43D7-A5DA-086B87336B06}.Debug|Win32.ActiveCfg = Debug|Win32 + {F167FF6B-B926-43D7-A5DA-086B87336B06}.Debug|Win32.Build.0 = Debug|Win32 + {F167FF6B-B926-43D7-A5DA-086B87336B06}.Debug|x64.ActiveCfg = Debug|x64 + {F167FF6B-B926-43D7-A5DA-086B87336B06}.Debug|x64.Build.0 = Debug|x64 + {F167FF6B-B926-43D7-A5DA-086B87336B06}.Release|Win32.ActiveCfg = Release|Win32 + {F167FF6B-B926-43D7-A5DA-086B87336B06}.Release|Win32.Build.0 = Release|Win32 + {F167FF6B-B926-43D7-A5DA-086B87336B06}.Release|x64.ActiveCfg = Release|x64 + {F167FF6B-B926-43D7-A5DA-086B87336B06}.Release|x64.Build.0 = Release|x64 + {0BBBC8AF-EA63-4B58-AAD4-2D4F0CC4DA85}.Debug|Win32.ActiveCfg = Debug|Win32 + {0BBBC8AF-EA63-4B58-AAD4-2D4F0CC4DA85}.Debug|Win32.Build.0 = Debug|Win32 + {0BBBC8AF-EA63-4B58-AAD4-2D4F0CC4DA85}.Debug|x64.ActiveCfg = Debug|x64 + {0BBBC8AF-EA63-4B58-AAD4-2D4F0CC4DA85}.Debug|x64.Build.0 = Debug|x64 + {0BBBC8AF-EA63-4B58-AAD4-2D4F0CC4DA85}.Release|Win32.ActiveCfg = Release|Win32 + {0BBBC8AF-EA63-4B58-AAD4-2D4F0CC4DA85}.Release|Win32.Build.0 = Release|Win32 + {0BBBC8AF-EA63-4B58-AAD4-2D4F0CC4DA85}.Release|x64.ActiveCfg = Release|x64 + {0BBBC8AF-EA63-4B58-AAD4-2D4F0CC4DA85}.Release|x64.Build.0 = Release|x64 + {E42AC159-E83D-4812-BFE2-E5196DC0FA82}.Debug|Win32.ActiveCfg = Debug|Win32 + {E42AC159-E83D-4812-BFE2-E5196DC0FA82}.Debug|Win32.Build.0 = Debug|Win32 + {E42AC159-E83D-4812-BFE2-E5196DC0FA82}.Debug|x64.ActiveCfg = Debug|x64 + {E42AC159-E83D-4812-BFE2-E5196DC0FA82}.Debug|x64.Build.0 = Debug|x64 + {E42AC159-E83D-4812-BFE2-E5196DC0FA82}.Release|Win32.ActiveCfg = Release|Win32 + {E42AC159-E83D-4812-BFE2-E5196DC0FA82}.Release|Win32.Build.0 = Release|Win32 + {E42AC159-E83D-4812-BFE2-E5196DC0FA82}.Release|x64.ActiveCfg = Release|x64 + {E42AC159-E83D-4812-BFE2-E5196DC0FA82}.Release|x64.Build.0 = Release|x64 + {5A8CC395-8D24-4D00-8208-079FFCA0BDA5}.Debug|Win32.ActiveCfg = Debug|Win32 + {5A8CC395-8D24-4D00-8208-079FFCA0BDA5}.Debug|Win32.Build.0 = Debug|Win32 + {5A8CC395-8D24-4D00-8208-079FFCA0BDA5}.Debug|x64.ActiveCfg = Debug|x64 + {5A8CC395-8D24-4D00-8208-079FFCA0BDA5}.Debug|x64.Build.0 = Debug|x64 + {5A8CC395-8D24-4D00-8208-079FFCA0BDA5}.Release|Win32.ActiveCfg = Release|Win32 + {5A8CC395-8D24-4D00-8208-079FFCA0BDA5}.Release|Win32.Build.0 = Release|Win32 + {5A8CC395-8D24-4D00-8208-079FFCA0BDA5}.Release|x64.ActiveCfg = Release|x64 + {5A8CC395-8D24-4D00-8208-079FFCA0BDA5}.Release|x64.Build.0 = Release|x64 + {7B759F0D-723F-4BFA-B99A-21AD2BC7B45B}.Debug|Win32.ActiveCfg = Debug|Win32 + {7B759F0D-723F-4BFA-B99A-21AD2BC7B45B}.Debug|Win32.Build.0 = Debug|Win32 + {7B759F0D-723F-4BFA-B99A-21AD2BC7B45B}.Debug|x64.ActiveCfg = Debug|x64 + {7B759F0D-723F-4BFA-B99A-21AD2BC7B45B}.Debug|x64.Build.0 = Debug|x64 + {7B759F0D-723F-4BFA-B99A-21AD2BC7B45B}.Release|Win32.ActiveCfg = Release|Win32 + {7B759F0D-723F-4BFA-B99A-21AD2BC7B45B}.Release|Win32.Build.0 = Release|Win32 + {7B759F0D-723F-4BFA-B99A-21AD2BC7B45B}.Release|x64.ActiveCfg = Release|x64 + {7B759F0D-723F-4BFA-B99A-21AD2BC7B45B}.Release|x64.Build.0 = Release|x64 + {7974C002-4D5E-4442-8DE6-93D3F4C777A9}.Debug|Win32.ActiveCfg = Debug|Win32 + {7974C002-4D5E-4442-8DE6-93D3F4C777A9}.Debug|Win32.Build.0 = Debug|Win32 + {7974C002-4D5E-4442-8DE6-93D3F4C777A9}.Debug|x64.ActiveCfg = Debug|x64 + {7974C002-4D5E-4442-8DE6-93D3F4C777A9}.Debug|x64.Build.0 = Debug|x64 + {7974C002-4D5E-4442-8DE6-93D3F4C777A9}.Release|Win32.ActiveCfg = Release|Win32 + {7974C002-4D5E-4442-8DE6-93D3F4C777A9}.Release|Win32.Build.0 = Release|Win32 + {7974C002-4D5E-4442-8DE6-93D3F4C777A9}.Release|x64.ActiveCfg = Release|x64 + {7974C002-4D5E-4442-8DE6-93D3F4C777A9}.Release|x64.Build.0 = Release|x64 + {CE5B119E-30CC-4D89-9C51-443047010B49}.Debug|Win32.ActiveCfg = Debug|Win32 + {CE5B119E-30CC-4D89-9C51-443047010B49}.Debug|Win32.Build.0 = Debug|Win32 + {CE5B119E-30CC-4D89-9C51-443047010B49}.Debug|x64.ActiveCfg = Debug|x64 + {CE5B119E-30CC-4D89-9C51-443047010B49}.Debug|x64.Build.0 = Debug|x64 + {CE5B119E-30CC-4D89-9C51-443047010B49}.Release|Win32.ActiveCfg = Release|Win32 + {CE5B119E-30CC-4D89-9C51-443047010B49}.Release|Win32.Build.0 = Release|Win32 + {CE5B119E-30CC-4D89-9C51-443047010B49}.Release|x64.ActiveCfg = Release|x64 + {CE5B119E-30CC-4D89-9C51-443047010B49}.Release|x64.Build.0 = Release|x64 + {8AE7FF32-0E1C-4192-9CF2-A674F81A68E5}.Debug|Win32.ActiveCfg = Debug|Win32 + {8AE7FF32-0E1C-4192-9CF2-A674F81A68E5}.Debug|Win32.Build.0 = Debug|Win32 + {8AE7FF32-0E1C-4192-9CF2-A674F81A68E5}.Debug|x64.ActiveCfg = Debug|x64 + {8AE7FF32-0E1C-4192-9CF2-A674F81A68E5}.Debug|x64.Build.0 = Debug|x64 + {8AE7FF32-0E1C-4192-9CF2-A674F81A68E5}.Release|Win32.ActiveCfg = Release|Win32 + {8AE7FF32-0E1C-4192-9CF2-A674F81A68E5}.Release|Win32.Build.0 = Release|Win32 + {8AE7FF32-0E1C-4192-9CF2-A674F81A68E5}.Release|x64.ActiveCfg = Release|x64 + {8AE7FF32-0E1C-4192-9CF2-A674F81A68E5}.Release|x64.Build.0 = Release|x64 + {6A0FF443-4276-4204-BA54-32E85C59D941}.Debug|Win32.ActiveCfg = Debug|Win32 + {6A0FF443-4276-4204-BA54-32E85C59D941}.Debug|Win32.Build.0 = Debug|Win32 + {6A0FF443-4276-4204-BA54-32E85C59D941}.Debug|x64.ActiveCfg = Debug|x64 + {6A0FF443-4276-4204-BA54-32E85C59D941}.Debug|x64.Build.0 = Debug|x64 + {6A0FF443-4276-4204-BA54-32E85C59D941}.Release|Win32.ActiveCfg = Release|Win32 + {6A0FF443-4276-4204-BA54-32E85C59D941}.Release|Win32.Build.0 = Release|Win32 + {6A0FF443-4276-4204-BA54-32E85C59D941}.Release|x64.ActiveCfg = Release|x64 + {6A0FF443-4276-4204-BA54-32E85C59D941}.Release|x64.Build.0 = Release|x64 + {6E62E7BF-D2E0-4E24-9836-D5FB1032BC7B}.Debug|Win32.ActiveCfg = Debug|Win32 + {6E62E7BF-D2E0-4E24-9836-D5FB1032BC7B}.Debug|Win32.Build.0 = Debug|Win32 + {6E62E7BF-D2E0-4E24-9836-D5FB1032BC7B}.Debug|x64.ActiveCfg = Debug|x64 + {6E62E7BF-D2E0-4E24-9836-D5FB1032BC7B}.Debug|x64.Build.0 = Debug|x64 + {6E62E7BF-D2E0-4E24-9836-D5FB1032BC7B}.Release|Win32.ActiveCfg = Release|Win32 + {6E62E7BF-D2E0-4E24-9836-D5FB1032BC7B}.Release|Win32.Build.0 = Release|Win32 + {6E62E7BF-D2E0-4E24-9836-D5FB1032BC7B}.Release|x64.ActiveCfg = Release|x64 + {6E62E7BF-D2E0-4E24-9836-D5FB1032BC7B}.Release|x64.Build.0 = Release|x64 + {C86C207F-7D5B-4950-B058-476CC008F27E}.Debug|Win32.ActiveCfg = Debug|Win32 + {C86C207F-7D5B-4950-B058-476CC008F27E}.Debug|Win32.Build.0 = Debug|Win32 + {C86C207F-7D5B-4950-B058-476CC008F27E}.Debug|x64.ActiveCfg = Debug|x64 + {C86C207F-7D5B-4950-B058-476CC008F27E}.Debug|x64.Build.0 = Debug|x64 + {C86C207F-7D5B-4950-B058-476CC008F27E}.Release|Win32.ActiveCfg = Release|Win32 + {C86C207F-7D5B-4950-B058-476CC008F27E}.Release|Win32.Build.0 = Release|Win32 + {C86C207F-7D5B-4950-B058-476CC008F27E}.Release|x64.ActiveCfg = Release|x64 + {C86C207F-7D5B-4950-B058-476CC008F27E}.Release|x64.Build.0 = Release|x64 + {4F7E7FAD-BDF0-4C0E-87F4-24E19265304F}.Debug|Win32.ActiveCfg = Debug|Win32 + {4F7E7FAD-BDF0-4C0E-87F4-24E19265304F}.Debug|Win32.Build.0 = Debug|Win32 + {4F7E7FAD-BDF0-4C0E-87F4-24E19265304F}.Debug|x64.ActiveCfg = Debug|x64 + {4F7E7FAD-BDF0-4C0E-87F4-24E19265304F}.Debug|x64.Build.0 = Debug|x64 + {4F7E7FAD-BDF0-4C0E-87F4-24E19265304F}.Release|Win32.ActiveCfg = Release|Win32 + {4F7E7FAD-BDF0-4C0E-87F4-24E19265304F}.Release|Win32.Build.0 = Release|Win32 + {4F7E7FAD-BDF0-4C0E-87F4-24E19265304F}.Release|x64.ActiveCfg = Release|x64 + {4F7E7FAD-BDF0-4C0E-87F4-24E19265304F}.Release|x64.Build.0 = Release|x64 + {E8BA727C-3251-41FC-9587-1588E1950E2E}.Debug|Win32.ActiveCfg = Debug|Win32 + {E8BA727C-3251-41FC-9587-1588E1950E2E}.Debug|Win32.Build.0 = Debug|Win32 + {E8BA727C-3251-41FC-9587-1588E1950E2E}.Debug|x64.ActiveCfg = Debug|x64 + {E8BA727C-3251-41FC-9587-1588E1950E2E}.Debug|x64.Build.0 = Debug|x64 + {E8BA727C-3251-41FC-9587-1588E1950E2E}.Release|Win32.ActiveCfg = Release|Win32 + {E8BA727C-3251-41FC-9587-1588E1950E2E}.Release|Win32.Build.0 = Release|Win32 + {E8BA727C-3251-41FC-9587-1588E1950E2E}.Release|x64.ActiveCfg = Release|x64 + {E8BA727C-3251-41FC-9587-1588E1950E2E}.Release|x64.Build.0 = Release|x64 + {000E8237-2470-4133-A39F-CFC19F595DBF}.Debug|Win32.ActiveCfg = Debug|Win32 + {000E8237-2470-4133-A39F-CFC19F595DBF}.Debug|Win32.Build.0 = Debug|Win32 + {000E8237-2470-4133-A39F-CFC19F595DBF}.Debug|x64.ActiveCfg = Debug|x64 + {000E8237-2470-4133-A39F-CFC19F595DBF}.Debug|x64.Build.0 = Debug|x64 + {000E8237-2470-4133-A39F-CFC19F595DBF}.Release|Win32.ActiveCfg = Release|Win32 + {000E8237-2470-4133-A39F-CFC19F595DBF}.Release|Win32.Build.0 = Release|Win32 + {000E8237-2470-4133-A39F-CFC19F595DBF}.Release|x64.ActiveCfg = Release|x64 + {000E8237-2470-4133-A39F-CFC19F595DBF}.Release|x64.Build.0 = Release|x64 + {4491049B-1A5D-492C-836F-32871AB8FE62}.Debug|Win32.ActiveCfg = Debug|Win32 + {4491049B-1A5D-492C-836F-32871AB8FE62}.Debug|Win32.Build.0 = Debug|Win32 + {4491049B-1A5D-492C-836F-32871AB8FE62}.Debug|x64.ActiveCfg = Debug|x64 + {4491049B-1A5D-492C-836F-32871AB8FE62}.Debug|x64.Build.0 = Debug|x64 + {4491049B-1A5D-492C-836F-32871AB8FE62}.Release|Win32.ActiveCfg = Release|Win32 + {4491049B-1A5D-492C-836F-32871AB8FE62}.Release|Win32.Build.0 = Release|Win32 + {4491049B-1A5D-492C-836F-32871AB8FE62}.Release|x64.ActiveCfg = Release|x64 + {4491049B-1A5D-492C-836F-32871AB8FE62}.Release|x64.Build.0 = Release|x64 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(NestedProjects) = preSolution + {0BBBC8AF-EA63-4B58-AAD4-2D4F0CC4DA85} = {F5BE7648-E253-49AE-B86B-F651383ED45B} + {E42AC159-E83D-4812-BFE2-E5196DC0FA82} = {F5BE7648-E253-49AE-B86B-F651383ED45B} + {5A8CC395-8D24-4D00-8208-079FFCA0BDA5} = {F5BE7648-E253-49AE-B86B-F651383ED45B} + {7B759F0D-723F-4BFA-B99A-21AD2BC7B45B} = {F5BE7648-E253-49AE-B86B-F651383ED45B} + {7974C002-4D5E-4442-8DE6-93D3F4C777A9} = {F5BE7648-E253-49AE-B86B-F651383ED45B} + {CE5B119E-30CC-4D89-9C51-443047010B49} = {F5BE7648-E253-49AE-B86B-F651383ED45B} + {8AE7FF32-0E1C-4192-9CF2-A674F81A68E5} = {F5BE7648-E253-49AE-B86B-F651383ED45B} + {6A0FF443-4276-4204-BA54-32E85C59D941} = {F5BE7648-E253-49AE-B86B-F651383ED45B} + {6E62E7BF-D2E0-4E24-9836-D5FB1032BC7B} = {F5BE7648-E253-49AE-B86B-F651383ED45B} + EndGlobalSection +EndGlobal diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/twohex.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/twohex.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/twohex.vcxproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/twohex.vcxproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,257 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {64A6CE79-710F-405C-AAE8-F604E74A4374} + twohex + + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>11.0.61030.0 + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + + $(OutDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + EditAndContinue + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + ProgramDatabase + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + + + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/ucd1d.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/ucd1d.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/ucd1d.vcxproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/ucd1d.vcxproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,257 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {C065DCD0-DE87-4B6E-A1E6-8F7EDB272D53} + ucd1d + + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>11.0.61030.0 + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + + $(OutDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;_USE_MATH_DEFINES;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + EditAndContinue + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;_USE_MATH_DEFINES;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + ProgramDatabase + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;_USE_MATH_DEFINES;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;_USE_MATH_DEFINES;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + + + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/ucd_f.vfproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/ucd_f.vfproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/ucd_f.vfproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/ucd_f.vfproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,52 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/ucdsamp3.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/ucdsamp3.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/ucdsamp3.vcxproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/ucdsamp3.vcxproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,257 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {94D10A14-5A9B-4E1E-B204-DE3196750126} + ucdsamp3 + + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>11.0.61030.0 + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + + $(OutDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + EditAndContinue + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + ProgramDatabase + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + + + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/ucd.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/ucd.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/ucd.vcxproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/ucd.vcxproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,257 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {9B955616-D58C-4ED8-AB6F-FBA74E768B54} + ucd + + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>11.0.61030.0 + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + + $(OutDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + EditAndContinue + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + ProgramDatabase + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + + + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/version.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/version.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/version.vcxproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/version.vcxproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,257 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {CBBCFD38-0F91-4CA2-8CBF-2833AC284438} + version + + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>11.0.61030.0 + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + + $(OutDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + EditAndContinue + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + ProgramDatabase + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + + + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/wave.vcxproj silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/wave.vcxproj --- silo-llnl-4.10.2/SiloWindows/MSVC2012/Tests/wave.vcxproj 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC2012/Tests/wave.vcxproj 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,257 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {3D443B05-403C-4907-8F50-DC396DB6BB23} + wave + + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + Application + v110 + false + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>11.0.61030.0 + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + true + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + $(SolutionDir)..\bin\ + $(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\ + false + + + + $(OutDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + EditAndContinue + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + Disabled + %(AdditionalIncludeDirectories) + WIN32;_CONSOLE;%(PreprocessorDefinitions) + EnableFastChecks + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir)$(TargetName).pdb + Level3 + true + ProgramDatabase + 4244;4305;%(DisableSpecificWarnings) + + + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + true + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX86 + + + + + X64 + $(IntDir)$(TargetName).tlb + + + + MaxSpeed + OnlyExplicitInline + %(AdditionalIncludeDirectories) + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + MultiThreadedDLL + true + + $(IntDir)$(TargetName).pch + $(IntDir) + $(IntDir) + $(IntDir) + Level3 + true + 4244;4305;%(DisableSpecificWarnings) + + + NDEBUG;%(PreprocessorDefinitions) + 0x0409 + + + silohdf5.lib;%(AdditionalDependencies) + $(OutDir)$(TargetFileName) + true + $(SolutionDir)..\$(Platform)\$(Configuration);%(AdditionalLibraryDirectories) + $(IntDir)$(TargetName).pdb + Console + false + + MachineX64 + + + + + + + + + \ No newline at end of file diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/BaseIncludes.vsprops silo-llnl-4.10.2.real/SiloWindows/MSVC9/BaseIncludes.vsprops --- silo-llnl-4.10.2/SiloWindows/MSVC9/BaseIncludes.vsprops 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/BaseIncludes.vsprops 1970-01-01 00:00:00.000000000 +0000 @@ -1,12 +0,0 @@ - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/bin/RunTests.bat silo-llnl-4.10.2.real/SiloWindows/MSVC9/bin/RunTests.bat --- silo-llnl-4.10.2/SiloWindows/MSVC9/bin/RunTests.bat 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/bin/RunTests.bat 1970-01-01 00:00:00.000000000 +0000 @@ -1,137 +0,0 @@ -@echo off - -set errorfile=.\error.txt -set resultsfile=.\results.txt -set drivers=(DB_PDB DB_HDF5) -set buildDir=..\Win32\DLLwithHDF5_Release\ - - -set gp=(version.exe namescheme.exe point.exe empty.exe extface.exe testall.exe TesReadMask.exe array.exe multi_test.exe partial_io.exe simple.exe ucd.exe ucdsamp3.exe obj.exe onehex.exe oneprism.exe onepyramid.exe onetet.exe subhex.exe twohex.exe multispec.exe sami.exe specmix.exe spec.exe alltypes.exe wave.exe polyzl.exe csg.exe rocket.exe mmadjacency.exe mat3d_3across.exe ucd1d.exe dirtest.exe quad.exe namescheme.exe arbpoly.exe arbpoly3d.exe) - - -:: copy necessary dlls to this executable directory -if not exist .\silohdf5.dll copy %buildDir%\silohdf5.dll . -if not exist .\hdf5dll.dll copy %HDF5_LIB_DIR%\hdf5dll.dll . -if not exist .\zlib1.dll copy %ZLIB_LIB_DIR%\zlib1.dll . -if not exist .\szlibdll.dll copy %SZIP_LIB_DIR%\szlibdll.dll . - -if exist %resultsfile% (del %resultsfile%) - - -for %%z in %drivers% do ( - for %%v in %gp% do ( - if exist %%v ( - echo Running %%v %%z - echo Running %%v %%z >> %resultsfile% - %%v %%z > %errorfile% 2>&1 - type %errorfile% >> %resultsfile% - echo exit code: %errorlevel% >> %resultsfile% - echo ============================================== >> %resultsfile% - echo ============================================== >> %resultsfile% - ) - ) - - REM tests that require extra arguments - if exist testall.exe ( - for %%i in (small medium large fortran c) do ( - echo Running testall.exe -%%i %%z - echo Running testall.exe -%%i %%z >> %resultsfile% - testall.exe -%%i %%z > %errorfile% 2>&1 - type %errorfile% >> %resultsfile% - echo exit code: %errorlevel% >> %resultsfile% - echo ============================================== >> %resultsfile% - echo ============================================== >> %resultsfile% - ) - ) - - if exist group_test.exe ( - echo Running group_test.exe 0 0 0 %%z - echo Running group_test.exe 0 0 0 %%z >> %resultsfile% - group_test.exe 0 0 0 %%z > %errorfile% 2>&1 - type %errorfile% >> %resultsfile% - echo exit code: %errorlevel% >> %resultsfile% - echo ============================================== >> %resultsfile% - echo ============================================== >> %resultsfile% - ) - -) - - -if exist listtypes.exe ( - for %%i in (ucd.h5 ucd.pdb) do ( - if exist %%i ( - echo Running listtypes.exe %%i - echo Running listtypes.exe %%i >> %resultsfile% - listtypes.exe %%i > %errorfile% 2>&1 - type %errorfile% >> %resultsfile% - echo exit code: %errorlevel% >> %resultsfile% - echo ============================================== >> %resultsfile% - echo ============================================== >> %resultsfile% - ) - ) -) - - - -:: PDB Specific -if exist testpdb.exe ( - echo Running testpdb.exe - echo Running testpdb.exe >> %resultsfile% - testpdb.exe > %errorfile% 2>&1 - type %errorfile% >> %resultsfile% - echo exit code: %errorlevel% >> %resultsfile% - echo ============================================== >> %resultsfile% - echo ============================================== >> %resultsfile% -) - -:: HDF5 Specific -if exist compression.exe ( - for %%i in (gzip szip fpzip lossy3 minratio1000) do ( - echo Running compression.exe %%i - echo Running compression.exe %%i >> %resultsfile% - compression.exe %%i > %errorfile% 2>&1 - type %errorfile% >> %resultsfile% - echo exit code: %errorlevel% >> %resultsfile% - echo ============================================== >> %resultsfile% - echo ============================================== >> %resultsfile% - ) -) - -if exist grab.exe ( - echo Running grab.exe - echo Running grab.exe >> %resultsfile% - grab.exe > %errorfile% 2>&1 - type %errorfile% >> %resultsfile% - echo exit code: %errorlevel% >> %resultsfile% - echo ============================================== >> %resultsfile% - echo ============================================== >> %resultsfile% -) - -REM if exist largefile.exe ( -REM echo Running largefile.exe >> %resultsfile% -REM largefile.exe > %errorfile% -REM type %errorfile% >> %resultsfile% -REM echo exit code: %errorlevel% >> %resultsfile% -REM echo ============================================== >> %resultsfile% -REM echo ============================================== >> %resultsfile% -REM ) - -REM Fortran tests -set ft=(array_f.exe curve_f.exe mat_f.exe point_f.exe quad_f.exe testall_f.exe ucd_f.exe) -for %%v in %ft% do ( - if exist %%v ( - echo Running %%v - echo Running %%v >> %resultsfile% - %%v > %errorfile% 2>&1 - type %errorfile% >> %resultsfile% - echo exit code: %errorlevel% >> %resultsfile% - echo ============================================== >> %resultsfile% - echo ============================================== >> %resultsfile% - ) -) - - -::print results -::type %resultsfile% - -echo all output has been directed to the file results.txt diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/browser.vcproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/browser.vcproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/browser.vcproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/browser.vcproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,481 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/DepLibs.vsprops silo-llnl-4.10.2.real/SiloWindows/MSVC9/DepLibs.vsprops --- silo-llnl-4.10.2/SiloWindows/MSVC9/DepLibs.vsprops 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/DepLibs.vsprops 1970-01-01 00:00:00.000000000 +0000 @@ -1,59 +0,0 @@ - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/HDF5_Defines.vsprops silo-llnl-4.10.2.real/SiloWindows/MSVC9/HDF5_Defines.vsprops --- silo-llnl-4.10.2/SiloWindows/MSVC9/HDF5_Defines.vsprops 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/HDF5_Defines.vsprops 1970-01-01 00:00:00.000000000 +0000 @@ -1,11 +0,0 @@ - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/ModernDTPR.vsprops silo-llnl-4.10.2.real/SiloWindows/MSVC9/ModernDTPR.vsprops --- silo-llnl-4.10.2/SiloWindows/MSVC9/ModernDTPR.vsprops 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/ModernDTPR.vsprops 1970-01-01 00:00:00.000000000 +0000 @@ -1,11 +0,0 @@ - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/NO_SEC_DEP.vsprops silo-llnl-4.10.2.real/SiloWindows/MSVC9/NO_SEC_DEP.vsprops --- silo-llnl-4.10.2/SiloWindows/MSVC9/NO_SEC_DEP.vsprops 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/NO_SEC_DEP.vsprops 1970-01-01 00:00:00.000000000 +0000 @@ -1,11 +0,0 @@ - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/pdb_detect/pdb_detect.vcproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/pdb_detect/pdb_detect.vcproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/pdb_detect/pdb_detect.vcproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/pdb_detect/pdb_detect.vcproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,200 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/QT_Defines.vsprops silo-llnl-4.10.2.real/SiloWindows/MSVC9/QT_Defines.vsprops --- silo-llnl-4.10.2/SiloWindows/MSVC9/QT_Defines.vsprops 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/QT_Defines.vsprops 1970-01-01 00:00:00.000000000 +0000 @@ -1,16 +0,0 @@ - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/silex.vcproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/silex.vcproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/silex.vcproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/silex.vcproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,480 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Silo.vcproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Silo.vcproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Silo.vcproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Silo.vcproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,570 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/SiloWindows.sln silo-llnl-4.10.2.real/SiloWindows/MSVC9/SiloWindows.sln --- silo-llnl-4.10.2/SiloWindows/MSVC9/SiloWindows.sln 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/SiloWindows.sln 1970-01-01 00:00:00.000000000 +0000 @@ -1,64 +0,0 @@ -Microsoft Visual Studio Solution File, Format Version 10.00 -# Visual Studio 2008 -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "silex", "silex.vcproj", "{3D443B05-403C-4907-8F50-DC396DB6BB23}" - ProjectSection(ProjectDependencies) = postProject - {20BFB7B0-9F43-43BB-B188-555DEA431CDF} = {20BFB7B0-9F43-43BB-B188-555DEA431CDF} - EndProjectSection -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Silo", "Silo.vcproj", "{20BFB7B0-9F43-43BB-B188-555DEA431CDF}" - ProjectSection(ProjectDependencies) = postProject - {17857422-AD82-4D37-A5AF-94C4556935D0} = {17857422-AD82-4D37-A5AF-94C4556935D0} - EndProjectSection -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pdb_detect", "pdb_detect\pdb_detect.vcproj", "{17857422-AD82-4D37-A5AF-94C4556935D0}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "browser", "browser.vcproj", "{7C65A1CE-9430-4012-8CED-783C233AEA1D}" - ProjectSection(ProjectDependencies) = postProject - {20BFB7B0-9F43-43BB-B188-555DEA431CDF} = {20BFB7B0-9F43-43BB-B188-555DEA431CDF} - EndProjectSection -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Win32 = Debug|Win32 - Debug|x64 = Debug|x64 - Release|Win32 = Release|Win32 - Release|x64 = Release|x64 - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {3D443B05-403C-4907-8F50-DC396DB6BB23}.Debug|Win32.ActiveCfg = Debug|Win32 - {3D443B05-403C-4907-8F50-DC396DB6BB23}.Debug|Win32.Build.0 = Debug|Win32 - {3D443B05-403C-4907-8F50-DC396DB6BB23}.Debug|x64.ActiveCfg = Debug|x64 - {3D443B05-403C-4907-8F50-DC396DB6BB23}.Debug|x64.Build.0 = Debug|x64 - {3D443B05-403C-4907-8F50-DC396DB6BB23}.Release|Win32.ActiveCfg = Release|Win32 - {3D443B05-403C-4907-8F50-DC396DB6BB23}.Release|Win32.Build.0 = Release|Win32 - {3D443B05-403C-4907-8F50-DC396DB6BB23}.Release|x64.ActiveCfg = Release|x64 - {3D443B05-403C-4907-8F50-DC396DB6BB23}.Release|x64.Build.0 = Release|x64 - {20BFB7B0-9F43-43BB-B188-555DEA431CDF}.Debug|Win32.ActiveCfg = Debug|Win32 - {20BFB7B0-9F43-43BB-B188-555DEA431CDF}.Debug|Win32.Build.0 = Debug|Win32 - {20BFB7B0-9F43-43BB-B188-555DEA431CDF}.Debug|x64.ActiveCfg = Debug|x64 - {20BFB7B0-9F43-43BB-B188-555DEA431CDF}.Debug|x64.Build.0 = Debug|x64 - {20BFB7B0-9F43-43BB-B188-555DEA431CDF}.Release|Win32.ActiveCfg = Release|Win32 - {20BFB7B0-9F43-43BB-B188-555DEA431CDF}.Release|Win32.Build.0 = Release|Win32 - {20BFB7B0-9F43-43BB-B188-555DEA431CDF}.Release|x64.ActiveCfg = Release|x64 - {20BFB7B0-9F43-43BB-B188-555DEA431CDF}.Release|x64.Build.0 = Release|x64 - {17857422-AD82-4D37-A5AF-94C4556935D0}.Debug|Win32.ActiveCfg = Release|Win32 - {17857422-AD82-4D37-A5AF-94C4556935D0}.Debug|Win32.Build.0 = Release|Win32 - {17857422-AD82-4D37-A5AF-94C4556935D0}.Debug|x64.ActiveCfg = Release|x64 - {17857422-AD82-4D37-A5AF-94C4556935D0}.Debug|x64.Build.0 = Release|x64 - {17857422-AD82-4D37-A5AF-94C4556935D0}.Release|Win32.ActiveCfg = Release|Win32 - {17857422-AD82-4D37-A5AF-94C4556935D0}.Release|Win32.Build.0 = Release|Win32 - {17857422-AD82-4D37-A5AF-94C4556935D0}.Release|x64.ActiveCfg = Release|x64 - {17857422-AD82-4D37-A5AF-94C4556935D0}.Release|x64.Build.0 = Release|x64 - {7C65A1CE-9430-4012-8CED-783C233AEA1D}.Debug|Win32.ActiveCfg = Debug|Win32 - {7C65A1CE-9430-4012-8CED-783C233AEA1D}.Debug|Win32.Build.0 = Debug|Win32 - {7C65A1CE-9430-4012-8CED-783C233AEA1D}.Debug|x64.ActiveCfg = Debug|x64 - {7C65A1CE-9430-4012-8CED-783C233AEA1D}.Debug|x64.Build.0 = Debug|x64 - {7C65A1CE-9430-4012-8CED-783C233AEA1D}.Release|Win32.ActiveCfg = Release|Win32 - {7C65A1CE-9430-4012-8CED-783C233AEA1D}.Release|Win32.Build.0 = Release|Win32 - {7C65A1CE-9430-4012-8CED-783C233AEA1D}.Release|x64.ActiveCfg = Release|x64 - {7C65A1CE-9430-4012-8CED-783C233AEA1D}.Release|x64.Build.0 = Release|x64 - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection -EndGlobal diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/alltypes.vcproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/alltypes.vcproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/alltypes.vcproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/alltypes.vcproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,400 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/arbpoly3d.vcproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/arbpoly3d.vcproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/arbpoly3d.vcproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/arbpoly3d.vcproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,399 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/arbpoly.vcproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/arbpoly.vcproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/arbpoly.vcproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/arbpoly.vcproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,399 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/array_f.vfproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/array_f.vfproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/array_f.vfproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/array_f.vfproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,52 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/array.vcproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/array.vcproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/array.vcproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/array.vcproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,399 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/compression.vcproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/compression.vcproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/compression.vcproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/compression.vcproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,399 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/CopyTestDependencies.bat silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/CopyTestDependencies.bat --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/CopyTestDependencies.bat 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/CopyTestDependencies.bat 1970-01-01 00:00:00.000000000 +0000 @@ -1,34 +0,0 @@ -@echo off -set HDF5_IN=%1\hdf5dll.dll -set ZLIB_IN=%2\zlib1.dll -set SZIP_IN=%3\szlibdll.dll -set SILO_IN=%4\silohdf5.dll - -set HDF5_OUT=%5\hdf5dll.dll -set ZLIB_OUT=%5\zlib1.dll -set SZIP_OUT=%5\szlibdll.dll -set SILO_OUT=%5\silohdf5.dll - -echo ************************************************************************ -echo copying dependent libs to test directory -echo ... - -if not exist %HDF5_OUT% ( - copy %HDF5_IN% %HDF5_OUT% -) - -if not exist %ZLIB_OUT% ( - copy %ZLIB_IN% %ZLIB_OUT% -) - -if not exist %SZIP_OUT% ( - copy %SZIP_IN% %SZIP_OUT% -) - -if not exist %SILO_OUT% ( - copy %SILO_IN% %SILO_OUT% -) - -echo ... -echo Done. -echo ************************************************************************ diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/csg.vcproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/csg.vcproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/csg.vcproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/csg.vcproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,399 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/curve_f.vfproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/curve_f.vfproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/curve_f.vfproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/curve_f.vfproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,52 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/dirtest.vcproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/dirtest.vcproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/dirtest.vcproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/dirtest.vcproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,403 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/empty.vcproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/empty.vcproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/empty.vcproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/empty.vcproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,399 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/extface.vcproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/extface.vcproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/extface.vcproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/extface.vcproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,399 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/grab.vcproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/grab.vcproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/grab.vcproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/grab.vcproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,399 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/group_test.vcproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/group_test.vcproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/group_test.vcproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/group_test.vcproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,399 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/largefile.vcproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/largefile.vcproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/largefile.vcproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/largefile.vcproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,399 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/listtypes.vcproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/listtypes.vcproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/listtypes.vcproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/listtypes.vcproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,399 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/mat3d_3across.vcproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/mat3d_3across.vcproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/mat3d_3across.vcproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/mat3d_3across.vcproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,399 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/mat_f.vfproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/mat_f.vfproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/mat_f.vfproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/mat_f.vfproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,52 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/merge_block.vcproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/merge_block.vcproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/merge_block.vcproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/merge_block.vcproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,399 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/mmadjacency.vcproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/mmadjacency.vcproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/mmadjacency.vcproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/mmadjacency.vcproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,399 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/multi_file.vcproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/multi_file.vcproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/multi_file.vcproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/multi_file.vcproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,399 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/multispec.vcproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/multispec.vcproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/multispec.vcproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/multispec.vcproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,399 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/multi_test.vcproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/multi_test.vcproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/multi_test.vcproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/multi_test.vcproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,399 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/namescheme.vcproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/namescheme.vcproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/namescheme.vcproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/namescheme.vcproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,399 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/obj.vcproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/obj.vcproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/obj.vcproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/obj.vcproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,399 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/onehex.vcproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/onehex.vcproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/onehex.vcproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/onehex.vcproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,399 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/oneprism.vcproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/oneprism.vcproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/oneprism.vcproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/oneprism.vcproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,399 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/onepyramid.vcproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/onepyramid.vcproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/onepyramid.vcproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/onepyramid.vcproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,399 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/onetet.vcproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/onetet.vcproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/onetet.vcproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/onetet.vcproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,399 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/partial_io.vcproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/partial_io.vcproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/partial_io.vcproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/partial_io.vcproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,399 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/point_f.vfproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/point_f.vfproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/point_f.vfproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/point_f.vfproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,52 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/point.vcproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/point.vcproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/point.vcproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/point.vcproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,399 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/polyzl.vcproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/polyzl.vcproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/polyzl.vcproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/polyzl.vcproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,399 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/Preparation.vcproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/Preparation.vcproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/Preparation.vcproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/Preparation.vcproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,121 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/quad_f.vfproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/quad_f.vfproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/quad_f.vfproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/quad_f.vfproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,52 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/quad.vcproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/quad.vcproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/quad.vcproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/quad.vcproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,403 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/sami.vcproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/sami.vcproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/sami.vcproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/sami.vcproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,399 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/simple.vcproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/simple.vcproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/simple.vcproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/simple.vcproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,399 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/specmix.vcproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/specmix.vcproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/specmix.vcproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/specmix.vcproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,399 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/spec.vcproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/spec.vcproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/spec.vcproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/spec.vcproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,399 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/subhex.vcproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/subhex.vcproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/subhex.vcproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/subhex.vcproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,399 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/testall_f.vfproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/testall_f.vfproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/testall_f.vfproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/testall_f.vfproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,52 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/testall.vcproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/testall.vcproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/testall.vcproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/testall.vcproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,399 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/TestIncludes.vsprops silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/TestIncludes.vsprops --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/TestIncludes.vsprops 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/TestIncludes.vsprops 1970-01-01 00:00:00.000000000 +0000 @@ -1,11 +0,0 @@ - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/testpdb.vcproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/testpdb.vcproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/testpdb.vcproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/testpdb.vcproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,399 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/TestReadMask.vcproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/TestReadMask.vcproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/TestReadMask.vcproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/TestReadMask.vcproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,399 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/Tests.sln silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/Tests.sln --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/Tests.sln 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/Tests.sln 1970-01-01 00:00:00.000000000 +0000 @@ -1,539 +0,0 @@ -Microsoft Visual Studio Solution File, Format Version 10.00 -# Visual Studio 2008 -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "wave", "wave.vcproj", "{3D443B05-403C-4907-8F50-DC396DB6BB23}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "alltypes", "alltypes.vcproj", "{627C8E54-0ABD-4B8A-B76B-0BD13F5E684B}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "array", "array.vcproj", "{CB409787-8ACF-4854-A2AB-6CD727E7120D}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "compression", "compression.vcproj", "{AA9DE89B-47C8-4164-944A-6D42B4AF0FEB}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "csg", "csg.vcproj", "{6DE8948E-8CF8-4650-9749-1C21066AA957}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "extface", "extface.vcproj", "{3482A43B-3A21-4583-88C4-45A4422E2307}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testall", "testall.vcproj", "{E4105EA9-2AB2-4656-B966-01F16961A14B}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "grab", "grab.vcproj", "{DCFFC0C8-1C81-4016-8364-1678FAB1D2D2}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "largefile", "largefile.vcproj", "{EA0DA3EC-DD78-4C57-A0A9-F0EEAE35A85A}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "listtypes", "listtypes.vcproj", "{A79DA077-0644-4DA7-8D8A-BB115597F474}" - ProjectSection(ProjectDependencies) = postProject - {9B955616-D58C-4ED8-AB6F-FBA74E768B54} = {9B955616-D58C-4ED8-AB6F-FBA74E768B54} - EndProjectSection -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mat3d_3across", "mat3d_3across.vcproj", "{CEA025B3-7259-4852-980F-CB39E8206304}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "merge_block", "merge_block.vcproj", "{2B22FE6C-0C77-445A-8320-50EEF60EEF7D}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mmadjacency", "mmadjacency.vcproj", "{809F6E22-2B80-4264-A220-7974EC9EDBBF}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "multi_file", "multi_file.vcproj", "{8CC26B54-D539-4A0A-B461-26F074B790FD}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "multi_test", "multi_test.vcproj", "{7535A535-FDEC-4448-AF9C-C031C9EA8459}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "multispec", "multispec.vcproj", "{2D46EF91-58B2-43B5-ADD7-6908D6794578}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "obj", "obj.vcproj", "{AC0F21DF-ECA4-4B17-9829-59634B68B0D2}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "onehex", "onehex.vcproj", "{3863899B-7F9F-4823-9383-AE2205DCB054}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "oneprism", "oneprism.vcproj", "{4BCA7F35-0742-424F-8E50-39B934312F8F}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "onepyramid", "onepyramid.vcproj", "{2AFC873D-E906-4145-A0CB-6264E8CAE97D}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "onetet", "onetet.vcproj", "{A76CCA62-BC5F-44F8-B090-9C45DA138680}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "partial_io", "partial_io.vcproj", "{4F6A7EC6-F141-4512-B2A8-D108CBD6FAC1}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "point", "point.vcproj", "{025CFEA1-6C43-404D-9DA4-5392A17FA162}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "polyzl", "polyzl.vcproj", "{8C6BC636-FF71-4D58-9D63-E12265523982}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "quad", "quad.vcproj", "{4D5EA26A-8356-4665-A13D-51CCEE2BA7F4}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sami", "sami.vcproj", "{B3C7F964-68B8-4F8C-B5E7-7607836FB101}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "simple", "simple.vcproj", "{7AB46C61-04D5-4E77-AD3F-E7726F3E173A}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spec", "spec.vcproj", "{7A5F618C-F98A-4F8E-BBC7-C4F5C6BCD5A4}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "specmix", "specmix.vcproj", "{27C64509-94EB-406D-9978-93AE531CEB1E}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "subhex", "subhex.vcproj", "{8C02951E-155B-4D09-A1DD-F98695F02A0E}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testpdb", "testpdb.vcproj", "{29110B58-9FD5-4A8E-B9F7-064650EE16C6}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "TestReadMask", "TestReadMask.vcproj", "{D47B6498-6A8D-4E87-A3B6-C6D08DF29FE2}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "twohex", "twohex.vcproj", "{64A6CE79-710F-405C-AAE8-F604E74A4374}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ucd1d", "ucd1d.vcproj", "{C065DCD0-DE87-4B6E-A1E6-8F7EDB272D53}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ucd", "ucd.vcproj", "{9B955616-D58C-4ED8-AB6F-FBA74E768B54}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ucdsamp3", "ucdsamp3.vcproj", "{94D10A14-5A9B-4E1E-B204-DE3196750126}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "version", "version.vcproj", "{CBBCFD38-0F91-4CA2-8CBF-2833AC284438}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "dirtest", "dirtest.vcproj", "{B8FE1ABF-E1AD-41C7-AFAE-333BAB3636E1}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "group_test", "group_test.vcproj", "{69340E63-F15C-4A33-85B7-344666F8F25C}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "namescheme", "namescheme.vcproj", "{D839F6C1-3736-4269-A5E7-30B2BC1CBCCD}" -EndProject -Project("{6989167D-11E4-40FE-8C1A-2192A86A7E90}") = "array_f", "array_f.vfproj", "{A1F2E6F2-6E49-4746-9133-9DF0A404C7DB}" -EndProject -Project("{6989167D-11E4-40FE-8C1A-2192A86A7E90}") = "curve_f", "curve_f.vfproj", "{D08D4EA4-8AF5-4FD2-BFBE-4FFB247B2A35}" -EndProject -Project("{6989167D-11E4-40FE-8C1A-2192A86A7E90}") = "mat_f", "mat_f.vfproj", "{595357B8-132D-4F3E-9679-6E52B474E8A5}" -EndProject -Project("{6989167D-11E4-40FE-8C1A-2192A86A7E90}") = "point_f", "point_f.vfproj", "{EC9BB75A-9691-4DAF-A876-5116DDCBAFBC}" -EndProject -Project("{6989167D-11E4-40FE-8C1A-2192A86A7E90}") = "quad_f", "quad_f.vfproj", "{12C054D3-D396-45F9-912E-8A7FF6548738}" -EndProject -Project("{6989167D-11E4-40FE-8C1A-2192A86A7E90}") = "testall_f", "testall_f.vfproj", "{BCC584B3-571E-4441-8ABF-D2CDD0646116}" -EndProject -Project("{6989167D-11E4-40FE-8C1A-2192A86A7E90}") = "ucd_f", "ucd_f.vfproj", "{A8A0C0C5-A117-4430-B47A-E98603255D01}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Preparation", "Preparation.vcproj", "{EF8EC721-3949-484B-862F-2BB07460526D}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "FortranTests", "FortranTests", "{E7608C74-F664-43A4-823C-D4370571FD4C}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "arbpoly3d", "arbpoly3d.vcproj", "{BF87D83F-575E-49B5-87BD-02C6E581FD6A}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "arbpoly", "arbpoly.vcproj", "{970CE296-FB4C-4990-8FC7-F26078998302}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "empty", "empty.vcproj", "{2C3B0E05-5959-4630-A94F-625C9BCE9B10}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Win32 = Debug|Win32 - Debug|x64 = Debug|x64 - Release|Win32 = Release|Win32 - Release|x64 = Release|x64 - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {3D443B05-403C-4907-8F50-DC396DB6BB23}.Debug|Win32.ActiveCfg = Debug|Win32 - {3D443B05-403C-4907-8F50-DC396DB6BB23}.Debug|Win32.Build.0 = Debug|Win32 - {3D443B05-403C-4907-8F50-DC396DB6BB23}.Debug|x64.ActiveCfg = Debug|x64 - {3D443B05-403C-4907-8F50-DC396DB6BB23}.Debug|x64.Build.0 = Debug|x64 - {3D443B05-403C-4907-8F50-DC396DB6BB23}.Release|Win32.ActiveCfg = Release|Win32 - {3D443B05-403C-4907-8F50-DC396DB6BB23}.Release|Win32.Build.0 = Release|Win32 - {3D443B05-403C-4907-8F50-DC396DB6BB23}.Release|x64.ActiveCfg = Release|x64 - {3D443B05-403C-4907-8F50-DC396DB6BB23}.Release|x64.Build.0 = Release|x64 - {627C8E54-0ABD-4B8A-B76B-0BD13F5E684B}.Debug|Win32.ActiveCfg = Debug|Win32 - {627C8E54-0ABD-4B8A-B76B-0BD13F5E684B}.Debug|Win32.Build.0 = Debug|Win32 - {627C8E54-0ABD-4B8A-B76B-0BD13F5E684B}.Debug|x64.ActiveCfg = Debug|x64 - {627C8E54-0ABD-4B8A-B76B-0BD13F5E684B}.Debug|x64.Build.0 = Debug|x64 - {627C8E54-0ABD-4B8A-B76B-0BD13F5E684B}.Release|Win32.ActiveCfg = Release|Win32 - {627C8E54-0ABD-4B8A-B76B-0BD13F5E684B}.Release|Win32.Build.0 = Release|Win32 - {627C8E54-0ABD-4B8A-B76B-0BD13F5E684B}.Release|x64.ActiveCfg = Release|x64 - {627C8E54-0ABD-4B8A-B76B-0BD13F5E684B}.Release|x64.Build.0 = Release|x64 - {CB409787-8ACF-4854-A2AB-6CD727E7120D}.Debug|Win32.ActiveCfg = Debug|Win32 - {CB409787-8ACF-4854-A2AB-6CD727E7120D}.Debug|Win32.Build.0 = Debug|Win32 - {CB409787-8ACF-4854-A2AB-6CD727E7120D}.Debug|x64.ActiveCfg = Debug|x64 - {CB409787-8ACF-4854-A2AB-6CD727E7120D}.Debug|x64.Build.0 = Debug|x64 - {CB409787-8ACF-4854-A2AB-6CD727E7120D}.Release|Win32.ActiveCfg = Release|Win32 - {CB409787-8ACF-4854-A2AB-6CD727E7120D}.Release|Win32.Build.0 = Release|Win32 - {CB409787-8ACF-4854-A2AB-6CD727E7120D}.Release|x64.ActiveCfg = Release|x64 - {CB409787-8ACF-4854-A2AB-6CD727E7120D}.Release|x64.Build.0 = Release|x64 - {AA9DE89B-47C8-4164-944A-6D42B4AF0FEB}.Debug|Win32.ActiveCfg = Debug|Win32 - {AA9DE89B-47C8-4164-944A-6D42B4AF0FEB}.Debug|Win32.Build.0 = Debug|Win32 - {AA9DE89B-47C8-4164-944A-6D42B4AF0FEB}.Debug|x64.ActiveCfg = Debug|x64 - {AA9DE89B-47C8-4164-944A-6D42B4AF0FEB}.Debug|x64.Build.0 = Debug|x64 - {AA9DE89B-47C8-4164-944A-6D42B4AF0FEB}.Release|Win32.ActiveCfg = Release|Win32 - {AA9DE89B-47C8-4164-944A-6D42B4AF0FEB}.Release|Win32.Build.0 = Release|Win32 - {AA9DE89B-47C8-4164-944A-6D42B4AF0FEB}.Release|x64.ActiveCfg = Release|x64 - {AA9DE89B-47C8-4164-944A-6D42B4AF0FEB}.Release|x64.Build.0 = Release|x64 - {6DE8948E-8CF8-4650-9749-1C21066AA957}.Debug|Win32.ActiveCfg = Debug|Win32 - {6DE8948E-8CF8-4650-9749-1C21066AA957}.Debug|Win32.Build.0 = Debug|Win32 - {6DE8948E-8CF8-4650-9749-1C21066AA957}.Debug|x64.ActiveCfg = Debug|x64 - {6DE8948E-8CF8-4650-9749-1C21066AA957}.Debug|x64.Build.0 = Debug|x64 - {6DE8948E-8CF8-4650-9749-1C21066AA957}.Release|Win32.ActiveCfg = Release|Win32 - {6DE8948E-8CF8-4650-9749-1C21066AA957}.Release|Win32.Build.0 = Release|Win32 - {6DE8948E-8CF8-4650-9749-1C21066AA957}.Release|x64.ActiveCfg = Release|x64 - {6DE8948E-8CF8-4650-9749-1C21066AA957}.Release|x64.Build.0 = Release|x64 - {3482A43B-3A21-4583-88C4-45A4422E2307}.Debug|Win32.ActiveCfg = Debug|Win32 - {3482A43B-3A21-4583-88C4-45A4422E2307}.Debug|Win32.Build.0 = Debug|Win32 - {3482A43B-3A21-4583-88C4-45A4422E2307}.Debug|x64.ActiveCfg = Debug|x64 - {3482A43B-3A21-4583-88C4-45A4422E2307}.Debug|x64.Build.0 = Debug|x64 - {3482A43B-3A21-4583-88C4-45A4422E2307}.Release|Win32.ActiveCfg = Release|Win32 - {3482A43B-3A21-4583-88C4-45A4422E2307}.Release|Win32.Build.0 = Release|Win32 - {3482A43B-3A21-4583-88C4-45A4422E2307}.Release|x64.ActiveCfg = Release|x64 - {3482A43B-3A21-4583-88C4-45A4422E2307}.Release|x64.Build.0 = Release|x64 - {E4105EA9-2AB2-4656-B966-01F16961A14B}.Debug|Win32.ActiveCfg = Debug|Win32 - {E4105EA9-2AB2-4656-B966-01F16961A14B}.Debug|Win32.Build.0 = Debug|Win32 - {E4105EA9-2AB2-4656-B966-01F16961A14B}.Debug|x64.ActiveCfg = Debug|x64 - {E4105EA9-2AB2-4656-B966-01F16961A14B}.Debug|x64.Build.0 = Debug|x64 - {E4105EA9-2AB2-4656-B966-01F16961A14B}.Release|Win32.ActiveCfg = Release|Win32 - {E4105EA9-2AB2-4656-B966-01F16961A14B}.Release|Win32.Build.0 = Release|Win32 - {E4105EA9-2AB2-4656-B966-01F16961A14B}.Release|x64.ActiveCfg = Release|x64 - {E4105EA9-2AB2-4656-B966-01F16961A14B}.Release|x64.Build.0 = Release|x64 - {DCFFC0C8-1C81-4016-8364-1678FAB1D2D2}.Debug|Win32.ActiveCfg = Debug|Win32 - {DCFFC0C8-1C81-4016-8364-1678FAB1D2D2}.Debug|Win32.Build.0 = Debug|Win32 - {DCFFC0C8-1C81-4016-8364-1678FAB1D2D2}.Debug|x64.ActiveCfg = Debug|x64 - {DCFFC0C8-1C81-4016-8364-1678FAB1D2D2}.Debug|x64.Build.0 = Debug|x64 - {DCFFC0C8-1C81-4016-8364-1678FAB1D2D2}.Release|Win32.ActiveCfg = Release|Win32 - {DCFFC0C8-1C81-4016-8364-1678FAB1D2D2}.Release|Win32.Build.0 = Release|Win32 - {DCFFC0C8-1C81-4016-8364-1678FAB1D2D2}.Release|x64.ActiveCfg = Release|x64 - {DCFFC0C8-1C81-4016-8364-1678FAB1D2D2}.Release|x64.Build.0 = Release|x64 - {EA0DA3EC-DD78-4C57-A0A9-F0EEAE35A85A}.Debug|Win32.ActiveCfg = Debug|Win32 - {EA0DA3EC-DD78-4C57-A0A9-F0EEAE35A85A}.Debug|Win32.Build.0 = Debug|Win32 - {EA0DA3EC-DD78-4C57-A0A9-F0EEAE35A85A}.Debug|x64.ActiveCfg = Debug|x64 - {EA0DA3EC-DD78-4C57-A0A9-F0EEAE35A85A}.Debug|x64.Build.0 = Debug|x64 - {EA0DA3EC-DD78-4C57-A0A9-F0EEAE35A85A}.Release|Win32.ActiveCfg = Release|Win32 - {EA0DA3EC-DD78-4C57-A0A9-F0EEAE35A85A}.Release|Win32.Build.0 = Release|Win32 - {EA0DA3EC-DD78-4C57-A0A9-F0EEAE35A85A}.Release|x64.ActiveCfg = Release|x64 - {EA0DA3EC-DD78-4C57-A0A9-F0EEAE35A85A}.Release|x64.Build.0 = Release|x64 - {A79DA077-0644-4DA7-8D8A-BB115597F474}.Debug|Win32.ActiveCfg = Debug|Win32 - {A79DA077-0644-4DA7-8D8A-BB115597F474}.Debug|Win32.Build.0 = Debug|Win32 - {A79DA077-0644-4DA7-8D8A-BB115597F474}.Debug|x64.ActiveCfg = Debug|x64 - {A79DA077-0644-4DA7-8D8A-BB115597F474}.Debug|x64.Build.0 = Debug|x64 - {A79DA077-0644-4DA7-8D8A-BB115597F474}.Release|Win32.ActiveCfg = Release|Win32 - {A79DA077-0644-4DA7-8D8A-BB115597F474}.Release|Win32.Build.0 = Release|Win32 - {A79DA077-0644-4DA7-8D8A-BB115597F474}.Release|x64.ActiveCfg = Release|x64 - {A79DA077-0644-4DA7-8D8A-BB115597F474}.Release|x64.Build.0 = Release|x64 - {CEA025B3-7259-4852-980F-CB39E8206304}.Debug|Win32.ActiveCfg = Debug|Win32 - {CEA025B3-7259-4852-980F-CB39E8206304}.Debug|Win32.Build.0 = Debug|Win32 - {CEA025B3-7259-4852-980F-CB39E8206304}.Debug|x64.ActiveCfg = Debug|x64 - {CEA025B3-7259-4852-980F-CB39E8206304}.Debug|x64.Build.0 = Debug|x64 - {CEA025B3-7259-4852-980F-CB39E8206304}.Release|Win32.ActiveCfg = Release|Win32 - {CEA025B3-7259-4852-980F-CB39E8206304}.Release|Win32.Build.0 = Release|Win32 - {CEA025B3-7259-4852-980F-CB39E8206304}.Release|x64.ActiveCfg = Release|x64 - {CEA025B3-7259-4852-980F-CB39E8206304}.Release|x64.Build.0 = Release|x64 - {2B22FE6C-0C77-445A-8320-50EEF60EEF7D}.Debug|Win32.ActiveCfg = Debug|Win32 - {2B22FE6C-0C77-445A-8320-50EEF60EEF7D}.Debug|Win32.Build.0 = Debug|Win32 - {2B22FE6C-0C77-445A-8320-50EEF60EEF7D}.Debug|x64.ActiveCfg = Debug|x64 - {2B22FE6C-0C77-445A-8320-50EEF60EEF7D}.Debug|x64.Build.0 = Debug|x64 - {2B22FE6C-0C77-445A-8320-50EEF60EEF7D}.Release|Win32.ActiveCfg = Release|Win32 - {2B22FE6C-0C77-445A-8320-50EEF60EEF7D}.Release|Win32.Build.0 = Release|Win32 - {2B22FE6C-0C77-445A-8320-50EEF60EEF7D}.Release|x64.ActiveCfg = Release|x64 - {2B22FE6C-0C77-445A-8320-50EEF60EEF7D}.Release|x64.Build.0 = Release|x64 - {809F6E22-2B80-4264-A220-7974EC9EDBBF}.Debug|Win32.ActiveCfg = Debug|Win32 - {809F6E22-2B80-4264-A220-7974EC9EDBBF}.Debug|Win32.Build.0 = Debug|Win32 - {809F6E22-2B80-4264-A220-7974EC9EDBBF}.Debug|x64.ActiveCfg = Debug|x64 - {809F6E22-2B80-4264-A220-7974EC9EDBBF}.Debug|x64.Build.0 = Debug|x64 - {809F6E22-2B80-4264-A220-7974EC9EDBBF}.Release|Win32.ActiveCfg = Release|Win32 - {809F6E22-2B80-4264-A220-7974EC9EDBBF}.Release|Win32.Build.0 = Release|Win32 - {809F6E22-2B80-4264-A220-7974EC9EDBBF}.Release|x64.ActiveCfg = Release|x64 - {809F6E22-2B80-4264-A220-7974EC9EDBBF}.Release|x64.Build.0 = Release|x64 - {8CC26B54-D539-4A0A-B461-26F074B790FD}.Debug|Win32.ActiveCfg = Debug|Win32 - {8CC26B54-D539-4A0A-B461-26F074B790FD}.Debug|Win32.Build.0 = Debug|Win32 - {8CC26B54-D539-4A0A-B461-26F074B790FD}.Debug|x64.ActiveCfg = Debug|x64 - {8CC26B54-D539-4A0A-B461-26F074B790FD}.Debug|x64.Build.0 = Debug|x64 - {8CC26B54-D539-4A0A-B461-26F074B790FD}.Release|Win32.ActiveCfg = Release|Win32 - {8CC26B54-D539-4A0A-B461-26F074B790FD}.Release|Win32.Build.0 = Release|Win32 - {8CC26B54-D539-4A0A-B461-26F074B790FD}.Release|x64.ActiveCfg = Release|x64 - {8CC26B54-D539-4A0A-B461-26F074B790FD}.Release|x64.Build.0 = Release|x64 - {7535A535-FDEC-4448-AF9C-C031C9EA8459}.Debug|Win32.ActiveCfg = Debug|Win32 - {7535A535-FDEC-4448-AF9C-C031C9EA8459}.Debug|Win32.Build.0 = Debug|Win32 - {7535A535-FDEC-4448-AF9C-C031C9EA8459}.Debug|x64.ActiveCfg = Debug|x64 - {7535A535-FDEC-4448-AF9C-C031C9EA8459}.Debug|x64.Build.0 = Debug|x64 - {7535A535-FDEC-4448-AF9C-C031C9EA8459}.Release|Win32.ActiveCfg = Release|Win32 - {7535A535-FDEC-4448-AF9C-C031C9EA8459}.Release|Win32.Build.0 = Release|Win32 - {7535A535-FDEC-4448-AF9C-C031C9EA8459}.Release|x64.ActiveCfg = Release|x64 - {7535A535-FDEC-4448-AF9C-C031C9EA8459}.Release|x64.Build.0 = Release|x64 - {2D46EF91-58B2-43B5-ADD7-6908D6794578}.Debug|Win32.ActiveCfg = Debug|Win32 - {2D46EF91-58B2-43B5-ADD7-6908D6794578}.Debug|Win32.Build.0 = Debug|Win32 - {2D46EF91-58B2-43B5-ADD7-6908D6794578}.Debug|x64.ActiveCfg = Debug|x64 - {2D46EF91-58B2-43B5-ADD7-6908D6794578}.Debug|x64.Build.0 = Debug|x64 - {2D46EF91-58B2-43B5-ADD7-6908D6794578}.Release|Win32.ActiveCfg = Release|Win32 - {2D46EF91-58B2-43B5-ADD7-6908D6794578}.Release|Win32.Build.0 = Release|Win32 - {2D46EF91-58B2-43B5-ADD7-6908D6794578}.Release|x64.ActiveCfg = Release|x64 - {2D46EF91-58B2-43B5-ADD7-6908D6794578}.Release|x64.Build.0 = Release|x64 - {AC0F21DF-ECA4-4B17-9829-59634B68B0D2}.Debug|Win32.ActiveCfg = Debug|Win32 - {AC0F21DF-ECA4-4B17-9829-59634B68B0D2}.Debug|Win32.Build.0 = Debug|Win32 - {AC0F21DF-ECA4-4B17-9829-59634B68B0D2}.Debug|x64.ActiveCfg = Debug|x64 - {AC0F21DF-ECA4-4B17-9829-59634B68B0D2}.Debug|x64.Build.0 = Debug|x64 - {AC0F21DF-ECA4-4B17-9829-59634B68B0D2}.Release|Win32.ActiveCfg = Release|Win32 - {AC0F21DF-ECA4-4B17-9829-59634B68B0D2}.Release|Win32.Build.0 = Release|Win32 - {AC0F21DF-ECA4-4B17-9829-59634B68B0D2}.Release|x64.ActiveCfg = Release|x64 - {AC0F21DF-ECA4-4B17-9829-59634B68B0D2}.Release|x64.Build.0 = Release|x64 - {3863899B-7F9F-4823-9383-AE2205DCB054}.Debug|Win32.ActiveCfg = Debug|Win32 - {3863899B-7F9F-4823-9383-AE2205DCB054}.Debug|Win32.Build.0 = Debug|Win32 - {3863899B-7F9F-4823-9383-AE2205DCB054}.Debug|x64.ActiveCfg = Debug|x64 - {3863899B-7F9F-4823-9383-AE2205DCB054}.Debug|x64.Build.0 = Debug|x64 - {3863899B-7F9F-4823-9383-AE2205DCB054}.Release|Win32.ActiveCfg = Release|Win32 - {3863899B-7F9F-4823-9383-AE2205DCB054}.Release|Win32.Build.0 = Release|Win32 - {3863899B-7F9F-4823-9383-AE2205DCB054}.Release|x64.ActiveCfg = Release|x64 - {3863899B-7F9F-4823-9383-AE2205DCB054}.Release|x64.Build.0 = Release|x64 - {4BCA7F35-0742-424F-8E50-39B934312F8F}.Debug|Win32.ActiveCfg = Debug|Win32 - {4BCA7F35-0742-424F-8E50-39B934312F8F}.Debug|Win32.Build.0 = Debug|Win32 - {4BCA7F35-0742-424F-8E50-39B934312F8F}.Debug|x64.ActiveCfg = Debug|x64 - {4BCA7F35-0742-424F-8E50-39B934312F8F}.Debug|x64.Build.0 = Debug|x64 - {4BCA7F35-0742-424F-8E50-39B934312F8F}.Release|Win32.ActiveCfg = Release|Win32 - {4BCA7F35-0742-424F-8E50-39B934312F8F}.Release|Win32.Build.0 = Release|Win32 - {4BCA7F35-0742-424F-8E50-39B934312F8F}.Release|x64.ActiveCfg = Release|x64 - {4BCA7F35-0742-424F-8E50-39B934312F8F}.Release|x64.Build.0 = Release|x64 - {2AFC873D-E906-4145-A0CB-6264E8CAE97D}.Debug|Win32.ActiveCfg = Debug|Win32 - {2AFC873D-E906-4145-A0CB-6264E8CAE97D}.Debug|Win32.Build.0 = Debug|Win32 - {2AFC873D-E906-4145-A0CB-6264E8CAE97D}.Debug|x64.ActiveCfg = Debug|x64 - {2AFC873D-E906-4145-A0CB-6264E8CAE97D}.Debug|x64.Build.0 = Debug|x64 - {2AFC873D-E906-4145-A0CB-6264E8CAE97D}.Release|Win32.ActiveCfg = Release|Win32 - {2AFC873D-E906-4145-A0CB-6264E8CAE97D}.Release|Win32.Build.0 = Release|Win32 - {2AFC873D-E906-4145-A0CB-6264E8CAE97D}.Release|x64.ActiveCfg = Release|x64 - {2AFC873D-E906-4145-A0CB-6264E8CAE97D}.Release|x64.Build.0 = Release|x64 - {A76CCA62-BC5F-44F8-B090-9C45DA138680}.Debug|Win32.ActiveCfg = Debug|Win32 - {A76CCA62-BC5F-44F8-B090-9C45DA138680}.Debug|Win32.Build.0 = Debug|Win32 - {A76CCA62-BC5F-44F8-B090-9C45DA138680}.Debug|x64.ActiveCfg = Debug|x64 - {A76CCA62-BC5F-44F8-B090-9C45DA138680}.Debug|x64.Build.0 = Debug|x64 - {A76CCA62-BC5F-44F8-B090-9C45DA138680}.Release|Win32.ActiveCfg = Release|Win32 - {A76CCA62-BC5F-44F8-B090-9C45DA138680}.Release|Win32.Build.0 = Release|Win32 - {A76CCA62-BC5F-44F8-B090-9C45DA138680}.Release|x64.ActiveCfg = Release|x64 - {A76CCA62-BC5F-44F8-B090-9C45DA138680}.Release|x64.Build.0 = Release|x64 - {4F6A7EC6-F141-4512-B2A8-D108CBD6FAC1}.Debug|Win32.ActiveCfg = Debug|Win32 - {4F6A7EC6-F141-4512-B2A8-D108CBD6FAC1}.Debug|Win32.Build.0 = Debug|Win32 - {4F6A7EC6-F141-4512-B2A8-D108CBD6FAC1}.Debug|x64.ActiveCfg = Debug|x64 - {4F6A7EC6-F141-4512-B2A8-D108CBD6FAC1}.Debug|x64.Build.0 = Debug|x64 - {4F6A7EC6-F141-4512-B2A8-D108CBD6FAC1}.Release|Win32.ActiveCfg = Release|Win32 - {4F6A7EC6-F141-4512-B2A8-D108CBD6FAC1}.Release|Win32.Build.0 = Release|Win32 - {4F6A7EC6-F141-4512-B2A8-D108CBD6FAC1}.Release|x64.ActiveCfg = Release|x64 - {4F6A7EC6-F141-4512-B2A8-D108CBD6FAC1}.Release|x64.Build.0 = Release|x64 - {025CFEA1-6C43-404D-9DA4-5392A17FA162}.Debug|Win32.ActiveCfg = Debug|Win32 - {025CFEA1-6C43-404D-9DA4-5392A17FA162}.Debug|Win32.Build.0 = Debug|Win32 - {025CFEA1-6C43-404D-9DA4-5392A17FA162}.Debug|x64.ActiveCfg = Debug|x64 - {025CFEA1-6C43-404D-9DA4-5392A17FA162}.Debug|x64.Build.0 = Debug|x64 - {025CFEA1-6C43-404D-9DA4-5392A17FA162}.Release|Win32.ActiveCfg = Release|Win32 - {025CFEA1-6C43-404D-9DA4-5392A17FA162}.Release|Win32.Build.0 = Release|Win32 - {025CFEA1-6C43-404D-9DA4-5392A17FA162}.Release|x64.ActiveCfg = Release|x64 - {025CFEA1-6C43-404D-9DA4-5392A17FA162}.Release|x64.Build.0 = Release|x64 - {8C6BC636-FF71-4D58-9D63-E12265523982}.Debug|Win32.ActiveCfg = Debug|Win32 - {8C6BC636-FF71-4D58-9D63-E12265523982}.Debug|Win32.Build.0 = Debug|Win32 - {8C6BC636-FF71-4D58-9D63-E12265523982}.Debug|x64.ActiveCfg = Debug|x64 - {8C6BC636-FF71-4D58-9D63-E12265523982}.Debug|x64.Build.0 = Debug|x64 - {8C6BC636-FF71-4D58-9D63-E12265523982}.Release|Win32.ActiveCfg = Release|Win32 - {8C6BC636-FF71-4D58-9D63-E12265523982}.Release|Win32.Build.0 = Release|Win32 - {8C6BC636-FF71-4D58-9D63-E12265523982}.Release|x64.ActiveCfg = Release|x64 - {8C6BC636-FF71-4D58-9D63-E12265523982}.Release|x64.Build.0 = Release|x64 - {4D5EA26A-8356-4665-A13D-51CCEE2BA7F4}.Debug|Win32.ActiveCfg = Debug|Win32 - {4D5EA26A-8356-4665-A13D-51CCEE2BA7F4}.Debug|Win32.Build.0 = Debug|Win32 - {4D5EA26A-8356-4665-A13D-51CCEE2BA7F4}.Debug|x64.ActiveCfg = Debug|x64 - {4D5EA26A-8356-4665-A13D-51CCEE2BA7F4}.Debug|x64.Build.0 = Debug|x64 - {4D5EA26A-8356-4665-A13D-51CCEE2BA7F4}.Release|Win32.ActiveCfg = Release|Win32 - {4D5EA26A-8356-4665-A13D-51CCEE2BA7F4}.Release|Win32.Build.0 = Release|Win32 - {4D5EA26A-8356-4665-A13D-51CCEE2BA7F4}.Release|x64.ActiveCfg = Release|x64 - {4D5EA26A-8356-4665-A13D-51CCEE2BA7F4}.Release|x64.Build.0 = Release|x64 - {B3C7F964-68B8-4F8C-B5E7-7607836FB101}.Debug|Win32.ActiveCfg = Debug|Win32 - {B3C7F964-68B8-4F8C-B5E7-7607836FB101}.Debug|Win32.Build.0 = Debug|Win32 - {B3C7F964-68B8-4F8C-B5E7-7607836FB101}.Debug|x64.ActiveCfg = Debug|x64 - {B3C7F964-68B8-4F8C-B5E7-7607836FB101}.Debug|x64.Build.0 = Debug|x64 - {B3C7F964-68B8-4F8C-B5E7-7607836FB101}.Release|Win32.ActiveCfg = Release|Win32 - {B3C7F964-68B8-4F8C-B5E7-7607836FB101}.Release|Win32.Build.0 = Release|Win32 - {B3C7F964-68B8-4F8C-B5E7-7607836FB101}.Release|x64.ActiveCfg = Release|x64 - {B3C7F964-68B8-4F8C-B5E7-7607836FB101}.Release|x64.Build.0 = Release|x64 - {7AB46C61-04D5-4E77-AD3F-E7726F3E173A}.Debug|Win32.ActiveCfg = Debug|Win32 - {7AB46C61-04D5-4E77-AD3F-E7726F3E173A}.Debug|Win32.Build.0 = Debug|Win32 - {7AB46C61-04D5-4E77-AD3F-E7726F3E173A}.Debug|x64.ActiveCfg = Debug|x64 - {7AB46C61-04D5-4E77-AD3F-E7726F3E173A}.Debug|x64.Build.0 = Debug|x64 - {7AB46C61-04D5-4E77-AD3F-E7726F3E173A}.Release|Win32.ActiveCfg = Release|Win32 - {7AB46C61-04D5-4E77-AD3F-E7726F3E173A}.Release|Win32.Build.0 = Release|Win32 - {7AB46C61-04D5-4E77-AD3F-E7726F3E173A}.Release|x64.ActiveCfg = Release|x64 - {7AB46C61-04D5-4E77-AD3F-E7726F3E173A}.Release|x64.Build.0 = Release|x64 - {7A5F618C-F98A-4F8E-BBC7-C4F5C6BCD5A4}.Debug|Win32.ActiveCfg = Debug|Win32 - {7A5F618C-F98A-4F8E-BBC7-C4F5C6BCD5A4}.Debug|Win32.Build.0 = Debug|Win32 - {7A5F618C-F98A-4F8E-BBC7-C4F5C6BCD5A4}.Debug|x64.ActiveCfg = Debug|x64 - {7A5F618C-F98A-4F8E-BBC7-C4F5C6BCD5A4}.Debug|x64.Build.0 = Debug|x64 - {7A5F618C-F98A-4F8E-BBC7-C4F5C6BCD5A4}.Release|Win32.ActiveCfg = Release|Win32 - {7A5F618C-F98A-4F8E-BBC7-C4F5C6BCD5A4}.Release|Win32.Build.0 = Release|Win32 - {7A5F618C-F98A-4F8E-BBC7-C4F5C6BCD5A4}.Release|x64.ActiveCfg = Release|x64 - {7A5F618C-F98A-4F8E-BBC7-C4F5C6BCD5A4}.Release|x64.Build.0 = Release|x64 - {27C64509-94EB-406D-9978-93AE531CEB1E}.Debug|Win32.ActiveCfg = Debug|Win32 - {27C64509-94EB-406D-9978-93AE531CEB1E}.Debug|Win32.Build.0 = Debug|Win32 - {27C64509-94EB-406D-9978-93AE531CEB1E}.Debug|x64.ActiveCfg = Debug|x64 - {27C64509-94EB-406D-9978-93AE531CEB1E}.Debug|x64.Build.0 = Debug|x64 - {27C64509-94EB-406D-9978-93AE531CEB1E}.Release|Win32.ActiveCfg = Release|Win32 - {27C64509-94EB-406D-9978-93AE531CEB1E}.Release|Win32.Build.0 = Release|Win32 - {27C64509-94EB-406D-9978-93AE531CEB1E}.Release|x64.ActiveCfg = Release|x64 - {27C64509-94EB-406D-9978-93AE531CEB1E}.Release|x64.Build.0 = Release|x64 - {8C02951E-155B-4D09-A1DD-F98695F02A0E}.Debug|Win32.ActiveCfg = Debug|Win32 - {8C02951E-155B-4D09-A1DD-F98695F02A0E}.Debug|Win32.Build.0 = Debug|Win32 - {8C02951E-155B-4D09-A1DD-F98695F02A0E}.Debug|x64.ActiveCfg = Debug|x64 - {8C02951E-155B-4D09-A1DD-F98695F02A0E}.Debug|x64.Build.0 = Debug|x64 - {8C02951E-155B-4D09-A1DD-F98695F02A0E}.Release|Win32.ActiveCfg = Release|Win32 - {8C02951E-155B-4D09-A1DD-F98695F02A0E}.Release|Win32.Build.0 = Release|Win32 - {8C02951E-155B-4D09-A1DD-F98695F02A0E}.Release|x64.ActiveCfg = Release|x64 - {8C02951E-155B-4D09-A1DD-F98695F02A0E}.Release|x64.Build.0 = Release|x64 - {29110B58-9FD5-4A8E-B9F7-064650EE16C6}.Debug|Win32.ActiveCfg = Debug|Win32 - {29110B58-9FD5-4A8E-B9F7-064650EE16C6}.Debug|Win32.Build.0 = Debug|Win32 - {29110B58-9FD5-4A8E-B9F7-064650EE16C6}.Debug|x64.ActiveCfg = Debug|x64 - {29110B58-9FD5-4A8E-B9F7-064650EE16C6}.Debug|x64.Build.0 = Debug|x64 - {29110B58-9FD5-4A8E-B9F7-064650EE16C6}.Release|Win32.ActiveCfg = Release|Win32 - {29110B58-9FD5-4A8E-B9F7-064650EE16C6}.Release|Win32.Build.0 = Release|Win32 - {29110B58-9FD5-4A8E-B9F7-064650EE16C6}.Release|x64.ActiveCfg = Release|x64 - {29110B58-9FD5-4A8E-B9F7-064650EE16C6}.Release|x64.Build.0 = Release|x64 - {D47B6498-6A8D-4E87-A3B6-C6D08DF29FE2}.Debug|Win32.ActiveCfg = Debug|Win32 - {D47B6498-6A8D-4E87-A3B6-C6D08DF29FE2}.Debug|Win32.Build.0 = Debug|Win32 - {D47B6498-6A8D-4E87-A3B6-C6D08DF29FE2}.Debug|x64.ActiveCfg = Debug|x64 - {D47B6498-6A8D-4E87-A3B6-C6D08DF29FE2}.Debug|x64.Build.0 = Debug|x64 - {D47B6498-6A8D-4E87-A3B6-C6D08DF29FE2}.Release|Win32.ActiveCfg = Release|Win32 - {D47B6498-6A8D-4E87-A3B6-C6D08DF29FE2}.Release|Win32.Build.0 = Release|Win32 - {D47B6498-6A8D-4E87-A3B6-C6D08DF29FE2}.Release|x64.ActiveCfg = Release|x64 - {D47B6498-6A8D-4E87-A3B6-C6D08DF29FE2}.Release|x64.Build.0 = Release|x64 - {64A6CE79-710F-405C-AAE8-F604E74A4374}.Debug|Win32.ActiveCfg = Debug|Win32 - {64A6CE79-710F-405C-AAE8-F604E74A4374}.Debug|Win32.Build.0 = Debug|Win32 - {64A6CE79-710F-405C-AAE8-F604E74A4374}.Debug|x64.ActiveCfg = Debug|x64 - {64A6CE79-710F-405C-AAE8-F604E74A4374}.Debug|x64.Build.0 = Debug|x64 - {64A6CE79-710F-405C-AAE8-F604E74A4374}.Release|Win32.ActiveCfg = Release|Win32 - {64A6CE79-710F-405C-AAE8-F604E74A4374}.Release|Win32.Build.0 = Release|Win32 - {64A6CE79-710F-405C-AAE8-F604E74A4374}.Release|x64.ActiveCfg = Release|x64 - {64A6CE79-710F-405C-AAE8-F604E74A4374}.Release|x64.Build.0 = Release|x64 - {C065DCD0-DE87-4B6E-A1E6-8F7EDB272D53}.Debug|Win32.ActiveCfg = Debug|Win32 - {C065DCD0-DE87-4B6E-A1E6-8F7EDB272D53}.Debug|Win32.Build.0 = Debug|Win32 - {C065DCD0-DE87-4B6E-A1E6-8F7EDB272D53}.Debug|x64.ActiveCfg = Debug|x64 - {C065DCD0-DE87-4B6E-A1E6-8F7EDB272D53}.Debug|x64.Build.0 = Debug|x64 - {C065DCD0-DE87-4B6E-A1E6-8F7EDB272D53}.Release|Win32.ActiveCfg = Release|Win32 - {C065DCD0-DE87-4B6E-A1E6-8F7EDB272D53}.Release|Win32.Build.0 = Release|Win32 - {C065DCD0-DE87-4B6E-A1E6-8F7EDB272D53}.Release|x64.ActiveCfg = Release|x64 - {C065DCD0-DE87-4B6E-A1E6-8F7EDB272D53}.Release|x64.Build.0 = Release|x64 - {9B955616-D58C-4ED8-AB6F-FBA74E768B54}.Debug|Win32.ActiveCfg = Debug|Win32 - {9B955616-D58C-4ED8-AB6F-FBA74E768B54}.Debug|Win32.Build.0 = Debug|Win32 - {9B955616-D58C-4ED8-AB6F-FBA74E768B54}.Debug|x64.ActiveCfg = Debug|x64 - {9B955616-D58C-4ED8-AB6F-FBA74E768B54}.Debug|x64.Build.0 = Debug|x64 - {9B955616-D58C-4ED8-AB6F-FBA74E768B54}.Release|Win32.ActiveCfg = Release|Win32 - {9B955616-D58C-4ED8-AB6F-FBA74E768B54}.Release|Win32.Build.0 = Release|Win32 - {9B955616-D58C-4ED8-AB6F-FBA74E768B54}.Release|x64.ActiveCfg = Release|x64 - {9B955616-D58C-4ED8-AB6F-FBA74E768B54}.Release|x64.Build.0 = Release|x64 - {94D10A14-5A9B-4E1E-B204-DE3196750126}.Debug|Win32.ActiveCfg = Debug|Win32 - {94D10A14-5A9B-4E1E-B204-DE3196750126}.Debug|Win32.Build.0 = Debug|Win32 - {94D10A14-5A9B-4E1E-B204-DE3196750126}.Debug|x64.ActiveCfg = Debug|x64 - {94D10A14-5A9B-4E1E-B204-DE3196750126}.Debug|x64.Build.0 = Debug|x64 - {94D10A14-5A9B-4E1E-B204-DE3196750126}.Release|Win32.ActiveCfg = Release|Win32 - {94D10A14-5A9B-4E1E-B204-DE3196750126}.Release|Win32.Build.0 = Release|Win32 - {94D10A14-5A9B-4E1E-B204-DE3196750126}.Release|x64.ActiveCfg = Release|x64 - {94D10A14-5A9B-4E1E-B204-DE3196750126}.Release|x64.Build.0 = Release|x64 - {CBBCFD38-0F91-4CA2-8CBF-2833AC284438}.Debug|Win32.ActiveCfg = Debug|Win32 - {CBBCFD38-0F91-4CA2-8CBF-2833AC284438}.Debug|Win32.Build.0 = Debug|Win32 - {CBBCFD38-0F91-4CA2-8CBF-2833AC284438}.Debug|x64.ActiveCfg = Debug|x64 - {CBBCFD38-0F91-4CA2-8CBF-2833AC284438}.Debug|x64.Build.0 = Debug|x64 - {CBBCFD38-0F91-4CA2-8CBF-2833AC284438}.Release|Win32.ActiveCfg = Release|Win32 - {CBBCFD38-0F91-4CA2-8CBF-2833AC284438}.Release|Win32.Build.0 = Release|Win32 - {CBBCFD38-0F91-4CA2-8CBF-2833AC284438}.Release|x64.ActiveCfg = Release|x64 - {CBBCFD38-0F91-4CA2-8CBF-2833AC284438}.Release|x64.Build.0 = Release|x64 - {B8FE1ABF-E1AD-41C7-AFAE-333BAB3636E1}.Debug|Win32.ActiveCfg = Debug|Win32 - {B8FE1ABF-E1AD-41C7-AFAE-333BAB3636E1}.Debug|Win32.Build.0 = Debug|Win32 - {B8FE1ABF-E1AD-41C7-AFAE-333BAB3636E1}.Debug|x64.ActiveCfg = Debug|x64 - {B8FE1ABF-E1AD-41C7-AFAE-333BAB3636E1}.Debug|x64.Build.0 = Debug|x64 - {B8FE1ABF-E1AD-41C7-AFAE-333BAB3636E1}.Release|Win32.ActiveCfg = Release|Win32 - {B8FE1ABF-E1AD-41C7-AFAE-333BAB3636E1}.Release|Win32.Build.0 = Release|Win32 - {B8FE1ABF-E1AD-41C7-AFAE-333BAB3636E1}.Release|x64.ActiveCfg = Release|x64 - {B8FE1ABF-E1AD-41C7-AFAE-333BAB3636E1}.Release|x64.Build.0 = Release|x64 - {69340E63-F15C-4A33-85B7-344666F8F25C}.Debug|Win32.ActiveCfg = Debug|Win32 - {69340E63-F15C-4A33-85B7-344666F8F25C}.Debug|Win32.Build.0 = Debug|Win32 - {69340E63-F15C-4A33-85B7-344666F8F25C}.Debug|x64.ActiveCfg = Debug|x64 - {69340E63-F15C-4A33-85B7-344666F8F25C}.Debug|x64.Build.0 = Debug|x64 - {69340E63-F15C-4A33-85B7-344666F8F25C}.Release|Win32.ActiveCfg = Release|Win32 - {69340E63-F15C-4A33-85B7-344666F8F25C}.Release|Win32.Build.0 = Release|Win32 - {69340E63-F15C-4A33-85B7-344666F8F25C}.Release|x64.ActiveCfg = Release|x64 - {69340E63-F15C-4A33-85B7-344666F8F25C}.Release|x64.Build.0 = Release|x64 - {D839F6C1-3736-4269-A5E7-30B2BC1CBCCD}.Debug|Win32.ActiveCfg = Debug|Win32 - {D839F6C1-3736-4269-A5E7-30B2BC1CBCCD}.Debug|Win32.Build.0 = Debug|Win32 - {D839F6C1-3736-4269-A5E7-30B2BC1CBCCD}.Debug|x64.ActiveCfg = Debug|x64 - {D839F6C1-3736-4269-A5E7-30B2BC1CBCCD}.Debug|x64.Build.0 = Debug|x64 - {D839F6C1-3736-4269-A5E7-30B2BC1CBCCD}.Release|Win32.ActiveCfg = Release|Win32 - {D839F6C1-3736-4269-A5E7-30B2BC1CBCCD}.Release|Win32.Build.0 = Release|Win32 - {D839F6C1-3736-4269-A5E7-30B2BC1CBCCD}.Release|x64.ActiveCfg = Release|x64 - {D839F6C1-3736-4269-A5E7-30B2BC1CBCCD}.Release|x64.Build.0 = Release|x64 - {A1F2E6F2-6E49-4746-9133-9DF0A404C7DB}.Debug|Win32.ActiveCfg = Debug|Win32 - {A1F2E6F2-6E49-4746-9133-9DF0A404C7DB}.Debug|Win32.Build.0 = Debug|Win32 - {A1F2E6F2-6E49-4746-9133-9DF0A404C7DB}.Debug|x64.ActiveCfg = Debug|x64 - {A1F2E6F2-6E49-4746-9133-9DF0A404C7DB}.Debug|x64.Build.0 = Debug|x64 - {A1F2E6F2-6E49-4746-9133-9DF0A404C7DB}.Release|Win32.ActiveCfg = Release|Win32 - {A1F2E6F2-6E49-4746-9133-9DF0A404C7DB}.Release|Win32.Build.0 = Release|Win32 - {A1F2E6F2-6E49-4746-9133-9DF0A404C7DB}.Release|x64.ActiveCfg = Release|x64 - {A1F2E6F2-6E49-4746-9133-9DF0A404C7DB}.Release|x64.Build.0 = Release|x64 - {D08D4EA4-8AF5-4FD2-BFBE-4FFB247B2A35}.Debug|Win32.ActiveCfg = Debug|Win32 - {D08D4EA4-8AF5-4FD2-BFBE-4FFB247B2A35}.Debug|Win32.Build.0 = Debug|Win32 - {D08D4EA4-8AF5-4FD2-BFBE-4FFB247B2A35}.Debug|x64.ActiveCfg = Debug|x64 - {D08D4EA4-8AF5-4FD2-BFBE-4FFB247B2A35}.Debug|x64.Build.0 = Debug|x64 - {D08D4EA4-8AF5-4FD2-BFBE-4FFB247B2A35}.Release|Win32.ActiveCfg = Release|Win32 - {D08D4EA4-8AF5-4FD2-BFBE-4FFB247B2A35}.Release|Win32.Build.0 = Release|Win32 - {D08D4EA4-8AF5-4FD2-BFBE-4FFB247B2A35}.Release|x64.ActiveCfg = Release|x64 - {D08D4EA4-8AF5-4FD2-BFBE-4FFB247B2A35}.Release|x64.Build.0 = Release|x64 - {595357B8-132D-4F3E-9679-6E52B474E8A5}.Debug|Win32.ActiveCfg = Debug|Win32 - {595357B8-132D-4F3E-9679-6E52B474E8A5}.Debug|Win32.Build.0 = Debug|Win32 - {595357B8-132D-4F3E-9679-6E52B474E8A5}.Debug|x64.ActiveCfg = Debug|x64 - {595357B8-132D-4F3E-9679-6E52B474E8A5}.Debug|x64.Build.0 = Debug|x64 - {595357B8-132D-4F3E-9679-6E52B474E8A5}.Release|Win32.ActiveCfg = Release|Win32 - {595357B8-132D-4F3E-9679-6E52B474E8A5}.Release|Win32.Build.0 = Release|Win32 - {595357B8-132D-4F3E-9679-6E52B474E8A5}.Release|x64.ActiveCfg = Release|x64 - {595357B8-132D-4F3E-9679-6E52B474E8A5}.Release|x64.Build.0 = Release|x64 - {EC9BB75A-9691-4DAF-A876-5116DDCBAFBC}.Debug|Win32.ActiveCfg = Debug|Win32 - {EC9BB75A-9691-4DAF-A876-5116DDCBAFBC}.Debug|Win32.Build.0 = Debug|Win32 - {EC9BB75A-9691-4DAF-A876-5116DDCBAFBC}.Debug|x64.ActiveCfg = Debug|x64 - {EC9BB75A-9691-4DAF-A876-5116DDCBAFBC}.Debug|x64.Build.0 = Debug|x64 - {EC9BB75A-9691-4DAF-A876-5116DDCBAFBC}.Release|Win32.ActiveCfg = Release|Win32 - {EC9BB75A-9691-4DAF-A876-5116DDCBAFBC}.Release|Win32.Build.0 = Release|Win32 - {EC9BB75A-9691-4DAF-A876-5116DDCBAFBC}.Release|x64.ActiveCfg = Release|x64 - {EC9BB75A-9691-4DAF-A876-5116DDCBAFBC}.Release|x64.Build.0 = Release|x64 - {12C054D3-D396-45F9-912E-8A7FF6548738}.Debug|Win32.ActiveCfg = Debug|Win32 - {12C054D3-D396-45F9-912E-8A7FF6548738}.Debug|Win32.Build.0 = Debug|Win32 - {12C054D3-D396-45F9-912E-8A7FF6548738}.Debug|x64.ActiveCfg = Debug|x64 - {12C054D3-D396-45F9-912E-8A7FF6548738}.Debug|x64.Build.0 = Debug|x64 - {12C054D3-D396-45F9-912E-8A7FF6548738}.Release|Win32.ActiveCfg = Release|Win32 - {12C054D3-D396-45F9-912E-8A7FF6548738}.Release|Win32.Build.0 = Release|Win32 - {12C054D3-D396-45F9-912E-8A7FF6548738}.Release|x64.ActiveCfg = Release|x64 - {12C054D3-D396-45F9-912E-8A7FF6548738}.Release|x64.Build.0 = Release|x64 - {BCC584B3-571E-4441-8ABF-D2CDD0646116}.Debug|Win32.ActiveCfg = Debug|Win32 - {BCC584B3-571E-4441-8ABF-D2CDD0646116}.Debug|Win32.Build.0 = Debug|Win32 - {BCC584B3-571E-4441-8ABF-D2CDD0646116}.Debug|x64.ActiveCfg = Debug|x64 - {BCC584B3-571E-4441-8ABF-D2CDD0646116}.Debug|x64.Build.0 = Debug|x64 - {BCC584B3-571E-4441-8ABF-D2CDD0646116}.Release|Win32.ActiveCfg = Release|Win32 - {BCC584B3-571E-4441-8ABF-D2CDD0646116}.Release|Win32.Build.0 = Release|Win32 - {BCC584B3-571E-4441-8ABF-D2CDD0646116}.Release|x64.ActiveCfg = Release|x64 - {BCC584B3-571E-4441-8ABF-D2CDD0646116}.Release|x64.Build.0 = Release|x64 - {A8A0C0C5-A117-4430-B47A-E98603255D01}.Debug|Win32.ActiveCfg = Debug|Win32 - {A8A0C0C5-A117-4430-B47A-E98603255D01}.Debug|Win32.Build.0 = Debug|Win32 - {A8A0C0C5-A117-4430-B47A-E98603255D01}.Debug|x64.ActiveCfg = Debug|x64 - {A8A0C0C5-A117-4430-B47A-E98603255D01}.Debug|x64.Build.0 = Debug|x64 - {A8A0C0C5-A117-4430-B47A-E98603255D01}.Release|Win32.ActiveCfg = Release|Win32 - {A8A0C0C5-A117-4430-B47A-E98603255D01}.Release|Win32.Build.0 = Release|Win32 - {A8A0C0C5-A117-4430-B47A-E98603255D01}.Release|x64.ActiveCfg = Release|x64 - {A8A0C0C5-A117-4430-B47A-E98603255D01}.Release|x64.Build.0 = Release|x64 - {EF8EC721-3949-484B-862F-2BB07460526D}.Debug|Win32.ActiveCfg = Debug|Win32 - {EF8EC721-3949-484B-862F-2BB07460526D}.Debug|Win32.Build.0 = Debug|Win32 - {EF8EC721-3949-484B-862F-2BB07460526D}.Debug|x64.ActiveCfg = Debug|x64 - {EF8EC721-3949-484B-862F-2BB07460526D}.Debug|x64.Build.0 = Debug|x64 - {EF8EC721-3949-484B-862F-2BB07460526D}.Release|Win32.ActiveCfg = Release|Win32 - {EF8EC721-3949-484B-862F-2BB07460526D}.Release|Win32.Build.0 = Release|Win32 - {EF8EC721-3949-484B-862F-2BB07460526D}.Release|x64.ActiveCfg = Release|x64 - {EF8EC721-3949-484B-862F-2BB07460526D}.Release|x64.Build.0 = Release|x64 - {BF87D83F-575E-49B5-87BD-02C6E581FD6A}.Debug|Win32.ActiveCfg = Debug|Win32 - {BF87D83F-575E-49B5-87BD-02C6E581FD6A}.Debug|Win32.Build.0 = Debug|Win32 - {BF87D83F-575E-49B5-87BD-02C6E581FD6A}.Debug|x64.ActiveCfg = Debug|x64 - {BF87D83F-575E-49B5-87BD-02C6E581FD6A}.Debug|x64.Build.0 = Debug|x64 - {BF87D83F-575E-49B5-87BD-02C6E581FD6A}.Release|Win32.ActiveCfg = Release|Win32 - {BF87D83F-575E-49B5-87BD-02C6E581FD6A}.Release|Win32.Build.0 = Release|Win32 - {BF87D83F-575E-49B5-87BD-02C6E581FD6A}.Release|x64.ActiveCfg = Release|x64 - {BF87D83F-575E-49B5-87BD-02C6E581FD6A}.Release|x64.Build.0 = Release|x64 - {970CE296-FB4C-4990-8FC7-F26078998302}.Debug|Win32.ActiveCfg = Debug|Win32 - {970CE296-FB4C-4990-8FC7-F26078998302}.Debug|Win32.Build.0 = Debug|Win32 - {970CE296-FB4C-4990-8FC7-F26078998302}.Debug|x64.ActiveCfg = Debug|x64 - {970CE296-FB4C-4990-8FC7-F26078998302}.Debug|x64.Build.0 = Debug|x64 - {970CE296-FB4C-4990-8FC7-F26078998302}.Release|Win32.ActiveCfg = Release|Win32 - {970CE296-FB4C-4990-8FC7-F26078998302}.Release|Win32.Build.0 = Release|Win32 - {970CE296-FB4C-4990-8FC7-F26078998302}.Release|x64.ActiveCfg = Release|x64 - {970CE296-FB4C-4990-8FC7-F26078998302}.Release|x64.Build.0 = Release|x64 - {2C3B0E05-5959-4630-A94F-625C9BCE9B10}.Debug|Win32.ActiveCfg = Debug|Win32 - {2C3B0E05-5959-4630-A94F-625C9BCE9B10}.Debug|Win32.Build.0 = Debug|Win32 - {2C3B0E05-5959-4630-A94F-625C9BCE9B10}.Debug|x64.ActiveCfg = Debug|x64 - {2C3B0E05-5959-4630-A94F-625C9BCE9B10}.Debug|x64.Build.0 = Debug|x64 - {2C3B0E05-5959-4630-A94F-625C9BCE9B10}.Release|Win32.ActiveCfg = Release|Win32 - {2C3B0E05-5959-4630-A94F-625C9BCE9B10}.Release|Win32.Build.0 = Release|Win32 - {2C3B0E05-5959-4630-A94F-625C9BCE9B10}.Release|x64.ActiveCfg = Release|x64 - {2C3B0E05-5959-4630-A94F-625C9BCE9B10}.Release|x64.Build.0 = Release|x64 - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection - GlobalSection(NestedProjects) = preSolution - {D08D4EA4-8AF5-4FD2-BFBE-4FFB247B2A35} = {E7608C74-F664-43A4-823C-D4370571FD4C} - {595357B8-132D-4F3E-9679-6E52B474E8A5} = {E7608C74-F664-43A4-823C-D4370571FD4C} - {EC9BB75A-9691-4DAF-A876-5116DDCBAFBC} = {E7608C74-F664-43A4-823C-D4370571FD4C} - {12C054D3-D396-45F9-912E-8A7FF6548738} = {E7608C74-F664-43A4-823C-D4370571FD4C} - {BCC584B3-571E-4441-8ABF-D2CDD0646116} = {E7608C74-F664-43A4-823C-D4370571FD4C} - {A8A0C0C5-A117-4430-B47A-E98603255D01} = {E7608C74-F664-43A4-823C-D4370571FD4C} - {A1F2E6F2-6E49-4746-9133-9DF0A404C7DB} = {E7608C74-F664-43A4-823C-D4370571FD4C} - EndGlobalSection -EndGlobal diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/twohex.vcproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/twohex.vcproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/twohex.vcproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/twohex.vcproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,399 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/ucd1d.vcproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/ucd1d.vcproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/ucd1d.vcproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/ucd1d.vcproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,399 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/ucd_f.vfproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/ucd_f.vfproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/ucd_f.vfproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/ucd_f.vfproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,52 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/ucdsamp3.vcproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/ucdsamp3.vcproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/ucdsamp3.vcproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/ucdsamp3.vcproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,399 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/ucd.vcproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/ucd.vcproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/ucd.vcproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/ucd.vcproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,399 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/version.vcproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/version.vcproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/version.vcproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/version.vcproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,399 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/wave.vcproj silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/wave.vcproj --- silo-llnl-4.10.2/SiloWindows/MSVC9/Tests/wave.vcproj 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/SiloWindows/MSVC9/Tests/wave.vcproj 1970-01-01 00:00:00.000000000 +0000 @@ -1,399 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru silo-llnl-4.10.2/src/debug/Makefile.in silo-llnl-4.10.2.real/src/debug/Makefile.in --- silo-llnl-4.10.2/src/debug/Makefile.in 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/src/debug/Makefile.in 2018-02-15 17:25:43.000000000 +0000 @@ -181,6 +181,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +JSON = @JSON@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBM = @LIBM@ @@ -229,9 +230,6 @@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SILEX = @SILEX@ -SILO_DTYPPTR = @SILO_DTYPPTR@ -SILO_DTYPPTR1 = @SILO_DTYPPTR1@ -SILO_DTYPPTR2 = @SILO_DTYPPTR2@ SILO_VERS_MAJ = @SILO_VERS_MAJ@ SILO_VERS_MIN = @SILO_VERS_MIN@ SILO_VERS_PAT = @SILO_VERS_PAT@ diff -Nru silo-llnl-4.10.2/src/debug/silo_debug.c silo-llnl-4.10.2.real/src/debug/silo_debug.c --- silo-llnl-4.10.2/src/debug/silo_debug.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/src/debug/silo_debug.c 2018-02-15 17:25:43.000000000 +0000 @@ -117,7 +117,7 @@ */ /* ARGSUSED */ INTERNAL DBfile * -db_debug_create(char *name, int mode, int target, int subtype, char *finfo) +db_debug_create(char const *name, int mode, int target, int subtype, char const *finfo) { char *me = "db_debug_create"; @@ -173,7 +173,7 @@ *-------------------------------------------------------------------------*/ /* ARGSUSED */ INTERNAL DBfile * -db_debug_open(char *name, int mode, int subtype) +db_debug_open(char const *name, int mode, int subtype) { db_perror("Use DBCreate() instead", E_NOTIMP, "db_debug_open"); @@ -224,7 +224,7 @@ */ /* ARGSUSED */ SILO_CALLBACK DBcompoundarray * -db_debug_GetCompoundarray(DBfile *_file, char *name) +db_debug_GetCompoundarray(DBfile *_file, char const *name) { db_perror("Debug device driver", E_NOTIMP, "db_debug_GetCompoundarray"); @@ -251,9 +251,17 @@ */ /* ARGSUSED */ SILO_CALLBACK int -db_debug_PutCompoundarray(DBfile *_dbfile, char *array_name, char **elemnames, - int *elemlengths, int nelems, void *values, - int nvalues, int datatype, DBoptlist *optlist) +db_debug_PutCompoundarray( + DBfile *_dbfile, + char const *array_name, + char const * const *elemnames, + int const *elemlengths, + int nelems, + void const *values, + int nvalues, + int datatype, + DBoptlist const *optlist +) { DBfile_debug *dbfile = (DBfile_debug *) _dbfile; diff -Nru silo-llnl-4.10.2/src/debug/silo_debug_private.h silo-llnl-4.10.2.real/src/debug/silo_debug_private.h --- silo-llnl-4.10.2/src/debug/silo_debug_private.h 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/src/debug/silo_debug_private.h 2018-02-15 17:25:43.000000000 +0000 @@ -71,12 +71,21 @@ } DBfile_debug; SILO_CALLBACK int db_debug_close(DBfile *); -SILO_CALLBACK DBcompoundarray *db_debug_GetCompoundarray(DBfile *, char *); +SILO_CALLBACK DBcompoundarray *db_debug_GetCompoundarray(DBfile *, char const *); SILO_CALLBACK int db_debug_Filters(DBfile *, FILE *); -SILO_CALLBACK int db_debug_PutCompoundarray(DBfile *, char *, char **, int *, - int, void *, int, int, DBoptlist *); +SILO_CALLBACK int db_debug_PutCompoundarray( + DBfile *dbfile, + char const *name, + char const * const *elemnames, + int const *elemlens, + int nelems, + void const *elemvalues, + int nvalues, + int datatype, + DBoptlist const * +); -INTERNAL DBfile *db_debug_create(char *, int, int, int, char *); -INTERNAL DBfile *db_debug_open(char *, int, int); +INTERNAL DBfile *db_debug_create(char const *, int, int, int, char const *); +INTERNAL DBfile *db_debug_open(char const *, int, int); #endif /* !DEBUG_PRIVATE_H */ diff -Nru silo-llnl-4.10.2/src/filters/f_ale3d.c silo-llnl-4.10.2.real/src/filters/f_ale3d.c --- silo-llnl-4.10.2/src/filters/f_ale3d.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/src/filters/f_ale3d.c 2018-02-15 17:25:43.000000000 +0000 @@ -790,7 +790,7 @@ *------------------------------------------------------------------------- */ static int -satisfied ( int id, char *name, char *deplist, int *slotno) +satisfied ( int id, char const *name, char *deplist, int *slotno) { char *me = "satisfied"; DBtoc *real_toc; @@ -879,7 +879,7 @@ *------------------------------------------------------------------------- */ static int -v_exists ( DBtoc *toc, char *name) +v_exists ( DBtoc *toc, char const *name) { int i; @@ -1168,7 +1168,7 @@ *------------------------------------------------------------------------- */ static int -f_ale3d_SetDir(DBfile *dbfile, char *path) +f_ale3d_SetDir(DBfile *dbfile, char const *path) { int dirid; char *me = "f_ale3d_SetDir"; @@ -1904,7 +1904,7 @@ *------------------------------------------------------------------------- */ static DBucdvar * -f_ale3d_GetUcdvar(DBfile *dbfile, char *name) +f_ale3d_GetUcdvar(DBfile *dbfile, char const *name) { static int sequence = 0; int id, inter, ndeps, i, j, size, offset, slice_size, stride; @@ -2011,7 +2011,7 @@ uv->name = STRDUP(name); uv->units = NULL; uv->label = NULL; - uv->vals = ALLOC_N(void *, 1); + uv->vals = (void **)ALLOC_N(void*, 1); uv->nels = size; uv->datatype = DB_FLOAT; uv->nvals = 1; @@ -2126,7 +2126,7 @@ *------------------------------------------------------------------------- */ static int -f_ale3d_InqMeshType(DBfile *dbfile, char *name) +f_ale3d_InqMeshType(DBfile *dbfile, char const *name) { int id, inter; char *me = "f_ale3d_InqMeshType"; @@ -2180,7 +2180,7 @@ *------------------------------------------------------------------------- */ static int -f_ale3d_InqMeshName(DBfile *dbfile, char *name, char *meshname /*OUTPUT */) +f_ale3d_InqMeshName(DBfile *dbfile, char const *name, char *meshname /*OUTPUT */) { int id, inter; char *me = "f_ale3d_InqMeshName"; @@ -2256,7 +2256,7 @@ return -1; } - f_ale3d_name[id] = safe_strdup(filter_name); + f_ale3d_name[id] = _db_safe_strdup(filter_name); memcpy(f_ale3d_cb + id, &(dbfile->pub), sizeof(DBfile_pub)); f_ale3d_cb[id].toc = NULL; @@ -2268,7 +2268,6 @@ FILTER_CB(close, f_ale3d_Close); FILTER_CB(newtoc, f_ale3d_NewToc); FILTER_CB(cd, f_ale3d_SetDir); - FILTER_CB(cdid, f_ale3d_SetDirID); FILTER_CB(g_dir, f_ale3d_GetDir); FILTER_CB(g_uv, f_ale3d_GetUcdvar); FILTER_CB(i_meshtype, f_ale3d_InqMeshType); diff -Nru silo-llnl-4.10.2/src/filters/f_sample.c silo-llnl-4.10.2.real/src/filters/f_sample.c --- silo-llnl-4.10.2/src/filters/f_sample.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/src/filters/f_sample.c 2018-02-15 17:25:43.000000000 +0000 @@ -252,7 +252,7 @@ *------------------------------------------------------------------------- */ static int -f_debug_SetDir(DBfile *dbfile, char *path) +f_debug_SetDir(DBfile *dbfile, char const *path) { int id, retval; char *me = "f_debug_SetDir"; @@ -271,40 +271,6 @@ } /*------------------------------------------------------------------------- - * Function: f_debug_SetDirID - * - * Purpose: Print debug info for DBSetDirID. - * - * Return: Success: 0 - * - * Failure: -1 - * - * Programmer: robb@cloud - * Tue Mar 7 13:18:36 EST 1995 - * - * Modifications: - * - *------------------------------------------------------------------------- - */ -static int -f_debug_SetDirID(DBfile *dbfile, int dirid) -{ - int id, retval; - char *me = "f_debug_SetDirID"; - - if ((id = FILTER_ID(dbfile, me)) < 0) - return -1; - printf("%s: DBSetDirID (dbfile=0x%lx, dirid=%d)\n", - f_debug_name[id], (unsigned long)dbfile, dirid); - - retval = FILTER_CALL(f_debug_cb[id].cdid, (dbfile, dirid), -1, me); - - printf("%s: DBSetDirID=%d\n", - f_debug_name[id], retval); - return retval; -} - -/*------------------------------------------------------------------------- * Function: f_debug_GetDir * * Purpose: Print debugging information about DBGetDir. @@ -394,7 +360,7 @@ *------------------------------------------------------------------------- */ static DBucdvar * -f_debug_GetUcdvar(DBfile *dbfile, char *name) +f_debug_GetUcdvar(DBfile *dbfile, char const *name) { int id; char *me = "f_debug_GetUcdvar"; @@ -431,7 +397,7 @@ *------------------------------------------------------------------------- */ static int -f_debug_InqMeshType(DBfile *dbfile, char *name) +f_debug_InqMeshType(DBfile *dbfile, char const *name) { int id, retval; char *me = "f_debug_InqMeshType"; @@ -470,7 +436,7 @@ *------------------------------------------------------------------------- */ static int -f_debug_InqMeshName(DBfile *dbfile, char *name, char *meshname /*OUTPUT */) +f_debug_InqMeshName(DBfile *dbfile, char const *name, char *meshname /*OUTPUT */) { int id, retval; char *me = "f_debug_InqMeshName"; @@ -572,7 +538,7 @@ */ if (f_debug_name[id]) free(f_debug_name[id]); - f_debug_name[id] = safe_strdup(filter_name); + f_debug_name[id] = _db_safe_strdup(filter_name); /* * Save old callbacks. @@ -587,7 +553,6 @@ FILTER_CB(module, f_debug_Filters); FILTER_CB(close, f_debug_Close); FILTER_CB(cd, f_debug_SetDir); - FILTER_CB(cdid, f_debug_SetDirID); FILTER_CB(g_dir, f_debug_GetDir); FILTER_CB(newtoc, f_debug_NewToc); FILTER_CB(g_uv, f_debug_GetUcdvar); diff -Nru silo-llnl-4.10.2/src/filters/Makefile.in silo-llnl-4.10.2.real/src/filters/Makefile.in --- silo-llnl-4.10.2/src/filters/Makefile.in 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/src/filters/Makefile.in 2018-02-15 17:25:43.000000000 +0000 @@ -181,6 +181,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +JSON = @JSON@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBM = @LIBM@ @@ -229,9 +230,6 @@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SILEX = @SILEX@ -SILO_DTYPPTR = @SILO_DTYPPTR@ -SILO_DTYPPTR1 = @SILO_DTYPPTR1@ -SILO_DTYPPTR2 = @SILO_DTYPPTR2@ SILO_VERS_MAJ = @SILO_VERS_MAJ@ SILO_VERS_MIN = @SILO_VERS_MIN@ SILO_VERS_PAT = @SILO_VERS_PAT@ diff -Nru silo-llnl-4.10.2/src/fpzip/codec.h silo-llnl-4.10.2.real/src/fpzip/codec.h --- silo-llnl-4.10.2/src/fpzip/codec.h 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/fpzip/codec.h 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,32 @@ +#ifndef CODEC_H +#define CODEC_H + +#define FPZIP_FP_FAST 1 +#define FPZIP_FP_SAFE 2 +#define FPZIP_FP_EMUL 3 +#define FPZIP_FP_INT 4 + +#ifndef FPZIP_FP + #error "floating-point mode FPZIP_FP not defined" +#elif FPZIP_FP < 1 || FPZIP_FP > 4 + #error "invalid floating-point mode FPZIP_FP" +#endif + +#if FPZIP_FP == FPZIP_FP_INT +// identity map for integer arithmetic +template +struct PCmap { + typedef T DOMAIN; + typedef T RANGE; + static const unsigned bits = width; + static const T mask = ~T(0) >> (bitsizeof(T) - bits); + RANGE forward(DOMAIN d) const { return d & mask; } + DOMAIN inverse(RANGE r) const { return r & mask; } + DOMAIN identity(DOMAIN d) const { return d & mask; } +}; +#endif + +#define FPZ_MAJ_VERSION 0x0101 +#define FPZ_MIN_VERSION FPZIP_FP + +#endif diff -Nru silo-llnl-4.10.2/src/fpzip/error.cpp silo-llnl-4.10.2.real/src/fpzip/error.cpp --- silo-llnl-4.10.2/src/fpzip/error.cpp 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/fpzip/error.cpp 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,17 @@ +#include "fpzip.h" + +fpzipError fpzip_errno; + +const char* fpzip_errstr[] = { + "success", + "cannot open file for reading", + "cannot create file for writing", + "cannot read stream", + "cannot write stream", + "not an fpz stream", + "fpz format version not supported", + "array dimensions do not match", + "floating-point types do not match", + "precision not supported", + "buffer overflow", +}; diff -Nru silo-llnl-4.10.2/src/fpzip/fpe.h silo-llnl-4.10.2.real/src/fpzip/fpe.h --- silo-llnl-4.10.2/src/fpzip/fpe.h 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/fpzip/fpe.h 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,60 @@ +#ifndef FPE_H +#define FPE_H + +// Approximate floating-point arithmetic for normalized inputs and outputs. +// NOTE: This code has been designed for speed and simplicity, and does not +// fully implement IEEE floating-point arithmetic. In particular, it does +// not properly handle: +// +// (1) Denormalized numbers, infinities, or NaNs. +// (2) Overflow or underflow outside the range of normalized numbers. +// (3) Proper IEEE rounding. +// +// For normalized input and output, the error of a single operation should +// be no more than one ulp. + +template +struct FPEtraits; + +template <> +struct FPEtraits { + typedef unsigned U; + static const unsigned mbits = 23; + static const unsigned ebits = 8; +}; + +template <> +struct FPEtraits { + typedef unsigned long long U; + static const unsigned mbits = 52; + static const unsigned ebits = 11; +}; + +template < + typename T, // floating type to implement + typename U = typename FPEtraits::U, // corresponding integer type + unsigned mbits = FPEtraits::mbits, // number of bits in significand + unsigned ebits = FPEtraits::ebits // number of bits in exponent +> +class FPE { +public: + FPE(U u = 0) : u(u) {} + FPE(T t) : u((U&)t) {} + FPE(int i) : u(i) {} + operator T() const { return (T&)u; } + bool equalsign(FPE x) const { return !((u ^ x.u) & s); } + FPE operator -() const { return FPE(u ^ s); } + FPE operator +(FPE x) const; + FPE operator -(FPE x) const; +private: + FPE add(U g) const; // effective addition + FPE sub(U g) const; // effective subtraction + static const unsigned m = mbits; // number of bits in significand + static const U e = U(1) << mbits; // exponent least significant bit mask + static const U s = e << ebits; // sign bit mask + U u; // binary representation of float +}; + +#include "fpe.inl" + +#endif diff -Nru silo-llnl-4.10.2/src/fpzip/fpe.inl silo-llnl-4.10.2.real/src/fpzip/fpe.inl --- silo-llnl-4.10.2/src/fpzip/fpe.inl 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/fpzip/fpe.inl 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,61 @@ +template +FPE +FPE::operator +(FPE x) const +{ + // addition + if (equalsign(x)) + return u > x.u ? add(x.u) : x.add(u); + else { + x = -x; + return u > x.u ? sub(x.u) : u < x.u ? -x.sub(u) : FPE(U(0)); + } +} + +template +FPE +FPE::operator -(FPE x) const +{ + // subtraction + if (equalsign(x)) + return u > x.u ? sub(x.u) : u < x.u ? -x.sub(u) : FPE(U(0)); + else { + x = -x; + return u > x.u ? add(x.u) : x.add(u); + } +} + +template +FPE +FPE::add(U g) const +{ + // effective addition f + g, |f| >= |g| + U f = u; + unsigned k = (f >> m) - (g >> m); + if (k <= m) { + U c = (e - (f & (e - 1))); + U d = (e + (g & (e - 1))) >> k; + if (c < d) + d = (c + d) >> 1; + f += d; + } + return FPE(f); +} + +template +FPE +FPE::sub(U g) const +{ + // effective subtraction f - g, |f| >= |g| + U f = u; + unsigned k = (f >> m) - (g >> m); + if (k <= m) { + U c = ((0 + (f & (e - 1))) << 1); + U d = ((e + (g & (e - 1))) << 1) >> k; + while (c < d) { + d += d - c; + c += e << 1; + } + f -= d >> 1; + } + return FPE(f); +} diff -Nru silo-llnl-4.10.2/src/fpzip/fpzip.h silo-llnl-4.10.2.real/src/fpzip/fpzip.h --- silo-llnl-4.10.2/src/fpzip/fpzip.h 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/fpzip/fpzip.h 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,218 @@ +/* +** fpzip version 1.0.2, May 30, 2014 +** Part of the LOCAL Toolkit, UCRL-CODE-232243 +** Written by Peter Lindstrom, Lawrence Livermore National Laboratory +** +** +** SUMMARY +** +** fpzip is a library for lossless or lossy compression of 2D and 3D +** arrays of single- or double-precision floating-point scalars. +** Although linear (1D) streams of scalars may be compressed as well, +** the algorithm has primarily be designed to exploit higher-dimensional +** structure in the data, and may not perform well on 1D data. The +** library supports compression to either a file or to main memory, and +** allows specifying how many bits of precision to retain; remaining +** least significant bits are truncated. The precision is limited to +** integers 2-32 for floats and 4-64, in increments of two bits, for +** doubles. The decompressed data is returned in full precision, possibly +** with the least significant bits zeroed. Because floating-point +** arithmetic may be affected by factors such as register precision, +** rounding mode, and compiler optimizations, precautions have been taken +** to ensure correctness and portability via a set of compile-time +** switches. For example, it is possible to specify that floating-point +** operations be emulated via integer arithmetic, or to treat the binary +** representation of floating-point numbers as integers. Please consult +** the Makefile for choosing among these settings. The compressor works +** correctly on the IEEE 754 floating-point format, though no particular +** assumption is made on the floating-point representation other than the +** most significant bit being the sign bit. Special values such as +** infinities, NaNs, and denormalized numbers should be handled correctly +** by the compressor in lossless mode. The C functions return zero in +** case of an error, in which case fpzip_errno can be examined to determine +** the cause. +** +** The code has been modified in minor ways to support its use within Silo. +** Some assert calls were removed. Some error codes were added. The read +** interface was ajdusted to return sizing information. - MCM 01Jun14 +** +** fpzip was developed as part of the LOCAL LDRD project at LLNL, and may +** be freely used and distributed for noncommercial purposes. The core +** library is written in C++ and applications need to be linked with a +** C++ linker. The library can, however, be called from C and FORTRAN. +** For further information and bug reports, please e-mail pl@llnl.gov. +** +** +** NOTICE +** +** This work was produced at the Lawrence Livermore National Laboratory +** (LLNL) under contract no. DE-AC-52-07NA27344 (Contract 44) between +** the U.S. Department of Energy (DOE) and Lawrence Livermore National +** Security, LLC (LLNS) for the operation of LLNL. The rights of the +** Federal Government are reserved under Contract 44. +** +** +** DISCLAIMER +** +** This work was prepared as an account of work sponsored by an agency of +** the United States government. Neither the United States government nor +** Lawrence Livermore National Security, LLC, nor any of their employees +** makes any warranty, expressed or implied, or assumes any legal liability +** or responsibility for the accuracy, completeness, or usefulness of any +** information, apparatus, product, or process disclosed, or represents +** that its use would not infringe privately owned rights. Reference +** herein to any specific commercial product, process, or service by trade +** name, trademark, manufacturer, or otherwise does not necessarily +** constitute or imply its endorsement, recommendation, or favoring by the +** United States government or Lawrence Livermore National Security, LLC. +** The views and opinions of authors expressed herein do not necessarily +** state or reflect those of the United States government or Lawrence +** Livermore National Security, LLC, and shall not be used for advertising +** or product endorsement purposes. +** +** +** COMMERCIAL USE +** +** Commercialization of this product is prohibited without notifying the +** Department of Energy (DOE) or Lawrence Livermore National Security. +*/ + +#ifndef FPZIP_H +#define FPZIP_H + +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +size_t /* number of compressed bytes read (zero = error) */ +fpzip_file_read( + FILE* file, /* binary input stream */ + void* data, /* array to read */ + int* prec, /* returned per field bits of precision (may be null) */ + int *dp, /* returned double precision array if nonzero */ + unsigned *nx, /* returned number of x samples */ + unsigned *ny, /* returned number of y samples */ + unsigned *nz, /* returned number of z samples */ + unsigned *nf /* returned number of fields */ +); + +size_t /* number of compressed bytes read (zero = error) */ +fpzip_memory_read( + const void* buffer, /* pointer to compressed data */ + void* data, /* array to read */ + int* prec, /* returned per field bits of precision (may be null) */ + int *dp, /* returned double precision array if nonzero */ + unsigned *nx, /* returned number of x samples */ + unsigned *ny, /* returned number of y samples */ + unsigned *nz, /* returned number of z samples */ + unsigned *nf /* returned number of fields */ +); + +size_t /* number of compressed bytes written (zero = error) */ +fpzip_file_write( + FILE* file, /* binary output stream */ + const void* data, /* array to write */ + const int* prec, /* per field bits of precision (null = full precision) */ + int dp, /* double precision array if nonzero */ + unsigned nx, /* number of x samples */ + unsigned ny, /* number of y samples */ + unsigned nz, /* number of z samples */ + unsigned nf /* number of fields */ +); + +size_t /* number of compressed bytes written (zero = error) */ +fpzip_memory_write( + void* buffer, /* pointer to compressed data */ + size_t size, /* size of allocated storage */ + const void* data, /* array to write */ + const int* prec, /* per field bits of precision (null = full precision) */ + int dp, /* double precision array if nonzero */ + unsigned nx, /* number of x samples */ + unsigned ny, /* number of y samples */ + unsigned nz, /* number of z samples */ + unsigned nf /* number of fields */ +); + +/* +** Fortran bindings. +*/ + +void +fpzip_file_read_f( + const char* path, /* path to input file */ + void* data, /* array to read */ + int* prec, /* per field bits of precision */ + int* dp, /* double precision array if nonzero */ + int* nx, /* number of x samples */ + int* ny, /* number of y samples */ + int* nz, /* number of z samples */ + int* nf /* number of fields */ +); + +void +fpzip_file_read_f_( + const char* path, /* path to input file */ + void* data, /* array to read */ + int* prec, /* per field bits of precision */ + int* dp, /* double precision array if nonzero */ + int* nx, /* number of x samples */ + int* ny, /* number of y samples */ + int* nz, /* number of z samples */ + int* nf /* number of fields */ +); + +void +fpzip_file_write_f( + const char* path, /* path to output file */ + const void* data, /* array to write */ + const int* prec, /* per field bits of precision */ + const int* dp, /* double precision array if nonzero */ + const int* nx, /* number of x samples */ + const int* ny, /* number of y samples */ + const int* nz, /* number of z samples */ + const int* nf /* number of fields */ +); + +void +fpzip_file_write_f_( + const char* path, /* path to output file */ + const void* data, /* array to write */ + const int* prec, /* per field bits of precision */ + const int* dp, /* double precision array if nonzero */ + const int* nx, /* number of x samples */ + const int* ny, /* number of y samples */ + const int* nz, /* number of z samples */ + const int* nf /* number of fields */ +); + +/* +** Error codes. +*/ + +typedef enum { + fpzipSuccess = 0, /* no error */ + fpzipErrorOpenFile = 1, /* cannot open file for reading */ + fpzipErrorCreateFile = 2, /* cannot create file for writing */ + fpzipErrorReadStream = 3, /* cannot read stream */ + fpzipErrorWriteStream = 4, /* cannot write stream */ + fpzipErrorBadFormat = 5, /* magic mismatch; not an fpz stream */ + fpzipErrorBadVersion = 6, /* fpz format version not supported */ + fpzipErrorBadDimensions = 7, /* array dimensions do not match */ + fpzipErrorBadType = 8, /* floating-point types do not match */ + fpzipErrorBadPrecision = 9, /* precision not supported */ + fpzipErrorBufferOverflow = 10, /* compressed buffer overflow */ + fpzipErrorBitsTooLarge = 11, + fpzipErrorTargetRescaleTooLarge = 12 +} fpzipError; + +extern fpzipError fpzip_errno; /* error code */ +extern const char* fpzip_errstr[]; /* error message indexed by fpzip_errno */ + +#ifdef __cplusplus +} +#endif + +#endif diff -Nru silo-llnl-4.10.2/src/fpzip/front.h silo-llnl-4.10.2.real/src/fpzip/front.h --- silo-llnl-4.10.2/src/fpzip/front.h 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/fpzip/front.h 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,50 @@ +#ifndef FRONT_H +#define FRONT_H + +// front of encoded but not finalized samples +template +class FRONT { +public: + FRONT(unsigned nx, unsigned ny, T zero = 0) + : zero(zero), dx(1), dy(nx + 1), dz(dy * (ny + 1)), m(mask(dx + dy + dz)), + i(0), a(new T[m + 1]) {} + ~FRONT() { delete[] a; } + + // fetch neighbor relative to current sample + const T& operator()(unsigned x, unsigned y, unsigned z) const + { + return a[(i - dx * x - dy * y - dz * z) & m]; + } + + // add n copies of sample f to front + void push(T f, unsigned n = 1) + { + do + a[i++ & m] = f; + while (--n); + } + + // advance front to (x, y, z) relative to current sample and fill with zeros + void advance(unsigned x, unsigned y, unsigned z) + { + push(zero, dx * x + dy * y + dz * z); + } + +private: + const T zero; // default value + const unsigned dx; // front index x offset + const unsigned dy; // front index y offset + const unsigned dz; // front index z offset + const unsigned m; // index mask + unsigned i; // modular index of current sample + T*const a; // circular array of samples + + // return m = 2^k - 1 >= n - 1 + unsigned mask(unsigned n) const + { + for (n--; n & (n + 1); n |= n + 1); + return n; + } +}; + +#endif diff -Nru silo-llnl-4.10.2/src/fpzip/Makefile.am silo-llnl-4.10.2.real/src/fpzip/Makefile.am --- silo-llnl-4.10.2/src/fpzip/Makefile.am 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/fpzip/Makefile.am 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,98 @@ +# Copyright (c) 1994 - 2010, Lawrence Livermore National Security, LLC. +# LLNL-CODE-425250. +# All rights reserved. +# +# This file is part of Silo. For details, see silo.llnl.gov. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the disclaimer below. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the disclaimer (as noted +# below) in the documentation and/or other materials provided with +# the distribution. +# * Neither the name of the LLNS/LLNL nor the names of its +# contributors may be used to endorse or promote products derived +# from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL LAWRENCE +# LIVERMORE NATIONAL SECURITY, LLC, THE U.S. DEPARTMENT OF ENERGY OR +# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +# PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +# LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# +# This work was produced at Lawrence Livermore National Laboratory under +# Contract No. DE-AC52-07NA27344 with the DOE. +# +# Neither the United States Government nor Lawrence Livermore National +# Security, LLC nor any of their employees, makes any warranty, express +# or implied, or assumes any liability or responsibility for the +# accuracy, completeness, or usefulness of any information, apparatus, +# product, or process disclosed, or represents that its use would not +# infringe privately-owned rights. +# +# Any reference herein to any specific commercial products, process, or +# services by trade name, trademark, manufacturer or otherwise does not +# necessarily constitute or imply its endorsement, recommendation, or +# favoring by the United States Government or Lawrence Livermore +# National Security, LLC. The views and opinions of authors expressed +# herein do not necessarily state or reflect those of the United States +# Government or Lawrence Livermore National Security, LLC, and shall not +# be used for advertising or product endorsement purposes. +# +## Procss this file with automake to create Makefile.in + +noinst_LTLIBRARIES = libsilo_fpzip.la +libsilo_fpzip_la_SOURCES = $(FILES) + +FPZIP_FP = FPZIP_FP_SAFE +#FPZIP_FP = FPZIP_FP_FAST +#FPZIP_FP = FPZIP_FP_EMUL +#FPZIP_FP = FPZIP_FP_INT +FPZIP_BLOCK_SIZE = 0x1000 +FPZIP_VERBOSE = 0 +AM_CPPFLAGS = -DFPZIP_BLOCK_SIZE=$(FPZIP_BLOCK_SIZE) \ + -DFPZIP_FP=$(FPZIP_FP) \ + -DFPZIP_VERBOSE=$(FPZIP_VERBOSE) + +noinst_HEADERS = \ + codec.h \ + fpe.h \ + fpe.inl \ + front.h \ + pccodec.h \ + pccodec.inl \ + pcdecoder.h \ + pcdecoder.inl \ + pcencoder.h \ + pcencoder.inl \ + pcmap.h \ + pcmap.inl \ + rcdecoder.h \ + rcdecoder.inl \ + rcencoder.h \ + rcencoder.inl \ + rcmodel.h \ + rcqsmodel.h \ + rcqsmodel.inl \ + read.h \ + write.h \ + fpzip.h + +FILES = \ + error.cpp \ + rcdecoder.cpp \ + rcencoder.cpp \ + rcqsmodel.cpp \ + read.cpp \ + write.cpp diff -Nru silo-llnl-4.10.2/src/fpzip/Makefile.in silo-llnl-4.10.2.real/src/fpzip/Makefile.in --- silo-llnl-4.10.2/src/fpzip/Makefile.in 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/fpzip/Makefile.in 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,637 @@ +# Makefile.in generated by automake 1.11.1 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, +# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, +# Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ + +# Copyright (c) 1994 - 2010, Lawrence Livermore National Security, LLC. +# LLNL-CODE-425250. +# All rights reserved. +# +# This file is part of Silo. For details, see silo.llnl.gov. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the disclaimer below. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the disclaimer (as noted +# below) in the documentation and/or other materials provided with +# the distribution. +# * Neither the name of the LLNS/LLNL nor the names of its +# contributors may be used to endorse or promote products derived +# from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL LAWRENCE +# LIVERMORE NATIONAL SECURITY, LLC, THE U.S. DEPARTMENT OF ENERGY OR +# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +# PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +# LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# +# This work was produced at Lawrence Livermore National Laboratory under +# Contract No. DE-AC52-07NA27344 with the DOE. +# +# Neither the United States Government nor Lawrence Livermore National +# Security, LLC nor any of their employees, makes any warranty, express +# or implied, or assumes any liability or responsibility for the +# accuracy, completeness, or usefulness of any information, apparatus, +# product, or process disclosed, or represents that its use would not +# infringe privately-owned rights. +# +# Any reference herein to any specific commercial products, process, or +# services by trade name, trademark, manufacturer or otherwise does not +# necessarily constitute or imply its endorsement, recommendation, or +# favoring by the United States Government or Lawrence Livermore +# National Security, LLC. The views and opinions of authors expressed +# herein do not necessarily state or reflect those of the United States +# Government or Lawrence Livermore National Security, LLC, and shall not +# be used for advertising or product endorsement purposes. +# + + +VPATH = @srcdir@ +pkgdatadir = $(datadir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_triplet = @build@ +host_triplet = @host@ +subdir = src/fpzip +DIST_COMMON = $(noinst_HEADERS) $(srcdir)/Makefile.am \ + $(srcdir)/Makefile.in +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/config/ax_check_compiler_flags.m4 \ + $(top_srcdir)/config/ax_have_qt.m4 \ + $(top_srcdir)/config/libtool.m4 \ + $(top_srcdir)/config/ltoptions.m4 \ + $(top_srcdir)/config/ltsugar.m4 \ + $(top_srcdir)/config/ltversion.m4 \ + $(top_srcdir)/config/lt~obsolete.m4 \ + $(top_srcdir)/config/vl_lib_readline.m4 \ + $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +LTLIBRARIES = $(noinst_LTLIBRARIES) +libsilo_fpzip_la_LIBADD = +am__objects_1 = error.lo rcdecoder.lo rcencoder.lo rcqsmodel.lo \ + read.lo write.lo +am_libsilo_fpzip_la_OBJECTS = $(am__objects_1) +libsilo_fpzip_la_OBJECTS = $(am_libsilo_fpzip_la_OBJECTS) +DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) +depcomp = $(SHELL) $(top_srcdir)/config/depcomp +am__depfiles_maybe = depfiles +am__mv = mv -f +CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ + $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) +LTCXXCOMPILE = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ + --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ + $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) +CXXLD = $(CXX) +CXXLINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ + --mode=link $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) \ + $(LDFLAGS) -o $@ +SOURCES = $(libsilo_fpzip_la_SOURCES) +DIST_SOURCES = $(libsilo_fpzip_la_SOURCES) +HEADERS = $(noinst_HEADERS) +ETAGS = etags +CTAGS = ctags +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +ACLOCAL = @ACLOCAL@ +AMTAR = @AMTAR@ +AR = @AR@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +BROWSER = @BROWSER@ +BUNDLE_TARGET = @BUNDLE_TARGET@ +CC = @CC@ +CCDEPMODE = @CCDEPMODE@ +CC_FULLPATH = @CC_FULLPATH@ +CFLAGS = @CFLAGS@ +CONFIG_CMD = @CONFIG_CMD@ +CONFIG_DATE = @CONFIG_DATE@ +CONFIG_USER = @CONFIG_USER@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +CXXDEPMODE = @CXXDEPMODE@ +CXXFLAGS = @CXXFLAGS@ +CXX_FULLPATH = @CXX_FULLPATH@ +CYGPATH_W = @CYGPATH_W@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +DSYMUTIL = @DSYMUTIL@ +DUMPBIN = @DUMPBIN@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +EXEEXT = @EXEEXT@ +F77 = @F77@ +FC = @FC@ +FCFLAGS = @FCFLAGS@ +FCLIBS = @FCLIBS@ +FC_FULLPATH = @FC_FULLPATH@ +FFLAGS = @FFLAGS@ +FGREP = @FGREP@ +FORTRAN = @FORTRAN@ +FPZIP = @FPZIP@ +GREP = @GREP@ +HDF5_DRV = @HDF5_DRV@ +HZIP = @HZIP@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +JSON = @JSON@ +LD = @LD@ +LDFLAGS = @LDFLAGS@ +LIBM = @LIBM@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ +LN_S = @LN_S@ +LTLIBOBJS = @LTLIBOBJS@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MKDIR_P = @MKDIR_P@ +NETCDF = @NETCDF@ +NM = @NM@ +NMEDIT = @NMEDIT@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +OTOOL = @OTOOL@ +OTOOL64 = @OTOOL64@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +PDBP_DRV = @PDBP_DRV@ +PDB_DRV = @PDB_DRV@ +PYTHON = @PYTHON@ +PYTHONMODULE = @PYTHONMODULE@ +PYTHON_CPPFLAGS = @PYTHON_CPPFLAGS@ +PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@ +PYTHON_PLATFORM = @PYTHON_PLATFORM@ +PYTHON_PREFIX = @PYTHON_PREFIX@ +PYTHON_VERSION = @PYTHON_VERSION@ +QT_CXXFLAGS = @QT_CXXFLAGS@ +QT_DIR = @QT_DIR@ +QT_LIBS = @QT_LIBS@ +QT_LRELEASE = @QT_LRELEASE@ +QT_LUPDATE = @QT_LUPDATE@ +QT_MOC = @QT_MOC@ +QT_UIC = @QT_UIC@ +RANLIB = @RANLIB@ +READLINE_LIBS = @READLINE_LIBS@ +SED = @SED@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +SILEX = @SILEX@ +SILO_VERS_MAJ = @SILO_VERS_MAJ@ +SILO_VERS_MIN = @SILO_VERS_MIN@ +SILO_VERS_PAT = @SILO_VERS_PAT@ +SILO_VERS_PRE = @SILO_VERS_PRE@ +SILO_VERS_TAG = @SILO_VERS_TAG@ +STRIP = @STRIP@ +TAURUS = @TAURUS@ +VERSION = @VERSION@ +XMKMF = @XMKMF@ +X_CFLAGS = @X_CFLAGS@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_LIBS = @X_LIBS@ +X_PRE_LIBS = @X_PRE_LIBS@ +ZLIB = @ZLIB@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_CXX = @ac_ct_CXX@ +ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ +ac_ct_F77 = @ac_ct_F77@ +ac_ct_FC = @ac_ct_FC@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +lt_ECHO = @lt_ECHO@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +pkgpyexecdir = @pkgpyexecdir@ +pkgpythondir = @pkgpythondir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +pyexecdir = @pyexecdir@ +pythondir = @pythondir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +noinst_LTLIBRARIES = libsilo_fpzip.la +libsilo_fpzip_la_SOURCES = $(FILES) +FPZIP_FP = FPZIP_FP_SAFE +#FPZIP_FP = FPZIP_FP_FAST +#FPZIP_FP = FPZIP_FP_EMUL +#FPZIP_FP = FPZIP_FP_INT +FPZIP_BLOCK_SIZE = 0x1000 +FPZIP_VERBOSE = 0 +AM_CPPFLAGS = -DFPZIP_BLOCK_SIZE=$(FPZIP_BLOCK_SIZE) \ + -DFPZIP_FP=$(FPZIP_FP) \ + -DFPZIP_VERBOSE=$(FPZIP_VERBOSE) + +noinst_HEADERS = \ + codec.h \ + fpe.h \ + fpe.inl \ + front.h \ + pccodec.h \ + pccodec.inl \ + pcdecoder.h \ + pcdecoder.inl \ + pcencoder.h \ + pcencoder.inl \ + pcmap.h \ + pcmap.inl \ + rcdecoder.h \ + rcdecoder.inl \ + rcencoder.h \ + rcencoder.inl \ + rcmodel.h \ + rcqsmodel.h \ + rcqsmodel.inl \ + read.h \ + write.h \ + fpzip.h + +FILES = \ + error.cpp \ + rcdecoder.cpp \ + rcencoder.cpp \ + rcqsmodel.cpp \ + read.cpp \ + write.cpp + +all: all-am + +.SUFFIXES: +.SUFFIXES: .cpp .lo .o .obj +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/fpzip/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --foreign src/fpzip/Makefile +.PRECIOUS: Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): + +clean-noinstLTLIBRARIES: + -test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES) + @list='$(noinst_LTLIBRARIES)'; for p in $$list; do \ + dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \ + test "$$dir" != "$$p" || dir=.; \ + echo "rm -f \"$${dir}/so_locations\""; \ + rm -f "$${dir}/so_locations"; \ + done +libsilo_fpzip.la: $(libsilo_fpzip_la_OBJECTS) $(libsilo_fpzip_la_DEPENDENCIES) + $(CXXLINK) $(libsilo_fpzip_la_OBJECTS) $(libsilo_fpzip_la_LIBADD) $(LIBS) + +mostlyclean-compile: + -rm -f *.$(OBJEXT) + +distclean-compile: + -rm -f *.tab.c + +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/error.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/rcdecoder.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/rcencoder.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/rcqsmodel.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/read.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/write.Plo@am__quote@ + +.cpp.o: +@am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ $< + +.cpp.obj: +@am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` +@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` + +.cpp.lo: +@am__fastdepCXX_TRUE@ $(LTCXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(LTCXXCOMPILE) -c -o $@ $< + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs + +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + mkid -fID $$unique +tags: TAGS + +TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + set x; \ + here=`pwd`; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ + fi +ctags: CTAGS +CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + test -z "$(CTAGS_ARGS)$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags + +distdir: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ + else \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ + || exit 1; \ + fi; \ + done +check-am: all-am +check: check-am +all-am: Makefile $(LTLIBRARIES) $(HEADERS) +installdirs: +install: install-am +install-exec: install-exec-am +install-data: install-data-am +uninstall: uninstall-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + `test -z '$(STRIP)' || \ + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-am + +clean-am: clean-generic clean-libtool clean-noinstLTLIBRARIES \ + mostlyclean-am + +distclean: distclean-am + -rm -rf ./$(DEPDIR) + -rm -f Makefile +distclean-am: clean-am distclean-compile distclean-generic \ + distclean-tags + +dvi: dvi-am + +dvi-am: + +html: html-am + +html-am: + +info: info-am + +info-am: + +install-data-am: + +install-dvi: install-dvi-am + +install-dvi-am: + +install-exec-am: + +install-html: install-html-am + +install-html-am: + +install-info: install-info-am + +install-info-am: + +install-man: + +install-pdf: install-pdf-am + +install-pdf-am: + +install-ps: install-ps-am + +install-ps-am: + +installcheck-am: + +maintainer-clean: maintainer-clean-am + -rm -rf ./$(DEPDIR) + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-compile mostlyclean-generic \ + mostlyclean-libtool + +pdf: pdf-am + +pdf-am: + +ps: ps-am + +ps-am: + +uninstall-am: + +.MAKE: install-am install-strip + +.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ + clean-libtool clean-noinstLTLIBRARIES ctags distclean \ + distclean-compile distclean-generic distclean-libtool \ + distclean-tags distdir dvi dvi-am html html-am info info-am \ + install install-am install-data install-data-am install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-info install-info-am install-man \ + install-pdf install-pdf-am install-ps install-ps-am \ + install-strip installcheck installcheck-am installdirs \ + maintainer-clean maintainer-clean-generic mostlyclean \ + mostlyclean-compile mostlyclean-generic mostlyclean-libtool \ + pdf pdf-am ps ps-am tags uninstall uninstall-am + + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff -Nru silo-llnl-4.10.2/src/fpzip/pccodec.h silo-llnl-4.10.2.real/src/fpzip/pccodec.h --- silo-llnl-4.10.2/src/fpzip/pccodec.h 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/fpzip/pccodec.h 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,14 @@ +#ifndef PC_CODEC_H +#define PC_CODEC_H + +#ifndef PC_BIT_MAX + #define PC_BIT_MAX 8 // maximum bit width of directly encodable integers +#endif + +namespace PC { + template + unsigned bsr(U x); + #include "pccodec.inl" +} + +#endif diff -Nru silo-llnl-4.10.2/src/fpzip/pccodec.inl silo-llnl-4.10.2.real/src/fpzip/pccodec.inl --- silo-llnl-4.10.2/src/fpzip/pccodec.inl 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/fpzip/pccodec.inl 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,15 @@ +template +unsigned bsr(U x) +{ + unsigned k; +#if __i386__ && USEASM + __asm__("bsr %1, %0" : "=r"(k) : "r"(x)); +#else +// for (y = x, k = 0; y != 1; y >>= 1, k++); + k = 0; + do k++; while (x >>= 1); + k--; +#endif + return k; +} + diff -Nru silo-llnl-4.10.2/src/fpzip/pcdecoder.h silo-llnl-4.10.2.real/src/fpzip/pcdecoder.h --- silo-llnl-4.10.2/src/fpzip/pcdecoder.h 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/fpzip/pcdecoder.h 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,24 @@ +#ifndef PC_DECODER_H +#define PC_DECODER_H + +#include "pccodec.h" +#include "pcmap.h" +#include "rcdecoder.h" +#include "rcmodel.h" + +template , bool wide = (M::bits > PC_BIT_MAX)> +class PCdecoder { +public: + PCdecoder(RCdecoder* rd, RCmodel*const* rm); + ~PCdecoder(); + + // decode a value with prediction and optional context + T decode(T pred, unsigned context = 0); + + // number of symbols (needed by probability modeler) + static const unsigned symbols; +}; + +#include "pcdecoder.inl" + +#endif diff -Nru silo-llnl-4.10.2/src/fpzip/pcdecoder.inl silo-llnl-4.10.2.real/src/fpzip/pcdecoder.inl --- silo-llnl-4.10.2/src/fpzip/pcdecoder.inl 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/fpzip/pcdecoder.inl 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,67 @@ +// specialization for small alphabets ----------------------------------------- + +template +class PCdecoder { +public: + PCdecoder(RCdecoder* rd, RCmodel*const* rm) : rd(rd), rm(rm) {} + ~PCdecoder() {} + T decode(T pred, unsigned context = 0); + static const unsigned symbols = 2 * (1 << M::bits) - 1; +private: + static const unsigned bias = (1 << M::bits) - 1; + M map; // maps T to some unsigned int type + RCdecoder*const rd; // entropy decoder + RCmodel*const* rm; // probability modeler(s) +}; + +// decode narrow range type +template +T PCdecoder::decode(T pred, unsigned context) +{ + // map type T to unsigned integer type + typedef typename M::RANGE U; + U p = map.forward(pred); + // entropy decode d = r - p + U r = p + rd->decode(rm[context]) - bias; + return map.inverse(r); +} + +// specialization for large alphabets ----------------------------------------- + +template +class PCdecoder { +public: + PCdecoder(RCdecoder* rd, RCmodel*const* rm) : rd(rd), rm(rm) {} + ~PCdecoder() {} + T decode(T pred, unsigned context = 0); + static const unsigned symbols = 2 * M::bits + 1; +private: + static const unsigned bias = M::bits; + M map; // maps T to some unsigned int type + RCdecoder*const rd; // entropy decoder + RCmodel*const* rm; // probability modeler(s) +}; + +// decode wide range type +template +T PCdecoder::decode(T pred, unsigned context) +{ + typedef typename M::RANGE U; + unsigned s = rd->decode(rm[context]); + if (s > bias) { // underprediction + unsigned k = s - bias - 1; + U d = (U(1) << k) + rd->template decode(k); + U p = map.forward(pred); + U r = p + d; + return map.inverse(r); + } + else if (s < bias) { // overprediction + unsigned k = bias - 1 - s; + U d = (U(1) << k) + rd->template decode(k); + U p = map.forward(pred); + U r = p - d; + return map.inverse(r); + } + else // perfect prediction + return map.identity(pred); +} diff -Nru silo-llnl-4.10.2/src/fpzip/pcencoder.h silo-llnl-4.10.2.real/src/fpzip/pcencoder.h --- silo-llnl-4.10.2/src/fpzip/pcencoder.h 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/fpzip/pcencoder.h 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,23 @@ +#ifndef PC_ENCODER_H +#define PC_ENCODER_H + +#include "pccodec.h" +#include "pcmap.h" +#include "rcencoder.h" +#include "rcmodel.h" + +template , bool wide = (M::bits > PC_BIT_MAX)> +class PCencoder { +public: + PCencoder(RCencoder* re, RCmodel*const* rm); + + // encode a value with prediction and optional context + T encode(T real, T pred, unsigned context = 0); + + // number of symbols (needed by probability modeler) + static const unsigned symbols; +}; + +#include "pcencoder.inl" + +#endif diff -Nru silo-llnl-4.10.2/src/fpzip/pcencoder.inl silo-llnl-4.10.2.real/src/fpzip/pcencoder.inl --- silo-llnl-4.10.2/src/fpzip/pcencoder.inl 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/fpzip/pcencoder.inl 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,71 @@ +// specialization for small alphabets ----------------------------------------- + +template +class PCencoder { +public: + PCencoder(RCencoder* re, RCmodel*const* rm) : re(re), rm(rm) {} + T encode(T real, T pred, unsigned context = 0); + static const unsigned symbols = 2 * (1 << M::bits) - 1; +private: + static const unsigned bias = (1 << M::bits) - 1; // perfect prediction symbol + M map; // maps T to integer type + RCencoder*const re; // entropy encoder + RCmodel*const* rm; // probability modeler(s) +}; + +// encode narrow range type +template +T PCencoder::encode(T real, T pred, unsigned context) +{ + // map type T to unsigned integer type + typedef typename M::RANGE U; + U r = map.forward(real); + U p = map.forward(pred); + // entropy encode d = r - p + re->encode(bias + r - p, rm[context]); + // return decoded value + return map.inverse(r); +} + +// specialization for large alphabets ----------------------------------------- + +template +class PCencoder { +public: + PCencoder(RCencoder* re, RCmodel*const* rm) : re(re), rm(rm) {} + T encode(T real, T pred, unsigned context = 0); + static const unsigned symbols = 2 * M::bits + 1; +private: + static const unsigned bias = M::bits; // perfect prediction symbol + M map; // maps T to integer type + RCencoder*const re; // entropy encoder + RCmodel*const* rm; // probability modeler(s) +}; + +// encode wide range type +template +T PCencoder::encode(T real, T pred, unsigned context) +{ + // map type T to unsigned integer type + typedef typename M::RANGE U; + U r = map.forward(real); + U p = map.forward(pred); + // compute (-1)^s (2^k + m) = r - p, entropy code (s, k), + // and encode the k-bit number m verbatim + if (p < r) { // underprediction + U d = r - p; + unsigned k = PC::bsr(d); + re->encode(bias + 1 + k, rm[context]); + re->encode(d - (U(1) << k), k); + } + else if (p > r) { // overprediction + U d = p - r; + unsigned k = PC::bsr(d); + re->encode(bias - 1 - k, rm[context]); + re->encode(d - (U(1) << k), k); + } + else // perfect prediction + re->encode(bias, rm[context]); + // return decoded value + return map.inverse(r); +} diff -Nru silo-llnl-4.10.2/src/fpzip/pcmap.h silo-llnl-4.10.2.real/src/fpzip/pcmap.h --- silo-llnl-4.10.2/src/fpzip/pcmap.h 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/fpzip/pcmap.h 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,68 @@ +#ifndef PC_MAP_H +#define PC_MAP_H + +#include +#if !defined WITH_REINTERPRET_CAST && !defined WITH_UNION +#include +#endif + +#define bitsizeof(t) ((unsigned)(CHAR_BIT * sizeof(t))) + +template +struct PCmap; + +// specialized for integer-to-integer map +template +struct PCmap { + typedef T DOMAIN; + typedef T RANGE; + static const unsigned bits = width; // RANGE bits + static const unsigned shift = bitsizeof(RANGE) - bits; // DOMAIN\RANGE bits + RANGE forward(DOMAIN d) const { return d >> shift; } + DOMAIN inverse(RANGE r) const { return r << shift; } + DOMAIN identity(DOMAIN d) const { return inverse(forward(d)); } +}; + +// specialized for float type +template +struct PCmap { + typedef float DOMAIN; + typedef unsigned RANGE; + union UNION { + UNION(DOMAIN d) : d(d) {} + UNION(RANGE r) : r(r) {} + DOMAIN d; + RANGE r; + }; + static const unsigned bits = width; // RANGE bits + static const unsigned shift = bitsizeof(RANGE) - bits; // DOMAIN\RANGE bits + RANGE fcast(DOMAIN d) const; + DOMAIN icast(RANGE r) const; + RANGE forward(DOMAIN d) const; + DOMAIN inverse(RANGE r) const; + DOMAIN identity(DOMAIN d) const; +}; + +// specialized for double type +template +struct PCmap { + typedef double DOMAIN; + typedef unsigned long long RANGE; + union UNION { + UNION(DOMAIN d) : d(d) {} + UNION(RANGE r) : r(r) {} + DOMAIN d; + RANGE r; + }; + static const unsigned bits = width; // RANGE bits + static const unsigned shift = bitsizeof(RANGE) - bits; // DOMAIN\RANGE bits + RANGE fcast(DOMAIN d) const; + DOMAIN icast(RANGE r) const; + RANGE forward(DOMAIN d) const; + DOMAIN inverse(RANGE r) const; + DOMAIN identity(DOMAIN d) const; +}; + +#include "pcmap.inl" + +#endif diff -Nru silo-llnl-4.10.2/src/fpzip/pcmap.inl silo-llnl-4.10.2.real/src/fpzip/pcmap.inl --- silo-llnl-4.10.2/src/fpzip/pcmap.inl 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/fpzip/pcmap.inl 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,137 @@ +template +unsigned +PCmap::fcast(float d) const +{ +#ifdef WITH_REINTERPRET_CAST + return reinterpret_cast(d); +#elif defined WITH_UNION + UNION shared(d); + return shared.r; +#else + RANGE r; + memcpy(&r, &d, sizeof(r)); + return r; +#endif +} + +template +float +PCmap::icast(unsigned r) const +{ +#ifdef WITH_REINTERPRET_CAST + return reinterpret_cast(r); +#elif defined WITH_UNION + UNION shared(r); + return shared.d; +#else + DOMAIN d; + memcpy(&d, &r, sizeof(d)); + return d; +#endif +} + +#ifdef _WIN32 +# pragma warning(disable:4146) +#endif +template +unsigned +PCmap::forward(float d) const +{ + RANGE r = fcast(d); + r = ~r; + r >>= shift; + r ^= -(r >> (bits - 1)) >> (shift + 1); +#ifdef _WIN32 + #pragma warning(default:4146) +#endif + return r; +} + +template +float +PCmap::inverse(unsigned r) const +{ + r ^= -(r >> (bits - 1)) >> (shift + 1); + r = ~r; + r <<= shift; + return icast(r); +} + +template +float +PCmap::identity(float d) const +{ + RANGE r = fcast(d); + r >>= shift; + r <<= shift; + return icast(r); +} + +template +unsigned long long +PCmap::fcast(double d) const +{ +#ifdef WITH_REINTERPRET_CAST + return reinterpret_cast(d); +#elif defined WITH_UNION + UNION shared(d); + return shared.r; +#else + RANGE r; + memcpy(&r, &d, sizeof(r)); + return r; +#endif +} + +template +double +PCmap::icast(unsigned long long r) const +{ +#ifdef WITH_REINTERPRET_CAST + return reinterpret_cast(r); +#elif defined WITH_UNION + UNION shared(r); + return shared.d; +#else + DOMAIN d; + memcpy(&d, &r, sizeof(d)); + return d; +#endif +} + +#ifdef _WIN32 +# pragma warning(disable:4146) +#endif +template +unsigned long long +PCmap::forward(double d) const +{ + RANGE r = fcast(d); + r = ~r; + r >>= shift; + r ^= -(r >> (bits - 1)) >> (shift + 1); +#ifdef _WIN32 + #pragma warning(default:4146) +#endif + return r; +} + +template +double +PCmap::inverse(unsigned long long r) const +{ + r ^= -(r >> (bits - 1)) >> (shift + 1); + r = ~r; + r <<= shift; + return icast(r); +} + +template +double +PCmap::identity(double d) const +{ + RANGE r = fcast(d); + r >>= shift; + r <<= shift; + return icast(r); +} diff -Nru silo-llnl-4.10.2/src/fpzip/rcdecoder.cpp silo-llnl-4.10.2.real/src/fpzip/rcdecoder.cpp --- silo-llnl-4.10.2/src/fpzip/rcdecoder.cpp 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/fpzip/rcdecoder.cpp 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,72 @@ +#include "rcdecoder.h" + +// initialize decoder +void RCdecoder::init() +{ + get(4); +} + +// decode a bit +bool RCdecoder::decode() +{ + range >>= 1; + bool s = code >= low + range; + if (s) + low += range; + normalize(); + return s; +} + +// decode a symbol using probability modeling +unsigned RCdecoder::decode(RCmodel* rm) +{ + rm->normalize(range); + unsigned l = (code - low) / range; + unsigned r, s = rm->decode(l, r); + low += range * l; + range *= r; + normalize(); + return s; +} + +// decode a number s : 0 <= s < 2^n <= 2^16 +unsigned RCdecoder::decode_shift(unsigned n) +{ + range >>= n; + unsigned s = (code - low) / range; + low += range * s; + normalize(); + return s; +} + +// decode a number s : 0 <= s < n <= 2^16 +unsigned RCdecoder::decode_ratio(unsigned n) +{ + range /= n; + unsigned s = (code - low) / range; + low += range * s; + normalize(); + return s; +} + +// normalize the range and input data +#ifdef _WIN32 +#pragma warning(disable:4146) +#endif +void RCdecoder::normalize() +{ + while (!((low ^ (low + range)) >> 24)) { + // top 8 bits are fixed; output them + get(1); + range <<= 8; + } + if (!(range >> 16)) { + // top 8 bits are not fixed but range is small; + // fudge range to avoid carry and input 16 bits + get(2); + range = -low; + } +#ifdef _WIN32 +#pragma warning(default:4146) +#endif +} diff -Nru silo-llnl-4.10.2/src/fpzip/rcdecoder.h silo-llnl-4.10.2.real/src/fpzip/rcdecoder.h --- silo-llnl-4.10.2/src/fpzip/rcdecoder.h 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/fpzip/rcdecoder.h 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,50 @@ +#ifndef RC_DECODER_H +#define RC_DECODER_H + +#include "rcmodel.h" +#ifdef _WIN32 +#pragma warning(push) +#pragma warning(disable:4146) +#endif +class RCdecoder { +public: + RCdecoder() : low(0), range(-1u), code(0) {} + virtual ~RCdecoder() {} + + // initialize decoding + void init(); + + // decode a bit + bool decode(); + + // decode a number s : 0 <= s < 2^n + template + UINT decode(unsigned n); + + // decode a number s : l <= s < h + template + UINT decode(UINT l, UINT h); + + // decode a symbol using probability modeling + unsigned decode(RCmodel* rm); + + // virtual function for reading byte stream + virtual unsigned getbyte() = 0; + +private: + unsigned decode_shift(unsigned n); + unsigned decode_ratio(unsigned n); + void get(unsigned n); + void normalize(); + + unsigned low; // low end of interval + unsigned range; // length of interval + unsigned code; // incoming data +}; + +#include "rcdecoder.inl" +#ifdef _WIN32 +#pragma warning(pop) +#endif + +#endif diff -Nru silo-llnl-4.10.2/src/fpzip/rcdecoder.inl silo-llnl-4.10.2.real/src/fpzip/rcdecoder.inl --- silo-llnl-4.10.2/src/fpzip/rcdecoder.inl 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/fpzip/rcdecoder.inl 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,39 @@ +template +inline UINT RCdecoder::decode(unsigned n) +{ + UINT s = 0; + unsigned m = 0; + for (int i = 1; i < (int)sizeof(s) / 2; i++) + if (n > 16) { + s += UINT(decode_shift(16)) << m; + m += 16; + n -= 16; + } + return (UINT(decode_shift(n)) << m) + s; +} + +template +inline UINT RCdecoder::decode(UINT l, UINT h) +{ + UINT s = l; + unsigned m = 0; + h -= l; + for (int i = 1; i < sizeof(s) / 2; i++) + if ((h >> 16)) { + s += UINT(decode_shift(16)) << m; + m += 16; + h >>= 16; + h++; + } + return (UINT(decode_ratio(h)) << m) + s; +} + +// input n bytes +inline void RCdecoder::get(unsigned n) +{ + for (unsigned i = 0; i < n; i++) { + code <<= 8; + code |= getbyte(); + low <<= 8; + } +} diff -Nru silo-llnl-4.10.2/src/fpzip/rcencoder.cpp silo-llnl-4.10.2.real/src/fpzip/rcencoder.cpp --- silo-llnl-4.10.2/src/fpzip/rcencoder.cpp 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/fpzip/rcencoder.cpp 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,65 @@ +#include "rcencoder.h" + +// finalize encoder +void RCencoder::finish() +{ + put(4); +} + +// encode a bit s +void RCencoder::encode(bool s) +{ + range >>= 1; + if (s) + low += range; + normalize(); +} + +// encode a symbol s using probability modeling +void RCencoder::encode(unsigned s, RCmodel* rm) +{ + unsigned l, r; + rm->encode(s, l, r); + rm->normalize(range); + low += range * l; + range *= r; + normalize(); +} + +// encode a number s : 0 <= s < 2^n <= 2^16 +void RCencoder::encode_shift(unsigned s, unsigned n) +{ + range >>= n; + low += range * s; + normalize(); +} + +// encode a number s : 0 <= s < n <= 2^16 +void RCencoder::encode_ratio(unsigned s, unsigned n) +{ + range /= n; + low += range * s; + normalize(); +} + +// normalize the range and output data +#ifdef _WIN32 +#pragma warning(disable:4146) +#endif +void RCencoder::normalize() +{ + while (!((low ^ (low + range)) >> 24)) { + // top 8 bits are fixed; output them + put(1); + range <<= 8; + } + if (!(range >> 16)) { + // top 8 bits are not fixed but range is small; + // fudge range to avoid carry and output 16 bits + put(2); + range = -low; + } +#ifdef _WIN32 +#pragma warning(default:4146) +#endif +} diff -Nru silo-llnl-4.10.2/src/fpzip/rcencoder.h silo-llnl-4.10.2.real/src/fpzip/rcencoder.h --- silo-llnl-4.10.2/src/fpzip/rcencoder.h 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/fpzip/rcencoder.h 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,50 @@ +#ifndef RC_ENCODER_H +#define RC_ENCODER_H + +#include "rcmodel.h" +#ifdef _WIN32 +#pragma warning(push) +#pragma warning(disable:4146) +#endif +class RCencoder { +public: + RCencoder() : low(0), range(-1u) {} + virtual ~RCencoder() {} + + // finish encoding + void finish(); + + // encode a bit s + void encode(bool s); + + // encode a number s : 0 <= s < 2^n + template + void encode(UINT s, unsigned n); + + // encode a number s : l <= s < h + template + void encode(UINT s, UINT l, UINT h); + + // encode a symbol s using probability modeling + void encode(unsigned s, RCmodel* rm); + + // virtual function for writing byte stream + virtual void putbyte(unsigned byte) = 0; + +private: + void encode_shift(unsigned s, unsigned n); + void encode_ratio(unsigned s, unsigned n); + void put(unsigned n); + void normalize(); + + unsigned low; // low end of interval + unsigned range; // length of interval +}; + +#include "rcencoder.inl" + +#ifdef _WIN32 +#pragma warning(pop) +#endif + +#endif diff -Nru silo-llnl-4.10.2/src/fpzip/rcencoder.inl silo-llnl-4.10.2.real/src/fpzip/rcencoder.inl --- silo-llnl-4.10.2/src/fpzip/rcencoder.inl 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/fpzip/rcencoder.inl 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,40 @@ +// The static for loops below enable unrolling or even elimination +// of otherwise data dependent loops for basic integer types. Here +// 'for () if (c)' replaces 'while (c)', and we (safely) assume that +// n does not exceed the number of bits in a UINT. + +template +inline void RCencoder::encode(UINT s, unsigned n) +{ + for (int i = 1; i < (int)sizeof(s) / 2; i++) + if (n > 16) { + encode_shift(s & 0xffff, 16); + s >>= 16; + n -= 16; + } + encode_shift(s, n); +} + +template +inline void RCencoder::encode(UINT s, UINT l, UINT h) +{ + s -= l; + h -= l; + for (int i = 1; i < sizeof(s) / 2; i++) + if ((h >> 16)) { + encode_shift(s & 0xffff, 16); + s >>= 16; + h >>= 16; + h++; + } + encode_ratio(s, h); +} + +// output n bytes +inline void RCencoder::put(unsigned n) +{ + for (unsigned i = 0; i < n; i++) { + putbyte(low >> 24); + low <<= 8; + } +} diff -Nru silo-llnl-4.10.2/src/fpzip/rcmodel.h silo-llnl-4.10.2.real/src/fpzip/rcmodel.h --- silo-llnl-4.10.2/src/fpzip/rcmodel.h 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/fpzip/rcmodel.h 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,23 @@ +#ifndef RC_MODEL_H +#define RC_MODEL_H + +class RCmodel { +public: + RCmodel(unsigned symbols) : symbols(symbols) {} + virtual ~RCmodel() {} + + // get frequency r for a symbol s and cumulative frequency l + // of all symbols t < s + virtual void encode(unsigned s, unsigned& l, unsigned& r) = 0; + + // get symbol frequency r and return symbol corresponding to + // cumulative frequency l + virtual unsigned decode(unsigned& l, unsigned& r) = 0; + + // divide range r by sum of all frequency counts + virtual void normalize(unsigned &r) = 0; + + const unsigned symbols; // number of symbols +}; + +#endif diff -Nru silo-llnl-4.10.2/src/fpzip/rcqsmodel.cpp silo-llnl-4.10.2.real/src/fpzip/rcqsmodel.cpp --- silo-llnl-4.10.2/src/fpzip/rcqsmodel.cpp 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/fpzip/rcqsmodel.cpp 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,125 @@ +#include "rcqsmodel.h" +#include "fpzip.h" + +// table size for binary search +#define TBLSHIFT 7 + +RCqsmodel::RCqsmodel(bool compress, unsigned symbols, unsigned bits, unsigned period) : RCmodel(symbols), bits(bits), targetrescale(period) +{ + if (bits > 16) { + fpzip_errno = fpzipErrorBitsTooLarge; + return; + } + if (targetrescale >= (1u << (bits + 1))) { + fpzip_errno = fpzipErrorTargetRescaleTooLarge; + return; + } + + unsigned n = symbols; + symf = new unsigned[n + 1]; + cumf = new unsigned[n + 1]; + cumf[0] = 0; + cumf[n] = 1 << bits; + if (compress) + search = 0; + else { + searchshift = bits - TBLSHIFT; + search = new unsigned[(1 << TBLSHIFT) + 1]; + } + reset(); +} + +RCqsmodel::~RCqsmodel() +{ + delete [] symf; + delete [] cumf; + delete [] search; +} + +// reinitialize model +void RCqsmodel::reset() +{ + unsigned n = symbols; + rescale = (n >> 4) | 2; + more = 0; + unsigned f = cumf[n] / n; + unsigned m = cumf[n] % n; + for (unsigned i = 0; i < m; i++) + symf[i] = f + 1; + for (unsigned i = m; i < n; i++) + symf[i] = f; + update(); +} + +// return symbol corresponding to cumulative frequency l +unsigned RCqsmodel::decode(unsigned& l, unsigned& r) +{ + unsigned i = l >> searchshift; + unsigned s = search[i]; + unsigned h = search[i + 1] + 1; + + // find symbol via binary search + while (s + 1 < h) { + unsigned m = (s + h) / 2; + if (l < cumf[m]) + h = m; + else + s = m; + } + + l = cumf[s]; + r = cumf[s + 1] - l; + update(s); + + return s; +} + +// update probability table +void RCqsmodel::update() +{ + if (more) { // we have some more symbols before update + left = more; + more = 0; + incr++; + return; + } + if (rescale != targetrescale) { + rescale *= 2; + if (rescale > targetrescale) + rescale = targetrescale; + } + + // update symbol frequencies + unsigned n = symbols; + unsigned cf = cumf[n]; + unsigned count = cf; + for (unsigned i = n; i--; ) { + unsigned sf = symf[i]; + cf -= sf; + cumf[i] = cf; + sf = (sf >> 1) | 1; + count -= sf; + symf[i] = sf; + } + + // count is now difference between target cumf[n] and sum of symf; + // next actual rescale happens when sum of symf equals cumf[n] + incr = count / rescale; + more = count % rescale; + left = rescale - more; + + // build lookup table for fast symbol searches + if (search) + for (unsigned i = n, h = 1 << TBLSHIFT; i--; h = cumf[i] >> searchshift) + for (unsigned l = cumf[i] >> searchshift; l <= h; l++) + search[l] = i; +} + +// update frequency for symbol s +void RCqsmodel::update(unsigned s) +{ + if (!left) + update(); + left--; + symf[s] += incr; +} diff -Nru silo-llnl-4.10.2/src/fpzip/rcqsmodel.h silo-llnl-4.10.2.real/src/fpzip/rcqsmodel.h --- silo-llnl-4.10.2/src/fpzip/rcqsmodel.h 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/fpzip/rcqsmodel.h 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,49 @@ +#ifndef RC_QSMODEL_H +#define RC_QSMODEL_H + +#include "rcmodel.h" + +class RCqsmodel : public RCmodel { +public: + // initialization of model + // compress: true for compression, false for decompression + // symbols: number of symbols + // bits: log2 of total frequency count (must be <= 16) + // period: max symbols between normalizations (must be < 1<<(bits+1)) + RCqsmodel(bool compress, unsigned symbols, unsigned bits = 16, unsigned period = 0x400); + ~RCqsmodel(); + + // reinitialize model + void reset(); + + // get frequencies for a symbol s + void encode(unsigned s, unsigned& l, unsigned& r); + + // return symbol corresponding to cumulative frequency l + unsigned decode(unsigned& l, unsigned& r); + + // + void normalize(unsigned &r); + +private: + + void update(); + void update(unsigned s); + + const unsigned bits; // number of bits of precision for frequencies + + unsigned left; // number of symbols until next normalization + unsigned more; // number of symbols with larger increment + unsigned incr; // increment per update + unsigned rescale; // current interval between normalizations + unsigned targetrescale; // target interval between rescales + unsigned* symf; // array of partially updated frequencies + unsigned* cumf; // array of cumulative frequencies + + unsigned searchshift; // difference of frequency bits and table bits + unsigned* search; // structure for searching on decompression +}; + +#include "rcqsmodel.inl" + +#endif diff -Nru silo-llnl-4.10.2/src/fpzip/rcqsmodel.inl silo-llnl-4.10.2.real/src/fpzip/rcqsmodel.inl --- silo-llnl-4.10.2/src/fpzip/rcqsmodel.inl 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/fpzip/rcqsmodel.inl 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,12 @@ +// get frequencies for a symbol s +inline void RCqsmodel::encode(unsigned s, unsigned& l, unsigned& r) +{ + l = cumf[s]; + r = cumf[s + 1] - l; + update(s); +} + +inline void RCqsmodel::normalize(unsigned& r) +{ + r >>= bits; +} diff -Nru silo-llnl-4.10.2/src/fpzip/read.cpp silo-llnl-4.10.2.real/src/fpzip/read.cpp --- silo-llnl-4.10.2/src/fpzip/read.cpp 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/fpzip/read.cpp 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,354 @@ +#include +#include +#include "pcdecoder.h" +#include "rcqsmodel.h" +#include "front.h" +#include "fpzip.h" +#include "codec.h" +#include "read.h" + +#if FPZIP_FP == FPZIP_FP_FAST || FPZIP_FP == FPZIP_FP_SAFE +// decompress 3D array at specified precision using floating-point arithmetic +template +static void +decompress3d( + RCdecoder* rd, // entropy decoder + T* data, // flattened 3D array to decompress to + unsigned nx, // number of x samples + unsigned ny, // number of y samples + unsigned nz // number of z samples +) +{ + // initialize decompressor + typedef PCmap MAP; + RCmodel* rm = new RCqsmodel(false, PCdecoder::symbols); + PCdecoder* fd = new PCdecoder(rd, &rm); + FRONT f(nx, ny); + + // decode difference between predicted (p) and actual (a) value + unsigned x, y, z; + for (z = 0, f.advance(0, 0, 1); z < nz; z++) + for (y = 0, f.advance(0, 1, 0); y < ny; y++) + for (x = 0, f.advance(1, 0, 0); x < nx; x++) { + #if FPZIP_FP == FPZIP_FP_SAFE + volatile T p = f(1, 1, 1); + p += f(1, 0, 0); + p -= f(0, 1, 1); + p += f(0, 1, 0); + p -= f(1, 0, 1); + p += f(0, 0, 1); + p -= f(1, 1, 0); + #else + T p = f(1, 0, 0) - f(0, 1, 1) + + f(0, 1, 0) - f(1, 0, 1) + + f(0, 0, 1) - f(1, 1, 0) + + f(1, 1, 1); + #endif + T a = fd->decode(p); + *data++ = a; + f.push(a); + } + + delete fd; + delete rm; +} +#elif FPZIP_FP == FPZIP_FP_EMUL +#include "fpe.h" +// decompress 3D array at specified precision using floating-point emulation +template +static void +decompress3d( + RCdecoder* rd, // entropy encoder + T* data, // flattened 3D array to decompress to + unsigned nx, // number of x samples + unsigned ny, // number of y samples + unsigned nz // number of z samples +) +{ + // initialize decompressor + typedef PCmap MAP; + typedef FPE FLOAT; + RCmodel* rm = new RCqsmodel(false, PCdecoder::symbols); + PCdecoder* fd = new PCdecoder(rd, &rm); + FRONT f(nx, ny); + + // decode difference between predicted (p) and actual (a) value + unsigned x, y, z; + for (z = 0, f.advance(0, 0, 1); z < nz; z++) + for (y = 0, f.advance(0, 1, 0); y < ny; y++) + for (x = 0, f.advance(1, 0, 0); x < nx; x++) { + FLOAT p = f(1, 0, 0) - f(0, 1, 1) + + f(0, 1, 0) - f(1, 0, 1) + + f(0, 0, 1) - f(1, 1, 0) + + f(1, 1, 1); + T a = fd->decode(T(p)); + *data++ = a; + f.push(a); + } + + delete fd; + delete rm; +} +#else // FPZIP_FP_INT +// decompress 3D array at specified precision using integer arithmetic +template +static void +decompress3d( + RCdecoder* rd, // entropy decoder + T* data, // flattened 3D array to decompress to + unsigned nx, // number of x samples + unsigned ny, // number of y samples + unsigned nz // number of z samples +) +{ + // initialize decompressor + typedef PCmap TMAP; + typedef typename TMAP::RANGE U; + typedef PCmap UMAP; + RCmodel* rm = new RCqsmodel(false, PCdecoder::symbols); + PCdecoder* fd = new PCdecoder(rd, &rm); + TMAP map; + FRONT f(nx, ny, map.forward(0)); + + // decode difference between predicted (p) and actual (a) value + unsigned x, y, z; + for (z = 0, f.advance(0, 0, 1); z < nz; z++) + for (y = 0, f.advance(0, 1, 0); y < ny; y++) + for (x = 0, f.advance(1, 0, 0); x < nx; x++) { + U p = f(1, 0, 0) - f(0, 1, 1) + + f(0, 1, 0) - f(1, 0, 1) + + f(0, 0, 1) - f(1, 1, 0) + + f(1, 1, 1); + U a = fd->decode(p); + *data++ = map.inverse(a); + f.push(a); + } + + delete fd; + delete rm; +} +#endif + +// decompress p-bit float, 2p-bit double +#define decompress_case(p)\ + case subsize(T, p):\ + decompress3d(rd, data, nx, ny, nz);\ + break + +// decompress 4D array +template +static bool +decompress4d( + RCdecoder* rd, // entropy decoder + T* data, // flattened 4D array to decompress to + int* prec, // per field precision + unsigned nx, // number of x samples + unsigned ny, // number of y samples + unsigned nz, // number of z samples + unsigned nf // number of fields +) +{ + // decompress one field at a time + for (unsigned i = 0; i < nf; i++) { + int bits = rd->template decode (32); + if (prec) + prec[i] = bits; + switch (bits) { + decompress_case( 2); + decompress_case( 3); + decompress_case( 4); + decompress_case( 5); + decompress_case( 6); + decompress_case( 7); + decompress_case( 8); + decompress_case( 9); + decompress_case(10); + decompress_case(11); + decompress_case(12); + decompress_case(13); + decompress_case(14); + decompress_case(15); + decompress_case(16); + decompress_case(17); + decompress_case(18); + decompress_case(19); + decompress_case(20); + decompress_case(21); + decompress_case(22); + decompress_case(23); + decompress_case(24); + decompress_case(25); + decompress_case(26); + decompress_case(27); + decompress_case(28); + decompress_case(29); + decompress_case(30); + decompress_case(31); + decompress_case(32); + default: + fpzip_errno = fpzipErrorBadPrecision; + return false; + } + data += nx * ny * nz; + } + return true; +} + +static bool +read_header( + RCdecoder* rd, + unsigned *nx, + unsigned *ny, + unsigned *nz, + unsigned *nf, + int *dp +) +{ + // magic + if (rd->decode(8) != 'f' || + rd->decode(8) != 'p' || + rd->decode(8) != 'z' || + rd->decode(8) != '\0') { + fpzip_errno = fpzipErrorBadFormat; + return false; + } + + // format version + if (rd->decode(16) != FPZ_MAJ_VERSION || + rd->decode(16) != FPZ_MIN_VERSION) { + fpzip_errno = fpzipErrorBadVersion; + return false; + } + + // array dimensions + *nf = rd->decode(32); + *nz = rd->decode(32); + *ny = rd->decode(32); + *nx = rd->decode(32); + + // single or double precision + *dp = rd->decode(); + return true; +} + +static bool +fpzip_stream_read( + RCdecoder* rd, // entropy decoder + void* data, // array to read + int* prec, // per field bits of precision + int *dp, // double precision array if nonzero + unsigned *nx, // number of x samples + unsigned *ny, // number of y samples + unsigned *nz, // number of z samples + unsigned *nf // number of fields +) +{ + rd->init(); + if (!read_header(rd, nx, ny, nz, nf, dp)) + return false; + if (data == 0) + return true; + if (dp) + return decompress4d(rd, (double*)data, prec, *nx, *ny, *nz, *nf); + else + return decompress4d(rd, (float*)data, prec, *nx, *ny, *nz, *nf); +} + +// read and decompress a single or double precision 4D array from file +size_t +fpzip_file_read( + FILE* file, // binary input stream + void* data, // array to read + int* prec, // per field bits of precision + int *dp, // double precision array if nonzero + unsigned *nx, // number of x samples + unsigned *ny, // number of y samples + unsigned *nz, // number of z samples + unsigned *nf // number of fields +) +{ + fpzip_errno = fpzipSuccess; + size_t bytes = 0; + RCfiledecoder* rd = new RCfiledecoder(file); + if (fpzip_stream_read(rd, data, prec, dp, nx, ny, nz, nf)) { + if (data != 0) + bytes = rd->error ? 0 : rd->bytes(); + if (rd->error) + fpzip_errno = fpzipErrorReadStream; + } + delete rd; + return bytes; +} + +// read and decompress a single or double precision 4D array from file +size_t +fpzip_memory_read( + const void* buffer, // pointer to compressed data + void* data, // array to read + int* prec, // per field bits of precision + int *dp, // double precision array if nonzero + unsigned *nx, // number of x samples + unsigned *ny, // number of y samples + unsigned *nz, // number of z samples + unsigned *nf // number of fields +) +{ + fpzip_errno = fpzipSuccess; + RCmemdecoder* rd = new RCmemdecoder(buffer); + fpzip_stream_read(rd, data, prec, dp, nx, ny, nz, nf); + size_t bytes = 0; + if (data != 0) + bytes = rd->error ? 0 : rd->bytes(); + if (rd->error) + fpzip_errno = fpzipErrorReadStream; + delete rd; + return bytes; +} + +// wrappers for fortran calls +void +fpzip_file_read_f( + const char* path, // path to input file + void* data, // array to read + int* prec, // per field bits of precision + int* dp, // double precision array if nonzero + int* nx, // number of x samples + int* ny, // number of y samples + int* nz, // number of z samples + int* nf // number of fields +) +{ + unsigned unx=0, uny=0, unz=0, unf=0; + size_t status=0; + FILE* file = fopen(path, "rb"); + fpzip_errno = fpzipSuccess; + *nx = *ny = *nz = *nf = 0; + if (!file) { + fpzip_errno = fpzipErrorOpenFile; + return; + } + status = fpzip_file_read(file, data, prec, dp, &unx, &uny, &unz, &unf); + if (!(data != 0 && status == 0)) + { + *nx = (int) unx; + *ny = (int) uny; + *nz = (int) unz; + *nf = (int) unf; + } + fclose(file); +} + +void +fpzip_file_read_f_( + const char* path, // path to input file + void* data, // array to read + int* prec, // per field bits of precision + int* dp, // double precision array if nonzero + int* nx, // number of x samples + int* ny, // number of y samples + int* nz, // number of z samples + int* nf // number of fields +) +{ + fpzip_file_read_f(path, data, prec, dp, nx, ny, nz, nf); +} diff -Nru silo-llnl-4.10.2/src/fpzip/read.h silo-llnl-4.10.2.real/src/fpzip/read.h --- silo-llnl-4.10.2/src/fpzip/read.h 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/fpzip/read.h 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,66 @@ +#ifndef FPZIP_READ_H +#define FPZIP_READ_H + +#define subsize(T, n) (CHAR_BIT * sizeof(T) * (n) / 32) + +// file reader for compressed data +#if FPZIP_BLOCK_SIZE > 1 +class RCfiledecoder : public RCdecoder { +public: + RCfiledecoder(FILE* file) : RCdecoder(), error(false), file(file), count(0), index(0), size(0) {} + unsigned getbyte() + { + if (index == size) { + size = fread(buffer, 1, FPZIP_BLOCK_SIZE, file); + if (!size) { + size = 1; + error = true; + } + else + count += size; + index = 0; + } + return buffer[index++]; + } + size_t bytes() const { return count; } + bool error; +private: + FILE* file; + size_t count; + size_t index; + size_t size; + unsigned char buffer[FPZIP_BLOCK_SIZE]; +}; +#else +class RCfiledecoder : public RCdecoder { +public: + RCfiledecoder(FILE* file) : RCdecoder(), error(false), file(file), count(0) {} + unsigned getbyte() + { + int byte = fgetc(file); + if (byte == EOF) + error = true; + else + count++; + return byte; + } + size_t bytes() const { return count; } + bool error; +private: + FILE* file; + size_t count; +}; +#endif + +class RCmemdecoder : public RCdecoder { +public: + RCmemdecoder(const void* buffer) : RCdecoder(), error(false), ptr((const unsigned char*)buffer), begin(ptr) {} + unsigned getbyte() { return *ptr++; } + size_t bytes() const { return ptr - begin; } + bool error; +private: + const unsigned char* ptr; + const unsigned char* const begin; +}; + +#endif diff -Nru silo-llnl-4.10.2/src/fpzip/write.cpp silo-llnl-4.10.2.real/src/fpzip/write.cpp --- silo-llnl-4.10.2/src/fpzip/write.cpp 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/fpzip/write.cpp 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,339 @@ +#include +#include +#include "pcencoder.h" +#include "rcqsmodel.h" +#include "front.h" +#include "fpzip.h" +#include "codec.h" +#include "write.h" + +#if FPZIP_FP == FPZIP_FP_FAST || FPZIP_FP == FPZIP_FP_SAFE +// compress 3D array at specified precision using floating-point arithmetic +template +static void +compress3d( + RCencoder* re, // entropy encoder + const T* data, // flattened 3D array to compress + unsigned nx, // number of x samples + unsigned ny, // number of y samples + unsigned nz // number of z samples +) +{ + // initialize compressor + typedef PCmap MAP; + RCmodel* rm = new RCqsmodel(true, PCencoder::symbols); + PCencoder* fe = new PCencoder(re, &rm); + FRONT f(nx, ny); + + // encode difference between predicted (p) and actual (a) value + unsigned x, y, z; + for (z = 0, f.advance(0, 0, 1); z < nz; z++) + for (y = 0, f.advance(0, 1, 0); y < ny; y++) + for (x = 0, f.advance(1, 0, 0); x < nx; x++) { + #if FPZIP_FP == FPZIP_FP_SAFE + volatile T p = f(1, 1, 1); + p += f(1, 0, 0); + p -= f(0, 1, 1); + p += f(0, 1, 0); + p -= f(1, 0, 1); + p += f(0, 0, 1); + p -= f(1, 1, 0); + #else + T p = f(1, 0, 0) - f(0, 1, 1) + + f(0, 1, 0) - f(1, 0, 1) + + f(0, 0, 1) - f(1, 1, 0) + + f(1, 1, 1); + #endif + T a = *data++; + a = fe->encode(a, p); + f.push(a); + } + + delete fe; + delete rm; +} +#elif FPZIP_FP == FPZIP_FP_EMUL +#include "fpe.h" +// compress 3D array at specified precision using floating-point emulation +template +static void +compress3d( + RCencoder* re, // entropy encoder + const T* data, // flattened 3D array to compress + unsigned nx, // number of x samples + unsigned ny, // number of y samples + unsigned nz // number of z samples +) +{ + // initialize compressor + typedef PCmap MAP; + typedef FPE FLOAT; + RCmodel* rm = new RCqsmodel(true, PCencoder::symbols); + PCencoder* fe = new PCencoder(re, &rm); + FRONT f(nx, ny); + + // encode difference between predicted (p) and actual (a) value + unsigned x, y, z; + for (z = 0, f.advance(0, 0, 1); z < nz; z++) + for (y = 0, f.advance(0, 1, 0); y < ny; y++) + for (x = 0, f.advance(1, 0, 0); x < nx; x++) { + FLOAT p = f(1, 0, 0) - f(0, 1, 1) + + f(0, 1, 0) - f(1, 0, 1) + + f(0, 0, 1) - f(1, 1, 0) + + f(1, 1, 1); + T a = *data++; + a = fe->encode(a, T(p)); + f.push(a); + } + + delete fe; + delete rm; +} +#else // FPZIP_FP_INT +// compress 3D array at specified precision using integer arithmetic +template +static void +compress3d( + RCencoder* re, // entropy encoder + const T* data, // flattened 3D array to compress + unsigned nx, // number of x samples + unsigned ny, // number of y samples + unsigned nz // number of z samples +) +{ + // initialize compressor + typedef PCmap TMAP; + typedef typename TMAP::RANGE U; + typedef PCmap UMAP; + RCmodel* rm = new RCqsmodel(true, PCencoder::symbols); + PCencoder* fe = new PCencoder(re, &rm); + TMAP map; + FRONT f(nx, ny, map.forward(0)); + + // encode difference between predicted (p) and actual (a) value + unsigned x, y, z; + for (z = 0, f.advance(0, 0, 1); z < nz; z++) + for (y = 0, f.advance(0, 1, 0); y < ny; y++) + for (x = 0, f.advance(1, 0, 0); x < nx; x++) { + U p = f(1, 0, 0) - f(0, 1, 1) + + f(0, 1, 0) - f(1, 0, 1) + + f(0, 0, 1) - f(1, 1, 0) + + f(1, 1, 1); + U a = map.forward(*data++); + a = fe->encode(a, p); + f.push(a); + } + + delete fe; + delete rm; +} +#endif + +// compress p-bit float, 2p-bit double +#define compress_case(p)\ + case subsize(T, p):\ + compress3d(re, data, nx, ny, nz);\ + break + +// compress 4D array +template +static bool +compress4d( + RCencoder* re, // entropy encoder + const T* data, // flattened 4D array to compress + const int* prec, // per field desired precision + unsigned nx, // number of x samples + unsigned ny, // number of y samples + unsigned nz, // number of z samples + unsigned nf // number of fields +) +{ + // compress one field at a time + for (unsigned i = 0; i < nf; i++) { + int bits = prec ? prec[i] : CHAR_BIT * (int)sizeof(T); + re->encode(bits, 32); + switch (bits) { + compress_case( 2); + compress_case( 3); + compress_case( 4); + compress_case( 5); + compress_case( 6); + compress_case( 7); + compress_case( 8); + compress_case( 9); + compress_case(10); + compress_case(11); + compress_case(12); + compress_case(13); + compress_case(14); + compress_case(15); + compress_case(16); + compress_case(17); + compress_case(18); + compress_case(19); + compress_case(20); + compress_case(21); + compress_case(22); + compress_case(23); + compress_case(24); + compress_case(25); + compress_case(26); + compress_case(27); + compress_case(28); + compress_case(29); + compress_case(30); + compress_case(31); + compress_case(32); + default: + fpzip_errno = fpzipErrorBadPrecision; + return false; + } + data += nx * ny * nz; + } + return true; +} + +static void +write_header( + RCencoder* re, + unsigned nx, + unsigned ny, + unsigned nz, + unsigned nf, + int dp +) +{ + // magic + re->encode((unsigned)'f', 8); + re->encode((unsigned)'p', 8); + re->encode((unsigned)'z', 8); + re->encode((unsigned)'\0', 8); + + // format version + re->encode(FPZ_MAJ_VERSION, 16); + re->encode(FPZ_MIN_VERSION, 16); + + // array dimensions + re->encode(nf, 32); + re->encode(nz, 32); + re->encode(ny, 32); + re->encode(nx, 32); + + // single or double precision + re->encode(!!dp); +} + +static bool +fpzip_stream_write( + RCencoder* re, // entropy encoder + const void* data, // array to write + const int* prec, // per field bits of precision + int dp, // double precision array if nonzero + unsigned nx, // number of x samples + unsigned ny, // number of y samples + unsigned nz, // number of z samples + unsigned nf // number of fields +) +{ + write_header(re, nx, ny, nz, nf, dp); + bool status; + if (dp) + status = compress4d(re, (const double*)data, prec, nx, ny, nz, nf); + else + status = compress4d(re, (const float*)data, prec, nx, ny, nz, nf); + re->finish(); + return status; +} + +// compress and write a single or double precision 4D array to file +size_t +fpzip_file_write( + FILE* file, // binary output stream + const void* data, // array to write + const int* prec, // per field bits of precision + int dp, // double precision array if nonzero + unsigned nx, // number of x samples + unsigned ny, // number of y samples + unsigned nz, // number of z samples + unsigned nf // number of fields +) +{ + fpzip_errno = fpzipSuccess; + size_t bytes = 0; + RCfileencoder* re = new RCfileencoder(file); + if (fpzip_stream_write(re, data, prec, dp, nx, ny, nz, nf)) { + re->flush(); + if (re->error) + fpzip_errno = fpzipErrorWriteStream; + else + bytes = re->bytes(); + } + delete re; + return bytes; +} + +// compress and write a single or double precision 4D array to file +size_t +fpzip_memory_write( + void* buffer, // pointer to compressed data + size_t size, // size of allocated storage + const void* data, // array to write + const int* prec, // per field bits of precision + int dp, // double precision array if nonzero + unsigned nx, // number of x samples + unsigned ny, // number of y samples + unsigned nz, // number of z samples + unsigned nf // number of fields +) +{ + fpzip_errno = fpzipSuccess; + size_t bytes = 0; + RCmemencoder* re = new RCmemencoder(buffer, size); + if (fpzip_stream_write(re, data, prec, dp, nx, ny, nz, nf)) { + if (re->error) { + if (!fpzip_errno) + fpzip_errno = fpzipErrorWriteStream; + } + else + bytes = re->bytes(); + } + delete re; + return bytes; +} + +// wrappers for fortran calls +void +fpzip_file_write_f( + const char* path, // path to output file + const void* data, // array to write + const int* prec, // per field bits of precision + const int* dp, // double precision array if nonzero + const int* nx, // number of x samples + const int* ny, // number of y samples + const int* nz, // number of z samples + const int* nf // number of fields +) +{ + FILE* file = fopen(path, "wb"); + if (!file) { + fpzip_errno = fpzipErrorCreateFile; + return; + } + fpzip_file_write(file, data, prec, *dp, *nx, *ny, *nz, *nf); + fclose(file); +} + +void +fpzip_file_write_f_( + const char* path, // path to output file + const void* data, // array to write + const int* prec, // per field bits of precision + const int* dp, // double precision array if nonzero + const int* nx, // number of x samples + const int* ny, // number of y samples + const int* nz, // number of z samples + const int* nf // number of fields +) +{ + fpzip_file_write_f(path, data, dp, prec, nx, ny, nz, nf); +} diff -Nru silo-llnl-4.10.2/src/fpzip/write.h silo-llnl-4.10.2.real/src/fpzip/write.h --- silo-llnl-4.10.2/src/fpzip/write.h 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/fpzip/write.h 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,77 @@ +#ifndef FPZIP_WRITE_H +#define FPZIP_WRITE_H + +#include + +#define subsize(T, n) (CHAR_BIT * sizeof(T) * (n) / 32) + +// file writer for compressed data +#if FPZIP_BLOCK_SIZE > 1 +class RCfileencoder : public RCencoder { +public: + RCfileencoder(FILE* file) : RCencoder(), error(false), file(file), count(0), size(0) {} + ~RCfileencoder() { flush(); } + void putbyte(unsigned byte) + { + if (size == FPZIP_BLOCK_SIZE) + flush(); + buffer[size++] = (unsigned char)byte; + } + void flush() + { + if (fwrite(buffer, 1, size, file) != size) + error = true; + else + count += size; + size = 0; + } + size_t bytes() const { return count; } + bool error; +private: + FILE* file; + size_t count; + size_t size; + unsigned char buffer[FPZIP_BLOCK_SIZE]; +}; +#else +class RCfileencoder : public RCencoder { +public: + RCfileencoder(FILE* file) : RCencoder(), error(false), file(file), count(0) {} + void putbyte(unsigned byte) + { + if (fputc(byte, file) == EOF) + error = true; + else + count++; + } + void flush() {} + size_t bytes() const { return count; } + bool error; +private: + FILE* file; + size_t count; +}; +#endif + +// memory writer for compressed data +class RCmemencoder : public RCencoder { +public: + RCmemencoder(void* buffer, size_t size) : RCencoder(), error(false), ptr((unsigned char*)buffer), begin(ptr), end(ptr + size) {} + void putbyte(unsigned byte) + { + if (ptr == end) { + error = true; + fpzip_errno = fpzipErrorBufferOverflow; + } + else + *ptr++ = (unsigned char)byte; + } + size_t bytes() const { return ptr - begin; } + bool error; +private: + unsigned char* ptr; + const unsigned char* const begin; + const unsigned char* const end; +}; + +#endif diff -Nru silo-llnl-4.10.2/src/hdf5_drv/H5FDsilo.c silo-llnl-4.10.2.real/src/hdf5_drv/H5FDsilo.c --- silo-llnl-4.10.2/src/hdf5_drv/H5FDsilo.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/src/hdf5_drv/H5FDsilo.c 2018-02-15 17:25:43.000000000 +0000 @@ -573,7 +573,7 @@ if (file->stats.num_hot_blocks == file->stats.max_hot_blocks) { int new_max = file->stats.max_hot_blocks * 2 + 1; - hbl = realloc(file->stats.hot_block_list, sizeof(silo_vfd_hot_block_stats_t)*new_max); + hbl = (silo_vfd_hot_block_stats_t *)realloc(file->stats.hot_block_list, sizeof(silo_vfd_hot_block_stats_t)*new_max); file->stats.max_hot_blocks = new_max; file->stats.hot_block_list = hbl; } diff -Nru silo-llnl-4.10.2/src/hdf5_drv/Makefile.in silo-llnl-4.10.2.real/src/hdf5_drv/Makefile.in --- silo-llnl-4.10.2/src/hdf5_drv/Makefile.in 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/src/hdf5_drv/Makefile.in 2018-02-15 17:25:43.000000000 +0000 @@ -182,6 +182,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +JSON = @JSON@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBM = @LIBM@ @@ -230,9 +231,6 @@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SILEX = @SILEX@ -SILO_DTYPPTR = @SILO_DTYPPTR@ -SILO_DTYPPTR1 = @SILO_DTYPPTR1@ -SILO_DTYPPTR2 = @SILO_DTYPPTR2@ SILO_VERS_MAJ = @SILO_VERS_MAJ@ SILO_VERS_MIN = @SILO_VERS_MIN@ SILO_VERS_PAT = @SILO_VERS_PAT@ diff -Nru silo-llnl-4.10.2/src/hdf5_drv/silo_hdf5.c silo-llnl-4.10.2.real/src/hdf5_drv/silo_hdf5.c --- silo-llnl-4.10.2/src/hdf5_drv/silo_hdf5.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/src/hdf5_drv/silo_hdf5.c 2018-02-15 17:25:43.000000000 +0000 @@ -1,4 +1,5 @@ /* + hsize_t _size = 3; Copyright (c) 1994 - 2010, Lawrence Livermore National Security, LLC. LLNL-CODE-425250. All rights reserved. @@ -70,7 +71,7 @@ #include #include "silo_hdf5_private.h" #include "H5FDsilo.h" -#if defined(HAVE_HDF5_H) && defined(HAVE_LIBHDF5) +#if defined(HAVE_HDF5_H) && defined(HAVE_LIBHDF5) /* [ */ /* HZIP node order permuation vector construction. To construct a permutation vector, work backwards @@ -215,6 +216,11 @@ #define BASEDUP(S) ((S)&&*(S)?db_FullName2BaseName(S):NULL) #define ALIGN(ADDR,N) (((ADDR)+(N)-1)&~((N)-1)) +/* copies of equiv. symbols in H5LT library */ +#define db_hdf5_H5LT_FILE_IMAGE_OPEN_RW 0x0001 +#define db_hdf5_H5LT_FILE_IMAGE_DONT_COPY 0x0002 +#define db_hdf5_H5LT_FILE_IMAGE_DONT_RELEASE 0x0004 + /* useful macro for comparing HDF5 versions */ #define HDF5_VERSION_GE(Maj,Min,Rel) \ (((H5_VERS_MAJOR==Maj) && (H5_VERS_MINOR==Min) && (H5_VERS_RELEASE>=Rel)) || \ @@ -232,13 +238,39 @@ /* some necessary forward declarations */ PRIVATE int db_hdf5_fullname(DBfile_hdf5 *dbfile, char *name, char *full); PRIVATE int hdf2silo_type(hid_t type); +PRIVATE int db_hdf5_WriteCKZ(DBfile *_dbfile, char const *vname, void const *var, + int const *dims, int ndims, int datatype, int nofilters); + +/* callbacks prototypes for file image ops */ +#if HDF5_VERSION_GE(1,8,9) +PRIVATE void *image_malloc(size_t size, H5FD_file_image_op_t file_image_op, void *udata); +PRIVATE void *image_memcpy(void *dest, const void *src, size_t size, H5FD_file_image_op_t file_image_op, void *udata); +PRIVATE void *image_realloc(void *ptr, size_t size, H5FD_file_image_op_t file_image_op, void *udata); +PRIVATE herr_t image_free(void *ptr, H5FD_file_image_op_t file_image_op, void *udata); +PRIVATE void *udata_copy(void *udata); +PRIVATE herr_t udata_free(void *udata); + +/* Data structure to pass application data to image file callbacks. */ +typedef struct { + void *app_image_ptr; /* Pointer to application buffer */ + size_t app_image_size; /* Size of application buffer */ + void *fapl_image_ptr; /* Pointer to FAPL buffer */ + size_t fapl_image_size; /* Size of FAPL buffer */ + int fapl_ref_count; /* Reference counter for FAPL buffer */ + void *vfd_image_ptr; /* Pointer to VFD buffer */ + size_t vfd_image_size; /* Size of VFD buffer */ + int vfd_ref_count; /* Reference counter for VFD buffer */ + unsigned flags; /* Flags indicate how the file image will */ + /* be open */ + int ref_count; /* Reference counter on udata struct */ +} db_hdf5_H5LT_file_image_ud_t; +#endif /* Symbolic constants used in calls to db_StringListToStringArray to indicate behavior. A '!' in front means to not perform the associated action. For HDF5 driver, we handle the slash swap on the 'names' member of multi-block objects only and we never skip first semicolon. */ -static int const handleSlashSwap = 1; static int const skipFirstSemicolon = 0; /* Use `float' for all memory floating point values? */ @@ -257,6 +289,7 @@ typedef struct DBcurve_mt { int npts; int guihide; + int coord_sys; char xvarname[256]; char yvarname[256]; char label[256]; @@ -265,6 +298,7 @@ char xunits[256]; char yunits[256]; char reference[256]; + double missing_value; } DBcurve_mt; static hid_t DBcurve_mt5 = -1; @@ -292,6 +326,7 @@ char mrgtree_name[256]; int tv_connectivity; int disjoint_mode; + char alt_nodenum_vars[256]; } DBcsgmesh_mt; static hid_t DBcsgmesh_mt5; @@ -314,6 +349,7 @@ char region_pnames[256]; int conserved; int extensive; + double missing_value; } DBcsgvar_mt; static hid_t DBcsgvar_mt5; @@ -332,6 +368,7 @@ char zonelist[256]; char regnames[256]; char zonenames[256]; + char alt_zonenum_vars[256]; } DBcsgzonelist_mt; static hid_t DBcsgzonelist_mt5; @@ -369,6 +406,10 @@ char label[3][256]; char units[3][256]; char mrgtree_name[256]; + char ghost_node_labels[256]; + char ghost_zone_labels[256]; + char alt_nodenum_vars[256]; + char alt_zonenum_vars[256]; } DBquadmesh_mt; static hid_t DBquadmesh_mt5; @@ -400,6 +441,7 @@ int conserved; int extensive; int centering; + double missing_value; } DBquadvar_mt; static hid_t DBquadvar_mt5; @@ -430,6 +472,8 @@ int tv_connectivity; int disjoint_mode; int gnznodtype; + char ghost_node_labels[256]; + char alt_nodenum_vars[256]; } DBucdmesh_mt; static hid_t DBucdmesh_mt5; @@ -457,6 +501,7 @@ char region_pnames[256]; int conserved; int extensive; + double missing_value; } DBucdvar_mt; static hid_t DBucdvar_mt5; @@ -490,6 +535,8 @@ char shapetype[256]; char gzoneno[256]; int gnznodtype; + char ghost_zone_labels[256]; + char alt_zonenum_vars[256]; } DBzonelist_mt; static hid_t DBzonelist_mt5; @@ -508,6 +555,8 @@ char facelist[256]; char gzoneno[256]; int gnznodtype; + char ghost_zone_labels[256]; + char alt_zonenum_vars[256]; } DBphzonelist_mt; static hid_t DBphzonelist_mt5; @@ -561,6 +610,8 @@ char empty_list[256]; int empty_cnt; int repr_block_idx; + char alt_nodenum_vars[256]; + char alt_zonenum_vars[256]; } DBmultimesh_mt; static hid_t DBmultimesh_mt5; @@ -605,6 +656,7 @@ char empty_list[256]; int empty_cnt; int repr_block_idx; + double missing_value; } DBmultivar_mt; static hid_t DBmultivar_mt5; @@ -696,13 +748,16 @@ char units[3][256]; char gnodeno[256]; char mrgtree_name[256]; + char ghost_node_labels[256]; int gnznodtype; + char alt_nodenum_vars[256]; } DBpointmesh_mt; static hid_t DBpointmesh_mt5; typedef struct DBpointvar_mt { int nvals; int nels; + int ndims; int nspace; int origin; int min_index; @@ -720,6 +775,7 @@ char region_pnames[256]; int conserved; int extensive; + double missing_value; } DBpointvar_mt; static hid_t DBpointvar_mt5; @@ -733,16 +789,6 @@ } DBcompoundarray_mt; static hid_t DBcompoundarray_mt5; -typedef struct DBsil_mt { - char tails[256]; - char heads[256]; - int nedges; - - char setnames[256]; - int nsets; -} DBsil_mt; -static hid_t DBsil_mt5; - typedef struct DBmrgtree_mt { /* from the DBmrgtree header struct */ int src_mesh_type; @@ -778,7 +824,7 @@ } DBgroupelmap_mt; static hid_t DBgroupelmap_mt5; -typedef struct DBmrgvar { +typedef struct DBmrgvar_mt { int nregns; int ncomps; int datatype; @@ -899,7 +945,7 @@ if (_f && (_tmp_f=_f->T_##TYPE)>=0) { \ hid_t _f_ary = H5Tarray_create(_tmp_f, 1, &_size, NULL); \ db_hdf5_put_cmemb(_ft, #NAME, _f_off, 0, NULL, _f_ary); \ - _f_off += 3*H5Tget_size(_f_ary); \ + _f_off += H5Tget_size(_f_ary); \ H5Tclose(_f_ary); \ } \ } \ @@ -1192,14 +1238,14 @@ zl->nzones = nzones; zl->nshapes = 1; zl->origin = origin; - zl->shapecnt = malloc(sizeof(int)); + zl->shapecnt = (int *)malloc(sizeof(int)); zl->shapecnt[0] = nzones; - zl->shapetype = malloc(sizeof(int)); + zl->shapetype = (int *)malloc(sizeof(int)); zl->shapetype[0] = ntopodims == 2 ? DB_ZONETYPE_QUAD : DB_ZONETYPE_HEX; - zl->shapesize = malloc(sizeof(int)); + zl->shapesize = (int *)malloc(sizeof(int)); zl->shapesize[0] = (1 << ntopodims); zl->lnodelist = lnodelist; - zl->nodelist = malloc(snodelist); + zl->nodelist = (int *)malloc(snodelist); memcpy(zl->nodelist, nodelist, snodelist); for (i = 0; i < MAX_NODELIST_INFOS; i++) @@ -1504,8 +1550,6 @@ if (nnodes < 0) {hzip_node_close(stream); return early_retval;} hztype = hzip_node_type(stream); - if (hztype < 0) {hzip_node_close(stream); return early_retval;} - new_buf_size = nnodes * sizeof_hztype(hztype); var = malloc(new_buf_size); if (var == 0) {hzip_node_close(stream); return early_retval;} @@ -1556,7 +1600,7 @@ return early_retval; } - if (hzip_mesh_write(stream, *buf, nzones) < 0) + if (hzip_mesh_write(stream, (int *)(*buf), nzones) < 0) { hzip_mesh_close(stream); free(buffer); @@ -1691,7 +1735,6 @@ return retval; } - /*------------------------------------------------------------------------- * Function: db_hdf5_file * @@ -1717,7 +1760,6 @@ return dbfile->fid; } - /*------------------------------------------------------------------------- * Function: db_hdf5_cwg * @@ -1743,7 +1785,6 @@ return dbfile->cwg; } - /*------------------------------------------------------------------------- * Function: db_hdf5_get_cmemb * @@ -1788,7 +1829,6 @@ return type; } - /*------------------------------------------------------------------------- * Function: db_hdf5_put_cmemb * @@ -1920,7 +1960,6 @@ db_perror((char*)vname, silo_error_code, (char*)fname); } - /*------------------------------------------------------------------------- * Function: db_hdf5_init * @@ -2041,6 +2080,7 @@ STRUCT(DBcurve) { MEMBER_S(int, npts); MEMBER_S(int, guihide); + MEMBER_S(int, coord_sys); MEMBER_S(str256, xvarname); MEMBER_S(str256, yvarname); MEMBER_S(str256, label); @@ -2049,6 +2089,7 @@ MEMBER_S(str256, xunits); MEMBER_S(str256, yunits); MEMBER_S(str256, reference); + MEMBER_S(double, missing_value); } DEFINE; STRUCT(DBcsgmesh) { @@ -2075,6 +2116,7 @@ MEMBER_S(str256, mrgtree_name); MEMBER_S(int, tv_connectivity); MEMBER_S(int, disjoint_mode); + MEMBER_S(str256, alt_nodenum_vars); } DEFINE; STRUCT(DBcsgvar) { @@ -2096,6 +2138,7 @@ MEMBER_S(str256, region_pnames); MEMBER_S(int, conserved); MEMBER_S(int, extensive); + MEMBER_S(double, missing_value); } DEFINE; STRUCT(DBcsgzonelist) { @@ -2113,6 +2156,7 @@ MEMBER_S(str256, zonelist); MEMBER_S(str256, regnames); MEMBER_S(str256, zonenames); + MEMBER_S(str256, alt_zonenum_vars); } DEFINE; STRUCT(DBdefvars) { @@ -2148,6 +2192,10 @@ MEMBER_R(str256, label, 3); MEMBER_R(str256, units, 3); MEMBER_S(str256, mrgtree_name); + MEMBER_S(str256, ghost_node_labels); + MEMBER_S(str256, ghost_zone_labels); + MEMBER_S(str256, alt_nodenum_vars); + MEMBER_S(str256, alt_zonenum_vars); } DEFINE; STRUCT(DBquadvar) { @@ -2178,6 +2226,7 @@ MEMBER_S(int, conserved); MEMBER_S(int, extensive); MEMBER_S(int, centering); + MEMBER_S(double, missing_value); } DEFINE; STRUCT(DBucdmesh) { @@ -2207,6 +2256,8 @@ MEMBER_S(int, tv_connectivity); MEMBER_S(int, disjoint_mode); MEMBER_S(int, gnznodtype); + MEMBER_S(str256, ghost_node_labels); + MEMBER_S(str256, alt_nodenum_vars); } DEFINE; STRUCT(DBucdvar) { @@ -2233,6 +2284,7 @@ MEMBER_S(str256, region_pnames); MEMBER_S(int, conserved); MEMBER_S(int, extensive); + MEMBER_S(double, missing_value); } DEFINE; STRUCT(DBfacelist) { @@ -2264,6 +2316,8 @@ MEMBER_S(str256, shapetype); MEMBER_S(str256, gzoneno); MEMBER_S(int, gnznodtype); + MEMBER_S(str256, ghost_zone_labels); + MEMBER_S(str256, alt_zonenum_vars); } DEFINE; STRUCT(DBphzonelist) { @@ -2280,6 +2334,8 @@ MEMBER_S(str256, facecnt); MEMBER_S(str256, facelist); MEMBER_S(int, gnznodtype); + MEMBER_S(str256, ghost_zone_labels); + MEMBER_S(str256, alt_zonenum_vars); } DEFINE; STRUCT(DBmaterial) { @@ -2331,6 +2387,8 @@ MEMBER_S(str256, empty_list); MEMBER_S(int, empty_cnt); MEMBER_S(int, repr_block_idx); + MEMBER_S(str256, alt_nodenum_vars); + MEMBER_S(str256, alt_zonenum_vars); } DEFINE; STRUCT(DBmultimeshadj) { @@ -2373,6 +2431,7 @@ MEMBER_S(str256, empty_list); MEMBER_S(int, empty_cnt); MEMBER_S(int, repr_block_idx); + MEMBER_S(double, missing_value); } DEFINE; STRUCT(DBmultimat) { @@ -2461,11 +2520,14 @@ MEMBER_S(str256, gnodeno); MEMBER_S(str256, mrgtree_name); MEMBER_S(int, gnznodtype); + MEMBER_S(str256, ghost_node_labels); + MEMBER_S(str256, alt_nodenum_vars); } DEFINE; STRUCT(DBpointvar) { MEMBER_S(int, nvals); MEMBER_S(int, nels); + MEMBER_S(int, ndims); MEMBER_S(int, nspace); MEMBER_S(int, origin); MEMBER_S(int, min_index); @@ -2483,6 +2545,7 @@ MEMBER_S(str256, region_pnames); MEMBER_S(int, conserved); MEMBER_S(int, extensive); + MEMBER_S(double, missing_value); } DEFINE; STRUCT(DBcompoundarray) { @@ -2494,15 +2557,6 @@ MEMBER_S(str256, elemlengths); } DEFINE; - STRUCT(DBsil) { - MEMBER_S(str256, tails); - MEMBER_S(str256, heads); - MEMBER_S(int, nedges); - - MEMBER_S(str256, setnames); - MEMBER_S(int, nsets); - } DEFINE; - STRUCT(DBmrgtree) { MEMBER_S(int, src_mesh_type); MEMBER_S(int, type_info_bits); @@ -2546,7 +2600,6 @@ } - /*------------------------------------------------------------------------- * Function: db_hdf5_InitCallbacks * @@ -2643,7 +2696,6 @@ dbfile->pub.cd = db_hdf5_SetDir; dbfile->pub.g_dir = db_hdf5_GetDir; dbfile->pub.newtoc = db_hdf5_NewToc; - dbfile->pub.cdid = NULL; /*DBSetDirID() not supported */ dbfile->pub.mkdir = db_hdf5_MkDir; dbfile->pub.cpdir = db_hdf5_CpDir; @@ -2653,9 +2705,6 @@ dbfile->pub.g_varbl = db_hdf5_GetVarByteLength; dbfile->pub.g_vartype = db_hdf5_GetVarType; dbfile->pub.g_vardims = db_hdf5_GetVarDims; - dbfile->pub.r_var1 = NULL; /*DBReadVar1() not supported */ - dbfile->pub.g_attr = NULL; /*DBGetAtt() not implemented yet*/ - dbfile->pub.r_att = NULL; /*DBReadAtt() not implemented yet*/ /* Variable I/O operations */ dbfile->pub.g_var = db_hdf5_GetVar; @@ -2667,7 +2716,7 @@ /* Low-level object functions */ dbfile->pub.g_obj = db_hdf5_GetObject; dbfile->pub.inqvartype = db_hdf5_InqVarType; - dbfile->pub.i_meshtype = (int (*)(struct DBfile *, char *)) db_hdf5_InqVarType; /*yes, Vartype*/ + dbfile->pub.i_meshtype = (int (*)(struct DBfile *, char const *)) db_hdf5_InqVarType; /*yes, Vartype*/ dbfile->pub.i_meshname = db_hdf5_InqMeshName; dbfile->pub.g_comp = db_hdf5_GetComponent; dbfile->pub.g_comptyp = db_hdf5_GetComponentType; @@ -2758,7 +2807,6 @@ dbfile->pub.sort_obo = db_hdf5_SortObjectsByOffset; } - /*------------------------------------------------------------------------- * Function: build_fspace * @@ -2790,7 +2838,7 @@ *------------------------------------------------------------------------- */ PRIVATE hid_t -build_fspace(hid_t dset, int ndims, int *offset, int *length, int *stride, +build_fspace(hid_t dset, int ndims, int const *offset, int const *length, int const *stride, hsize_t *size/*out*/) { hid_t fspace = -1; @@ -2820,7 +2868,6 @@ return fspace; } - /*------------------------------------------------------------------------- * Function: silom2hdfm_type * @@ -2879,7 +2926,6 @@ return mtype; } - /*------------------------------------------------------------------------- * Function: silof2hdff_type * @@ -2937,7 +2983,6 @@ return ftype; } - /*------------------------------------------------------------------------- * Function: hdf2silo_type * @@ -2996,7 +3041,6 @@ return retval; } - /*------------------------------------------------------------------------- * Function: silo2silo_type * @@ -3031,7 +3075,6 @@ return DB_FLOAT; } - /*------------------------------------------------------------------------- * Function: hdf2hdf_type * @@ -3470,7 +3513,7 @@ db_hdf5_get_comp_var(hid_t fileid, char const *name, hsize_t *nelmts, size_t *elsize, hid_t *datatype, void **buf) { - hid_t typeid = -1, stypeid = -1, attr = -1, comptype = -1, memtype = -1; + hid_t type_id = -1, stypeid = -1, attr = -1, comptype = -1, memtype = -1; int membno = -1; int retval = 0; hsize_t numvals = 0; @@ -3479,17 +3522,17 @@ /* loop trying different typename, member name combinations */ char *tmpname = STRDUP(name); char *p = strrchr(tmpname, '_'); - char *typename, *memname; + char *type_name, *memname; while (p != 0 && *p != '\0') { char *tmpp = p; *p = '\0'; - typename = tmpname; + type_name = tmpname; memname = p+1; - stypeid = attr = typeid = -1; - if ((typeid=H5Topen(fileid, typename))>=0 && - (attr=H5Aopen_name(typeid, "silo"))>=0 && + stypeid = attr = type_id = -1; + if ((type_id=H5Topen(fileid, type_name))>=0 && + (attr=H5Aopen_name(type_id, "silo"))>=0 && (stypeid=H5Aget_type(attr))>=0 && (membno=H5Tget_member_index(stypeid, memname))>=0) retval = 1; @@ -3498,7 +3541,7 @@ if (attr != -1) H5Aclose(attr); if (stypeid != -1) H5Tclose(stypeid); - if (typeid != -1) H5Tclose(typeid); + if (type_id != -1) H5Tclose(type_id); p = strrchr(tmpname, '_'); *tmpp = '_'; @@ -3615,13 +3658,12 @@ if (*buf == 0) { *buf = malloc(n); - buf_was_allocated = 1; } else if (buf_was_allocated) { *buf = realloc(*buf, n); } - strncpy(*buf, tmp, n); + strncpy((char *)(*buf), tmp, n); valsize = n; } } @@ -3645,7 +3687,7 @@ if (attr != -1) H5Aclose(attr); if (stypeid != -1) H5Tclose(stypeid); - if (typeid != -1) H5Tclose(typeid); + if (type_id != -1) H5Tclose(type_id); FREE(tmpname); return retval; @@ -3824,14 +3866,13 @@ /* Append to table of contents */ if (names && nvals) { n = (*nvals)++; - *names = realloc(*names, *nvals*sizeof(char*)); + *names = (char **)realloc(*names, *nvals*sizeof(char*)); (*names)[n] = STRDUP(name); } return 0; } - /*------------------------------------------------------------------------- * Function: find_objno * @@ -3933,7 +3974,6 @@ H5E_END_TRY; } - /*------------------------------------------------------------------------- * Function: db_hdf5_compname * @@ -4003,7 +4043,6 @@ return 0; } - /*------------------------------------------------------------------------- * Function: db_hdf5_compwrz * @@ -4248,7 +4287,6 @@ return retval; } - /*------------------------------------------------------------------------- * Function: db_hdf5_comprd * @@ -4333,7 +4371,7 @@ float *newbuf; /* allocate a new buffer */ - if (NULL==(newbuf=malloc(nelmts*sizeof(float)))) { + if (NULL==(newbuf=(float*)malloc(nelmts*sizeof(float)))) { db_perror(name, E_NOMEM, me); UNWIND(); } @@ -4460,7 +4498,6 @@ return 0; } - /*------------------------------------------------------------------------- * Function: db_hdf5_hdrwr * @@ -4554,7 +4591,6 @@ } - /*------------------------------------------------------------------------- * Function: db_hdf5_ForceSingle * @@ -4603,7 +4639,7 @@ *------------------------------------------------------------------------- */ PRIVATE hid_t -db_hdf5_process_file_options(opts_set_id) +db_hdf5_process_file_options(int opts_set_id, int mode) { static char *me = "db_hdf5_process_file_options"; hid_t retval = H5Pcreate(H5P_FILE_ACCESS); @@ -4684,8 +4720,8 @@ /* default HDF5 split file driver. */ case DB_FILE_OPTS_H5_DEFAULT_SPLIT: { - hid_t meta_fapl = db_hdf5_process_file_options(DB_FILE_OPTS_H5_DEFAULT_CORE); - hid_t raw_fapl = db_hdf5_process_file_options(DB_FILE_OPTS_H5_DEFAULT_DEFAULT); + hid_t meta_fapl = db_hdf5_process_file_options(DB_FILE_OPTS_H5_DEFAULT_CORE, mode); + hid_t raw_fapl = db_hdf5_process_file_options(DB_FILE_OPTS_H5_DEFAULT_DEFAULT, mode); h5status |= H5Pset_fapl_split(retval, "", meta_fapl, "-raw", raw_fapl); H5Pclose(meta_fapl); H5Pclose(raw_fapl); @@ -4709,7 +4745,7 @@ /* default HDF5 family driver w/1Gig (2^30) members. */ case DB_FILE_OPTS_H5_DEFAULT_FAMILY: { - hid_t memb_fapl = db_hdf5_process_file_options(DB_FILE_OPTS_H5_DEFAULT_DEFAULT); + hid_t memb_fapl = db_hdf5_process_file_options(DB_FILE_OPTS_H5_DEFAULT_DEFAULT, mode); h5status |= H5Pset_fapl_family(retval, (1<<30), memb_fapl); H5Pclose(memb_fapl); break; @@ -4757,11 +4793,11 @@ } /* get the vfd specification */ - if (p = DBGetOption(opts, DBOPT_H5_VFD)) + if ((p = DBGetOption(opts, DBOPT_H5_VFD))) { vfd = *((int*)p); } - else if (p = DBGetOption(opts, DBOPT_H5_USER_DRIVER_ID)) + else if ((p = DBGetOption(opts, DBOPT_H5_USER_DRIVER_ID))) { int new_driver_id = *((int*)p); p = DBGetOption(opts, DBOPT_H5_USER_DRIVER_INFO); @@ -4799,13 +4835,13 @@ int log_stats = H5FD_SILO_DEFAULT_LOG_STATS; int use_direct = H5FD_SILO_DEFAULT_USE_DIRECT; - if (p = DBGetOption(opts, DBOPT_H5_SILO_BLOCK_SIZE)) + if ((p = DBGetOption(opts, DBOPT_H5_SILO_BLOCK_SIZE))) block_size = (hsize_t) (*((int*) p)); - if (p = DBGetOption(opts, DBOPT_H5_SILO_BLOCK_COUNT)) + if ((p = DBGetOption(opts, DBOPT_H5_SILO_BLOCK_COUNT))) block_count = *((int*) p); - if (p = DBGetOption(opts, DBOPT_H5_SILO_LOG_STATS)) + if ((p = DBGetOption(opts, DBOPT_H5_SILO_LOG_STATS))) log_stats = *((int*) p); - if (p = DBGetOption(opts, DBOPT_H5_SILO_USE_DIRECT)) + if ((p = DBGetOption(opts, DBOPT_H5_SILO_USE_DIRECT))) use_direct = *((int*) p); h5status |= H5Pset_fapl_silo(retval); @@ -4824,10 +4860,10 @@ int flags = H5FD_LOG_LOC_IO|H5FD_LOG_NUM_IO|H5FD_LOG_TIME_IO|H5FD_LOG_ALLOC; char *logname = "silo_hdf5_log.out"; - if (p = DBGetOption(opts, DBOPT_H5_LOG_NAME)) + if ((p = DBGetOption(opts, DBOPT_H5_LOG_NAME))) logname = (char*) p; - if (p = DBGetOption(opts, DBOPT_H5_LOG_BUF_SIZE)) + if ((p = DBGetOption(opts, DBOPT_H5_LOG_BUF_SIZE))) { bufsize = *((int*) p); flags = H5FD_LOG_ALL; @@ -4837,19 +4873,89 @@ break; } case DB_H5VFD_CORE: + case DB_H5VFD_FIC: { int inc = 1<<20; /* default of 1 Meg */ hbool_t bs = TRUE; /* default back store on */ /* get core allocation inc */ - if (p = DBGetOption(opts, DBOPT_H5_CORE_ALLOC_INC)) + if ((p = DBGetOption(opts, DBOPT_H5_CORE_ALLOC_INC))) inc = *((int*)p); /* get backing store flag */ - if (p = DBGetOption(opts, DBOPT_H5_CORE_NO_BACK_STORE)) + if ((p = DBGetOption(opts, DBOPT_H5_CORE_NO_BACK_STORE))) bs = FALSE; h5status |= H5Pset_fapl_core(retval, inc, bs); + + /* Set up the file image too */ + if (vfd == DB_H5VFD_FIC) + { +#if HDF5_VERSION_GE(1,8,9) + H5FD_file_image_callbacks_t callbacks = {&image_malloc, &image_memcpy, + &image_realloc, &image_free, + &udata_copy, &udata_free, + (void *)NULL}; + db_hdf5_H5LT_file_image_ud_t *udata; + + /* no possible default values can be specified for FIC */ + int size = -1; + void *buf = 0; + + /* cannot use backing store in this case */ + h5status |= H5Pset_fapl_core(retval, inc, FALSE); + + /* get file image size */ + if ((p = DBGetOption(opts, DBOPT_H5_FIC_SIZE))) + size = *((int*)p); + else + { + H5Pclose(retval); + return db_perror("To use DB_H5VFD_FIC, you must specific DBOPT_H5_FIC_SIZE", E_BADARGS, me); + } + + /* get file image buffer pointer */ + if ((p = DBGetOption(opts, DBOPT_H5_FIC_BUF))) + buf = (void*)p; + else + { + H5Pclose(retval); + return db_perror("To use DB_H5VFD_FIC, you must specific DBOPT_H5_FIC_BUF", E_BADARGS, me); + } + + /* Allocate buffer to communicate user data to callbacks */ + if (NULL == (udata = (db_hdf5_H5LT_file_image_ud_t *)malloc(sizeof(db_hdf5_H5LT_file_image_ud_t)))) + { + H5Pclose(retval); + return db_perror("Unable to allocate udata for FIC VFD", E_CALLFAIL, me); + } + + /* Initialize udata with info about app buffer containing file image and flags */ + udata->app_image_ptr = buf; + udata->app_image_size = size; + udata->fapl_image_ptr = NULL; + udata->fapl_image_size = 0; + udata->fapl_ref_count = 0; + udata->vfd_image_ptr = NULL; + udata->vfd_image_size = 0; + udata->vfd_ref_count = 0; + udata->flags = db_hdf5_H5LT_FILE_IMAGE_DONT_COPY; + udata->ref_count = 1; /* corresponding to the first FAPL */ + + /* copy address of udata into callbacks */ + callbacks.udata = (void *)udata; + + /* Set file image callbacks */ + h5status |= H5Pset_file_image_callbacks(retval, &callbacks); + + /* Assign file image in user buffer to FAPL */ + h5status |= H5Pset_file_image(retval, buf, (size_t)size); +#else + H5Pclose(retval); + return db_perror("DB_H5VFD_FIC >= HDF5 1.8.9", E_NOTENABLEDINBUILD, me); +#endif + } + break; } case DB_H5VFD_DIRECT: @@ -4860,29 +4966,29 @@ int align_min, align_val; /* get direct block size */ - if (p = DBGetOption(opts, DBOPT_H5_DIRECT_BLOCK_SIZE)) + if ((p = DBGetOption(opts, DBOPT_H5_DIRECT_BLOCK_SIZE))) direct_block_size = *((int*)p); /* get direct alignment */ - if (p = DBGetOption(opts, DBOPT_H5_DIRECT_MEM_ALIGN)) + if ((p = DBGetOption(opts, DBOPT_H5_DIRECT_MEM_ALIGN))) direct_alignment = *((int*)p); else direct_alignment = direct_block_size; /* get direct buffer size */ - if (p = DBGetOption(opts, DBOPT_H5_DIRECT_BUF_SIZE)) + if ((p = DBGetOption(opts, DBOPT_H5_DIRECT_BUF_SIZE))) direct_cbuf_size = *((int*)p); else direct_cbuf_size = direct_block_size * 256; /* get overall alignment threshold */ - if (p = DBGetOption(opts, DBOPT_H5_ALIGN_MIN)) + if ((p = DBGetOption(opts, DBOPT_H5_ALIGN_MIN))) align_min = *((int*)p); else align_min = direct_block_size / 2; /* get overall alignment value */ - if (p = DBGetOption(opts, DBOPT_H5_ALIGN_VAL)) + if ((p = DBGetOption(opts, DBOPT_H5_ALIGN_VAL))) align_val = *((int*)p); else align_val = direct_block_size; @@ -4904,25 +5010,25 @@ hid_t meta_fapl = -1, raw_fapl = -1; /* get meta opts_set_id */ - if (p = DBGetOption(opts, DBOPT_H5_META_FILE_OPTS)) + if ((p = DBGetOption(opts, DBOPT_H5_META_FILE_OPTS))) meta_opts_set_id = *((int*)p); /* get meta fapl from opts_set_id */ - meta_fapl = db_hdf5_process_file_options(meta_opts_set_id); + meta_fapl = db_hdf5_process_file_options(meta_opts_set_id, mode); /* get meta extension */ - if (p = DBGetOption(opts, DBOPT_H5_META_EXTENSION)) + if ((p = DBGetOption(opts, DBOPT_H5_META_EXTENSION))) mext = (char *) p; /* get raw opts_set_id */ - if (p = DBGetOption(opts, DBOPT_H5_RAW_FILE_OPTS)) + if ((p = DBGetOption(opts, DBOPT_H5_RAW_FILE_OPTS))) raw_opts_set_id = *((int*)p); /* get raw fapl from opts_set_id */ - raw_fapl = db_hdf5_process_file_options(raw_opts_set_id); + raw_fapl = db_hdf5_process_file_options(raw_opts_set_id, mode); /* get raw extension */ - if (p = DBGetOption(opts, DBOPT_H5_RAW_EXTENSION)) + if ((p = DBGetOption(opts, DBOPT_H5_RAW_EXTENSION))) rext = (char *) p; /* make sure the exentions are not identical */ @@ -4947,11 +5053,11 @@ hbool_t use_gpfs_hints = TRUE; /* get the communicator */ - if (p = DBGetOption(opts, DBOPT_H5_MPIO_COMM)) + if ((p = DBGetOption(opts, DBOPT_H5_MPIO_COMM))) mpi_comm = *((MPI_Comm *)p); /* get the info */ - if (p = DBGetOption(opts, DBOPT_H5_MPIO_INFO)) + if ((p = DBGetOption(opts, DBOPT_H5_MPIO_INFO))) mpi_info = *((MPI_Info *)p); else { @@ -4960,7 +5066,7 @@ } /* get use_gpfs_hints flag */ - if (p = DBGetOption(opts, DBOPT_H5_MPIP_NO_GPFS_HINTS)) + if ((p = DBGetOption(opts, DBOPT_H5_MPIP_NO_GPFS_HINTS))) use_gpfs_hints = FALSE; if (vfd == DB_H5VFD_MPIO) @@ -4985,66 +5091,66 @@ hid_t memb_fapl; /* get size of files in family */ - if (p = DBGetOption(opts, DBOPT_H5_FAM_SIZE)) + if ((p = DBGetOption(opts, DBOPT_H5_FAM_SIZE))) memb_size = *((int*)p); /* get underlying family fapl */ - if (p = DBGetOption(opts, DBOPT_H5_FAM_FILE_OPTS)) + if ((p = DBGetOption(opts, DBOPT_H5_FAM_FILE_OPTS))) memb_opts_set_id = *((int*)p); - memb_fapl = db_hdf5_process_file_options(memb_opts_set_id); + memb_fapl = db_hdf5_process_file_options(memb_opts_set_id, mode); h5status |= H5Pset_fapl_family(retval, memb_size, memb_fapl); H5Pclose(memb_fapl); } } /* handle overall alignment requests */ - if (p = DBGetOption(opts, DBOPT_H5_ALIGN_MIN)) + if ((p = DBGetOption(opts, DBOPT_H5_ALIGN_MIN))) { int align_min = *((int*)p); int align_val = align_min * 2; /* get overall alignment value */ - if (p = DBGetOption(opts, DBOPT_H5_ALIGN_VAL)) + if ((p = DBGetOption(opts, DBOPT_H5_ALIGN_VAL))) align_val = *((int*)p); h5status |= H5Pset_alignment(retval, align_min, align_val); } /* handle meta block size */ - if (p = DBGetOption(opts, DBOPT_H5_META_BLOCK_SIZE)) + if ((p = DBGetOption(opts, DBOPT_H5_META_BLOCK_SIZE))) { int size = *((int*)p); h5status |= H5Pset_meta_block_size(retval, size); } /* handle raw block size */ - if (p = DBGetOption(opts, DBOPT_H5_SMALL_RAW_SIZE)) + if ((p = DBGetOption(opts, DBOPT_H5_SMALL_RAW_SIZE))) { int size = *((int*)p); h5status |= H5Pset_small_data_block_size(retval, size); } /* handle sieve buffer size */ - if (p = DBGetOption(opts, DBOPT_H5_SIEVE_BUF_SIZE)) + if ((p = DBGetOption(opts, DBOPT_H5_SIEVE_BUF_SIZE))) { int size = *((int*)p); h5status |= H5Pset_sieve_buf_size(retval, size); } /* handle cache settings */ - if (p = DBGetOption(opts, DBOPT_H5_CACHE_NELMTS)) + if ((p = DBGetOption(opts, DBOPT_H5_CACHE_NELMTS))) { int nelmts = *((int*)p); int nbytes = nelmts * sizeof(double); double policy = 1.0; /* get size in bytes */ - if (p = DBGetOption(opts, DBOPT_H5_CACHE_NBYTES)) + if ((p = DBGetOption(opts, DBOPT_H5_CACHE_NBYTES))) nbytes = *((int*)p); /* get pre-emption policy */ - if (p = DBGetOption(opts, DBOPT_H5_CACHE_POLICY)) + if ((p = DBGetOption(opts, DBOPT_H5_CACHE_POLICY))) policy = *((double*)p); h5status |= H5Pset_cache(retval, 0, nelmts, nbytes, policy); @@ -5081,13 +5187,12 @@ *------------------------------------------------------------------------- */ PRIVATE hid_t -db_hdf5_file_accprops(int subtype) +db_hdf5_file_accprops(int subtype, int mode) { int opts_set_id = subtype & 0x0000003F; - return db_hdf5_process_file_options(opts_set_id); + return db_hdf5_process_file_options(opts_set_id, mode); } - /*------------------------------------------------------------------------- * Function: db_hdf5_finish_open * @@ -5160,7 +5265,6 @@ return (DBfile*) dbfile; } - /*------------------------------------------------------------------------- * Function: db_hdf5_finish_create * @@ -5197,7 +5301,7 @@ *------------------------------------------------------------------------- */ PRIVATE DBfile* -db_hdf5_finish_create(DBfile_hdf5 *dbfile, int target, char *finfo) +db_hdf5_finish_create(DBfile_hdf5 *dbfile, int target, char const *finfo) { static char *me = "db_hdf5_finish_create"; hid_t attr=-1; @@ -5268,7 +5372,6 @@ return (DBfile*) dbfile; } - /*------------------------------------------------------------------------- * Function: db_hdf5_initiate_close * @@ -5355,7 +5458,6 @@ return 0; } - /*------------------------------------------------------------------------- * Function: db_hdf5_Open * @@ -5388,7 +5490,7 @@ *------------------------------------------------------------------------- */ INTERNAL DBfile * -db_hdf5_Open(char *name, int mode, int opts_set_id) +db_hdf5_Open(char const *name, int mode, int opts_set_id) { DBfile_hdf5 *dbfile=NULL; hid_t fid=-1, faprops=-1; @@ -5411,7 +5513,7 @@ return NULL; } - faprops = db_hdf5_file_accprops(opts_set_id); + faprops = db_hdf5_file_accprops(opts_set_id, mode); /* Open existing hdf5 file */ if ((fid=H5Fopen(name, hmode, faprops))<0) { @@ -5419,10 +5521,11 @@ db_perror(name, E_DRVRCANTOPEN, me); return NULL; } + H5Pclose(faprops); /* Create silo file struct */ - if (NULL==(dbfile=calloc(1, sizeof(DBfile_hdf5)))) { + if (NULL==(dbfile=(DBfile_hdf5*)calloc(1, sizeof(DBfile_hdf5)))) { db_perror(name, E_NOMEM, me); return NULL; } @@ -5436,7 +5539,6 @@ return db_hdf5_finish_open(dbfile); } - /*------------------------------------------------------------------------- * Function: db_hdf5_Create * @@ -5468,7 +5570,7 @@ *------------------------------------------------------------------------- */ INTERNAL DBfile * -db_hdf5_Create(char *name, int mode, int target, int opts_set_id, char *finfo) +db_hdf5_Create(char const *name, int mode, int target, int opts_set_id, char const *finfo) { DBfile_hdf5 *dbfile=NULL; hid_t fid=-1, faprops=-1; @@ -5481,7 +5583,7 @@ else H5Eset_auto(NULL, NULL); - faprops = db_hdf5_file_accprops(opts_set_id); + faprops = db_hdf5_file_accprops(opts_set_id, mode); /* Create or open hdf5 file */ if (DB_CLOBBER==mode) { @@ -5510,7 +5612,7 @@ H5Pclose(faprops); /* Create silo file struct */ - if (NULL==(dbfile=calloc(1, sizeof(DBfile_hdf5)))) { + if (NULL==(dbfile=(DBfile_hdf5 *)calloc(1, sizeof(DBfile_hdf5)))) { db_perror(name, E_NOMEM, me); return NULL; } @@ -5524,7 +5626,6 @@ return db_hdf5_finish_create(dbfile, target, finfo); } - /*------------------------------------------------------------------------- * Function: db_hdf5_Close * @@ -5591,7 +5692,6 @@ return retval; } - /*------------------------------------------------------------------------- * Function: db_hdf5_Filters * @@ -5616,7 +5716,6 @@ return 0; } - /*------------------------------------------------------------------------- * Function: db_hdf5_MkDir * @@ -5636,7 +5735,7 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK int -db_hdf5_MkDir(DBfile *_dbfile, char *name) +db_hdf5_MkDir(DBfile *_dbfile, char const *name) { DBfile_hdf5 *dbfile = (DBfile_hdf5*)_dbfile; static char *me = "db_hdf5_MkDir"; @@ -5658,7 +5757,7 @@ if (!*parent) strcpy(parent, '/'==*name?"/":"."); /* What is the name of the `..' entry? */ - dotdot = malloc(strlen(name)+4); + dotdot = (char *)malloc(strlen(name)+4); strcpy(dotdot, name); strcat(dotdot, "/.."); @@ -5684,7 +5783,6 @@ return 0; } - /*------------------------------------------------------------------------- * Function: db_hdf5_SetDir * @@ -5706,7 +5804,7 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK int -db_hdf5_SetDir(DBfile *_dbfile, char *name) +db_hdf5_SetDir(DBfile *_dbfile, char const *name) { DBfile_hdf5 *dbfile = (DBfile_hdf5*)_dbfile; static char *me = "db_hdf5_SetDir"; @@ -5737,7 +5835,6 @@ return 0; } - /*------------------------------------------------------------------------- * Function: db_hdf5_GetDir * @@ -5953,9 +6050,9 @@ } asize = H5Tget_size(atype); msize = MAX(asize, 3*1024); - if (NULL==(file_value=malloc(asize)) || - NULL==(mem_value=malloc(msize)) || - NULL==(bkg=malloc(msize))) { + if (NULL==(file_value=(char *)malloc(asize)) || + NULL==(mem_value=(char *)malloc(msize)) || + NULL==(bkg=(char *)malloc(msize))) { db_perror(name, E_NOMEM, me); UNWIND(); } @@ -6102,7 +6199,6 @@ return 0; } - /*------------------------------------------------------------------------- * Function: db_hdf5_NewToc * @@ -6143,7 +6239,7 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK int -db_hdf5_GetComponentType(DBfile *_dbfile, char *objname, char *compname) +db_hdf5_GetComponentType(DBfile *_dbfile, char const *objname, char const *compname) { int datatype = DB_NOTYPE; db_hdf5_GetComponentStuff(_dbfile, objname, compname, &datatype); @@ -6164,7 +6260,7 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK void * -db_hdf5_GetComponent(DBfile *_dbfile, char *objname, char *compname) +db_hdf5_GetComponent(DBfile *_dbfile, char const *objname, char const *compname) { return db_hdf5_GetComponentStuff(_dbfile, objname, compname, 0); } @@ -6217,7 +6313,7 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK void * -db_hdf5_GetComponentStuff(DBfile *_dbfile, char *objname, char *compname, +db_hdf5_GetComponentStuff(DBfile *_dbfile, char const *objname, char const *compname, int *just_get_datatype) { DBfile_hdf5 *dbfile = (DBfile_hdf5*)_dbfile; @@ -6383,7 +6479,7 @@ H5Aclose(attr); H5Tclose(atype); H5Tclose(ftype); - H5Tclose(mtype); + if (mtype != -1) H5Tclose(mtype); } CLEANUP { /* Release objects */ if (retval) { @@ -6391,17 +6487,18 @@ retval = NULL; } if (mnofname) free(mnofname); - H5Tclose(o); - H5Aclose(attr); - H5Tclose(atype); - H5Tclose(ftype); - H5Tclose(mtype); + H5E_BEGIN_TRY { + H5Tclose(o); + H5Aclose(attr); + H5Tclose(atype); + H5Tclose(ftype); + H5Tclose(mtype); + } H5E_END_TRY; } END_PROTECT; return retval; } - /*------------------------------------------------------------------------- * Function: db_hdf5_GetComponentNames * @@ -6422,7 +6519,7 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK int -db_hdf5_GetComponentNames(DBfile *_dbfile, char *objname, char ***comp_names, +db_hdf5_GetComponentNames(DBfile *_dbfile, char const *objname, char ***comp_names, char ***file_names) { DBobject *obj; @@ -6447,7 +6544,6 @@ return n; } - /*------------------------------------------------------------------------- * Function: db_hdf5_WriteObject * @@ -6493,51 +6589,6 @@ } H5E_END_TRY; } - /* With the exception of a zonelist object, the HDF5 driver - * only handles user-defined objects. Otherwise, - * if the user were allowed to use DBMakeObject() to bybass the - * normal object creation functions, the user would need to know - * implementation details of the driver. Some of the silo - * confidence tests think they know implementation details when in - * fact they don't -- those tests will fail. */ - if (!strcmp(obj->type, "zonelist")) { - - /* make sure we recognize every component name in this object */ - int recognizeComponent = 1; - for (i=0; (incomponents) && recognizeComponent; i++) - { - recognizeComponent = 0; - if ((strcmp(obj->comp_names[i], "ndims") == 0) || - (strcmp(obj->comp_names[i], "nzones") == 0) || - (strcmp(obj->comp_names[i], "nshapes") == 0) || - (strcmp(obj->comp_names[i], "lnodelist") == 0) || - (strcmp(obj->comp_names[i], "origin") == 0) || - (strcmp(obj->comp_names[i], "lo_offset") == 0) || - (strcmp(obj->comp_names[i], "hi_offset") == 0) || - (strcmp(obj->comp_names[i], "nodelist") == 0) || - (strcmp(obj->comp_names[i], "shapecnt") == 0) || - (strcmp(obj->comp_names[i], "shapesize") == 0) || - (strcmp(obj->comp_names[i], "shapetype") == 0) || - (strcmp(obj->comp_names[i], "gzoneno") == 0)) - { - recognizeComponent = 1; - } - } - - if (!recognizeComponent) - { - char msg[256]; - sprintf(msg, "Unrecognized component, \"%s\", in zonelist object", - obj->comp_names[i]); - db_perror(msg, E_BADARGS, me); - UNWIND(); - } - - } else if (flags != OVER_WRITE && strcmp(obj->type, "unknown")) { - db_perror("DBobject is not type DB_USERDEF", E_BADARGS, me); - UNWIND(); - } - /* How much memory do we need? Align all components */ for (i=0, msize=fsize=0; incomponents; i++) { if (!strncmp(obj->pdb_names[i], "'", 4)) { @@ -6557,14 +6608,88 @@ db_perror(obj->pdb_names[i], E_INVALIDNAME, me); UNWIND(); } else { - /* variable added by DBAddVarComponent() */ - msize += strlen(obj->pdb_names[i]) + 1; - fsize += strlen(obj->pdb_names[i]) + 1; + /* Its possible this is a 'special' tiny array 'var' component. + * So, first, search for it in obj->h5_names and if found, handle + * it as such */ + int j, off=0, found=0; + for (j = 0; obj->h5_names[j]; j++) + { + off += obj->h5_sizes[j] * db_GetMachDataSize(obj->h5_types[j]); + if (!strcmp(obj->comp_names[i], obj->h5_names[j])) + { + found = 1; + break; + } + } + if (found) + { + switch (obj->h5_types[j]) + { + case DB_INT: + { + int dummy[3]; + hsize_t _size = 3; + hid_t _f_ary; + msize = ALIGN(msize, sizeof(dummy)) + sizeof(dummy); +#if H5_VERS_MAJOR>=1 && H5_VERS_MINOR>=4 + _f_ary = H5Tarray_create(dbfile->T_int, 1, &_size, NULL); + fsize += H5Tget_size(_f_ary); + H5Tclose(_f_ary); +#else + fsize += 3*H5Tget_size(dbfile->T_int); +#endif + break; + } + case DB_FLOAT: + { + float dummy[3]; + hsize_t _size = 3; + hid_t _f_ary; + msize = ALIGN(msize, sizeof(dummy)) + sizeof(dummy); +#if H5_VERS_MAJOR>=1 && H5_VERS_MINOR>=4 + _f_ary = H5Tarray_create(dbfile->T_float, 1, &_size, NULL); + fsize += H5Tget_size(_f_ary); + H5Tclose(_f_ary); +#else + fsize += 3*H5Tget_size(dbfile->T_float); +#endif + break; + } + case DB_DOUBLE: + { + double dummy[3]; + hsize_t _size = 3; + hid_t _f_ary; + msize = ALIGN(msize, sizeof(dummy)) + sizeof(dummy); +#if H5_VERS_MAJOR>=1 && H5_VERS_MINOR>=4 + _f_ary = H5Tarray_create(dbfile->T_double, 1, &_size, NULL); + fsize += H5Tget_size(_f_ary); + H5Tclose(_f_ary); +#else + fsize += 3*H5Tget_size(dbfile->T_double); +#endif + break; + } + default: + break; + } + } + else + { + /* variable added by DBAddVarComponent() */ + msize += strlen(obj->pdb_names[i]) + 1; + fsize += strlen(obj->pdb_names[i]) + 1; + } } } + if (!msize) { + db_perror("Object has zero size", E_BADARGS, me); + UNWIND(); + } + /* Create the object and initialize it */ - if (NULL==(object=calloc(1, msize))) { + if (NULL==(object=(unsigned char *)calloc(1, msize))) { db_perror(NULL, E_NOMEM, me); UNWIND(); } @@ -6627,20 +6752,116 @@ moffset += len; foffset += len; } else { - size_t len = strlen(obj->pdb_names[i])+1; - hid_t str_type = H5Tcopy(H5T_C_S1); - H5Tset_size(str_type, len); - if (H5Tinsert(mtype, obj->comp_names[i], moffset, - str_type)<0 || - H5Tinsert(ftype, obj->comp_names[i], foffset, + /* Its possible this is a 'special' tiny array 'var' component. + * So, first, search for it in obj->h5_names and if found, handle + * it as such */ + int j, found=0; + for (j = 0; obj->h5_names[j]; j++) + { + if (!strcmp(obj->comp_names[i], obj->h5_names[j])) + { + found = 1; + break; + } + } + if (found) + { + switch (obj->h5_types[j]) + { + case DB_INT: + { + int dummy[3]; + hid_t _m_ary, _f_ary; + hsize_t _size = 3; + moffset = ALIGN(moffset, sizeof(dummy)); +#if H5_VERS_MAJOR>=1 && H5_VERS_MINOR>=4 + _m_ary = H5Tarray_create(H5T_NATIVE_INT, 1, &_size, NULL); + _f_ary = H5Tarray_create(dbfile->T_int, 1, &_size, NULL); + if (H5Tinsert(mtype, obj->comp_names[i], moffset, _m_ary)<0 || + H5Tinsert(ftype, obj->comp_names[i], foffset, _f_ary)<0) { + db_perror("H5Tinsert", E_CALLFAIL, me); + UNWIND(); + } + foffset += H5Tget_size(_f_ary); + H5Tclose(_f_ary); + H5Tclose(_m_ary); +#else + db_perror("Cannot customize standard object", E_CALLFAIL, me); + UNWIND(); +#endif + memcpy(object+moffset, &obj->h5_vals[obj->h5_offs[j]], sizeof(dummy)); + moffset += sizeof(dummy); + break; + } + case DB_FLOAT: + { + float dummy[3]; + hid_t _m_ary, _f_ary; + hsize_t _size = 3; + moffset = ALIGN(moffset, sizeof(dummy)); +#if H5_VERS_MAJOR>=1 && H5_VERS_MINOR>=4 + _m_ary = H5Tarray_create(H5T_NATIVE_FLOAT, 1, &_size, NULL); + _f_ary = H5Tarray_create(dbfile->T_float, 1, &_size, NULL); + if (H5Tinsert(mtype, obj->comp_names[i], moffset, _m_ary)<0 || + H5Tinsert(ftype, obj->comp_names[i], foffset, _f_ary)<0) { + db_perror("H5Tinsert", E_CALLFAIL, me); + UNWIND(); + } + foffset += H5Tget_size(_f_ary); + H5Tclose(_f_ary); + H5Tclose(_m_ary); +#else + db_perror("Cannot customize standard object", E_CALLFAIL, me); + UNWIND(); +#endif + memcpy(object+moffset, &obj->h5_vals[obj->h5_offs[j]], sizeof(dummy)); + moffset += sizeof(dummy); + break; + } + case DB_DOUBLE: + { + double dummy[3]; + hid_t _m_ary, _f_ary; + hsize_t _size = 3; + moffset = ALIGN(moffset, sizeof(dummy)); +#if H5_VERS_MAJOR>=1 && H5_VERS_MINOR>=4 + _m_ary = H5Tarray_create(H5T_NATIVE_DOUBLE, 1, &_size, NULL); + _f_ary = H5Tarray_create(dbfile->T_double, 1, &_size, NULL); + if (H5Tinsert(mtype, obj->comp_names[i], moffset, _m_ary)<0 || + H5Tinsert(ftype, obj->comp_names[i], foffset, _f_ary)<0) { + db_perror("H5Tinsert", E_CALLFAIL, me); + UNWIND(); + } + foffset += H5Tget_size(_f_ary); + H5Tclose(_f_ary); + H5Tclose(_m_ary); +#else + db_perror("Cannot customize standard object", E_CALLFAIL, me); + UNWIND(); +#endif + memcpy(object+moffset, &obj->h5_vals[obj->h5_offs[j]], sizeof(dummy)); + moffset += sizeof(dummy); + break; + } + } + } + else + { + size_t len = strlen(obj->pdb_names[i])+1; + hid_t str_type = H5Tcopy(H5T_C_S1); + H5Tset_size(str_type, len); + if (H5Tinsert(mtype, obj->comp_names[i], moffset, + str_type)<0 || + H5Tinsert(ftype, obj->comp_names[i], foffset, str_type)<0) { - db_perror("H5Tinsert", E_CALLFAIL, me); - UNWIND(); + db_perror("H5Tinsert", E_CALLFAIL, me); + UNWIND(); + } + H5Tclose(str_type); + strcpy((char*)(object+moffset), obj->pdb_names[i]); + moffset += len; + foffset += len; } - H5Tclose(str_type); - strcpy((char*)(object+moffset), obj->pdb_names[i]); - moffset += len; - foffset += len; } } @@ -6652,14 +6873,15 @@ H5Tclose(ftype); if (object) free(object); } CLEANUP { - H5Tclose(mtype); - H5Tclose(ftype); + H5E_BEGIN_TRY { + H5Tclose(mtype); + H5Tclose(ftype); + } H5E_END_TRY; if (object) free(object); } END_PROTECT; return 0; } - /*------------------------------------------------------------------------- * Function: db_hdf5_WriteComponent * @@ -6683,18 +6905,106 @@ int rank, long const *_size) { DBfile_hdf5 *dbfile = (DBfile_hdf5*)_dbfile; - int size[32], i; + int size[32], i, totsize; char varname[256]; int datatype = db_GetDatatypeID(dataname); + + /* + * We have to be careful here to deal with possible customization of + * 'standard' objects. The HDF5 driver handles small arrays of things + * like dimensions, extents, alignment, etc. as 'array' members of + * the attribute 'header' struct. So, we cannot arbitrarily decide to + * write every component we see here to the file. Sometimes, we'll have + * to avert that operation and instead store the data to the DBobject + * struct, temporarily, for eventual write via DBWriteObject + */ - for (i=0; itype); + + switch (objtype) + { + case DB_CSGMESH: + { + add_it |= !strcmp(compname, "min_extents"); + add_it |= !strcmp(compname, "max_extents"); + break; + } + case DB_QUADMESH: + case DB_QUADCURV: + case DB_QUADRECT: + { + add_it |= !strcmp(compname, "min_extents"); + add_it |= !strcmp(compname, "max_extents"); + add_it |= !strcmp(compname, "dims"); + add_it |= !strcmp(compname, "min_index"); + add_it |= !strcmp(compname, "max_index"); + add_it |= !strcmp(compname, "base_index"); + break; + } + case DB_QUADVAR: + { + add_it |= !strcmp(compname, "zones"); + add_it |= !strcmp(compname, "align"); + add_it |= !strcmp(compname, "dims"); + add_it |= !strcmp(compname, "min_index"); + add_it |= !strcmp(compname, "max_index"); + break; + } + case DB_UCDMESH: + { + add_it |= !strcmp(compname, "min_extents"); + add_it |= !strcmp(compname, "max_extents"); + break; + } + case DB_MATERIAL: + case DB_MATSPECIES: + { + add_it |= !strcmp(compname, "dims"); + break; + } + case DB_POINTMESH: + { + add_it |= !strcmp(compname, "min_extents"); + add_it |= !strcmp(compname, "max_extents"); + break; + } + default: break; + } + + if (add_it) + { + int i; + for (i = 0; obj->h5_names[i] && i < DB_MAX_H5_OBJ_VALS; i++); /* find first open slot */ + if (i >= DB_MAX_H5_OBJ_VALS) + return db_perror(compname, E_OBJBUFFULL, "db_hdf5_WriteComponent"); + obj->h5_names[i] = strdup(compname); + obj->h5_types[i] = datatype; + obj->h5_sizes[i] = totsize; + obj->h5_offs[i] = i==0?0:obj->h5_offs[i-1]+totsize*db_GetMachDataSize(datatype); + if (obj->h5_offs[i] + totsize * db_GetMachDataSize(datatype) > sizeof(obj->h5_vals)) + return db_perror(compname, E_OBJBUFFULL, "db_hdf5_WriteComponent"); + memcpy(&obj->h5_vals[obj->h5_offs[i]], data, totsize * db_GetMachDataSize(datatype)); + DBAddVarComponent(obj, compname, compname); + return 0; + } + } + + varname[0] = '\0'; db_hdf5_compwr(dbfile, datatype, rank, size, data, varname, - friendly_name(obj->name, varname, 0)); + friendly_name(obj->name, compname, 0)); DBAddVarComponent(obj, compname, varname); return 0; } - /*------------------------------------------------------------------------- * Function: db_hdf5_InqVarExists * @@ -6716,7 +7026,7 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK int -db_hdf5_InqVarExists (DBfile *_dbfile, char *varname) +db_hdf5_InqVarExists (DBfile *_dbfile, char const *varname) { DBfile_hdf5 *dbfile = (DBfile_hdf5*)_dbfile; herr_t status; @@ -6732,7 +7042,6 @@ return TRUE; } - /*------------------------------------------------------------------------- * Function: db_hdf5_GetVarLength * @@ -6750,7 +7059,7 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK int -db_hdf5_GetVarLength(DBfile *_dbfile, char *name) +db_hdf5_GetVarLength(DBfile *_dbfile, char const *name) { DBfile_hdf5 *dbfile = (DBfile_hdf5*)_dbfile; static char *me = "db_hdf5_GetVarLength"; @@ -6785,7 +7094,6 @@ return nelmts; } - /*------------------------------------------------------------------------- * Function: db_hdf5_GetVarByteLength * @@ -6804,7 +7112,7 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK int -db_hdf5_GetVarByteLength(DBfile *_dbfile, char *name) +db_hdf5_GetVarByteLength(DBfile *_dbfile, char const *name) { DBfile_hdf5 *dbfile = (DBfile_hdf5*)_dbfile; static char *me = "db_hdf5_GetVarByteLength"; @@ -6859,7 +7167,6 @@ return nbytes_small; } - /*------------------------------------------------------------------------- * Function: db_hdf5_GetVarType * @@ -6884,7 +7191,7 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK int -db_hdf5_GetVarType(DBfile *_dbfile, char *name) +db_hdf5_GetVarType(DBfile *_dbfile, char const *name) { DBfile_hdf5 *dbfile = (DBfile_hdf5*)_dbfile; static char *me = "db_hdf5_GetVarType"; @@ -6923,7 +7230,6 @@ return silo_type; } - /*------------------------------------------------------------------------- * Function: db_hdf5_GetVarDims * @@ -6942,7 +7248,7 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK int -db_hdf5_GetVarDims(DBfile *_dbfile, char *name, int maxdims, int *dims/*out*/) +db_hdf5_GetVarDims(DBfile *_dbfile, char const *name, int maxdims, int *dims/*out*/) { DBfile_hdf5 *dbfile = (DBfile_hdf5*)_dbfile; static char *me = "db_hdf5_GetVarDims"; @@ -6977,7 +7283,6 @@ return ndims; } - /*------------------------------------------------------------------------- * Function: db_hdf5_GetVar * @@ -6999,7 +7304,7 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK void * -db_hdf5_GetVar(DBfile *_dbfile, char *name) +db_hdf5_GetVar(DBfile *_dbfile, char const *name) { DBfile_hdf5 *dbfile = (DBfile_hdf5*)_dbfile; static char *me = "db_hdf5_GetVar"; @@ -7065,7 +7370,6 @@ return result; } - /*------------------------------------------------------------------------- * Function: db_hdf5_ReadVar * @@ -7086,7 +7390,7 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK int -db_hdf5_ReadVar(DBfile *_dbfile, char *vname, void *result) +db_hdf5_ReadVar(DBfile *_dbfile, char const *vname, void *result) { DBfile_hdf5 *dbfile = (DBfile_hdf5*)_dbfile; static char *me = "db_hdf5_ReadVar"; @@ -7140,7 +7444,6 @@ return 0; } - /*------------------------------------------------------------------------- * Function: db_hdf5_ReadVarSlice * @@ -7160,8 +7463,8 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK int -db_hdf5_ReadVarSlice(DBfile *_dbfile, char *vname, int *offset, int *length, - int *stride, int ndims, void *result) +db_hdf5_ReadVarSlice(DBfile *_dbfile, char const *vname, int const *offset, int const *length, + int const *stride, int ndims, void *result) { DBfile_hdf5 *dbfile = (DBfile_hdf5*)_dbfile; static char *me = "db_hdf5_ReadVarSlice"; @@ -7226,7 +7529,6 @@ return 0; } - /*------------------------------------------------------------------------- * Function: db_hdf5_Write * @@ -7246,16 +7548,16 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK int -db_hdf5_Write(DBfile *_dbfile, char *vname, void *var, - int *dims, int ndims, int datatype) +db_hdf5_Write(DBfile *_dbfile, char const *vname, void const *var, + int const *dims, int ndims, int datatype) { const int nofilters = 0; return db_hdf5_WriteCKZ(_dbfile, vname, var, dims, ndims, datatype, nofilters); } -INTERNAL int -db_hdf5_WriteCKZ(DBfile *_dbfile, char *vname, void *var, - int *dims, int ndims, int datatype, int nofilters) +PRIVATE int +db_hdf5_WriteCKZ(DBfile *_dbfile, char const *vname, void const *var, + int const *dims, int ndims, int datatype, int nofilters) { DBfile_hdf5 *dbfile = (DBfile_hdf5*)_dbfile; static char *me = "db_hdf5_Write"; @@ -7288,7 +7590,7 @@ } H5Sget_simple_extent_dims(space, ds_size, NULL); for (i=0; inpts = m.npts; cu->guihide = m.guihide; + cu->coord_sys = m.coord_sys; cu->datatype = DB_FLOAT; if (strlen(m.xvarname)) { if ((cu->datatype = db_hdf5_GetVarType(_dbfile, @@ -7829,13 +8141,16 @@ } if (force_single_g) cu->datatype = DB_FLOAT; cu->title = OPTDUP(m.label); - cu->xvarname = OPTDUP(m.xvarname); - cu->yvarname = OPTDUP(m.yvarname); + if (strncmp(m.xvarname, "/.silo/#", 8)) + cu->xvarname = OPTDUP(m.xvarname); + if (strncmp(m.yvarname, "/.silo/#", 8)) + cu->yvarname = OPTDUP(m.yvarname); cu->xlabel = OPTDUP(m.xlabel); cu->ylabel = OPTDUP(m.ylabel); cu->xunits = OPTDUP(m.xunits); cu->yunits = OPTDUP(m.yunits); cu->reference = OPTDUP(m.reference); + db_SetMissingValueForGet(cu->missing_value, m.missing_value); /* Read X and Y data */ if (SILO_Globals.dataReadMask & DBCurveArrays) @@ -7892,7 +8207,7 @@ int nbounds, int const *typeflags, int const *bndids, void const *coeffs, int lcoeffs, int datatype, double const *extents, char const *zonel_name, - DBoptlist *optlist) + DBoptlist const *optlist) { DBfile_hdf5 *dbfile = (DBfile_hdf5*)_dbfile; static char *me = "db_hdf5_PutCsgmesh"; @@ -7924,13 +8239,13 @@ m.max_extents[2] = extents[5]; } - db_hdf5_compwr(dbfile,DB_INT,1,&nbounds,(void*)typeflags,m.typeflags/*out*/, - friendly_name(name, "_typeflags", 0)); - if (bndids) - db_hdf5_compwr(dbfile,DB_INT,1,&nbounds,(void*)bndids,m.bndids/*out*/, - friendly_name(name, "_bndids", 0)); - db_hdf5_compwr(dbfile,datatype,1,&lcoeffs,(void*)coeffs,m.coeffs/*out*/, - friendly_name(name, "_coeffs", 0)); + if (nbounds) + { + db_hdf5_compwr(dbfile,DB_INT,1,&nbounds,(void*)typeflags,m.typeflags/*out*/, friendly_name(name, "_typeflags", 0)); + if (bndids) + db_hdf5_compwr(dbfile,DB_INT,1,&nbounds,(void*)bndids,m.bndids/*out*/, friendly_name(name, "_bndids", 0)); + db_hdf5_compwr(dbfile,datatype,1,&lcoeffs,(void*)coeffs,m.coeffs/*out*/, friendly_name(name, "_coeffs", 0)); + } /* Build csgmesh header in memory */ m.ndims = ndims; @@ -7953,6 +8268,14 @@ strcpy(m.zonel_name, zonel_name); strcpy(m.mrgtree_name, OPT(_csgm._mrgtree_name)); + if (_csgm._alt_nodenum_vars != NULL) { + char *s; int len; + DBStringArrayToStringList((char const * const *)_csgm._alt_nodenum_vars, -1, &s, &len); + db_hdf5_compwr(dbfile, DB_CHAR, 1, &len, s, m.alt_nodenum_vars/*out*/, + friendly_name(name, "_alt_nodenum_vars", 0)); + FREE(s); + } + /* Build csgmesh header in file */ STRUCT(DBcsgmesh) { if (m.group_no) MEMBER_S(int, group_no); @@ -7975,6 +8298,7 @@ MEMBER_S(str(m.mrgtree_name), mrgtree_name); if (m.tv_connectivity) MEMBER_S(int, tv_connectivity); if (m.disjoint_mode) MEMBER_S(int, disjoint_mode); + MEMBER_S(str(m.alt_nodenum_vars), alt_nodenum_vars); } OUTPUT(dbfile, DB_CSGMESH, name, &m); } CLEANUP { @@ -8070,26 +8394,34 @@ /* Read the raw data */ if ((SILO_Globals.dataReadMask & DBCSGMBoundaryInfo) && (m.nbounds > 0)) { - csgm->typeflags = db_hdf5_comprd(dbfile, m.typeflags, 1); - csgm->bndids = db_hdf5_comprd(dbfile, m.bndids, 1); + csgm->typeflags = (int *)db_hdf5_comprd(dbfile, m.typeflags, 1); + csgm->bndids = (int *)db_hdf5_comprd(dbfile, m.bndids, 1); } if ((SILO_Globals.dataReadMask & DBCSGMBoundaryNames) && (m.nbounds > 0)) { - char *tmpbndnames = db_hdf5_comprd(dbfile, m.bndnames, 1); + char *tmpbndnames = (char *)db_hdf5_comprd(dbfile, m.bndnames, 1); if (tmpbndnames) - csgm->bndnames = DBStringListToStringArray(tmpbndnames, &m.nbounds, - !handleSlashSwap, !skipFirstSemicolon); + csgm->bndnames = DBStringListToStringArray(tmpbndnames, &m.nbounds, !skipFirstSemicolon); FREE(tmpbndnames); } if ((SILO_Globals.dataReadMask & DBCSGMBoundaryInfo) && (m.lcoeffs > 0)) csgm->coeffs = db_hdf5_comprd(dbfile, m.coeffs, 0); - if ((m.zonel_name[0] && (SILO_Globals.dataReadMask & DBCSGMZonelist))) + if ((m.nbounds>0 && m.zonel_name[0] && (SILO_Globals.dataReadMask & DBCSGMZonelist))) csgm->zones = db_hdf5_GetCSGZonelist(_dbfile, db_hdf5_resolvename(_dbfile, name, m.zonel_name)); + /* alt nodenum vars */ + { + int nnames = -1; + char *tmpannums = (char *)db_hdf5_comprd(dbfile, m.alt_nodenum_vars, 1); + if (tmpannums) + csgm->alt_nodenum_vars = DBStringListToStringArray(tmpannums, &nnames, !skipFirstSemicolon); + FREE(tmpannums); + } + H5Tclose(o); } CLEANUP { H5E_BEGIN_TRY { @@ -8125,8 +8457,8 @@ /*ARGSUSED*/ SILO_CALLBACK int db_hdf5_PutCsgvar(DBfile *_dbfile, char const *vname, char const *meshname, - int nvars, char *varnames[], void *vars[], - int nvals, int datatype, int centering, DBoptlist *optlist) + int nvars, char const * const *varnames, void const * const *vars, + int nvals, int datatype, int centering, DBoptlist const *optlist) { DBfile_hdf5 *dbfile = (DBfile_hdf5*)_dbfile; @@ -8147,7 +8479,7 @@ db_perror("too many variables", E_BADARGS, me); UNWIND(); } - for (i=0; iguihide = m.guihide; csgv->conserved = m.conserved; csgv->extensive = m.extensive; + db_SetMissingValueForGet(csgv->missing_value, m.missing_value); /* Read the raw data */ if (m.nvals>MAX_VARS) { @@ -8295,15 +8630,14 @@ if (SILO_Globals.dataReadMask & DBCSGVData && m.nvals) { - csgv->vals = calloc(m.nvals, sizeof(void*)); + csgv->vals = (void **)calloc(m.nvals, sizeof(void*)); for (i=0; ivals[i] = db_hdf5_comprd(dbfile, m.vals[i], 0); } } - s = db_hdf5_comprd(dbfile, m.region_pnames, 1); - if (s) csgv->region_pnames = DBStringListToStringArray(s, 0, - !handleSlashSwap, !skipFirstSemicolon); + s = (char *)db_hdf5_comprd(dbfile, m.region_pnames, 1); + if (s) csgv->region_pnames = DBStringListToStringArray(s, 0, !skipFirstSemicolon); FREE(s); H5Tclose(o); @@ -8342,7 +8676,7 @@ int const *typeflags, int const *leftids, int const *rightids, void const *xforms, int lxforms, int datatype, - int nzones, int const *zonelist, DBoptlist *optlist) + int nzones, int const *zonelist, DBoptlist const *optlist) { DBfile_hdf5 *dbfile = (DBfile_hdf5*)_dbfile; @@ -8374,7 +8708,7 @@ if (_csgzl._regnames) { int len; char *tmp; - DBStringArrayToStringList(_csgzl._regnames, nregs, &tmp, &len); + DBStringArrayToStringList((char const * const *)_csgzl._regnames, nregs, &tmp, &len); db_hdf5_compwr(dbfile, DB_CHAR, 1, &len, tmp, m.regnames/*out*/, friendly_name(name, "_regnames",0)); FREE(tmp); @@ -8382,12 +8716,20 @@ if (_csgzl._zonenames) { int len; char *tmp; - DBStringArrayToStringList(_csgzl._zonenames, nzones, &tmp, &len); + DBStringArrayToStringList((char const * const *)_csgzl._zonenames, nzones, &tmp, &len); db_hdf5_compwr(dbfile, DB_CHAR, 1, &len, tmp, m.zonenames/*out*/, friendly_name(name, "_zonenames",0)); FREE(tmp); } + if (_csgzl._alt_zonenum_vars) { + int len, nvars=-1; char *tmp; + DBStringArrayToStringList((char const * const *)_csgzl._alt_zonenum_vars, nvars, &tmp, &len); + db_hdf5_compwr(dbfile, DB_CHAR, 1, &len, tmp, + m.alt_zonenum_vars/*out*/, friendly_name(name, "_alt_zonenum_vars",0)); + FREE(tmp); + } + /* Build header in memory */ m.nregs = nregs; m.lxform = lxforms; @@ -8407,6 +8749,7 @@ MEMBER_S(str(m.xform), xform); MEMBER_S(str(m.regnames), regnames); MEMBER_S(str(m.zonenames), zonenames); + MEMBER_S(str(m.alt_zonenum_vars), alt_zonenum_vars); } OUTPUT(dbfile, DB_CSGZONELIST, name, &m); } CLEANUP { @@ -8487,28 +8830,35 @@ /* Read the raw data */ if (SILO_Globals.dataReadMask & DBZonelistInfo) { - zl->typeflags = db_hdf5_comprd(dbfile, m.typeflags, 1); - zl->leftids = db_hdf5_comprd(dbfile, m.leftids, 1); - zl->rightids = db_hdf5_comprd(dbfile, m.rightids, 1); + zl->typeflags = (int *)db_hdf5_comprd(dbfile, m.typeflags, 1); + zl->leftids = (int *)db_hdf5_comprd(dbfile, m.leftids, 1); + zl->rightids = (int *)db_hdf5_comprd(dbfile, m.rightids, 1); zl->xform = db_hdf5_comprd(dbfile, m.xform, 0); - zl->zonelist = db_hdf5_comprd(dbfile, m.zonelist, 1); + zl->zonelist = (int *)db_hdf5_comprd(dbfile, m.zonelist, 1); } if (SILO_Globals.dataReadMask & DBCSGZonelistRegNames) { - char *tmpnames = db_hdf5_comprd(dbfile, m.regnames, 1); + char *tmpnames = (char *)db_hdf5_comprd(dbfile, m.regnames, 1); if (tmpnames) - zl->regnames = DBStringListToStringArray(tmpnames, &m.nregs, - !handleSlashSwap, !skipFirstSemicolon); + zl->regnames = DBStringListToStringArray(tmpnames, &m.nregs, !skipFirstSemicolon); FREE(tmpnames); } if (SILO_Globals.dataReadMask & DBCSGZonelistZoneNames) { - char *tmpnames = db_hdf5_comprd(dbfile, m.zonenames, 1); + char *tmpnames = (char *)db_hdf5_comprd(dbfile, m.zonenames, 1); + if (tmpnames) + zl->zonenames = DBStringListToStringArray(tmpnames, &m.nzones, !skipFirstSemicolon); + FREE(tmpnames); + } + + /* alternate zone number variables */ + { + int nvars = -1; + char *tmpnames = (char *)db_hdf5_comprd(dbfile, m.alt_zonenum_vars, 1); if (tmpnames) - zl->zonenames = DBStringListToStringArray(tmpnames, &m.nzones, - !handleSlashSwap, !skipFirstSemicolon); + zl->alt_zonenum_vars = DBStringListToStringArray(tmpnames, &nvars, !skipFirstSemicolon); FREE(tmpnames); } @@ -8543,9 +8893,15 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK int -db_hdf5_PutDefvars(DBfile *_dbfile, char const *name, int ndefs, - char *names[], int const *types, - char *defns[], DBoptlist *opts[]) +db_hdf5_PutDefvars( + DBfile *_dbfile, + char const *name, + int ndefs, + char const * const *names, + int const *types, + char const * const *defns, + DBoptlist const * const *opts +) { DBfile_hdf5 *dbfile = (DBfile_hdf5*)_dbfile; static char *me = "db_hdf5_PutDefvars"; @@ -8578,7 +8934,7 @@ memset(&m, 0, sizeof m); PROTECT { - DBStringArrayToStringList(names, ndefs, &s, &len); + DBStringArrayToStringList((char const * const *)names, ndefs, &s, &len); db_hdf5_compwr(dbfile, DB_CHAR, 1, &len, s, m.names/*out*/, friendly_name(name, "_names",0)); FREE(s); @@ -8586,7 +8942,7 @@ db_hdf5_compwr(dbfile, DB_INT, 1, &ndefs, (void*)types, m.types/*out*/, friendly_name(name, "_types",0)); - DBStringArrayToStringList(defns, ndefs, &s, &len); + DBStringArrayToStringList((char const * const *)defns, ndefs, &s, &len); db_hdf5_compwr(dbfile, DB_CHAR, 1, &len, s, m.defns/*out*/, friendly_name(name, "_defns",0)); FREE(s); @@ -8616,7 +8972,6 @@ return 0; } - /*------------------------------------------------------------------------- * Function: db_hdf5_GetDefvars * @@ -8681,19 +9036,17 @@ if (NULL==(defv=DBAllocDefvars(0))) return NULL; defv->ndefs = m.ndefs; - s = db_hdf5_comprd(dbfile, m.names, 1); - if (s) defv->names = DBStringListToStringArray(s, &(defv->ndefs), - !handleSlashSwap, !skipFirstSemicolon); + s = (char *)db_hdf5_comprd(dbfile, m.names, 1); + if (s) defv->names = DBStringListToStringArray(s, &(defv->ndefs), !skipFirstSemicolon); FREE(s); - defv->types = db_hdf5_comprd(dbfile, m.types, 1); + defv->types = (int *)db_hdf5_comprd(dbfile, m.types, 1); - s = db_hdf5_comprd(dbfile, m.defns, 1); - if (s) defv->defns = DBStringListToStringArray(s, &(defv->ndefs), - !handleSlashSwap, !skipFirstSemicolon); + s = (char *)db_hdf5_comprd(dbfile, m.defns, 1); + if (s) defv->defns = DBStringListToStringArray(s, &(defv->ndefs), !skipFirstSemicolon); FREE(s); - defv->guihides = db_hdf5_comprd(dbfile, m.guihides, 1); + defv->guihides = (int *)db_hdf5_comprd(dbfile, m.guihides, 1); H5Tclose(o); @@ -8733,7 +9086,6 @@ return 0; } - /*------------------------------------------------------------------------- * Function: db_hdf5_PutQuadmesh * @@ -8772,20 +9124,29 @@ */ /*ARGSUSED*/ SILO_CALLBACK int -db_hdf5_PutQuadmesh(DBfile *_dbfile, char *name, char *coordnames[], - DB_DTPTR2 _coords, int dims[], int ndims, int datatype, - int coordtype, DBoptlist *optlist) +db_hdf5_PutQuadmesh(DBfile *_dbfile, char const *name, char const * const *coordnames, + DBVCP2_t _coords, int const *dims, int ndims, int datatype, + int coordtype, DBoptlist const *optlist) { DBfile_hdf5 *dbfile = (DBfile_hdf5*)_dbfile; static char *me = "db_hdf5_PutQuadmesh"; - int i; + int i, is_empty = 1; DBquadmesh_mt m; int compressionFlags; - DB_DTPTR **coords = (DB_DTPTR**) _coords; + void const * const *coords = (void const * const *) _coords; FREE(_qm._meshname); memset(&_qm, 0, sizeof _qm); memset(&m, 0, sizeof m); + + for (i = 0; i < ndims; i++) + { + if (dims[i] > 0) + { + is_empty = 0; + break; + } + } PROTECT { /* Check datatype */ @@ -8795,7 +9156,7 @@ } /* Set global options */ - _qm._coordsys = DB_OTHER; + _qm._coord_sys = DB_OTHER; _qm._facetype = DB_RECTILINEAR; _qm._ndims = ndims; _qm._nspace = ndims; @@ -8815,7 +9176,7 @@ * Number of zones and nodes. We have to do this because * _DBQMCalcExtents uses this global information. */ - for (_qm._nzones=_qm._nnodes=(ndims?1:0), i=0; icoords[i] = db_hdf5_comprd(dbfile, m.coord[i], 0); } + if (SILO_Globals.dataReadMask & DBQMGhostNodeLabels) + qm->ghost_node_labels = (char *)db_hdf5_comprd(dbfile, m.ghost_node_labels, 0); + if (SILO_Globals.dataReadMask & DBQMGhostZoneLabels) + qm->ghost_zone_labels = (char *)db_hdf5_comprd(dbfile, m.ghost_zone_labels, 0); + + /* alternate node number variables */ + { + int nvars = -1; + char *tmpnames = (char *)db_hdf5_comprd(dbfile, m.alt_nodenum_vars, 1); + if (tmpnames) + qm->alt_nodenum_vars = DBStringListToStringArray(tmpnames, &nvars, !skipFirstSemicolon); + FREE(tmpnames); + } + + /* alternate zone number variables */ + { + int nvars = -1; + char *tmpnames = (char *)db_hdf5_comprd(dbfile, m.alt_zonenum_vars, 1); + if (tmpnames) + qm->alt_zonenum_vars = DBStringListToStringArray(tmpnames, &nvars, !skipFirstSemicolon); + FREE(tmpnames); + } + H5Tclose(o); } CLEANUP { @@ -9100,7 +9524,6 @@ } - /*------------------------------------------------------------------------- * Function: db_hdf5_PutQuadvar * @@ -9144,19 +9567,28 @@ */ /*ARGSUSED*/ SILO_CALLBACK int -db_hdf5_PutQuadvar(DBfile *_dbfile, char *name, char *meshname, int nvars, - char *varnames[/*nvars*/], DB_DTPTR2 _vars, - int dims[/*ndims*/], int ndims, DB_DTPTR2 _mixvars, - int mixlen, int datatype, int centering, DBoptlist *optlist) +db_hdf5_PutQuadvar(DBfile *_dbfile, char const *name, char const *meshname, int nvars, + char const * const *varnames, DBVCP2_t _vars, + int const *dims, int ndims, DBVCP2_t _mixvars, + int mixlen, int datatype, int centering, DBoptlist const *optlist) { DBfile_hdf5 *dbfile = (DBfile_hdf5*)_dbfile; static char *me = "db_hdf5_PutQuadvar"; char *s = 0; DBquadvar_mt m; - int i, nels; + int i, nels, is_empty = 1; int compressionFlags; - DB_DTPTR **vars = (DB_DTPTR**) _vars; - DB_DTPTR **mixvars = (DB_DTPTR**) _mixvars; + void const * const *vars = (void const * const *) _vars; + void const * const *mixvars = (void const * const *) _mixvars; + + for (i = 0; i < ndims; i++) + { + if (dims[i] > 0) + { + is_empty = 0; + break; + } + } FREE(_qm._meshname); memset(&_qm, 0, sizeof _qm); @@ -9164,12 +9596,13 @@ PROTECT { /* Set global options */ - _qm._coordsys = DB_OTHER; + _qm._coord_sys = DB_OTHER; _qm._facetype = DB_RECTILINEAR; _qm._ndims = _qm._nspace = ndims; _qm._planar = DB_AREA; _qm._use_specmf = DB_OFF; _qm._group_no = -1; + _qm._missing_value = DB_MISSING_VALUE_NOT_SET; db_ProcessOptlist(DB_QUADMESH, optlist); /*yes, QUADMESH*/ _qm._meshname = STRDUP(meshname); _qm._nzones = _qm._nnodes = 1; /*initial value only*/ @@ -9200,7 +9633,7 @@ db_perror("too many subvariables", E_BADARGS, me); UNWIND(); } - for (i=0; i 1 && centering == DB_EDGECENT) || (ndims > 2 && centering == DB_FACECENT)) @@ -9246,6 +9679,7 @@ strcpy(m.label, OPT(_qm._label)); strcpy(m.units, OPT(_qm._unit)); strcpy(m.meshid, OPT(_qm._meshname)); + db_SetMissingValueForPut(m.missing_value, _qm._missing_value); for (i=0; iconserved = m.conserved; qv->extensive = m.extensive; qv->centering = m.centering; + db_SetMissingValueForGet(qv->missing_value, m.missing_value); for (stride=1, i=0; idims[i] = m.dims[i]; qv->stride[i] = stride; @@ -9448,10 +9883,10 @@ db_perror(name, E_CALLFAIL, me); UNWIND(); } - if (SILO_Globals.dataReadMask & DBQVData && m.nvals) + if (SILO_Globals.dataReadMask & DBQVData && m.nvals && m.ndims>0) { - qv->vals = calloc(m.nvals, sizeof(void*)); - if (m.mixlen) qv->mixvals = calloc(m.nvals, sizeof(void*)); + qv->vals = (void **)calloc(m.nvals, sizeof(void*)); + if (m.mixlen) qv->mixvals = (void **)calloc(m.nvals, sizeof(void*)); for (i=0; ivals[i] = db_hdf5_comprd(dbfile, m.value[i], 0); if (m.mixlen && m.mixed_value[i][0]) { @@ -9460,9 +9895,8 @@ } } - s = db_hdf5_comprd(dbfile, m.region_pnames, 1); - if (s) qv->region_pnames = DBStringListToStringArray(s, 0, - !handleSlashSwap, !skipFirstSemicolon); + s = (char *)db_hdf5_comprd(dbfile, m.region_pnames, 1); + if (s) qv->region_pnames = DBStringListToStringArray(s, 0, !skipFirstSemicolon); FREE(s); H5Tclose(o); @@ -9510,7 +9944,6 @@ return 0; } - /*------------------------------------------------------------------------- * Function: db_hdf5_PutUcdmesh * @@ -9556,15 +9989,15 @@ */ /*ARGSUSED*/ SILO_CALLBACK int -db_hdf5_PutUcdmesh(DBfile *_dbfile, char *name, int ndims, char *coordnames[], - DB_DTPTR2 _coords, int nnodes, int nzones, char *zlname, - char *flname, int datatype, DBoptlist *optlist) +db_hdf5_PutUcdmesh(DBfile *_dbfile, char const *name, int ndims, char const * const *coordnames, + DBVCP2_t _coords, int nnodes, int nzones, char const *zlname, + char const *flname, int datatype, DBoptlist const *optlist) { DBfile_hdf5 *dbfile = (DBfile_hdf5*)_dbfile; static char *me = "db_hdf5_PutUcdmesh"; DBucdmesh_mt m; int i, compressionFlags; - DB_DTPTR **coords = (DB_DTPTR**) _coords; + void const * const *coords = (void const * const *) _coords; memset(&_um, 0, sizeof _um); memset(&m, 0, sizeof m); @@ -9578,7 +10011,7 @@ /* Set global options */ strcpy(_um._meshname, name); - _um._coordsys = DB_OTHER; + _um._coord_sys = DB_OTHER; _um._facetype = DB_RECTILINEAR; _um._ndims = ndims; _um._nnodes = nnodes; @@ -9611,25 +10044,39 @@ } /* Write variable arrays: coords[], gnodeno[] */ - for (i=0; i0); i++) { db_hdf5_compwrz(dbfile, datatype, 1, &nnodes, coords[i], m.coord[i]/*out*/, friendly_name(name, "_coord%d", &i), compressionFlags); } - if (_um._llong_gnodeno) + if (_um._llong_gnodeno && (nnodes > 0)) db_hdf5_compwr(dbfile, DB_LONG_LONG, 1, &nnodes, _um._gnodeno, m.gnodeno/*out*/, friendly_name(name, "_gnodeno",0)); - else + else if (nnodes > 0) db_hdf5_compwrz(dbfile, DB_INT, 1, &nnodes, _um._gnodeno, m.gnodeno/*out*/, friendly_name(name, "_gnodeno",0), compressionFlags); + if (nnodes && _um._ghost_node_labels) + { + db_hdf5_compwr(dbfile, DB_CHAR, 1, &nnodes, _um._ghost_node_labels, + m.ghost_node_labels/*out*/, friendly_name(name, "_ghost_node_labels",0)); + } + + if (_um._alt_nodenum_vars != NULL) { + char *s; int len; + DBStringArrayToStringList((char const * const *)_um._alt_nodenum_vars, -1, &s, &len); + db_hdf5_compwr(dbfile, DB_CHAR, 1, &len, s, m.alt_nodenum_vars/*out*/, + friendly_name(name, "_alt_nodenum_vars", 0)); + FREE(s); + } + /* Build ucdmesh header in memory */ m.ndims = ndims; m.nnodes = nnodes; m.nzones = nzones; m.facetype = _um._facetype; - m.coord_sys = _um._coordsys; + m.coord_sys = _um._coord_sys; m.topo_dim = _um._topo_dim; m.planar = _um._planar; m.origin = _um._origin; @@ -9678,6 +10125,8 @@ if (m.tv_connectivity) MEMBER_S(int, tv_connectivity); if (m.disjoint_mode) MEMBER_S(int, disjoint_mode); if (m.gnznodtype) MEMBER_S(int, gnznodtype); + MEMBER_S(str(m.ghost_node_labels), ghost_node_labels); + MEMBER_S(str(m.alt_nodenum_vars), alt_nodenum_vars); } OUTPUT(dbfile, DB_UCDMESH, name, &m); } CLEANUP { @@ -9686,7 +10135,6 @@ return 0; } - /*------------------------------------------------------------------------- * Function: db_hdf5_PutUcdsubmesh * @@ -9719,9 +10167,9 @@ */ /*ARGSUSED*/ SILO_CALLBACK int -db_hdf5_PutUcdsubmesh(DBfile *_dbfile, char *name, char *parentmesh, - int nzones, char *zlname, char *flname, - DBoptlist *optlist) +db_hdf5_PutUcdsubmesh(DBfile *_dbfile, char const *name, char const *parentmesh, + int nzones, char const *zlname, char const *flname, + DBoptlist const *optlist) { DBfile_hdf5 *dbfile = (DBfile_hdf5*)_dbfile; static char *me = "db_pdb_PutUcdmesh"; @@ -9756,7 +10204,7 @@ /* Set global options */ strcpy(_um._meshname, name); - _um._coordsys = DB_OTHER; + _um._coord_sys = DB_OTHER; _um._facetype = DB_RECTILINEAR; _um._ndims = m.ndims; _um._nnodes = m.nnodes; @@ -9776,7 +10224,7 @@ m.nzones = _um._nzones; m.facetype = _um._facetype; m.cycle = _um._cycle; - m.coord_sys = _um._coordsys; + m.coord_sys = _um._coord_sys; m.topo_dim = _um._topo_dim; m.planar = _um._planar; m.origin = _um._origin; @@ -9847,7 +10295,6 @@ #endif } - /*------------------------------------------------------------------------- * Function: db_hdf5_GetUcdmesh * @@ -9891,7 +10338,7 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK DBucdmesh * -db_hdf5_GetUcdmesh(DBfile *_dbfile, char *name) +db_hdf5_GetUcdmesh(DBfile *_dbfile, char const *name) { DBfile_hdf5 *dbfile = (DBfile_hdf5*)_dbfile; static char *me = "db_hdf5_GetUcdmesh"; @@ -9979,7 +10426,7 @@ going to let it fail. */ /* For compression's sake, read the zonelist first */ - if (m.zonelist[0] && (SILO_Globals.dataReadMask & DBUMZonelist)) { + if (um->nnodes>0 && m.zonelist[0] && (SILO_Globals.dataReadMask & DBUMZonelist)) { calledFromGetUcdmesh = um->name; um->zones = db_hdf5_GetZonelist(_dbfile, db_hdf5_resolvename(_dbfile, name, m.zonelist)); @@ -10015,13 +10462,24 @@ if (SILO_Globals.dataReadMask & DBUMGlobNodeNo) um->gnodeno = db_hdf5_comprd(dbfile, m.gnodeno, 1); um->gnznodtype = m.gnznodtype?m.gnznodtype:DB_INT; + if (SILO_Globals.dataReadMask & DBUMGhostNodeLabels) + um->ghost_node_labels = (char *)db_hdf5_comprd(dbfile, m.ghost_node_labels, 1); + + /* alt nodenum vars */ + { + int nnames = -1; + char *tmpannums = (char *)db_hdf5_comprd(dbfile, m.alt_nodenum_vars, 1); + if (tmpannums) + um->alt_nodenum_vars = DBStringListToStringArray(tmpannums, &nnames, !skipFirstSemicolon); + FREE(tmpannums); + } /* Read face, zone, and edge lists */ - if (m.facelist[0] && (SILO_Globals.dataReadMask & DBUMFacelist)) { + if (um->nnodes>0 && m.facelist[0] && (SILO_Globals.dataReadMask & DBUMFacelist)) { um->faces = db_hdf5_GetFacelist(_dbfile, db_hdf5_resolvename(_dbfile, name, m.facelist)); } - if (m.phzonelist[0] && (SILO_Globals.dataReadMask & DBUMZonelist)) { + if (um->nnodes>0 && m.phzonelist[0] && (SILO_Globals.dataReadMask & DBUMZonelist)) { um->phzones = db_hdf5_GetPHZonelist(_dbfile, db_hdf5_resolvename(_dbfile, name, m.phzonelist)); } @@ -10035,6 +10493,10 @@ } H5E_END_TRY; } END_PROTECT; +#ifdef HAVE_HZIP + db_hdf5_hzip_clear_params(); +#endif + return um; } @@ -10069,7 +10531,6 @@ return 0; } - /*------------------------------------------------------------------------- * Function: db_hdf5_PutUcdvar * @@ -10107,10 +10568,10 @@ */ /*ARGSUSED*/ SILO_CALLBACK int -db_hdf5_PutUcdvar(DBfile *_dbfile, char *name, char *meshname, int nvars, - char *varnames[/*nvars*/], DB_DTPTR2 _vars, - int nels, DB_DTPTR2 _mixvars, int mixlen, - int datatype, int centering, DBoptlist *optlist) +db_hdf5_PutUcdvar(DBfile *_dbfile, char const *name, char const *meshname, int nvars, + char const * const *varnames, DBVCP2_t _vars, + int nels, DBVCP2_t _mixvars, int mixlen, + int datatype, int centering, DBoptlist const *optlist) { DBfile_hdf5 *dbfile = (DBfile_hdf5*)_dbfile; static char *me = "db_hdf5_PutUcdvar"; @@ -10118,8 +10579,8 @@ DBucdvar_mt m; int i, saved_ndims, saved_nnodes, saved_nzones; int compressionFlags; - DB_DTPTR **vars = (DB_DTPTR**) _vars; - DB_DTPTR **mixvars = (DB_DTPTR**) _mixvars; + void const * const *vars = (void const * const *) _vars; + void const * const *mixvars = (void const * const *) _mixvars; memset(&m, 0, sizeof m); @@ -10129,7 +10590,7 @@ saved_nnodes = _um._nnodes; saved_nzones = _um._nzones; memset(&_um, 0, sizeof _um); - _um._coordsys = DB_OTHER; + _um._coord_sys = DB_OTHER; _um._topo_dim = saved_ndims; _um._facetype = DB_RECTILINEAR; _um._ndims = saved_ndims; @@ -10138,6 +10599,7 @@ _um._planar = DB_OTHER; _um._use_specmf = DB_OFF; _um._group_no = -1; + _um._missing_value = DB_MISSING_VALUE_NOT_SET; strcpy(_um._meshname, meshname); db_ProcessOptlist(DB_UCDMESH, optlist); /*yes, UCDMESH*/ @@ -10154,7 +10616,7 @@ db_perror("too many variables", E_BADARGS, me); UNWIND(); } - for (i=0; izones->ndims, um->zones->nzones, um->zones->origin, um->zones->nodelist); - DBSetDataReadMask(currentMask); + DBSetDataReadMask2(currentMask); DBFreeUcdmesh(um); } } @@ -10291,7 +10755,6 @@ #endif } - /*------------------------------------------------------------------------- * Function: db_hdf5_GetUcdvar * @@ -10325,7 +10788,7 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK DBucdvar * -db_hdf5_GetUcdvar(DBfile *_dbfile, char *name) +db_hdf5_GetUcdvar(DBfile *_dbfile, char const *name) { DBfile_hdf5 *dbfile = (DBfile_hdf5*)_dbfile; static char *me = "db_hdf5_GetUcdvar"; @@ -10384,6 +10847,7 @@ uv->guihide = m.guihide; uv->conserved = m.conserved; uv->extensive = m.extensive; + db_SetMissingValueForGet(uv->missing_value, m.missing_value); /* If var is compressed, we need to do some work to decompress it */ PrepareForUcdvarDecompression(_dbfile, name, uv->meshname?uv->meshname:"", m.value, m.nvals); @@ -10395,8 +10859,8 @@ } if (SILO_Globals.dataReadMask & DBUVData && m.nvals) { - uv->vals = calloc(m.nvals, sizeof(void*)); - if (m.mixlen) uv->mixvals = calloc(m.nvals, sizeof(void*)); + uv->vals = (void **)calloc(m.nvals, sizeof(void*)); + if (m.mixlen) uv->mixvals = (void **)calloc(m.nvals, sizeof(void*)); for (i=0; ivals[i] = db_hdf5_comprd(dbfile, m.value[i], 0); if (m.mixlen && m.mixed_value[i][0]) { @@ -10405,9 +10869,8 @@ } } - s = db_hdf5_comprd(dbfile, m.region_pnames, 1); - if (s) uv->region_pnames = DBStringListToStringArray(s, 0, - !handleSlashSwap, !skipFirstSemicolon); + s = (char *)db_hdf5_comprd(dbfile, m.region_pnames, 1); + if (s) uv->region_pnames = DBStringListToStringArray(s, 0, !skipFirstSemicolon); FREE(s); H5Tclose(o); @@ -10423,7 +10886,6 @@ return uv; } - /*------------------------------------------------------------------------- * Function: db_hdf5_PutFacelist * @@ -10443,10 +10905,22 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK int -db_hdf5_PutFacelist(DBfile *_dbfile, char *name, int nfaces, int ndims, - int *nodelist, int lnodelist, int origin, int *zoneno, - int *shapesize, int *shapecnt, int nshapes, int *types, - int *typelist, int ntypes) +db_hdf5_PutFacelist( + DBfile *_dbfile, + char const *name, + int nfaces, + int ndims, + int const *nodelist, + int lnodelist, + int origin, + int const *zoneno, + int const *shapesize, + int const *shapecnt, + int nshapes, + int const *types, + int const *typelist, + int ntypes +) { DBfile_hdf5 *dbfile = (DBfile_hdf5*)_dbfile; DBfacelist_mt m; @@ -10508,7 +10982,6 @@ return 0; } - /*------------------------------------------------------------------------- * Function: db_hdf5_GetFacelist * @@ -10529,7 +11002,7 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK DBfacelist * -db_hdf5_GetFacelist(DBfile *_dbfile, char *name) +db_hdf5_GetFacelist(DBfile *_dbfile, char const *name) { DBfile_hdf5 *dbfile = (DBfile_hdf5*)_dbfile; static char *me = "db_hdf5_GetFacelist"; @@ -10576,12 +11049,12 @@ /* Read the raw data */ if (SILO_Globals.dataReadMask & DBFacelistInfo) { - fl->nodelist = db_hdf5_comprd(dbfile, m.nodelist, 1); - fl->shapecnt = db_hdf5_comprd(dbfile, m.shapecnt, 1); - fl->shapesize = db_hdf5_comprd(dbfile, m.shapesize, 1); - fl->typelist = db_hdf5_comprd(dbfile, m.typelist, 1); - fl->types = db_hdf5_comprd(dbfile, m.types, 1); - fl->zoneno = db_hdf5_comprd(dbfile, m.zoneno, 1); + fl->nodelist = (int *)db_hdf5_comprd(dbfile, m.nodelist, 1); + fl->shapecnt = (int *)db_hdf5_comprd(dbfile, m.shapecnt, 1); + fl->shapesize = (int *)db_hdf5_comprd(dbfile, m.shapesize, 1); + fl->typelist = (int *)db_hdf5_comprd(dbfile, m.typelist, 1); + fl->types = (int *)db_hdf5_comprd(dbfile, m.types, 1); + fl->zoneno = (int *)db_hdf5_comprd(dbfile, m.zoneno, 1); } H5Tclose(o); @@ -10613,8 +11086,8 @@ */ static int PrepareForZonelistCompression(DBfile_hdf5 *dbfile, char const *name, - int origin, int nshapes, int const *shapetype, int const *shapecnt, - int const *nodelist) + int origin, int ndims, int nshapes, int const *shapetype, int const *shapesize, + int const *shapecnt, int const *nodelist) { int i; int ntopo = 0, zncnt = 0; @@ -10625,30 +11098,60 @@ zncnt = shapecnt[0]; #ifdef HAVE_HZIP - /* hzip supports only quad/hex meshes */ - if (shapetype[0] == DB_ZONETYPE_QUAD) + if (shapetype) { - ntopo = 2; - for (i = 1; i < nshapes; i++) + /* hzip supports only quad/hex meshes */ + if (shapetype[0] == DB_ZONETYPE_QUAD) { - zncnt += shapecnt[i]; - if (shapetype[i] != DB_ZONETYPE_QUAD) - return 0; + ntopo = 2; + for (i = 1; i < nshapes; i++) + { + zncnt += shapecnt[i]; + if (shapetype[i] != DB_ZONETYPE_QUAD) + return 0; + } } - } - else if (shapetype[0] == DB_ZONETYPE_HEX) - { - ntopo = 3; - for (i = 1; i < nshapes; i++) + else if (shapetype[0] == DB_ZONETYPE_HEX) + { + ntopo = 3; + for (i = 1; i < nshapes; i++) + { + zncnt += shapecnt[i]; + if (shapetype[i] != DB_ZONETYPE_HEX) + return 0; + } + } + else { - zncnt += shapecnt[i]; - if (shapetype[i] != DB_ZONETYPE_HEX) - return 0; + return 0; } } else { - return 0; + if (ndims == 2) + { + ntopo = 2; + for (i = 0; i < nshapes; i++) + { + zncnt += shapecnt[i]; + if (shapesize[i] != 4) + return 0; + } + } + else if (ndims == 3) + { + ntopo = 3; + for (i = 0; i < nshapes; i++) + { + zncnt += shapecnt[i]; + if (shapesize[i] != 8) + return 0; + } + } + else + { + return 0; + } } db_hdf5_hzip_clear_params(); @@ -10665,7 +11168,6 @@ #endif } - /*------------------------------------------------------------------------- * Function: db_hdf5_PutZonelist * @@ -10683,9 +11185,9 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK int -db_hdf5_PutZonelist(DBfile *_dbfile, char *name, int nzones, int ndims, - int nodelist[], int lnodelist, int origin, int shapesize[], - int shapecnt[], int nshapes) +db_hdf5_PutZonelist(DBfile *_dbfile, char const *name, int nzones, int ndims, + int const *nodelist, int lnodelist, int origin, int const *shapesize, + int const *shapecnt, int nshapes) { db_hdf5_PutZonelist2(_dbfile, name, nzones, ndims, nodelist, lnodelist, origin, 0, 0, NULL, shapesize, shapecnt, nshapes, @@ -10693,7 +11195,6 @@ return 0; } - /*------------------------------------------------------------------------- * Function: db_hdf5_PutZonelist2 * @@ -10727,11 +11228,11 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK int -db_hdf5_PutZonelist2(DBfile *_dbfile, char *name, int nzones, int ndims, - int nodelist[], int lnodelist, int origin, - int lo_offset, int hi_offset, int shapetype[], - int shapesize[], int shapecnt[], int nshapes, - DBoptlist *optlist) +db_hdf5_PutZonelist2(DBfile *_dbfile, char const *name, int nzones, int ndims, + int const *nodelist, int lnodelist, int origin, + int lo_offset, int hi_offset, int const *shapetype, + int const *shapesize, int const *shapecnt, int nshapes, + DBoptlist const *optlist) { DBfile_hdf5 *dbfile = (DBfile_hdf5*)_dbfile; DBzonelist_mt m; @@ -10745,7 +11246,7 @@ /* Prepare for possible compression of zonelist */ compressionFlags = PrepareForZonelistCompression(dbfile, - name, origin, nshapes, shapetype, shapecnt, nodelist); + name, origin, ndims, nshapes, shapetype, shapesize, shapecnt, nodelist); /* Write variable arrays (currently only support compression of nodelist) */ db_hdf5_compwrz(dbfile, DB_INT, 1, &lnodelist, nodelist, @@ -10764,6 +11265,20 @@ db_hdf5_compwr(dbfile, DB_INT, 1, &nzones, _uzl._gzoneno, m.gzoneno/*out*/, friendly_name(name,"_gzoneno", 0)); + if (_uzl._ghost_zone_labels) + { + db_hdf5_compwr(dbfile, DB_CHAR, 1, &nzones, _uzl._ghost_zone_labels, + m.ghost_zone_labels/*out*/, friendly_name(name,"_ghost_zone_labels", 0)); + } + + if (_uzl._alt_zonenum_vars) { + int len, nvars=-1; char *tmp; + DBStringArrayToStringList((char const * const *)_uzl._alt_zonenum_vars, nvars, &tmp, &len); + db_hdf5_compwr(dbfile, DB_CHAR, 1, &len, tmp, + m.alt_zonenum_vars/*out*/, friendly_name(name, "_alt_zonenum_vars",0)); + FREE(tmp); + } + /* Build header in memory */ m.ndims = ndims; m.nzones = nzones; @@ -10789,6 +11304,8 @@ MEMBER_S(str(m.shapetype), shapetype); MEMBER_S(str(m.gzoneno), gzoneno); if (m.gnznodtype) MEMBER_S(int, gnznodtype); + MEMBER_S(str(m.ghost_zone_labels), ghost_zone_labels); + MEMBER_S(str(m.alt_zonenum_vars), alt_zonenum_vars); } OUTPUT(dbfile, DB_ZONELIST, name, &m); } CLEANUP { @@ -10829,12 +11346,12 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK int -db_hdf5_PutPHZonelist(DBfile *_dbfile, char *name, - int nfaces, int *nodecnt, int lnodelist, int *nodelist, - char *extface, - int nzones, int *facecnt, int lfacelist, int *facelist, +db_hdf5_PutPHZonelist(DBfile *_dbfile, char const *name, + int nfaces, int const *nodecnt, int lnodelist, int const *nodelist, + char const *extface, + int nzones, int const *facecnt, int lfacelist, int const *facelist, int origin, int lo_offset, int hi_offset, - DBoptlist *optlist) + DBoptlist const *optlist) { DBfile_hdf5 *dbfile = (DBfile_hdf5*)_dbfile; DBphzonelist_mt m; @@ -10850,7 +11367,7 @@ m.nodecnt/*out*/, friendly_name(name,"_nodecnt", 0)); db_hdf5_compwr(dbfile, DB_INT, 1, &lnodelist, nodelist, m.nodelist/*out*/, friendly_name(name,"_nodelist", 0)); - db_hdf5_compwr(dbfile, DB_INT, 1, &nfaces, extface, + db_hdf5_compwr(dbfile, DB_CHAR, 1, &nfaces, extface, m.extface/*out*/, friendly_name(name,"_extface", 0)); db_hdf5_compwr(dbfile, DB_INT, 1, &nzones, facecnt, m.facecnt/*out*/, friendly_name(name,"_facecnt", 0)); @@ -10863,6 +11380,20 @@ db_hdf5_compwr(dbfile, DB_INT, 1, &nzones, _phzl._gzoneno, m.gzoneno/*out*/, friendly_name(name,"_gzoneno", 0)); + if (_phzl._ghost_zone_labels) + { + db_hdf5_compwr(dbfile, DB_CHAR, 1, &nzones, _phzl._ghost_zone_labels, + m.ghost_zone_labels/*out*/, friendly_name(name,"_ghost_zone_labels", 0)); + } + + if (_phzl._alt_zonenum_vars) { + int len, nvars=-1; char *tmp; + DBStringArrayToStringList((char const * const *)_phzl._alt_zonenum_vars, nvars, &tmp, &len); + db_hdf5_compwr(dbfile, DB_CHAR, 1, &len, tmp, + m.alt_zonenum_vars/*out*/, friendly_name(name, "_alt_zonenum_vars",0)); + FREE(tmp); + } + /* Build header in memory */ m.nfaces = nfaces; m.lnodelist = lnodelist; @@ -10889,6 +11420,7 @@ MEMBER_S(str(m.facelist), facelist); MEMBER_S(str(m.gzoneno), gzoneno); if (m.gnznodtype) MEMBER_S(int, gnznodtype); + MEMBER_S(str(m.ghost_zone_labels), ghost_zone_labels); } OUTPUT(dbfile, DB_PHZONELIST, name, &m); } CLEANUP { @@ -10920,7 +11452,6 @@ #endif } - /*------------------------------------------------------------------------- * Function: db_hdf5_GetZonelist * @@ -10959,7 +11490,7 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK DBzonelist * -db_hdf5_GetZonelist(DBfile *_dbfile, char *name) +db_hdf5_GetZonelist(DBfile *_dbfile, char const *name) { DBfile_hdf5 *dbfile = (DBfile_hdf5*)_dbfile; static char *me = "db_hdf5_GetZonelist"; @@ -11011,14 +11542,25 @@ /* Read the raw data */ if (SILO_Globals.dataReadMask & DBZonelistInfo) { - zl->shapecnt = db_hdf5_comprd(dbfile, m.shapecnt, 1); - zl->shapesize = db_hdf5_comprd(dbfile, m.shapesize, 1); - zl->shapetype = db_hdf5_comprd(dbfile, m.shapetype, 1); - zl->nodelist = db_hdf5_comprd(dbfile, m.nodelist, 1); + zl->shapecnt = (int *)db_hdf5_comprd(dbfile, m.shapecnt, 1); + zl->shapesize = (int *)db_hdf5_comprd(dbfile, m.shapesize, 1); + zl->shapetype = (int *)db_hdf5_comprd(dbfile, m.shapetype, 1); + zl->nodelist = (int *)db_hdf5_comprd(dbfile, m.nodelist, 1); } if (SILO_Globals.dataReadMask & DBZonelistGlobZoneNo) zl->gzoneno = db_hdf5_comprd(dbfile, m.gzoneno, 1); zl->gnznodtype = m.gnznodtype?m.gnznodtype:DB_INT; + if (SILO_Globals.dataReadMask & DBZonelistGhostZoneLabels) + zl->ghost_zone_labels = (char *)db_hdf5_comprd(dbfile, m.ghost_zone_labels, 1); + + /* alternate zone number variables */ + { + int nvars = -1; + char *tmpnames = (char *)db_hdf5_comprd(dbfile, m.alt_zonenum_vars, 1); + if (tmpnames) + zl->alt_zonenum_vars = DBStringListToStringArray(tmpnames, &nvars, !skipFirstSemicolon); + FREE(tmpnames); + } H5Tclose(o); } CLEANUP { @@ -11054,7 +11596,7 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK DBphzonelist * -db_hdf5_GetPHZonelist(DBfile *_dbfile, char *name) +db_hdf5_GetPHZonelist(DBfile *_dbfile, char const *name) { DBfile_hdf5 *dbfile = (DBfile_hdf5*)_dbfile; static char *me = "db_hdf5_GetPHZonelist"; @@ -11102,14 +11644,25 @@ if (SILO_Globals.dataReadMask & DBZonelistInfo) { - phzl->nodecnt = db_hdf5_comprd(dbfile, m.nodecnt, 1); - phzl->nodelist = db_hdf5_comprd(dbfile, m.nodelist, 1); - phzl->extface = db_hdf5_comprd(dbfile, m.extface, 1); - phzl->facecnt = db_hdf5_comprd(dbfile, m.facecnt, 1); - phzl->facelist = db_hdf5_comprd(dbfile, m.facelist, 1); + phzl->nodecnt = (int *)db_hdf5_comprd(dbfile, m.nodecnt, 1); + phzl->nodelist = (int *)db_hdf5_comprd(dbfile, m.nodelist, 1); + phzl->extface = (char *)db_hdf5_comprd(dbfile, m.extface, 1); + phzl->facecnt = (int *)db_hdf5_comprd(dbfile, m.facecnt, 1); + phzl->facelist = (int *)db_hdf5_comprd(dbfile, m.facelist, 1); } if (SILO_Globals.dataReadMask & DBZonelistGlobZoneNo) phzl->gzoneno = db_hdf5_comprd(dbfile, m.gzoneno, 1); + if (SILO_Globals.dataReadMask & DBZonelistGhostZoneLabels) + phzl->ghost_zone_labels = (char *)db_hdf5_comprd(dbfile, m.ghost_zone_labels, 1); + + /* alternate zone number variables */ + { + int nvars = -1; + char *tmpnames = (char *)db_hdf5_comprd(dbfile, m.alt_zonenum_vars, 1); + if (tmpnames) + phzl->alt_zonenum_vars = DBStringListToStringArray(tmpnames, &nvars, !skipFirstSemicolon); + FREE(tmpnames); + } H5Tclose(o); } CLEANUP { @@ -11123,7 +11676,6 @@ return phzl; } - /*------------------------------------------------------------------------- * Function: db_hdf5_PutMaterial * @@ -11153,29 +11705,51 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK int -db_hdf5_PutMaterial(DBfile *_dbfile, char *name, char *mname, int nmat, - int matnos[], int matlist[], int dims[], int ndims, - int mix_next[], int mix_mat[], int mix_zone[], - DB_DTPTR1 mix_vf, int mixlen, int datatype, - DBoptlist *optlist) +db_hdf5_PutMaterial( + DBfile *_dbfile, + char const *name, + char const *mname, + int nmat, + int const *matnos, + int const *matlist, + int const *dims, + int ndims, + int const *mix_next, + int const *mix_mat, + int const *mix_zone, + void const *mix_vf, + int mixlen, + int datatype, + DBoptlist const *optlist +) { DBfile_hdf5 *dbfile = (DBfile_hdf5*)_dbfile; DBmaterial_mt m; - int i, nels; + int i, nels, is_empty = 1; char *s = NULL; + for (i = 0; i < ndims; i++) + { + if (dims[i] > 0) + { + is_empty = 0; + break; + } + } + memset(&m, 0, sizeof m); PROTECT { /* Set global options */ db_ProcessOptlist(DB_MATERIAL, optlist); - for (i=0, nels=1; i0) { + if (!is_empty && mixlen>0) { db_hdf5_compwr(dbfile, datatype, 1, &mixlen, mix_vf, m.mix_vf/*out*/, friendly_name(name,"_mix_vf", 0)); db_hdf5_compwr(dbfile, DB_INT, 1, &mixlen, mix_next, @@ -11188,7 +11762,7 @@ if (_ma._matnames != NULL) { int len; - DBStringArrayToStringList(_ma._matnames, nmat, &s, &len); + DBStringArrayToStringList((char const * const *)_ma._matnames, nmat, &s, &len); db_hdf5_compwr(dbfile, DB_CHAR, 1, &len, s, m.matnames/*out*/, friendly_name(name, "_matnames", 0)); FREE(s); @@ -11197,7 +11771,7 @@ if (_ma._matcolors != NULL) { int len; - DBStringArrayToStringList(_ma._matcolors, nmat, &s, &len); + DBStringArrayToStringList((char const * const *)_ma._matcolors, nmat, &s, &len); db_hdf5_compwr(dbfile, DB_CHAR, 1, &len, s, m.matcolors/*out*/, friendly_name(name,"_matcolors", 0)); FREE(s); @@ -11248,7 +11822,6 @@ return 0; } - /*------------------------------------------------------------------------- * Function: db_hdf5_GetMaterial * @@ -11276,7 +11849,7 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK DBmaterial * -db_hdf5_GetMaterial(DBfile *_dbfile, char *name) +db_hdf5_GetMaterial(DBfile *_dbfile, char const *name) { DBfile_hdf5 *dbfile = (DBfile_hdf5*)_dbfile; static char *me = "db_hdf5_GetMaterial"; @@ -11334,28 +11907,26 @@ /* Read the raw data */ if (SILO_Globals.dataReadMask & DBMatMatlist) - ma->matlist = db_hdf5_comprd(dbfile, m.matlist, 1); + ma->matlist = (int *)db_hdf5_comprd(dbfile, m.matlist, 1); if (SILO_Globals.dataReadMask & DBMatMatnos) - ma->matnos = db_hdf5_comprd(dbfile, m.matnos, 1); + ma->matnos = (int *)db_hdf5_comprd(dbfile, m.matnos, 1); if (SILO_Globals.dataReadMask & DBMatMixList) { ma->mix_vf = db_hdf5_comprd(dbfile, m.mix_vf, 0); - ma->mix_next = db_hdf5_comprd(dbfile, m.mix_next, 1); - ma->mix_mat = db_hdf5_comprd(dbfile, m.mix_mat, 1); - ma->mix_zone = db_hdf5_comprd(dbfile, m.mix_zone, 1); + ma->mix_next = (int *)db_hdf5_comprd(dbfile, m.mix_next, 1); + ma->mix_mat = (int *)db_hdf5_comprd(dbfile, m.mix_mat, 1); + ma->mix_zone = (int *)db_hdf5_comprd(dbfile, m.mix_zone, 1); } if (SILO_Globals.dataReadMask & DBMatMatnames) { - s = db_hdf5_comprd(dbfile, m.matnames, 1); - if (s) ma->matnames = DBStringListToStringArray(s, &(ma->nmat), - !handleSlashSwap, !skipFirstSemicolon); + s = (char *)db_hdf5_comprd(dbfile, m.matnames, 1); + if (s) ma->matnames = DBStringListToStringArray(s, &(ma->nmat), !skipFirstSemicolon); FREE(s); } if (SILO_Globals.dataReadMask & DBMatMatcolors) { - s = db_hdf5_comprd(dbfile, m.matcolors, 1); - if (s) ma->matcolors = DBStringListToStringArray(s, &(ma->nmat), - !handleSlashSwap, !skipFirstSemicolon); + s = (char *)db_hdf5_comprd(dbfile, m.matcolors, 1); + if (s) ma->matcolors = DBStringListToStringArray(s, &(ma->nmat), !skipFirstSemicolon); FREE(s); } @@ -11374,7 +11945,6 @@ return ma; } - /*------------------------------------------------------------------------- * Function: db_hdf5_PutMatspecies * @@ -11403,15 +11973,24 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK int -db_hdf5_PutMatspecies(DBfile *_dbfile, char *name, char *matname, int nmat, - int nmatspec[], int speclist[], int dims[], int ndims, - int nspecies_mf, DB_DTPTR1 species_mf, int mix_speclist[], - int mixlen, int datatype, DBoptlist *optlist) +db_hdf5_PutMatspecies(DBfile *_dbfile, char const *name, char const *matname, int nmat, + int const *nmatspec, int const *speclist, int const *dims, int ndims, + int nspecies_mf, void const *species_mf, int const *mix_speclist, + int mixlen, int datatype, DBoptlist const *optlist) { DBfile_hdf5 *dbfile = (DBfile_hdf5*)_dbfile; DBmatspecies_mt m; char *s = NULL; - int i, nels, nstrs = 0; + int i, nels, nstrs = 0, is_empty = 1; + + for (i = 0; i < ndims; i++) + { + if (dims[i] > 0) + { + is_empty = 0; + break; + } + } memset(&m, 0, sizeof m); PROTECT { @@ -11419,21 +11998,25 @@ db_ProcessOptlist(DB_MATSPECIES, optlist); /* Write raw data arrays */ - for (i=0, nels=1; inmatspec = db_hdf5_comprd(dbfile, m.nmatspec, 1); + ms->nmatspec = (int *)db_hdf5_comprd(dbfile, m.nmatspec, 1); ms->species_mf = db_hdf5_comprd(dbfile, m.species_mf, 0); - ms->speclist = db_hdf5_comprd(dbfile, m.speclist, 1); - ms->mix_speclist = db_hdf5_comprd(dbfile, m.mix_speclist, 1); + ms->speclist = (int *)db_hdf5_comprd(dbfile, m.speclist, 1); + ms->mix_speclist = (int *)db_hdf5_comprd(dbfile, m.mix_speclist, 1); if (ms->nmatspec && SILO_Globals.dataReadMask & DBMatMatnames) { for (i=0; i < ms->nmat; i++) nstrs += ms->nmatspec[i]; - s = db_hdf5_comprd(dbfile, m.specnames, 1); - if (s) ms->specnames = DBStringListToStringArray(s, &nstrs, - !handleSlashSwap, !skipFirstSemicolon); + s = (char *)db_hdf5_comprd(dbfile, m.specnames, 1); + if (s) ms->specnames = DBStringListToStringArray(s, &nstrs, !skipFirstSemicolon); FREE(s); } if (ms->nmatspec && SILO_Globals.dataReadMask & DBMatMatcolors) @@ -11597,9 +12178,8 @@ for (i=0; i < ms->nmat; i++) nstrs += ms->nmatspec[i]; } - s = db_hdf5_comprd(dbfile, m.speccolors, 1); - if (s) ms->speccolors = DBStringListToStringArray(s, &nstrs, - !handleSlashSwap, !skipFirstSemicolon); + s = (char *)db_hdf5_comprd(dbfile, m.speccolors, 1); + if (s) ms->speccolors = DBStringListToStringArray(s, &nstrs, !skipFirstSemicolon); FREE(s); } @@ -11616,7 +12196,6 @@ return ms; } - /*------------------------------------------------------------------------- * Function: db_hdf5_PutMultimesh * @@ -11684,7 +12263,7 @@ if (meshnames) { for (i=len=0; i 0 && _mm._groupnames != NULL) { - DBStringArrayToStringList(_mm._groupnames, + DBStringArrayToStringList((char const * const *)_mm._groupnames, _mm._lgroupings, &t, &len); db_hdf5_compwr(dbfile, DB_CHAR, 1, &len, t, m.groupnames/*out*/, friendly_name(name,"_groupnames",0)); @@ -11741,6 +12320,22 @@ db_hdf5_compwr(dbfile, DB_INT, 1, &_mm._empty_cnt, _mm._empty_list, m.empty_list/*out*/, friendly_name(name,"_empty_list",0)); } + + if (_mm._alt_nodenum_vars) { + int len, nvars=-1; char *tmp; + DBStringArrayToStringList((char const * const *)_mm._alt_nodenum_vars, nvars, &tmp, &len); + db_hdf5_compwr(dbfile, DB_CHAR, 1, &len, tmp, + m.alt_nodenum_vars/*out*/, friendly_name(name, "_alt_nodenum_vars",0)); + FREE(tmp); + } + + if (_mm._alt_zonenum_vars) { + int len, nvars=-1; char *tmp; + DBStringArrayToStringList((char const * const *)_mm._alt_zonenum_vars, nvars, &tmp, &len); + db_hdf5_compwr(dbfile, DB_CHAR, 1, &len, tmp, + m.alt_zonenum_vars/*out*/, friendly_name(name, "_alt_zonenum_vars",0)); + FREE(tmp); + } /* Initialize meta data */ m.nblocks = nmesh; @@ -11790,6 +12385,8 @@ MEMBER_S(str(m.empty_list), empty_list); if (m.empty_cnt) MEMBER_S(int, empty_cnt); if (m.repr_block_idx) MEMBER_S(int, repr_block_idx); + MEMBER_S(str(m.alt_nodenum_vars), alt_nodenum_vars); + MEMBER_S(str(m.alt_zonenum_vars), alt_zonenum_vars); } OUTPUT(dbfile, DB_MULTIMESH, name, &m); /* Free resources */ @@ -11801,7 +12398,6 @@ return 0; } - /*------------------------------------------------------------------------- * Function: db_hdf5_GetMultimesh * @@ -11836,7 +12432,7 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK DBmultimesh * -db_hdf5_GetMultimesh(DBfile *_dbfile, char *name) +db_hdf5_GetMultimesh(DBfile *_dbfile, char const *name) { DBfile_hdf5 *dbfile = (DBfile_hdf5*)_dbfile; static char *me = "db_hdf5_GetMultimesh"; @@ -11844,8 +12440,8 @@ int _objtype; DBmultimesh_mt m; DBmultimesh *mm=NULL; - char *s=NULL; char *t=NULL; + char *meshnames=NULL; PROTECT { /* Open object and make sure it's a multimesh */ @@ -11897,25 +12493,40 @@ /* Read the raw data */ if (mm->extentssize>0) - mm->extents = db_hdf5_comprd(dbfile, m.extents, 1); - mm->zonecounts = db_hdf5_comprd(dbfile, m.zonecounts, 1); - mm->has_external_zones = db_hdf5_comprd(dbfile, m.has_external_zones, 1); - mm->meshtypes = db_hdf5_comprd(dbfile, m.meshtypes, 1); - s = db_hdf5_comprd(dbfile, m.meshnames, 1); - if (s) mm->meshnames = DBStringListToStringArray(s, &m.nblocks, - handleSlashSwap, !skipFirstSemicolon); - FREE(s); - mm->groupings = db_hdf5_comprd(dbfile, m.groupings, 1); - t = db_hdf5_comprd(dbfile, m.groupnames, 1); - if (t) mm->groupnames = DBStringListToStringArray(t, &(mm->lgroupings), - !handleSlashSwap, !skipFirstSemicolon); + mm->extents = (double*)db_hdf5_comprd(dbfile, m.extents, 1); + mm->zonecounts = (int *)db_hdf5_comprd(dbfile, m.zonecounts, 1); + mm->has_external_zones = (int *)db_hdf5_comprd(dbfile, m.has_external_zones, 1); + mm->meshtypes = (int *)db_hdf5_comprd(dbfile, m.meshtypes, 1); + meshnames = (char *)db_hdf5_comprd(dbfile, m.meshnames, 1); + db_StringListToStringArrayMBOpt(meshnames, &(mm->meshnames), &(mm->meshnames_alloc), m.nblocks); + mm->groupings = (int *)db_hdf5_comprd(dbfile, m.groupings, 1); + t = (char *)db_hdf5_comprd(dbfile, m.groupnames, 1); + if (t) mm->groupnames = DBStringListToStringArray(t, &(mm->lgroupings), !skipFirstSemicolon); FREE(t); - mm->file_ns = db_hdf5_comprd(dbfile, m.file_ns_name, 1); - mm->block_ns = db_hdf5_comprd(dbfile, m.block_ns_name, 1); + mm->file_ns = (char *)db_hdf5_comprd(dbfile, m.file_ns_name, 1); + mm->block_ns = (char *)db_hdf5_comprd(dbfile, m.block_ns_name, 1); mm->block_type = m.block_type; - mm->empty_list = db_hdf5_comprd(dbfile, m.empty_list, 1); + mm->empty_list = (int* )db_hdf5_comprd(dbfile, m.empty_list, 1); mm->empty_cnt = m.empty_cnt; + /* alternate node number variables */ + { + int nvars = -1; + char *tmpnames = (char *)db_hdf5_comprd(dbfile, m.alt_nodenum_vars, 1); + if (tmpnames) + mm->alt_nodenum_vars = DBStringListToStringArray(tmpnames, &nvars, !skipFirstSemicolon); + FREE(tmpnames); + } + + /* alternate zone number variables */ + { + int nvars = -1; + char *tmpnames = (char *)db_hdf5_comprd(dbfile, m.alt_zonenum_vars, 1); + if (tmpnames) + mm->alt_zonenum_vars = DBStringListToStringArray(tmpnames, &nvars, !skipFirstSemicolon); + FREE(tmpnames); + } + H5Tclose(o); } CLEANUP { @@ -11925,7 +12536,6 @@ } H5E_END_TRY; DBFreeMultimesh(mm); FREE(t); - FREE(s); } END_PROTECT; return mm; } @@ -11965,9 +12575,9 @@ db_hdf5_PutMultimeshadj(DBfile *_dbfile, char const *name, int nmesh, int const *meshtypes, int const *nneighbors, int const *neighbors, int const *back, - int const *lnodelists, int *nodelists[], - int const *lzonelists, int *zonelists[], - DBoptlist *optlist) + int const *lnodelists, int const * const *nodelists, + int const *lzonelists, int const * const *zonelists, + DBoptlist const *optlist) { DBfile_hdf5 *dbfile = (DBfile_hdf5*)_dbfile; DBmultimeshadj_mt m; @@ -12283,12 +12893,12 @@ mmadj->lneighbors = m.lneighbors; /* Read the raw data */ - mmadj->meshtypes = db_hdf5_comprd(dbfile, m.meshtypes, 1); - mmadj->nneighbors = db_hdf5_comprd(dbfile, m.nneighbors, 1); - mmadj->neighbors = db_hdf5_comprd(dbfile, m.neighbors, 1); - mmadj->back = db_hdf5_comprd(dbfile, m.back, 1); - mmadj->lnodelists = db_hdf5_comprd(dbfile, m.lnodelists, 1); - mmadj->lzonelists = db_hdf5_comprd(dbfile, m.lzonelists, 1); + mmadj->meshtypes = (int *)db_hdf5_comprd(dbfile, m.meshtypes, 1); + mmadj->nneighbors = (int *)db_hdf5_comprd(dbfile, m.nneighbors, 1); + mmadj->neighbors = (int *)db_hdf5_comprd(dbfile, m.neighbors, 1); + mmadj->back = (int *)db_hdf5_comprd(dbfile, m.back, 1); + mmadj->lnodelists = (int *)db_hdf5_comprd(dbfile, m.lnodelists, 1); + mmadj->lzonelists = (int *)db_hdf5_comprd(dbfile, m.lzonelists, 1); offsetmap = ALLOC_N(int, mmadj->nblocks); lneighbors = 0; @@ -12478,7 +13088,6 @@ return mmadj; } - /*------------------------------------------------------------------------- * Function: db_hdf5_PutMultivar * @@ -12522,8 +13131,8 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK int -db_hdf5_PutMultivar(DBfile *_dbfile, char *name, int nvars, char *varnames[], - int vartypes[], DBoptlist *optlist) +db_hdf5_PutMultivar(DBfile *_dbfile, char const *name, int nvars, char const * const *varnames, + int const *vartypes, DBoptlist const *optlist) { DBfile_hdf5 *dbfile = (DBfile_hdf5*)_dbfile; DBmultivar_mt m; @@ -12548,7 +13157,7 @@ if (varnames) { for (i=len=0; immesh_name = OPTDUP(m.mmesh_name); mv->conserved = m.conserved; mv->extensive = m.extensive; + db_SetMissingValueForGet(mv->missing_value, m.missing_value); /* Read the raw data variable types and convert to mem types*/ if (mv->extentssize>0) - mv->extents = db_hdf5_comprd(dbfile, m.extents, 1); - mv->vartypes = db_hdf5_comprd(dbfile, m.vartypes, 1); + mv->extents = (double *)db_hdf5_comprd(dbfile, m.extents, 1); + mv->vartypes = (int *)db_hdf5_comprd(dbfile, m.vartypes, 1); /* Read the raw data variable names */ - s = db_hdf5_comprd(dbfile, m.varnames, 1); - if (s) mv->varnames = DBStringListToStringArray(s, &m.nvars, - handleSlashSwap, !skipFirstSemicolon); - FREE(s); + mvnames = (char *)db_hdf5_comprd(dbfile, m.varnames, 1); + db_StringListToStringArrayMBOpt(mvnames, &(mv->varnames), &(mv->varnames_alloc), m.nvars); - s = db_hdf5_comprd(dbfile, m.region_pnames, 1); - if (s) mv->region_pnames = DBStringListToStringArray(s, 0, - !handleSlashSwap, !skipFirstSemicolon); + s = (char *)db_hdf5_comprd(dbfile, m.region_pnames, 1); + if (s) mv->region_pnames = DBStringListToStringArray(s, 0, !skipFirstSemicolon); FREE(s); - mv->file_ns = db_hdf5_comprd(dbfile, m.file_ns_name, 1); - mv->block_ns = db_hdf5_comprd(dbfile, m.block_ns_name, 1); + mv->file_ns = (char *)db_hdf5_comprd(dbfile, m.file_ns_name, 1); + mv->block_ns = (char *)db_hdf5_comprd(dbfile, m.block_ns_name, 1); mv->block_type = m.block_type; - mv->empty_list = db_hdf5_comprd(dbfile, m.empty_list, 1); + mv->empty_list = (int *)db_hdf5_comprd(dbfile, m.empty_list, 1); mv->empty_cnt = m.empty_cnt; mv->repr_block_idx = m.repr_block_idx - 1; @@ -12778,7 +13387,6 @@ return mv; } - /*------------------------------------------------------------------------- * Function: db_hdf5_PutMultimat * @@ -12817,8 +13425,8 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK int -db_hdf5_PutMultimat(DBfile *_dbfile, char *name, int nmats, char *matnames[], - DBoptlist *optlist) +db_hdf5_PutMultimat(DBfile *_dbfile, char const *name, int nmats, char const * const *matnames, + DBoptlist const *optlist) { DBfile_hdf5 *dbfile = (DBfile_hdf5*)_dbfile; DBmultimat_mt m; @@ -12843,7 +13451,7 @@ if (matnames) { for (i=len=0; i 0) { int len; char *tmp; - DBStringArrayToStringList(_mm._matcolors, + DBStringArrayToStringList((char const * const *)_mm._matcolors, _mm._nmatnos, &tmp, &len); db_hdf5_compwr(dbfile, DB_CHAR, 1, &len, tmp, m.mat_colors/*out*/, friendly_name(name,"_matcolors", 0)); @@ -12880,7 +13488,7 @@ } if (_mm._matnames && _mm._nmatnos > 0) { int len; char *tmp; - DBStringArrayToStringList(_mm._matnames, + DBStringArrayToStringList((char const * const *)_mm._matnames, _mm._nmatnos, &tmp, &len); db_hdf5_compwr(dbfile, DB_CHAR, 1, &len, tmp, m.material_names/*out*/, friendly_name(name,"_material_names", 0)); @@ -12955,7 +13563,6 @@ return 0; } - /*------------------------------------------------------------------------- * Function: db_hdf5_GetMultimat * @@ -12987,7 +13594,7 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK DBmultimat * -db_hdf5_GetMultimat(DBfile *_dbfile, char *name) +db_hdf5_GetMultimat(DBfile *_dbfile, char const *name) { DBfile_hdf5 *dbfile = (DBfile_hdf5*)_dbfile; static char *me = "db_hdf5_GetMultimat"; @@ -12995,7 +13602,7 @@ int _objtype; DBmultimat_mt m; DBmultimat *mm=NULL; - char *s=NULL; + char *matnames=NULL; PROTECT { /* Open object and make sure it's a multimat */ @@ -13035,31 +13642,29 @@ mm->mmesh_name = OPTDUP(m.mmesh_name); /* Read the raw data */ - mm->mixlens = db_hdf5_comprd(dbfile, m.mixlens, 1); - mm->matcounts = db_hdf5_comprd(dbfile, m.matcounts, 1); - mm->matlists = db_hdf5_comprd(dbfile, m.matlists, 1); - mm->matnos = db_hdf5_comprd(dbfile, m.matnos, 1); - s = db_hdf5_comprd(dbfile, m.matnames, 1); - if (s) mm->matnames = DBStringListToStringArray(s, &m.nmats, - handleSlashSwap, !skipFirstSemicolon); - FREE(s); + mm->mixlens = (int *)db_hdf5_comprd(dbfile, m.mixlens, 1); + mm->matcounts = (int *)db_hdf5_comprd(dbfile, m.matcounts, 1); + mm->matlists = (int *)db_hdf5_comprd(dbfile, m.matlists, 1); + mm->matnos = (int *)db_hdf5_comprd(dbfile, m.matnos, 1); + matnames = (char *)db_hdf5_comprd(dbfile, m.matnames, 1); + db_StringListToStringArrayMBOpt(matnames, &(mm->matnames), &(mm->matnames_alloc), m.nmats); if (m.nmatnos > 0) { - char *tmpmaterial_names = db_hdf5_comprd(dbfile, m.material_names, 1); - char *tmpmat_colors = db_hdf5_comprd(dbfile, m.mat_colors, 1); + char *tmpmaterial_names = (char *)db_hdf5_comprd(dbfile, m.material_names, 1); + char *tmpmat_colors = (char *)db_hdf5_comprd(dbfile, m.mat_colors, 1); if (tmpmaterial_names) mm->material_names = DBStringListToStringArray(tmpmaterial_names, - &m.nmatnos, !handleSlashSwap, !skipFirstSemicolon); + &m.nmatnos, !skipFirstSemicolon); if (tmpmat_colors) mm->matcolors = DBStringListToStringArray(tmpmat_colors, - &m.nmatnos, !handleSlashSwap, !skipFirstSemicolon); + &m.nmatnos, !skipFirstSemicolon); FREE(tmpmaterial_names); FREE(tmpmat_colors); } - mm->file_ns = db_hdf5_comprd(dbfile, m.file_ns_name, 1); - mm->block_ns = db_hdf5_comprd(dbfile, m.block_ns_name, 1); - mm->empty_list = db_hdf5_comprd(dbfile, m.empty_list, 1); + mm->file_ns = (char *)db_hdf5_comprd(dbfile, m.file_ns_name, 1); + mm->block_ns = (char *)db_hdf5_comprd(dbfile, m.block_ns_name, 1); + mm->empty_list = (int *)db_hdf5_comprd(dbfile, m.empty_list, 1); mm->empty_cnt = m.empty_cnt; mm->repr_block_idx = m.repr_block_idx - 1; @@ -13071,12 +13676,10 @@ H5Tclose(o); } H5E_END_TRY; DBFreeMultimat(mm); - FREE(s); } END_PROTECT; return mm; } - /*------------------------------------------------------------------------- * Function: db_hdf5_PutMultimatspecies * @@ -13115,8 +13718,8 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK int -db_hdf5_PutMultimatspecies(DBfile *_dbfile, char *name, int nspec, - char *specnames[], DBoptlist *optlist) +db_hdf5_PutMultimatspecies(DBfile *_dbfile, char const *name, int nspec, + char const * const *specnames, DBoptlist const *optlist) { DBfile_hdf5 *dbfile = (DBfile_hdf5*)_dbfile; DBmultimatspecies_mt m; @@ -13141,7 +13744,7 @@ if (specnames) { for (i=len=0; igrouporigin = m.grouporigin; mm->guihide = m.guihide; mm->nmat = m.nmat; - mm->nmatspec = db_hdf5_comprd(dbfile, m.nmatspec, 1); + mm->nmatspec = (int *)db_hdf5_comprd(dbfile, m.nmatspec, 1); /* Read the raw data */ - s = db_hdf5_comprd(dbfile, m.specnames, 1); - if (s) mm->specnames = DBStringListToStringArray(s, &m.nspec, - handleSlashSwap, !skipFirstSemicolon); - FREE(s); + specnames = (char *)db_hdf5_comprd(dbfile, m.specnames, 1); + db_StringListToStringArrayMBOpt(specnames, &(mm->specnames), &(mm->specnames_alloc), m.nspec); if (mm->nmat > 0 && mm->nmatspec) { - char *tmpspecies_names = db_hdf5_comprd(dbfile, m.species_names, 1); - char *tmpspeccolors = db_hdf5_comprd(dbfile, m.speccolors, 1); + char *tmpspecies_names = (char *)db_hdf5_comprd(dbfile, m.species_names, 1); + char *tmpspeccolors = (char *)db_hdf5_comprd(dbfile, m.speccolors, 1); if (tmpspecies_names) { for (i = 0; i < mm->nmat; i++) nstrs += mm->nmatspec[i]; - mm->species_names = DBStringListToStringArray(tmpspecies_names, &nstrs, - !handleSlashSwap, !skipFirstSemicolon); + mm->species_names = DBStringListToStringArray(tmpspecies_names, &nstrs, !skipFirstSemicolon); } if (tmpspeccolors) { @@ -13346,16 +13945,15 @@ for (i = 0; i < mm->nmat; i++) nstrs += mm->nmatspec[i]; } - mm->speccolors = DBStringListToStringArray(tmpspeccolors, &nstrs, - !handleSlashSwap, !skipFirstSemicolon); + mm->speccolors = DBStringListToStringArray(tmpspeccolors, &nstrs, !skipFirstSemicolon); } FREE(tmpspecies_names); FREE(tmpspeccolors); } - mm->file_ns = db_hdf5_comprd(dbfile, m.file_ns_name, 1); - mm->block_ns = db_hdf5_comprd(dbfile, m.block_ns_name, 1); - mm->empty_list = db_hdf5_comprd(dbfile, m.empty_list, 1); + mm->file_ns = (char *)db_hdf5_comprd(dbfile, m.file_ns_name, 1); + mm->block_ns = (char *)db_hdf5_comprd(dbfile, m.block_ns_name, 1); + mm->empty_list = (int *)db_hdf5_comprd(dbfile, m.empty_list, 1); mm->empty_cnt = m.empty_cnt; mm->repr_block_idx = m.repr_block_idx; @@ -13367,12 +13965,10 @@ H5Tclose(o); } H5E_END_TRY; DBFreeMultimatspecies(mm); - FREE(s); } END_PROTECT; return mm; } - /*------------------------------------------------------------------------- * Function: db_hdf5_PutPointmesh * @@ -13412,14 +14008,14 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK int -db_hdf5_PutPointmesh(DBfile *_dbfile, char *name, int ndims, DB_DTPTR2 _coords, - int nels, int datatype, DBoptlist *optlist) +db_hdf5_PutPointmesh(DBfile *_dbfile, char const *name, int ndims, DBVCP2_t _coords, + int nels, int datatype, DBoptlist const *optlist) { DBfile_hdf5 *dbfile = (DBfile_hdf5*)_dbfile; static char *me = "db_hdf5_PutPointmesh"; DBpointmesh_mt m; int i; - DB_DTPTR **coords = (DB_DTPTR**) _coords; + void const * const *coords = (void const * const *) _coords; memset(&m, 0, sizeof m); PROTECT { @@ -13443,28 +14039,31 @@ _pm._dtime_set, _pm._dtime, _pm._cycle); /* Write raw data arrays */ - for (i=0; i0; i++) { db_hdf5_compwr(dbfile, datatype, 1, &nels, coords[i], m.coord[i]/*out*/, friendly_name(name, "_coord%d", &i)); } /* Find the mesh extents from the coordinate arrays */ - if (DB_DOUBLE==datatype) { - for (i=0; i0) + { + if (DB_DOUBLE==datatype) { + for (i=0; i0 && _pm._gnodeno) { if (_pm._llong_gnodeno) db_hdf5_compwr(dbfile, DB_LONG_LONG, 1, &nels, _pm._gnodeno, @@ -13474,6 +14073,20 @@ m.gnodeno/*out*/, friendly_name(name, "_gnodeno", 0)); } + if (nels>0 && _pm._ghost_node_labels) + { + db_hdf5_compwr(dbfile, DB_CHAR, 1, &nels, _pm._ghost_node_labels, + m.ghost_node_labels/*out*/, friendly_name(name, "_ghost_node_labels", 0)); + } + + if (_pm._alt_nodenum_vars) { + int len, nvars=-1; char *tmp; + DBStringArrayToStringList((char const * const *)_pm._alt_nodenum_vars, nvars, &tmp, &len); + db_hdf5_compwr(dbfile, DB_CHAR, 1, &len, tmp, + m.alt_nodenum_vars/*out*/, friendly_name(name, "_alt_nodenum_vars",0)); + FREE(tmp); + } + /* Build header in memory */ m.ndims = ndims; m.nspace = _pm._nspace; @@ -13514,6 +14127,8 @@ MEMBER_S(str(m.gnodeno), gnodeno); MEMBER_S(str(m.mrgtree_name), mrgtree_name); if (m.gnznodtype )MEMBER_S(int, gnznodtype); + MEMBER_S(str(m.ghost_node_labels), ghost_node_labels); + MEMBER_S(str(m.alt_nodenum_vars), alt_nodenum_vars); } OUTPUT(dbfile, DB_POINTMESH, name, &m); } CLEANUP { @@ -13522,7 +14137,6 @@ return 0; } - /*------------------------------------------------------------------------- * Function: db_hdf5_GetPointmesh * @@ -13547,7 +14161,7 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK DBpointmesh * -db_hdf5_GetPointmesh(DBfile *_dbfile, char *name) +db_hdf5_GetPointmesh(DBfile *_dbfile, char const *name) { DBfile_hdf5 *dbfile = (DBfile_hdf5*)_dbfile; static char *me = "db_hdf5_GetPointmesh"; @@ -13623,6 +14237,20 @@ pm->gnodeno = db_hdf5_comprd(dbfile, m.gnodeno, 1); pm->gnznodtype = m.gnznodtype?m.gnznodtype:DB_INT; + if (SILO_Globals.dataReadMask & DBPMGhostNodeLabels) + { + pm->ghost_node_labels = (char *)db_hdf5_comprd(dbfile, m.ghost_node_labels, 0); + } + + /* alternate node number variables */ + { + int nvars = -1; + char *tmpnames = (char *)db_hdf5_comprd(dbfile, m.alt_nodenum_vars, 1); + if (tmpnames) + pm->alt_nodenum_vars = DBStringListToStringArray(tmpnames, &nvars, !skipFirstSemicolon); + FREE(tmpnames); + } + H5Tclose(o); } CLEANUP { H5E_BEGIN_TRY { @@ -13634,7 +14262,6 @@ return pm; } - /*------------------------------------------------------------------------- * Function: db_hdf5_PutPointvar * @@ -13664,33 +14291,39 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK int -db_hdf5_PutPointvar(DBfile *_dbfile, char *name, char *meshname, int nvars, - DB_DTPTR2 _vars, int nels, int datatype, DBoptlist *optlist) +db_hdf5_PutPointvar(DBfile *_dbfile, char const *name, char const *meshname, int nvars, + DBVCP2_t _vars, int nels, int datatype, DBoptlist const *optlist) { DBfile_hdf5 *dbfile = (DBfile_hdf5*)_dbfile; DBpointvar_mt m; int i, saved_ndims; char *s = 0; - DB_DTPTR **vars = (DB_DTPTR**) _vars; + void const * const *vars = (void const * const *) _vars; memset(&m, 0, sizeof m); PROTECT { /* Set global options */ saved_ndims = _pm._ndims; memset(&_pm, 0, sizeof _pm); - _pm._ndims = _pm._nspace = saved_ndims; + _pm._ndims = saved_ndims; _pm._group_no = -1; + _pm._missing_value = DB_MISSING_VALUE_NOT_SET; db_ProcessOptlist(DB_POINTMESH, optlist); _pm._nels = nels; _pm._minindex = _pm._lo_offset; _pm._maxindex = nels - _pm._hi_offset - 1; + if (nvars>MAX_VARS) { + db_perror("too many variables", E_BADARGS, "db_hdf5_PutPointvar"); + UNWIND(); + } + /* hack to maintain backward compatibility with pdb driver */ db_hdf5_handle_ctdt(dbfile, _pm._time_set, _pm._time, _pm._dtime_set, _pm._dtime, _pm._cycle); /* Write raw data arrays */ - for (i=0; inels = m.nels; pv->nvals = m.nvals; pv->nspace = m.nspace; - pv->ndims = m.nvals; + pv->ndims = m.ndims; pv->origin = m.origin; pv->time = m.time; pv->dtime = m.dtime; @@ -13839,19 +14475,24 @@ pv->ascii_labels = m.ascii_labels; pv->conserved = m.conserved; pv->extensive = m.extensive; + db_SetMissingValueForGet(pv->missing_value, m.missing_value); + + if (pv->nvals>MAX_VARS) { + db_perror("too many variables", E_BADARGS, me); + UNWIND(); + } /* Read raw data */ - if (SILO_Globals.dataReadMask & DBPVData && m.nvals) + if (SILO_Globals.dataReadMask & DBPVData && m.nvals && m.nels) { - pv->vals = calloc(m.nvals, sizeof(void*)); + pv->vals = (void **)calloc(m.nvals, sizeof(void*)); for (i=0; ivals[i] = db_hdf5_comprd(dbfile, m.data[i], 0); } } - s = db_hdf5_comprd(dbfile, m.region_pnames, 1); - if (s) pv->region_pnames = DBStringListToStringArray(s, 0, - !handleSlashSwap, !skipFirstSemicolon); + s = (char *)db_hdf5_comprd(dbfile, m.region_pnames, 1); + if (s) pv->region_pnames = DBStringListToStringArray(s, 0, !skipFirstSemicolon); FREE(s); H5Tclose(o); @@ -13865,7 +14506,6 @@ return pv; } - /*------------------------------------------------------------------------- * Function: db_hdf5_PutCompoundarray * @@ -13886,9 +14526,17 @@ */ /*ARGSUSED*/ SILO_CALLBACK int -db_hdf5_PutCompoundarray(DBfile *_dbfile, char *name, char *elmtnames[], - int elmtlen[], int nelmts, void *values, - int nvalues, int datatype, DBoptlist *optlist) +db_hdf5_PutCompoundarray( + DBfile *_dbfile, + char const *name, + char const * const *elmtnames, + int const *elmtlen, + int nelmts, + void const *values, + int nvalues, + int datatype, + DBoptlist const *optlist +) { DBfile_hdf5 *dbfile = (DBfile_hdf5*)_dbfile; DBcompoundarray_mt m; @@ -13902,7 +14550,7 @@ * component names. */ for (i=len=0; idatatype = DB_FLOAT; /* Read the raw data */ - ca->elemlengths = db_hdf5_comprd(dbfile, m.elemlengths, 1); + ca->elemlengths = (int *)db_hdf5_comprd(dbfile, m.elemlengths, 1); ca->values = db_hdf5_comprd(dbfile, m.values, 1); - ca->elemnames = calloc(m.nelems, sizeof(char*)); - s = db_hdf5_comprd(dbfile, m.elemnames, 1); + ca->elemnames = (char **)calloc(m.nelems, sizeof(char*)); + s = (char *)db_hdf5_comprd(dbfile, m.elemnames, 1); for (i=0; ielemnames[i] = STRDUP(tok); @@ -14032,7 +14679,6 @@ return ca; } - /*------------------------------------------------------------------------- * Function: db_hdf5_InqVarType * @@ -14064,7 +14710,7 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK DBObjectType -db_hdf5_InqVarType(DBfile *_dbfile, char *name) +db_hdf5_InqVarType(DBfile *_dbfile, char const *name) { DBfile_hdf5 *dbfile = (DBfile_hdf5*)_dbfile; static char *me = "db_hdf5_InqVarType"; @@ -14104,7 +14750,6 @@ return (DBObjectType)_objtype; } - /*------------------------------------------------------------------------- * Function: db_hdf5_InqMeshName * @@ -14130,7 +14775,7 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK int -db_hdf5_InqMeshName(DBfile *_dbfile, char *name, char *meshname/*out*/) +db_hdf5_InqMeshName(DBfile *_dbfile, char const *name, char *meshname/*out*/) { DBfile_hdf5 *dbfile = (DBfile_hdf5*)_dbfile; static char *me = "db_hdf5_InqMeshName"; @@ -14202,7 +14847,7 @@ */ SILO_CALLBACK int db_hdf5_PutMrgtree(DBfile *_dbfile, char const *name, char const *mesh_name, - DBmrgtree *tree, DBoptlist *opts) + DBmrgtree const *tree, DBoptlist const *opts) { DBfile_hdf5 *dbfile = (DBfile_hdf5*)_dbfile; DBmrgtree_mt m; @@ -14224,7 +14869,7 @@ ltree = (DBmrgtnode **) malloc(num_nodes * sizeof(DBmrgtnode*)); /* walk tree to populate the linearized list of nodes ptrs */ - DBWalkMrgtree(tree, DBLinearizeMrgtree, ltree, DB_POSTORDER); + DBWalkMrgtree(tree, (DBmrgwalkcb) DBLinearizeMrgtree, ltree, DB_POSTORDER); /* form an array of the integer, scalar data at each node */ intArray = (int *) malloc(num_nodes * sizeof(int) * 6); @@ -14249,7 +14894,7 @@ /* output all the node names as one long dataset */ s = 0; - DBStringArrayToStringList(strArray, num_nodes, &s, &len); + DBStringArrayToStringList((char const * const *)strArray, num_nodes, &s, &len); db_hdf5_compwr(dbfile, DB_CHAR, 1, &len, s, m.n_name/*out*/, friendly_name(name, "_name", 0)); FREE(s); @@ -14291,7 +14936,7 @@ if (n > 0) { s = 0; - DBStringArrayToStringList(strArray, n, &s, &len); + DBStringArrayToStringList((char const * const *)strArray, n, &s, &len); db_hdf5_compwr(dbfile, DB_CHAR, 1, &len, s, m.n_names/*out*/, friendly_name(name, "_names", 0)); FREE(s); @@ -14304,7 +14949,7 @@ strArray[i] = ltree[i]->maps_name; s = 0; len = 0; - DBStringArrayToStringList(strArray, num_nodes, &s, &len); + DBStringArrayToStringList((char const * const *)strArray, num_nodes, &s, &len); db_hdf5_compwr(dbfile, DB_CHAR, 1, &len, s, m.n_maps_name/*out*/, friendly_name(name, "_maps_name", 0)); FREE(s); @@ -14315,54 +14960,61 @@ tot_segs += ltree[i]->nsegs * (ltree[i]->narray?ltree[i]->narray:1); /* linearize and output map segment id data */ - intArray = (int *) malloc(tot_segs * sizeof(int)); - n = 0; - for (i = 0; i < num_nodes; i++) - for (j = 0; j < ltree[i]->nsegs*(ltree[i]->narray?ltree[i]->narray:1); j++) - intArray[n++] = ltree[i]->seg_ids[j]; - db_hdf5_compwr(dbfile, DB_INT, 1, &tot_segs, intArray, - m.n_seg_ids/*out*/, friendly_name(name,"_seg_ids", 0)); - FREE(intArray); + if (tot_segs) + { + intArray = (int *) malloc(tot_segs * sizeof(int)); + n = 0; + for (i = 0; i < num_nodes; i++) + for (j = 0; j < ltree[i]->nsegs*(ltree[i]->narray?ltree[i]->narray:1); j++) + intArray[n++] = ltree[i]->seg_ids[j]; + db_hdf5_compwr(dbfile, DB_INT, 1, &tot_segs, intArray, + m.n_seg_ids/*out*/, friendly_name(name,"_seg_ids", 0)); + FREE(intArray); - /* linearize and output seg len type data */ - intArray = (int *) malloc(tot_segs * sizeof(int)); - n = 0; - for (i = 0; i < num_nodes; i++) - for (j = 0; j < ltree[i]->nsegs*(ltree[i]->narray?ltree[i]->narray:1); j++) - intArray[n++] = ltree[i]->seg_lens[j]; - db_hdf5_compwr(dbfile, DB_INT, 1, &tot_segs, intArray, - m.n_seg_lens/*out*/, friendly_name(name,"_seg_lens", 0)); - FREE(intArray); + /* linearize and output seg len type data */ + intArray = (int *) malloc(tot_segs * sizeof(int)); + n = 0; + for (i = 0; i < num_nodes; i++) + for (j = 0; j < ltree[i]->nsegs*(ltree[i]->narray?ltree[i]->narray:1); j++) + intArray[n++] = ltree[i]->seg_lens[j]; + db_hdf5_compwr(dbfile, DB_INT, 1, &tot_segs, intArray, + m.n_seg_lens/*out*/, friendly_name(name,"_seg_lens", 0)); + FREE(intArray); - /* linearize and output seg type data */ - intArray = (int *) malloc(tot_segs * sizeof(int)); - n = 0; - for (i = 0; i < num_nodes; i++) - for (j = 0; j < ltree[i]->nsegs*(ltree[i]->narray?ltree[i]->narray:1); j++) - intArray[n++] = ltree[i]->seg_types[j]; - db_hdf5_compwr(dbfile, DB_INT, 1, &tot_segs, intArray, - m.n_seg_types/*out*/, friendly_name(name,"_seg_types", 0)); - FREE(intArray); + /* linearize and output seg type data */ + intArray = (int *) malloc(tot_segs * sizeof(int)); + n = 0; + for (i = 0; i < num_nodes; i++) + for (j = 0; j < ltree[i]->nsegs*(ltree[i]->narray?ltree[i]->narray:1); j++) + intArray[n++] = ltree[i]->seg_types[j]; + db_hdf5_compwr(dbfile, DB_INT, 1, &tot_segs, intArray, + m.n_seg_types/*out*/, friendly_name(name,"_seg_types", 0)); + FREE(intArray); + } /* form integer array for children data */ tot_children = 0; for (i = 0; i < num_nodes; i++) tot_children += ltree[i]->num_children; - intArray = (int *) malloc(tot_children * sizeof(int)); - n = 0; - for (i = 0; i < num_nodes; i++) - for (j = 0; j < ltree[i]->num_children; j++) - intArray[n++] = ltree[i]->children[j]->walk_order; - db_hdf5_compwr(dbfile, DB_INT, 1, &tot_children, intArray, - m.n_children/*out*/, friendly_name(name,"_children", 0)); - FREE(intArray); + if (tot_children) + { + intArray = (int *) malloc(tot_children * sizeof(int)); + n = 0; + for (i = 0; i < num_nodes; i++) + for (j = 0; j < ltree[i]->num_children; j++) + intArray[n++] = ltree[i]->children[j]->walk_order; + db_hdf5_compwr(dbfile, DB_INT, 1, &tot_children, intArray, + m.n_children/*out*/, friendly_name(name,"_children", 0)); + FREE(intArray); + } + FREE(ltree); if (_mrgt._mrgvar_onames) { s = 0; len = 0; - DBStringArrayToStringList(_mrgt._mrgvar_onames, -1, &s, &len); + DBStringArrayToStringList((char const * const *)_mrgt._mrgvar_onames, -1, &s, &len); db_hdf5_compwr(dbfile, DB_CHAR, 1, &len, s, m.mrgvar_onames/*out*/, friendly_name(name, "_mrgvar_onames", 0)); FREE(s); @@ -14372,7 +15024,7 @@ { s = 0; len = 0; - DBStringArrayToStringList(_mrgt._mrgvar_rnames, -1, &s, &len); + DBStringArrayToStringList((char const * const *)_mrgt._mrgvar_rnames, -1, &s, &len); db_hdf5_compwr(dbfile, DB_CHAR, 1, &len, s, m.mrgvar_rnames/*out*/, friendly_name(name, "_mrgvar_rnames", 0)); FREE(s); @@ -14486,7 +15138,7 @@ ltree[i] = (DBmrgtnode *) calloc(1,sizeof(DBmrgtnode)); /* Read the nodal scalar data */ - intArray = db_hdf5_comprd(dbfile, m.n_scalars, 1); + intArray = (int *)db_hdf5_comprd(dbfile, m.n_scalars, 1); for (i = 0; (i < num_nodes) && intArray; i++) { ltree[i]->narray = intArray[i*6+0]; @@ -14499,20 +15151,18 @@ FREE(intArray); /* read the node 'name' member */ - s = db_hdf5_comprd(dbfile, m.n_name, 1); - strArray = DBStringListToStringArray(s, &num_nodes, - !handleSlashSwap, !skipFirstSemicolon); + s = (char *)db_hdf5_comprd(dbfile, m.n_name, 1); + strArray = DBStringListToStringArray(s, &num_nodes, !skipFirstSemicolon); for (i = 0; (i < num_nodes) && strArray; i++) ltree[i]->name = strArray[i]; FREE(s); FREE(strArray); /* free only top-level array of pointers */ /* read the node 'names' member */ - s = db_hdf5_comprd(dbfile, m.n_names, 1); + s = (char *)db_hdf5_comprd(dbfile, m.n_names, 1); if (s) { - strArray = DBStringListToStringArray(s, 0, - !handleSlashSwap, !skipFirstSemicolon); + strArray = DBStringListToStringArray(s, 0, !skipFirstSemicolon); n = 0; for (i = 0; i < num_nodes; i++) { @@ -14537,16 +15187,15 @@ FREE(strArray); /* free only top-level array of pointers */ /* read the maps_name data */ - s = db_hdf5_comprd(dbfile, m.n_maps_name, 1); - strArray = DBStringListToStringArray(s, &num_nodes, - !handleSlashSwap, !skipFirstSemicolon); + s = (char *)db_hdf5_comprd(dbfile, m.n_maps_name, 1); + strArray = DBStringListToStringArray(s, &num_nodes, !skipFirstSemicolon); for (i = 0; i < num_nodes; i++) ltree[i]->maps_name = strArray[i]; FREE(s); FREE(strArray); /* free only top-level array of pointers */ /* read the map segment id data */ - intArray = db_hdf5_comprd(dbfile, m.n_seg_ids, 1); + intArray = (int *)db_hdf5_comprd(dbfile, m.n_seg_ids, 1); n = 0; for (i = 0; (i < num_nodes) && intArray; i++) { @@ -14561,7 +15210,7 @@ FREE(intArray); /* read the map segment len data */ - intArray = db_hdf5_comprd(dbfile, m.n_seg_lens, 1); + intArray = (int *)db_hdf5_comprd(dbfile, m.n_seg_lens, 1); n = 0; for (i = 0; (i < num_nodes) && intArray; i++) { @@ -14576,7 +15225,7 @@ FREE(intArray); /* read the map segment type data */ - intArray = db_hdf5_comprd(dbfile, m.n_seg_types, 1); + intArray = (int *)db_hdf5_comprd(dbfile, m.n_seg_types, 1); n = 0; for (i = 0; (i < num_nodes) && intArray; i++) { @@ -14591,7 +15240,7 @@ FREE(intArray); /* read the child ids */ - intArray = db_hdf5_comprd(dbfile, m.n_children, 1); + intArray = (int *)db_hdf5_comprd(dbfile, m.n_children, 1); n = 0; for (i = 0; (i < num_nodes) && intArray; i++) { @@ -14605,14 +15254,12 @@ } FREE(intArray); - s = db_hdf5_comprd(dbfile, m.mrgvar_onames, 1); - if (s) tree->mrgvar_onames = DBStringListToStringArray(s, 0, - !handleSlashSwap, !skipFirstSemicolon); + s = (char *)db_hdf5_comprd(dbfile, m.mrgvar_onames, 1); + if (s) tree->mrgvar_onames = DBStringListToStringArray(s, 0, !skipFirstSemicolon); FREE(s); - s = db_hdf5_comprd(dbfile, m.mrgvar_rnames, 1); - if (s) tree->mrgvar_rnames = DBStringListToStringArray(s, 0, - !handleSlashSwap, !skipFirstSemicolon); + s = (char *)db_hdf5_comprd(dbfile, m.mrgvar_rnames, 1); + if (s) tree->mrgvar_rnames = DBStringListToStringArray(s, 0, !skipFirstSemicolon); FREE(s); tree->root = ltree[m.root]; @@ -14646,9 +15293,9 @@ */ SILO_CALLBACK int db_hdf5_PutGroupelmap(DBfile *_dbfile, char const *name, - int num_segments, int *groupel_types, int *segment_lengths, - int *segment_ids, int **segment_data, void **segment_fracs, - int fracs_data_type, DBoptlist *opts) + int num_segments, int const *groupel_types, int const *segment_lengths, + int const *segment_ids, int const * const *segment_data, void const * const *segment_fracs, + int fracs_data_type, DBoptlist const *opts) { DBfile_hdf5 *dbfile = (DBfile_hdf5*)_dbfile; DBgroupelmap_mt m; @@ -14673,14 +15320,17 @@ tot_len = 0; for (i = 0; i < num_segments; i++) tot_len += segment_lengths[i]; - intArray = (int *) malloc(tot_len * sizeof(int)); - tot_len = 0; - for (i = 0; i < num_segments; i++) - for (j = 0; j < segment_lengths[i]; j++) - intArray[tot_len++] = segment_data[i][j]; - db_hdf5_compwr(dbfile, DB_INT, 1, &tot_len, intArray, - m.segment_data/*out*/, friendly_name(name,"_segment_data", 0)); - FREE(intArray); + if (tot_len) + { + intArray = (int *) malloc(tot_len * sizeof(int)); + tot_len = 0; + for (i = 0; i < num_segments; i++) + for (j = 0; j < segment_lengths[i]; j++) + intArray[tot_len++] = segment_data[i][j]; + db_hdf5_compwr(dbfile, DB_INT, 1, &tot_len, intArray, + m.segment_data/*out*/, friendly_name(name,"_segment_data", 0)); + FREE(intArray); + } /* write out fractional data if we have it */ if (segment_fracs) @@ -14812,13 +15462,13 @@ gm->fracs_data_type = DB_FLOAT; /* Read the raw data */ - gm->groupel_types = db_hdf5_comprd(dbfile, m.groupel_types, 1); - gm->segment_lengths = db_hdf5_comprd(dbfile, m.segment_lengths, 1); - gm->segment_ids = db_hdf5_comprd(dbfile, m.segment_ids, 1); + gm->groupel_types = (int *)db_hdf5_comprd(dbfile, m.groupel_types, 1); + gm->segment_lengths = (int *)db_hdf5_comprd(dbfile, m.segment_lengths, 1); + gm->segment_ids = (int *)db_hdf5_comprd(dbfile, m.segment_ids, 1); /* read the map segment data */ gm->segment_data = (int **) malloc(m.num_segments * sizeof(int*)); - intArray = db_hdf5_comprd(dbfile, m.segment_data, 1); + intArray = (int *)db_hdf5_comprd(dbfile, m.segment_data, 1); n = 0; for (i = 0; (i < m.num_segments) && intArray && gm->segment_lengths; i++) { @@ -14833,10 +15483,10 @@ } FREE(intArray); - intArray = db_hdf5_comprd(dbfile, m.frac_lengths, 1); + intArray = (int *)db_hdf5_comprd(dbfile, m.frac_lengths, 1); if (intArray) { - gm->segment_fracs = malloc(m.num_segments * sizeof(void*)); + gm->segment_fracs = (void **)malloc(m.num_segments * sizeof(void*)); fracsArray = db_hdf5_comprd(dbfile, m.segment_fracs, 1); n = 0; for (i = 0; (i < m.num_segments) && fracsArray; i++) @@ -14899,9 +15549,9 @@ SILO_CALLBACK int db_hdf5_PutMrgvar(DBfile *_dbfile, char const *name, char const *mrgt_name, - int ncomps, char **compnames, - int nregns, char **reg_pnames, - int datatype, void **data, DBoptlist *optlist) + int ncomps, char const * const *compnames, + int nregns, char const * const *reg_pnames, + int datatype, void const * const *data, DBoptlist const *optlist) { DBfile_hdf5 *dbfile = (DBfile_hdf5*)_dbfile; static char *me = "db_hdf5_PutMrgvar"; @@ -14935,7 +15585,7 @@ nstrs = nregns; if (strchr(reg_pnames[0], '%') != 0) nstrs = 1; - DBStringArrayToStringList(reg_pnames, nstrs, &s, &len); + DBStringArrayToStringList((char const * const *)reg_pnames, nstrs, &s, &len); db_hdf5_compwr(dbfile, DB_CHAR, 1, &len, s, m.reg_pnames/*out*/, friendly_name(name, "_reg_pnames", 0)); FREE(s); @@ -14943,7 +15593,7 @@ if (compnames) { /* output compnames */ - DBStringArrayToStringList(compnames, ncomps, &s, &len); + DBStringArrayToStringList((char const * const *)compnames, ncomps, &s, &len); db_hdf5_compwr(dbfile, DB_CHAR, 1, &len, s, m.compnames/*out*/, friendly_name(name, "_compnames", 0)); FREE(s); @@ -15039,19 +15689,17 @@ db_perror(name, E_CALLFAIL, me); UNWIND(); } - mrgv->data = calloc(m.ncomps, sizeof(void*)); + mrgv->data = (void **)calloc(m.ncomps, sizeof(void*)); for (i=0; idata[i] = db_hdf5_comprd(dbfile, m.data[i], 0); } - s = db_hdf5_comprd(dbfile, m.compnames, 1); - if (s) mrgv->compnames = DBStringListToStringArray(s, &m.ncomps, - !handleSlashSwap, !skipFirstSemicolon); + s = (char *)db_hdf5_comprd(dbfile, m.compnames, 1); + if (s) mrgv->compnames = DBStringListToStringArray(s, &m.ncomps, !skipFirstSemicolon); FREE(s); - s = db_hdf5_comprd(dbfile, m.reg_pnames, 1); - if (s) mrgv->reg_pnames = DBStringListToStringArray(s, 0, - !handleSlashSwap, !skipFirstSemicolon); + s = (char *)db_hdf5_comprd(dbfile, m.reg_pnames, 1); + if (s) mrgv->reg_pnames = DBStringListToStringArray(s, 0, !skipFirstSemicolon); FREE(s); H5Tclose(o); @@ -15151,10 +15799,408 @@ #endif } -#else +#if HDF5_VERSION_GE(1,8,9) +/* Definition of callbacks for file image operations. [ */ + +/*------------------------------------------------------------------------- +* Function: image_malloc +* +* Purpose: Simulates malloc() function to avoid copying file images. +* The application buffer is set to the buffer on only one FAPL. +* Then the FAPL buffer can be copied to other FAPL buffers or +* to only one VFD buffer. +* +* Return: Address of "allocated" buffer, if successful. Otherwise, it returns +* NULL. +* +* Programmer: Christian Chilan +* +* Date: October 3, 2011 +* +*------------------------------------------------------------------------- +*/ +static void * +image_malloc(size_t size, H5FD_file_image_op_t file_image_op, void *_udata) +{ + db_hdf5_H5LT_file_image_ud_t *udata = (db_hdf5_H5LT_file_image_ud_t *)_udata; + void * return_value = NULL; + + /* callback is only used if the application buffer is not actually copied */ + if (!(udata->flags & db_hdf5_H5LT_FILE_IMAGE_DONT_COPY)) + goto out; + + switch ( file_image_op ) { + /* the app buffer is "copied" to only one FAPL. Afterwards, FAPLs can be "copied" */ + case H5FD_FILE_IMAGE_OP_PROPERTY_LIST_SET: + if (udata->app_image_ptr == NULL) + goto out; + if (udata->app_image_size != size) + goto out; + if (udata->fapl_image_ptr != NULL) + goto out; + if (udata->fapl_image_size != 0) + goto out; + if (udata->fapl_ref_count != 0) + goto out; + + udata->fapl_image_ptr = udata->app_image_ptr; + udata->fapl_image_size = udata->app_image_size; + return_value = udata->fapl_image_ptr; + udata->fapl_ref_count++; + break; + + case H5FD_FILE_IMAGE_OP_PROPERTY_LIST_COPY: + if (udata->fapl_image_ptr == NULL) + goto out; + if (udata->fapl_image_size != size) + goto out; + if (udata->fapl_ref_count == 0) + goto out; + + return_value = udata->fapl_image_ptr; + udata->fapl_ref_count++; + break; + + case H5FD_FILE_IMAGE_OP_PROPERTY_LIST_GET: + goto out; + + case H5FD_FILE_IMAGE_OP_FILE_OPEN: + /* FAPL buffer is "copied" to only one VFD buffer */ + if (udata->vfd_image_ptr != NULL) + goto out; + if (udata->vfd_image_size != 0) + goto out; + if (udata->vfd_ref_count != 0) + goto out; + if (udata->fapl_image_ptr == NULL) + goto out; + if (udata->fapl_image_size != size) + goto out; + if (udata->fapl_ref_count == 0) + goto out; + + udata->vfd_image_ptr = udata->fapl_image_ptr; + udata->vfd_image_size = size; + udata->vfd_ref_count++; + return_value = udata->vfd_image_ptr; + break; + + /* added unused labels to shut the compiler up */ + case H5FD_FILE_IMAGE_OP_NO_OP: + case H5FD_FILE_IMAGE_OP_PROPERTY_LIST_CLOSE: + case H5FD_FILE_IMAGE_OP_FILE_RESIZE: + case H5FD_FILE_IMAGE_OP_FILE_CLOSE: + default: + goto out; + } /* end switch */ + + return(return_value); + +out: + return NULL; +} /* end image_malloc() */ + +/*------------------------------------------------------------------------- +* Function: image_memcpy +* +* Purpose: Simulates memcpy() function to avoid copying file images. +* The image buffer can be set to only one FAPL buffer, and +* "copied" to only one VFD buffer. The FAPL buffer can be +* "copied" to other FAPLs buffers. +* +* Return: The address of the destination buffer, if successful. Otherwise, it +* returns NULL. +* +* Programmer: Christian Chilan +* +* Date: October 3, 2011 +* +*------------------------------------------------------------------------- +*/ +static void * +image_memcpy(void *dest, const void *src, size_t size, H5FD_file_image_op_t file_image_op, + void *_udata) +{ + db_hdf5_H5LT_file_image_ud_t *udata = (db_hdf5_H5LT_file_image_ud_t *)_udata; + + /* callback is only used if the application buffer is not actually copied */ + if (!(udata->flags & db_hdf5_H5LT_FILE_IMAGE_DONT_COPY)) + goto out; + + switch(file_image_op) { + case H5FD_FILE_IMAGE_OP_PROPERTY_LIST_SET: + if (dest != udata->fapl_image_ptr) + goto out; + if (src != udata->app_image_ptr) + goto out; + if (size != udata->fapl_image_size) + goto out; + if (size != udata->app_image_size) + goto out; + if (udata->fapl_ref_count == 0) + goto out; + break; + + case H5FD_FILE_IMAGE_OP_PROPERTY_LIST_COPY: + if (dest != udata->fapl_image_ptr) + goto out; + if (src != udata->fapl_image_ptr) + goto out; + if (size != udata->fapl_image_size) + goto out; + if (udata->fapl_ref_count < 2) + goto out; + break; + + case H5FD_FILE_IMAGE_OP_PROPERTY_LIST_GET: + goto out; + + case H5FD_FILE_IMAGE_OP_FILE_OPEN: + if (dest != udata->vfd_image_ptr) + goto out; + if (src != udata->fapl_image_ptr) + goto out; + if (size != udata->vfd_image_size) + goto out; + if (size != udata->fapl_image_size) + goto out; + if (udata->fapl_ref_count == 0) + goto out; + if (udata->vfd_ref_count != 1) + goto out; + break; + + /* added unused labels to shut the compiler up */ + case H5FD_FILE_IMAGE_OP_NO_OP: + case H5FD_FILE_IMAGE_OP_PROPERTY_LIST_CLOSE: + case H5FD_FILE_IMAGE_OP_FILE_RESIZE: + case H5FD_FILE_IMAGE_OP_FILE_CLOSE: + default: + goto out; + } /* end switch */ + + return(dest); + +out: + return NULL; +} /* end image_memcpy() */ + +/*------------------------------------------------------------------------- +* Function: image_realloc +* +* Purpose: Reallocates the shared application image buffer and updates data +* structures that manage buffer "copying". +* +* Return: Address of reallocated buffer, if successful. Otherwise, it returns +* NULL. +* +* Programmer: Christian Chilan +* +* Date: October 3, 2011 +* +*------------------------------------------------------------------------- +*/ +static void * +image_realloc(void *ptr, size_t size, H5FD_file_image_op_t file_image_op, void *_udata) +{ + db_hdf5_H5LT_file_image_ud_t *udata = (db_hdf5_H5LT_file_image_ud_t *)_udata; + void * return_value = NULL; + + /* callback is only used if the application buffer is not actually copied */ + if (!(udata->flags & db_hdf5_H5LT_FILE_IMAGE_DONT_COPY)) + goto out; + + /* realloc() is not allowed when the HDF5 library won't release the image + buffer because reallocation may change the address of the buffer. The + new address cannot be communicated to the application to release it. */ + if (udata->flags & db_hdf5_H5LT_FILE_IMAGE_DONT_RELEASE) + goto out; + + /* realloc() is not allowed if the image is open in read-only mode */ + if (!(udata->flags & db_hdf5_H5LT_FILE_IMAGE_OPEN_RW)) + goto out; + + if (file_image_op == H5FD_FILE_IMAGE_OP_FILE_RESIZE) { + if (udata->vfd_image_ptr != ptr) + goto out; + + if (udata->vfd_ref_count != 1) + goto out; + + if (NULL == (udata->vfd_image_ptr = realloc(ptr, size))) + goto out; + + udata->vfd_image_size = size; + return_value = udata->vfd_image_ptr; + } /* end if */ + else + goto out; + + return(return_value); + +out: + return NULL; +} /* end image_realloc() */ + + +/*------------------------------------------------------------------------- +* Function: image_free +* +* Purpose: Simulates deallocation of FAPL and VFD buffers by decreasing +* reference counters. Shared application buffer is actually +* deallocated if there are no outstanding references. +* +* Return: SUCCEED or FAIL +* +* Programmer: Christian Chilan +* +* Date: October 3, 2011 +* +*------------------------------------------------------------------------- +*/ +static herr_t +image_free(void *ptr, H5FD_file_image_op_t file_image_op, void *_udata) +{ + db_hdf5_H5LT_file_image_ud_t *udata = (db_hdf5_H5LT_file_image_ud_t *)_udata; + + /* callback is only used if the application buffer is not actually copied */ + if (!(udata->flags & db_hdf5_H5LT_FILE_IMAGE_DONT_COPY)) + goto out; + + switch(file_image_op) { + case H5FD_FILE_IMAGE_OP_PROPERTY_LIST_CLOSE: + if (udata->fapl_image_ptr != ptr) + goto out; + if (udata->fapl_ref_count == 0) + goto out; + + udata->fapl_ref_count--; + + /* release the shared buffer only if indicated by the respective flag and there are no outstanding references */ + if (udata->fapl_ref_count == 0 && udata->vfd_ref_count == 0 && + !(udata->flags & db_hdf5_H5LT_FILE_IMAGE_DONT_RELEASE)) { + free(udata->fapl_image_ptr); + udata->app_image_ptr = NULL; + udata->fapl_image_ptr = NULL; + udata->vfd_image_ptr = NULL; + } /* end if */ + break; + + case H5FD_FILE_IMAGE_OP_FILE_CLOSE: + if (udata->vfd_image_ptr != ptr) + goto out; + if (udata->vfd_ref_count != 1) + goto out; + + udata->vfd_ref_count--; + + /* release the shared buffer only if indicated by the respective flag and there are no outstanding references */ + if (udata->fapl_ref_count == 0 && udata->vfd_ref_count == 0 && + !(udata->flags & db_hdf5_H5LT_FILE_IMAGE_DONT_RELEASE)) { + free(udata->vfd_image_ptr); + udata->app_image_ptr = NULL; + udata->fapl_image_ptr = NULL; + udata->vfd_image_ptr = NULL; + } /* end if */ + break; + + /* added unused labels to keep the compiler quite */ + case H5FD_FILE_IMAGE_OP_NO_OP: + case H5FD_FILE_IMAGE_OP_PROPERTY_LIST_SET: + case H5FD_FILE_IMAGE_OP_PROPERTY_LIST_COPY: + case H5FD_FILE_IMAGE_OP_PROPERTY_LIST_GET: + case H5FD_FILE_IMAGE_OP_FILE_OPEN: + case H5FD_FILE_IMAGE_OP_FILE_RESIZE: + default: + goto out; + } /* end switch */ + + return(0); + +out: + return(-1); +} /* end image_free() */ + +/*------------------------------------------------------------------------- +* Function: udata_copy +* +* Purpose: Simulates the copying of the user data structure utilized in the +* management of the "copying" of file images. +* +* Return: Address of "newly allocated" structure, if successful. Otherwise, it +* returns NULL. +* +* Programmer: Christian Chilan +* +* Date: October 3, 2011 +* +*------------------------------------------------------------------------- +*/ +static void * +udata_copy(void *_udata) +{ + db_hdf5_H5LT_file_image_ud_t *udata = (db_hdf5_H5LT_file_image_ud_t *)_udata; + + /* callback is only used if the application buffer is not actually copied */ + if (!(udata->flags & db_hdf5_H5LT_FILE_IMAGE_DONT_COPY)) + goto out; + if (udata->ref_count == 0) + goto out; + + udata->ref_count++; + + return(udata); + +out: + return NULL; +} /* end udata_copy */ + + +/*------------------------------------------------------------------------- +* Function: udata_free +* +* Purpose: Simulates deallocation of the user data structure utilized in the +* management of the "copying" of file images. The data structure is +* actually deallocated when there are no outstanding references. +* +* Return: SUCCEED or FAIL +* +* Programmer: Christian Chilan +* +* Date: October 3, 2011 +* +*------------------------------------------------------------------------- +*/ +static herr_t +udata_free(void *_udata) +{ + db_hdf5_H5LT_file_image_ud_t *udata = (db_hdf5_H5LT_file_image_ud_t *)_udata; + + /* callback is only used if the application buffer is not actually copied */ + if (!(udata->flags & db_hdf5_H5LT_FILE_IMAGE_DONT_COPY)) + goto out; + if (udata->ref_count == 0) + goto out; + + udata->ref_count--; + + /* checks that there are no references outstanding before deallocating udata */ + if (udata->ref_count == 0 && udata->fapl_ref_count == 0 && + udata->vfd_ref_count == 0) + free(udata); + + return(0); + +out: + return(-1); +} /* end udata_free */ +#endif /* ] #if HDF5_VERSION_GE(1,8,9) */ + +#else /* ] defined(HAVE_HDF5_H) && defined(HAVE_LIBHDF5) [ */ + /* Stub for when we don't have hdf5 */ INTERNAL DBfile * -db_hdf5_Open(char *name, int mode, int subtype) +db_hdf5_Open(char const *name, int mode, int subtype) { db_perror(name, E_NOTIMP, "db_hdf5_Open"); return NULL; @@ -15162,7 +16208,7 @@ /* Stub for when we don't have hdf5 */ INTERNAL DBfile * -db_hdf5_Create(char *name, int mode, int target, int subtype, char *finfo) +db_hdf5_Create(char const *name, int mode, int target, int subtype, char const *finfo) { db_perror(name, E_NOTIMP, "db_hdf5_Create"); return NULL; @@ -15175,5 +16221,4 @@ return 0; /*no-op, don't fail*/ } - -#endif /* defined(HAVE_HDF5_H) && defined(HAVE_LIBHDF5) */ +#endif /* ] defined(HAVE_HDF5_H) && defined(HAVE_LIBHDF5) */ diff -Nru silo-llnl-4.10.2/src/hdf5_drv/silo_hdf5_private.h silo-llnl-4.10.2.real/src/hdf5_drv/silo_hdf5_private.h --- silo-llnl-4.10.2/src/hdf5_drv/silo_hdf5_private.h 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/src/hdf5_drv/silo_hdf5_private.h 2018-02-15 17:25:43.000000000 +0000 @@ -101,54 +101,76 @@ SILO_CALLBACK int db_hdf5_Filters(DBfile *_dbfile, FILE *stream); /* Directory operations */ -SILO_CALLBACK int db_hdf5_MkDir(DBfile *_dbfile, char *name); -SILO_CALLBACK int db_hdf5_SetDir(DBfile *_dbfile, char *name); +SILO_CALLBACK int db_hdf5_MkDir(DBfile *_dbfile, char const *name); +SILO_CALLBACK int db_hdf5_SetDir(DBfile *_dbfile, char const *name); SILO_CALLBACK int db_hdf5_GetDir(DBfile *_dbfile, char *name/*out*/); SILO_CALLBACK int db_hdf5_CpDir(DBfile *_dbfile, char const *srcDir, DBfile *dstFile, char const *dstDir); SILO_CALLBACK int db_hdf5_NewToc(DBfile *_dbfile); /* Variable inquiries */ -SILO_CALLBACK int db_hdf5_InqVarExists (DBfile *_dbfile, char *varname); -SILO_CALLBACK int db_hdf5_GetVarLength(DBfile *_dbfile, char *name); -SILO_CALLBACK int db_hdf5_GetVarByteLength(DBfile *_dbfile, char *name); -SILO_CALLBACK int db_hdf5_GetVarType(DBfile *_dbfile, char *name); -SILO_CALLBACK int db_hdf5_GetVarDims(DBfile *_dbfile, char *varname, int maxdims, +SILO_CALLBACK int db_hdf5_InqVarExists (DBfile *_dbfile, char const *varname); +SILO_CALLBACK int db_hdf5_GetVarLength(DBfile *_dbfile, char const *name); +SILO_CALLBACK int db_hdf5_GetVarByteLength(DBfile *_dbfile, char const *name); +SILO_CALLBACK int db_hdf5_GetVarType(DBfile *_dbfile, char const *name); +SILO_CALLBACK int db_hdf5_GetVarDims(DBfile *_dbfile, char const *varname, int maxdims, int *dims/*out*/); /* Variable I/O */ -SILO_CALLBACK void *db_hdf5_GetVar(DBfile *_dbfile, char *name); -SILO_CALLBACK int db_hdf5_ReadVar (DBfile *, char *, void *); -SILO_CALLBACK int db_hdf5_ReadVarSlice (DBfile *, char *, int *, int *, int *, +SILO_CALLBACK void *db_hdf5_GetVar(DBfile *_dbfile, char const *name); +SILO_CALLBACK int db_hdf5_ReadVar (DBfile *, char const *, void *); +SILO_CALLBACK int db_hdf5_ReadVarSlice (DBfile *, char const *, int const *, int const *, int const *, int, void *); -SILO_CALLBACK int db_hdf5_Write (DBfile *, char *, void *, int *, int, int); -SILO_CALLBACK int db_hdf5_WriteSlice (DBfile*, char*, void*, int, int[], int[], - int[], int[], int); +SILO_CALLBACK int db_hdf5_Write( + DBfile *dbfile, + char const *array_name, + void const *data, + int const *dims, + int ndims, + int datatype +); +SILO_CALLBACK int db_hdf5_WriteSlice( + DBfile *dbfile, + char const *array_name, + void const *data, + int datatype, + int const *offsets, + int const *lengths, + int const *strides, + int const *dims, + int ndims +); /* Low-level object functions */ -SILO_CALLBACK DBobject *db_hdf5_GetObject(DBfile *_dbfile, char *name); -SILO_CALLBACK int db_hdf5_GetComponentNames(DBfile *_dbfile, char *objname, +SILO_CALLBACK DBobject *db_hdf5_GetObject(DBfile *_dbfile, char const *name); +SILO_CALLBACK int db_hdf5_GetComponentNames(DBfile *_dbfile, char const *objname, char ***comp_names, char ***file_names); SILO_CALLBACK int db_hdf5_WriteObject(DBfile *_dbfile, DBobject const *obj, int flags); SILO_CALLBACK int db_hdf5_WriteComponent(DBfile *_dbfile, DBobject *obj, char const *compname, char const *prefix, char const *datatype, void const *data, int rank, long const _size[]); -SILO_CALLBACK int db_hdf5_GetComponentType(DBfile *_dbfile, char *objname, - char *compname); -SILO_CALLBACK void *db_hdf5_GetComponent(DBfile *_dbfile, char *objname, - char *compname); -SILO_CALLBACK void *db_hdf5_GetComponentStuff(DBfile *_dbfile, char *objname, - char *compname, int *just_get_datatype); -SILO_CALLBACK DBObjectType db_hdf5_InqVarType(DBfile *_dbfile, char *name); -SILO_CALLBACK int db_hdf5_InqMeshName(DBfile *_dbfile, char *name, +SILO_CALLBACK int db_hdf5_GetComponentType(DBfile *_dbfile, char const *objname, + char const *compname); +SILO_CALLBACK void *db_hdf5_GetComponent(DBfile *_dbfile, char const *objname, + char const *compname); +SILO_CALLBACK void *db_hdf5_GetComponentStuff(DBfile *_dbfile, char const *objname, + char const *compname, int *just_get_datatype); +SILO_CALLBACK DBObjectType db_hdf5_InqVarType(DBfile *_dbfile, char const *name); +SILO_CALLBACK int db_hdf5_InqMeshName(DBfile *_dbfile, char const *name, char *meshname/*out*/); /* Curves */ -SILO_CALLBACK int db_hdf5_PutCurve(DBfile *_dbfile, char *name, void *xvals, - void *yvals, int dtype, int npts, - DBoptlist *opts); -SILO_CALLBACK DBcurve *db_hdf5_GetCurve(DBfile *_dbfile, char *name); +SILO_CALLBACK int db_hdf5_PutCurve( + DBfile *_dbfile, + char const *name, + void const *xvals, + void const *yvals, + int dtype, + int npts, + DBoptlist const *opts +); +SILO_CALLBACK DBcurve *db_hdf5_GetCurve(DBfile *_dbfile, char const *name); /* Csgmeshes */ SILO_CALLBACK int db_hdf5_PutCsgmesh(DBfile *_dbfile, char const *name, int ndims, @@ -156,157 +178,202 @@ int const *bndids/*optional*/, void const *coeffs, int lcoeffs, int datatype, double const *extents, char const *zonel_name, - DBoptlist *optlist); + DBoptlist const *optlist); SILO_CALLBACK DBcsgmesh *db_hdf5_GetCsgmesh(DBfile *_dbfile, char const *name); SILO_CALLBACK int db_hdf5_PutCsgvar(DBfile *_dbfile, char const *vname, char const *meshname, - int nvars, char *varnames[], void *vars[], - int nvals, int datatype, int centering, DBoptlist *optlist); + int nvars, char const * const *varnames, void const * const *vars, + int nvals, int datatype, int centering, DBoptlist const *optlist); SILO_CALLBACK DBcsgvar *db_hdf5_GetCsgvar(DBfile *_dbfile, char const *name); SILO_CALLBACK int db_hdf5_PutCSGZonelist(DBfile *_dbfile, char const *name, int nregs, int const *typeflags, int const *leftids, int const *rightids, void const *xforms, int lxforms, int datatype, - int nzones, int const *zonelist, DBoptlist *optlist); + int nzones, int const *zonelist, DBoptlist const *optlist); SILO_CALLBACK DBcsgzonelist *db_hdf5_GetCSGZonelist(DBfile *_dbfile, char const *name); /* Defvars */ -SILO_CALLBACK int db_hdf5_PutDefvars(DBfile *dbfile, char const *name, int ndefs, - char *names[], int const *types, - char *defns[], DBoptlist *opts[]); +SILO_CALLBACK int db_hdf5_PutDefvars( + DBfile *dbfile, char const *name, + int ndefs, + char const * const *names, + int const *types, + char const * const *defns, + DBoptlist const * const *opts +); SILO_CALLBACK DBdefvars *db_hdf5_GetDefvars(DBfile *_dbfile, char const *name); /* Quadmeshes */ -SILO_CALLBACK int db_hdf5_PutQuadmesh(DBfile *_dbfile, char *name, - char *coordnames[], DB_DTPTR2 coords, - int dims[], int ndims, int datatype, - int coordtype, DBoptlist *optlist); -SILO_CALLBACK DBquadmesh *db_hdf5_GetQuadmesh (DBfile *_dbfile, char *name); -SILO_CALLBACK int db_hdf5_PutQuadvar(DBfile *_dbfile, char *name, char *meshname, - int nvars, char *varnames[/*nvars*/], - DB_DTPTR2 vars, int dims[/*ndims*/], - int ndims, DB_DTPTR2 mixvars, +SILO_CALLBACK int db_hdf5_PutQuadmesh(DBfile *_dbfile, char const *name, + char const * const *coordnames, DBVCP2_t coords, + int const *dims, int ndims, int datatype, + int coordtype, DBoptlist const *optlist); +SILO_CALLBACK DBquadmesh *db_hdf5_GetQuadmesh (DBfile *_dbfile, char const *name); +SILO_CALLBACK int db_hdf5_PutQuadvar(DBfile *_dbfile, char const *name, char const *meshname, + int nvars, char const * const *varnames, + DBVCP2_t vars, int const *dims, + int ndims, DBVCP2_t mixvars, int mixlen, int datatype, int centering, - DBoptlist *optlist); -SILO_CALLBACK DBquadvar *db_hdf5_GetQuadvar(DBfile *_dbfile, char *name); + DBoptlist const *optlist); +SILO_CALLBACK DBquadvar *db_hdf5_GetQuadvar(DBfile *_dbfile, char const *name); /* Unstructured meshes */ -SILO_CALLBACK int db_hdf5_PutUcdmesh(DBfile *_dbfile, char *name, int ndims, - char *coordnames[/*ndims*/], - DB_DTPTR2 coords, int nnodes, - int nzones, char *zlname, char *flname, - int datatype, DBoptlist *optlist); -SILO_CALLBACK int db_hdf5_PutUcdsubmesh(DBfile *_dbfile, char *name, - char *parentmesh, int nzones, char *zlname, - char *flname, DBoptlist *optlist); -SILO_CALLBACK DBucdmesh *db_hdf5_GetUcdmesh(DBfile *_dbfile, char *name); -SILO_CALLBACK int db_hdf5_PutUcdvar(DBfile *_dbfile, char *name, char *meshname, - int nvars, char *varnames[/*nvars*/], - DB_DTPTR2 vars, int nels, - DB_DTPTR2 mixvars, int mixlen, +SILO_CALLBACK int db_hdf5_PutUcdmesh(DBfile *_dbfile, char const *name, int ndims, + char const * const *coordnames, + DBVCP2_t coords, int nnodes, + int nzones, char const *zlname, char const *flname, + int datatype, DBoptlist const *optlist); +SILO_CALLBACK int db_hdf5_PutUcdsubmesh(DBfile *_dbfile, char const *name, + char const *parentmesh, int nzones, char const *zlname, + char const *flname, DBoptlist const *optlist); +SILO_CALLBACK DBucdmesh *db_hdf5_GetUcdmesh(DBfile *_dbfile, char const *name); +SILO_CALLBACK int db_hdf5_PutUcdvar(DBfile *_dbfile, char const *name, char const *meshname, + int nvars, char const * const *varnames, + DBVCP2_t vars, int nels, + DBVCP2_t mixvars, int mixlen, int datatype, int centering, - DBoptlist *optlist); -SILO_CALLBACK DBucdvar *db_hdf5_GetUcdvar(DBfile *_dbfile, char *name); -SILO_CALLBACK int db_hdf5_PutFacelist(DBfile *_dbfile, char *name, int nfaces, - int ndims, int *nodelist, int lnodelist, - int origin, int *zoneno, int *shapesize, - int *shapecnt, int nshapes, int *types, - int *typelist, int ntypes); -SILO_CALLBACK DBfacelist *db_hdf5_GetFacelist(DBfile *_dbfile, char *name); -SILO_CALLBACK int db_hdf5_PutZonelist(DBfile *_dbfile, char *name, int nzones, - int ndims, int nodelist[], int lnodelist, - int origin, int shapesize[], int shapecnt[], + DBoptlist const *optlist); +SILO_CALLBACK DBucdvar *db_hdf5_GetUcdvar(DBfile *_dbfile, char const *name); +SILO_CALLBACK int db_hdf5_PutFacelist( + DBfile *_dbfile, + char const *name, + int nfaces, + int ndims, + int const *nodelist, + int lnodelist, + int origin, + int const *zoneno, + int const *shapesize, + int const *shapecnt, + int nshapes, + int const *types, + int const *typelist, + int ntypes +); +SILO_CALLBACK DBfacelist *db_hdf5_GetFacelist(DBfile *_dbfile, char const *name); +SILO_CALLBACK int db_hdf5_PutZonelist(DBfile *_dbfile, char const *name, int nzones, + int ndims, int const *nodelist, int lnodelist, + int origin, int const *shapesize, int const *shapecnt, int nshapes); -SILO_CALLBACK int db_hdf5_PutZonelist2(DBfile *_dbfile, char *name, int nzones, - int ndims, int nodelist[], int lnodelist, +SILO_CALLBACK int db_hdf5_PutZonelist2(DBfile *_dbfile, char const *name, int nzones, + int ndims, int const *nodelist, int lnodelist, int origin, int lo_offset, int hi_offset, - int shapetype[], int shapesize[], - int shapecnt[], int nshapes, - DBoptlist *optlist); -SILO_CALLBACK int db_hdf5_PutPHZonelist(DBfile *_dbfile, char *name, - int nfaces, int *nodecnt, int lnodelist, int *nodelist, - char *extface, - int nzones, int *facecnt, int lfacelist, int *facelist, + int const *shapetype, int const *shapesize, + int const *shapecnt, int nshapes, + DBoptlist const *optlist); +SILO_CALLBACK int db_hdf5_PutPHZonelist(DBfile *_dbfile, char const *name, + int nfaces, int const *nodecnt, int lnodelist, int const *nodelist, + char const *extface, + int nzones, int const *facecnt, int lfacelist, int const *facelist, int origin, int lo_offset, int hi_offset, - DBoptlist *optlist); -SILO_CALLBACK DBzonelist *db_hdf5_GetZonelist(DBfile *_dbfile, char *name); -SILO_CALLBACK DBphzonelist *db_hdf5_GetPHZonelist(DBfile *_dbfile, char *name); + DBoptlist const *optlist); +SILO_CALLBACK DBzonelist *db_hdf5_GetZonelist(DBfile *_dbfile, char const *name); +SILO_CALLBACK DBphzonelist *db_hdf5_GetPHZonelist(DBfile *_dbfile, char const *name); /* Materials */ -SILO_CALLBACK int db_hdf5_PutMaterial(DBfile *_dbfile, char *name, char *mname, - int nmat, int matnos[], int matlist[], - int dims[], int ndims, int mix_next[], - int mix_mat[], int mix_zone[], DB_DTPTR1 mix_vf, - int mixlen, int datatype, DBoptlist *optlist); -SILO_CALLBACK DBmaterial *db_hdf5_GetMaterial(DBfile *_dbfile, char *name); -SILO_CALLBACK int db_hdf5_PutMatspecies(DBfile *_dbfile, char *name, char *matname, - int nmat, int nmatspec[], int speclist[], - int dims[], int ndims, int nspecies_mf, - DB_DTPTR1 species_mf, int mix_speclist[], +SILO_CALLBACK int db_hdf5_PutMaterial( + DBfile *_dbfile, + char const *name, + char const *mname, + int nmat, + int const *matnos, + int const *matlist, + int const *dims, + int ndims, + int const *mix_next, + int const *mix_mat, + int const *mix_zone, + void const *mix_vf, + int mixlen, + int datatype, + DBoptlist const *optlist +); +SILO_CALLBACK DBmaterial *db_hdf5_GetMaterial(DBfile *_dbfile, char const *name); +SILO_CALLBACK int db_hdf5_PutMatspecies(DBfile *_dbfile, char const *name, char const *matname, + int nmat, int const *nmatspec, int const *speclist, + int const *dims, int ndims, int nspecies_mf, + void const *species_mf, int const *mix_speclist, int mixlen, int datatype, - DBoptlist *optlist); -SILO_CALLBACK DBmatspecies *db_hdf5_GetMatspecies(DBfile *_dbfile, char *name); + DBoptlist const *optlist); +SILO_CALLBACK DBmatspecies *db_hdf5_GetMatspecies(DBfile *_dbfile, char const *name); /* Point meshes */ -SILO_CALLBACK int db_hdf5_PutPointmesh(DBfile *_dbfile, char *name, int ndims, - DB_DTPTR2 coords, int nels, int datatype, - DBoptlist *optlist); -SILO_CALLBACK DBpointmesh *db_hdf5_GetPointmesh(DBfile *_dbfile, char *name); -SILO_CALLBACK int db_hdf5_PutPointvar(DBfile *_dbfile, char *name, char *meshname, - int nvars, DB_DTPTR2 vars, int nels, - int datatype, DBoptlist *optlist); -SILO_CALLBACK DBmeshvar *db_hdf5_GetPointvar(DBfile *_dbfile, char *name); +SILO_CALLBACK int db_hdf5_PutPointmesh(DBfile *_dbfile, char const *name, int ndims, + DBVCP2_t coords, int nels, int datatype, + DBoptlist const *optlist); +SILO_CALLBACK DBpointmesh *db_hdf5_GetPointmesh(DBfile *_dbfile, char const *name); +SILO_CALLBACK int db_hdf5_PutPointvar(DBfile *_dbfile, char const *name, char const *meshname, + int nvars, DBVCP2_t vars, int nels, + int datatype, DBoptlist const *optlist); +SILO_CALLBACK DBmeshvar *db_hdf5_GetPointvar(DBfile *_dbfile, char const *name); /* Multiblock meshes */ SILO_CALLBACK int db_hdf5_PutMultimesh(DBfile *_dbfile, char const *name, int nmesh, char const *const *meshnames, int const *meshtypes, DBoptlist const *optlist); -SILO_CALLBACK int db_hdf5_PutMultimeshadj(DBfile *_dbfile, char const *name, int nmesh, - int const *meshtypes, int const *nneighbors, - int const *neighbors, int const *back, - int const *lnodelists, int *nodelists[], - int const *lzonelists, int *zonelists[], - DBoptlist *optlist); -SILO_CALLBACK DBmultimesh *db_hdf5_GetMultimesh(DBfile *_dbfile, char *name); +SILO_CALLBACK int db_hdf5_PutMultimeshadj( + DBfile *_dbfile, + char const *name, + int nmesh, + int const *meshtypes, + int const *nneighbors, + int const *neighbors, + int const *back, + int const *lnodelists, + int const * const *nodelists, + int const *lzonelists, + int const * const *zonelists, + DBoptlist const *optlist +); +SILO_CALLBACK DBmultimesh *db_hdf5_GetMultimesh(DBfile *_dbfile, char const *name); SILO_CALLBACK DBmultimeshadj *db_hdf5_GetMultimeshadj(DBfile *_dbfile, char const *name, int nmesh, int const *block_map); -SILO_CALLBACK int db_hdf5_PutMultivar(DBfile *_dbfile, char *name, int nvars, - char *varnames[], int vartypes[], - DBoptlist *optlist); -SILO_CALLBACK DBmultivar *db_hdf5_GetMultivar(DBfile *_dbfile, char *name); -SILO_CALLBACK int db_hdf5_PutMultimat(DBfile *_dbfile, char *name, int nmats, - char *matnames[], DBoptlist *optlist); -SILO_CALLBACK DBmultimat *db_hdf5_GetMultimat(DBfile *_dbfile, char *name); -SILO_CALLBACK int db_hdf5_PutMultimatspecies(DBfile *_dbfile, char *name, int nspec, - char *specnames[], DBoptlist *optlist); +SILO_CALLBACK int db_hdf5_PutMultivar(DBfile *_dbfile, char const *name, int nvars, + char const * const *varnames, int const *vartypes, + DBoptlist const *optlist); +SILO_CALLBACK DBmultivar *db_hdf5_GetMultivar(DBfile *_dbfile, char const *name); +SILO_CALLBACK int db_hdf5_PutMultimat(DBfile *_dbfile, char const *name, int nmats, + char const * const *matnames, DBoptlist const *optlist); +SILO_CALLBACK DBmultimat *db_hdf5_GetMultimat(DBfile *_dbfile, char const *name); +SILO_CALLBACK int db_hdf5_PutMultimatspecies(DBfile *_dbfile, char const *name, int nspec, + char const * const *specnames, DBoptlist const *optlist); SILO_CALLBACK DBmultimatspecies *db_hdf5_GetMultimatspecies(DBfile *_dbfile, - char *name); + char const *name); /* Compound arrays */ -SILO_CALLBACK int db_hdf5_PutCompoundarray(DBfile *_dbfile, char *name, - char *elmtnames[], int elmtlen[], - int nelmts, void *values, int nvalues, - int datatype, DBoptlist *optlist); -SILO_CALLBACK DBcompoundarray *db_hdf5_GetCompoundarray(DBfile *_dbfile, - char *name); +SILO_CALLBACK int db_hdf5_PutCompoundarray( + DBfile *_dbfile, + char const *name, + char const * const *elmtnames, + int const *elmtlen, + int nelmts, + void const *values, + int nvalues, + int datatype, + DBoptlist const *optlist +); +SILO_CALLBACK DBcompoundarray *db_hdf5_GetCompoundarray( + DBfile *_dbfile, + char const *name +); /* Mrgtree objects */ SILO_CALLBACK int db_hdf5_PutMrgtree(DBfile *_dbfile, char const *name, char const *mesh_name, - DBmrgtree *tree, DBoptlist *optlist); + DBmrgtree const *tree, DBoptlist const *optlist); SILO_CALLBACK DBmrgtree *db_hdf5_GetMrgtree(DBfile *_dbfile, char const *name); /* groupel maps */ SILO_CALLBACK int db_hdf5_PutGroupelmap(DBfile *_dbfile, char const *map_name, - int num_segments, int *groupel_types, int *segment_lengths, - int *segment_ids, int **segment_data, void **segment_fracs, - int fracs_data_type, DBoptlist *opts); + int num_segments, int const *groupel_types, int const *segment_lengths, + int const *segment_ids, int const * const *segment_data, void const * const *segment_fracs, + int fracs_data_type, DBoptlist const *opts); SILO_CALLBACK DBgroupelmap *db_hdf5_GetGroupelmap(DBfile *dbfile, char const *name); /* mrgvars */ SILO_CALLBACK int db_hdf5_PutMrgvar(DBfile *dbfile, char const *name, char const *mrgt_name, - int ncomps, char **compnames, - int nregns, char **reg_pnames, - int datatype, void **data, DBoptlist *opts); + int ncomps, char const * const *compnames, + int nregns, char const * const *reg_pnames, + int datatype, void const * const *data, DBoptlist const *opts); SILO_CALLBACK DBmrgvar *db_hdf5_GetMrgvar(DBfile *dbfile, char const *name); SILO_CALLBACK int db_hdf5_FreeCompressionResources(DBfile *_dbfile, diff -Nru silo-llnl-4.10.2/src/hzip/bitvector.h silo-llnl-4.10.2.real/src/hzip/bitvector.h --- silo-llnl-4.10.2/src/hzip/bitvector.h 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/hzip/bitvector.h 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,44 @@ +#ifndef BITVECTOR_H +#define BITVECTOR_H + +#include + +// replacement for std::vector +class BITVECTOR { +private: + // helper class for bit assignment + typedef unsigned char BYTE; + class BIT { + public: + BIT(BYTE& byte, BYTE mask) : byte(byte), mask(mask) {} + bool operator=(bool value) + { + byte = BYTE(value ? byte | mask : byte & ~mask); + return value; + } + operator bool() const { return (byte & mask) != 0; } + private: + BYTE& byte; // reference to target byte + BYTE mask; // mask for target bit + }; + +public: + BITVECTOR() : a(0) {} + BITVECTOR(size_t size) : a(new BYTE[count(size)]) {} + BITVECTOR(size_t size, bool value) : a(new BYTE[count(size)]) + { + memset(a, value ? ~0 : 0, count(size)); + } + ~BITVECTOR() { delete[] a; } + BIT operator[](unsigned i) { return BIT(byte(i), mask(i)); } + bool operator[](unsigned i) const { return (byte(i) & mask(i)) != 0; } + +private: + size_t count(size_t size) const { return (size + 7) >> 3; } + BYTE mask(unsigned i) const { return BYTE(1 << (i & 0x7)); } + BYTE& byte(unsigned i) { return a[i >> 3]; } + const BYTE& byte(unsigned i) const { return a[i >> 3]; } + BYTE* const a; +}; + +#endif diff -Nru silo-llnl-4.10.2/src/hzip/hzio.h silo-llnl-4.10.2.real/src/hzip/hzio.h --- silo-llnl-4.10.2/src/hzip/hzio.h 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/hzip/hzio.h 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,22 @@ +#ifndef HZIO_H +#define HZIO_H + +#include +#include "ibstream.h" +#include "obstream.h" + +/*@p-u-b-l-i-c---m-a-c-r-o-s-------------------------------------------------*/ + +#define UCHAR_MASK ((1 << CHAR_BIT) - 1) + +/*@p-u-b-l-i-c---t-y-p-e-s---------------------------------------------------*/ + +// stream access type +enum HZaccess { + hzREAD = 0, + hzWRITE = 1 +}; + +#include "hzio.inl" + +#endif diff -Nru silo-llnl-4.10.2/src/hzip/hzio.inl silo-llnl-4.10.2.real/src/hzip/hzio.inl --- silo-llnl-4.10.2/src/hzip/hzio.inl 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/hzip/hzio.inl 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,36 @@ +inline int +bytes( + IBSTREAM* in // input stream +) +{ + return in->error() ? in->error() : (int)in->head()->bytes(); +} + +inline int +bytes( + OBSTREAM* out // output stream +) +{ + return out->error() ? out->error() : (int)out->tail()->bytes(); +} + +inline unsigned +getuint( + IBSTREAM* in // input stream +) +{ + unsigned x = 0; + for (unsigned i = 0; i < sizeof(x); i++) + x += (unsigned)in->get() << (CHAR_BIT * i); + return x; +} + +inline void +putuint( + OBSTREAM* out, // output stream + unsigned x // value to output +) +{ + for (unsigned i = 0; i < sizeof(x); i++, x >>= CHAR_BIT) + out->put(x & UCHAR_MASK); +} diff -Nru silo-llnl-4.10.2/src/hzip/hzip.h silo-llnl-4.10.2.real/src/hzip/hzip.h --- silo-llnl-4.10.2/src/hzip/hzip.h 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/hzip/hzip.h 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,353 @@ +/* +** hzip version 1.0.1, August 6, 2008 +** Part of the LOCAL Toolkit, UCRL-CODE-232243 +** Written by Peter Lindstrom, Lawrence Livermore National Laboratory +** +** +** SUMMARY +** +** hzip is a library for lossless compression of connectivity, geometry, +** and related data in structured and unstructured meshes composed of +** cells with hypercube topology, i.e. line segments in 1D, quadrilaterals +** in 2D, and hexahedra in 3D. This space of data sets includes images +** and voxel grids. hzip currently supports compression of node-centered +** floating-point and integer scalars. Cell-centered data in structured +** grids can be handled by treating cells as nodes. (Full support for +** cell-centered data as well as controlled lossy compression will be +** available in later releases.) Though not optimized for, hzip supports +** mixed and hybrid meshes with a small number of secondary element types +** such as triangles and wedges through the use of degenerate cells. +** For best results, the nodes and cells as well as cell orientations +** should be organized coherently in some nonspecific but easy-to-predict +** pattern since the compressor must encode and fully preserve this +** information. Please see the accompanying documentation and example +** code for additional details and usage. +** +** hzip was developed as part of the LOCAL LDRD project at LLNL, and may +** be freely used and distributed for noncommercial purposes. The core +** library is written in C++ and applications need to be linked with a +** C++ linker. The library can, however, be called from C. For further +** information and bug reports, please e-mail pl@llnl.gov. +** +** +** NOTICE +** +** This work was produced at the Lawrence Livermore National Laboratory +** (LLNL) under contract no. DE-AC-52-07NA27344 (Contract 44) between +** the U.S. Department of Energy (DOE) and Lawrence Livermore National +** Security, LLC (LLNS) for the operation of LLNL. The rights of the +** Federal Government are reserved under Contract 44. +** +** +** DISCLAIMER +** +** This work was prepared as an account of work sponsored by an agency of +** the United States government. Neither the United States government nor +** Lawrence Livermore National Security, LLC, nor any of their employees +** makes any warranty, expressed or implied, or assumes any legal liability +** or responsibility for the accuracy, completeness, or usefulness of any +** information, apparatus, product, or process disclosed, or represents +** that its use would not infringe privately owned rights. Reference +** herein to any specific commercial product, process, or service by trade +** name, trademark, manufacturer, or otherwise does not necessarily +** constitute or imply its endorsement, recommendation, or favoring by the +** United States government or Lawrence Livermore National Security, LLC. +** The views and opinions of authors expressed herein do not necessarily +** state or reflect those of the United States government or Lawrence +** Livermore National Security, LLC, and shall not be used for advertising +** or product endorsement purposes. +** +** +** COMMERCIAL USE +** +** Commercialization of this product is prohibited without notifying the +** Department of Energy (DOE) or Lawrence Livermore National Security. +*/ + +#ifndef HZIP_H +#define HZIP_H + +#ifdef __cplusplus +extern "C" { +#endif + +#include + +/*@p-u-b-l-i-c---m-a-c-r-o-s-------------------------------------------------*/ + +#define HZ_VER_MAJOR 1 +#define HZ_VER_MINOR 0 +#define HZ_VER_RELEASE 1 +#define HZ_VER_STRING "1.0.1" + +#define HZ_DIMS_MAX 3 /* max number of dimensions */ +#define HZ_CELLSIZE_MAX (1 << HZ_DIMS_MAX) /* max number of nodes per cell */ + +#define HZM_CODEC_BASE 0 /* base mesh codec */ +#define HZM_CODEC_ZLIB 1 /* zlib mesh codec */ +#define HZN_CODEC_BASE 0 /* base node codec */ +#define HZN_CODEC_ZLIB 1 /* zlib node codec */ + +/*@p-u-b-l-i-c---t-y-p-e-s---------------------------------------------------*/ + +typedef struct HZMstream HZMstream; /* mesh I/O stream */ +typedef struct HZNstream HZNstream; /* node I/O stream */ + +typedef enum { + hzUCHAR = 1, /* unsigned char C type */ + hzUSHORT = 2, /* unsigned short C type */ + hzINT = 3, /* int C type */ + hzFLOAT = 4, /* float C type */ + hzDOUBLE = 5 /* double C type */ +} HZtype; + +/*@p-u-b-l-i-c---d-a-t-a-----------------------------------------------------*/ + +/* +** The baseline codec supports one parameter, "bits," that indirectly +** specifies how much memory to use both during compression and +** decompression for hash-based prediction. The memory usage is +** 33 * 2^(dims + bits - 3) bytes, or 132 KB for hexahedral meshes with +** the default setting bits = 12. Larger values of "bits" generally +** improve compression. +*/ + +static const struct HZMCODECbase { + unsigned bits; /* number of hash table bits */ +} hzm_codec_base = { 12 }; + +/* +** The zlib codec applies zlib compression on top of the baseline codec, +** which generally improves compression significantly. The additional +** parameters "insize" and "outsize" specify the size of memory buffers +** used by the zlib compressor. Larger buffers generally improve speed. +** The parameter "level" specifies the zlib compression level from -1 to 9: +** -1 for the default level; 0 for no compression; 1 for maximum speed; +** and 9 for maximum compression. NOTE: The HZzlib parameters are shared +** among codecs, and should not directly be passed to the compressor. +** Instead, use the HZ*CODECzlib structures. +*/ + +struct HZzlib { /* NOTE: not to be used in isolation */ + int level; /* zlib compression level */ + size_t insize; /* byte size of zlib deflate input (uncompressed) buffer */ + size_t outsize; /* byte size of zlib deflate output (compressed) buffer */ +}; + +/* +** zlib codec for mesh connectivity. +*/ + +static const struct HZMCODECzlib { + unsigned bits; /* number of hash table bits */ + struct HZzlib zlib; /* zlib parameters */ +} hzm_codec_zlib = { 12, { -1, 0x6000, 0x2000 } }; + +/* +** zlib codec for node-centered data. +*/ + +static const struct HZNCODECzlib { + struct HZzlib zlib; /* zlib parameters */ +} hzn_codec_zlib = { { -1, 0x6000, 0x2000 } }; + +/*@p-u-b-l-i-c---f-u-n-c-t-i-o-n-s-------------------------------------------*/ + +/* +** The nodes within each cell can be permuted by specifying hexadecimal +** digits "perm" that map the source ordering to the canonical ordering +** assumed by the compressor. For example, the permutation 0x54672310 +** maps the Gray code ordering below to the canonical binary code ordering, +** i.e. the i'th hexadecimal digit j (with i = 0 being the rightmost digit) +** specifies for node #i in the canonical ordering the corresponding +** node #j in the source ordering. In the canonical ordering, the i'th +** bit in the index specifies the "coordinate" (0 or 1) along the i'th +** dimension (thus the ordering for a quadrilateral follows the ordering +** for face {0, 1, 2, 3} in the hexahedron shown below). +** +** 3-------2 2-------3 +** /| /| /| /| +** 4-------5 | 6-------7 | +** | | | | --> | | | | +** | 0-----|-1 | 0-----|-1 +** |/ |/ |/ |/ +** 7-------6 4-------5 +** +** source data canonical +** ordering ordering +** +** Although compression is still possible without permuting nodes, the +** prediction and compression of node-centered data relies heavily on +** having the nodes correctly ordered. While less dependent on ordering, +** compression of mesh connectivity usually benefits as well from correct +** node ordering. NOTE: Since the compressor stores the data in the +** canonical ordering, the same "perm" value must be passed to the +** decompressor if the original ordering is to be recovered. +*/ + +/*@mesh.connectivity.functions...............................................*/ + +HZMstream* /* input stream */ +hzip_mesh_open_file( + FILE* file, /* compressed input file */ + unsigned perm /* node permutation (0 for default) */ +); + +HZMstream* /* input stream */ +hzip_mesh_open_mem( + const void* buffer, /* pointer to compressed data */ + size_t size, /* byte size of compressed data */ + unsigned perm /* node permutation (0 for default) */ +); + +unsigned /* mesh dimensionality */ +hzip_mesh_dimensions( + HZMstream* stream /* input stream */ +); + +unsigned /* number of cells in input (0 if unknown) */ +hzip_mesh_cells( + HZMstream* stream /* input stream */ +); + +int /* number of cells read from stream or error code */ +hzip_mesh_read( + HZMstream* stream, /* input stream */ + int* mesh, /* array of node indices to read */ + unsigned count /* number of cells to read */ +); + +HZMstream* /* output stream */ +hzip_mesh_create_file( + FILE* file, /* compressed output file */ + unsigned perm, /* node permutation (0 for default) */ + unsigned dims, /* topological mesh dimensionality (1-3) */ + unsigned count, /* total number of cells */ + unsigned codec, /* codec number */ + const void* param /* codec parameters (NULL for default) */ +); + +HZMstream* /* output stream */ +hzip_mesh_create_mem( + void* buffer, /* pointer to compressed data */ + size_t size, /* byte size of allocated storage */ + unsigned perm, /* node permutation (0 for default) */ + unsigned dims, /* topological mesh dimensionality (1-3) */ + unsigned count, /* total number of cells */ + unsigned codec, /* codec number */ + const void* param /* codec parameters (NULL for default) */ +); + +int /* number of bytes written so far or error code */ +hzip_mesh_write( + HZMstream* stream, /* output stream */ + const int* mesh, /* array of node indices to write */ + unsigned count /* number of cells to write */ +); + +int /* number of bytes written so far or error code */ +hzip_mesh_flush( + HZMstream* stream /* output stream */ +); + +int /* number of bytes read/written or error code */ +hzip_mesh_close( + HZMstream* stream /* I/O stream */ +); + +unsigned /* node permutation */ +hzip_mesh_construct( + int* mesh, /* array of node indices to construct */ + unsigned dims, /* topological mesh dimensionality (1-3) */ + const unsigned count[], /* structured grid dimensions (node counts) */ + int bias /* node index bias */ +); + +/*@node-centered.data.functions..............................................*/ + +HZNstream* /* input stream */ +hzip_node_open_file( + FILE* file, /* compressed input file */ + unsigned perm, /* node permutation (0 for default) */ + int bias /* node index bias */ +); + +HZNstream* /* input stream */ +hzip_node_open_mem( + const void* buffer, /* pointer to compressed data */ + size_t size, /* byte size of compressed data */ + unsigned perm, /* node permutation (0 for default) */ + int bias /* node index bias */ +); + +int /* number of nodes read from stream or error code */ +hzip_node_read( + HZNstream* stream, /* input stream */ + void* node, /* node data array to read to */ + const int* mesh, /* array of node indices */ + unsigned count /* number of cells to visit */ +); + +unsigned /* mesh dimensionality */ +hzip_node_dimensions( + HZNstream* stream /* input stream */ +); + +unsigned /* number of nodes in input (0 if unknown) */ +hzip_node_count( + HZNstream* stream /* input stream */ +); + +HZtype /* node data type */ +hzip_node_type( + HZNstream* stream /* input stream */ +); + +HZNstream* /* output stream */ +hzip_node_create_file( + FILE* file, /* compressed output file */ + unsigned perm, /* node permutation */ + int bias, /* node index bias */ + unsigned dims, /* topological mesh dimensionality */ + unsigned count, /* total number of nodes */ + HZtype type, /* node data type */ + unsigned codec, /* codec number */ + const void* param /* codec parameters */ +); + +HZNstream* /* output stream */ +hzip_node_create_mem( + void* buffer, /* pointer to compressed data */ + size_t size, /* byte size of allocated storage */ + unsigned perm, /* node permutation */ + int bias, /* node index bias */ + unsigned dims, /* mesh dimensionality */ + unsigned count, /* total number of nodes */ + HZtype type, /* node data type */ + unsigned codec, /* codec number */ + const void* param /* codec parameters */ +); + +int +hzip_node_write( + HZNstream* stream, /* output stream */ + const void* node, /* node data array to write from */ + const int* mesh, /* array of node indices */ + unsigned count /* number of cells to visit */ +); + +int /* number of bytes written so far or error code */ +hzip_node_flush( + HZNstream* stream /* output stream */ +); + +int /* number of bytes read/written or error code */ +hzip_node_close( + HZNstream* stream /* I/O stream */ +); + +#ifdef __cplusplus +} +#endif + +#endif diff -Nru silo-llnl-4.10.2/src/hzip/hzmap.h silo-llnl-4.10.2.real/src/hzip/hzmap.h --- silo-llnl-4.10.2/src/hzip/hzmap.h 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/hzip/hzmap.h 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,140 @@ +#ifndef HZMAP_H +#define HZMAP_H + +#if !defined WITH_REINTERPRET_CAST && !defined WITH_UNION +#include +#endif + +// identity map +template +class HZmap { +public: + typedef T DOMAIN; + typedef T RANGE; + T operator()(T x) const { return x; } +}; + +// monotonic map between signed and unsigned int +template <> +class HZmap { +public: + typedef int DOMAIN; + typedef unsigned RANGE; + union UNION { + UNION(DOMAIN d) : d(d) {} + UNION(RANGE r) : r(r) {} + DOMAIN d; + RANGE r; + }; + int operator()(unsigned u) const + { + u = ~u > u ? ~u : u - 0x80000000u; +#ifdef WITH_REINTERPRET_CAST + return reinterpret_cast(u); +#elif defined WITH_UNION + UNION shared(u); + return shared.d; +#else + int i; + memcpy(&i, &u, sizeof(i)); + return i; +#endif + } + unsigned operator()(int i) const + { +#ifdef WITH_REINTERPRET_CAST + unsigned u = reinterpret_cast(i); +#elif defined WITH_UNION + UNION shared(i); + unsigned u = shared.r; +#else + unsigned u; + memcpy(&u, &i, sizeof(i)); +#endif + return ~u < u ? ~u : u + 0x80000000u; + } +}; + +// monotonic map between float and its binary unsigned integer representation +template <> +class HZmap { +public: + typedef float DOMAIN; + typedef unsigned RANGE; + union UNION { + UNION(DOMAIN d) : d(d) {} + UNION(RANGE r) : r(r) {} + DOMAIN d; + RANGE r; + }; + float operator()(unsigned u) const + { + u = ~u > u ? ~u : u - 0x80000000u; +#ifdef WITH_REINTERPRET_CAST + return reinterpret_cast(u); +#elif defined WITH_UNION + UNION shared(u); + return shared.d; +#else + float f; + memcpy(&f, &u, sizeof(f)); + return f; +#endif + } + unsigned operator()(float f) const + { +#ifdef WITH_REINTERPRET_CAST + unsigned u = reinterpret_cast(f); +#elif defined WITH_UNION + UNION shared(f); + unsigned u = shared.r; +#else + unsigned u; + memcpy(&u, &f, sizeof(u)); +#endif + return ~u < u ? ~u : u + 0x80000000u; + } +}; + +// monotonic map between double and its binary unsigned integer representation +template <> +class HZmap { +public: + typedef double DOMAIN; + typedef unsigned long long RANGE; + union UNION { + UNION(DOMAIN d) : d(d) {} + UNION(RANGE r) : r(r) {} + DOMAIN d; + RANGE r; + }; + double operator()(unsigned long long u) const + { + u = ~u > u ? ~u : u - 0x8000000000000000ull; +#ifdef WITH_REINTERPRET_CAST + return reinterpret_cast(u); +#elif defined WITH_UNION + UNION shared(u); + return shared.d; +#else + double f; + memcpy(&f, &u, sizeof(f)); + return f; +#endif + } + unsigned long long operator()(double f) const + { +#ifdef WITH_REINTERPRET_CAST + unsigned long long u = reinterpret_cast(f); +#elif defined WITH_UNION + UNION shared(f); + unsigned long long u = shared.r; +#else + unsigned long long u; + memcpy(&u, &f, sizeof(u)); +#endif + return ~u < u ? ~u : u + 0x8000000000000000ull; + } +}; + +#endif diff -Nru silo-llnl-4.10.2/src/hzip/hzmcodec.h silo-llnl-4.10.2.real/src/hzip/hzmcodec.h --- silo-llnl-4.10.2/src/hzip/hzmcodec.h 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/hzip/hzmcodec.h 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,40 @@ +#ifndef HZM_CODEC_H +#define HZM_CODEC_H + +#include +#include "hzip.h" +#include "hzresidual.h" +#include "hzmpredictor.h" + +#define HZM_VERSION 0x10 +#define HZM_BUF_HIST (2 * HZ_CELLSIZE_MAX) +#define HZM_BUF_SIZE (2 * HZM_BUF_HIST) + +// base class for mesh encoder/decoder +class HZMcodec { +public: + inline HZMcodec(unsigned dims = 3, unsigned perm = 0, unsigned bits = HZM_HASH_BITS); + inline virtual ~HZMcodec(); + +protected: + // advance node pointer + inline void advance(); + + // node buffer methods + unsigned* begin() { return buffer + HZM_BUF_HIST; } + unsigned* end() { return buffer + HZM_BUF_SIZE; } + void copy(unsigned* p) { *(p - HZM_BUF_HIST) = *p; } + + const unsigned cellsize; // number of nodes per cell + unsigned mask; // prediction mask + unsigned count; // number of nodes buffered + unsigned* node; // pointer into buffer + unsigned buffer[HZM_BUF_SIZE]; // recent node index history + HZresidual diff[CHAR_BIT]; // residuals for last eight nodes + unsigned perm[HZ_CELLSIZE_MAX]; // in-cell permutation of nodes + HZMpredictor* pred[HZ_CELLSIZE_MAX]; // node index predictors +}; + +#include "hzmcodec.inl" + +#endif diff -Nru silo-llnl-4.10.2/src/hzip/hzmcodec.inl silo-llnl-4.10.2.real/src/hzip/hzmcodec.inl --- silo-llnl-4.10.2/src/hzip/hzmcodec.inl 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/hzip/hzmcodec.inl 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,31 @@ +HZMcodec::HZMcodec(unsigned dims, unsigned pcode, unsigned bits) : + cellsize(1 << dims), + mask(0), + count(0), + node(begin()) +{ + for (unsigned i = 0; i < HZM_BUF_SIZE; i++) + buffer[i] = 0; + if (!pcode) + pcode = 0x76543210; + for (unsigned i = 0; i < cellsize; i++, pcode >>= 4) { + pred[i] = new HZMpredictor(dims, bits); + perm[i] = pcode & 0xf; + } +} + +HZMcodec::~HZMcodec() +{ + for (unsigned i = 0; i < cellsize; i++) + delete pred[i]; +} + +void +HZMcodec::advance() +{ + // make shadow copy and reset pointer at end of buffer + for (unsigned i = 0; i < cellsize; i++) + copy(node++); + if (node == end()) + node = begin(); +} diff -Nru silo-llnl-4.10.2/src/hzip/hzmdecoder.cpp silo-llnl-4.10.2.real/src/hzip/hzmdecoder.cpp --- silo-llnl-4.10.2/src/hzip/hzmdecoder.cpp 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/hzip/hzmdecoder.cpp 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,33 @@ +#include "hzmdecoder.h" + +void +HZMdecoder::get() +{ + // read compressed data for next cell + mask = stream->get(); + for (unsigned i = 0; i < CHAR_BIT; i++) + if (mask & (1 << i)) + diff[i] = HZresidual(stream); + count = 0; +} + +unsigned +HZMdecoder::decode(int* v) +{ + // decode cell + if (count == CHAR_BIT) + get(); + for (unsigned i = 0; i < cellsize; i++, count++) { + bool correct = !(mask & (1 << count)); + if (!correct) { + unsigned q = pred[i]->repredict(node, i); + node[i] = q + diff[count]; + } + unsigned p = pred[i]->retrodict(node, i, correct); + if (correct) + node[i] = p; + v[perm[i]] = (int)node[i]; + } + advance(); + return cellsize; +} diff -Nru silo-llnl-4.10.2/src/hzip/hzmdecoder.h silo-llnl-4.10.2.real/src/hzip/hzmdecoder.h --- silo-llnl-4.10.2/src/hzip/hzmdecoder.h 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/hzip/hzmdecoder.h 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,20 @@ +#ifndef HZM_DECODER_H +#define HZM_DECODER_H + +#include "hzmcodec.h" +#include "ibstream.h" + +// mesh decoder +class HZMdecoder : public HZMcodec { +public: + HZMdecoder(IBSTREAM* stream, unsigned dims = 3, unsigned perm = 0, unsigned bits = HZM_HASH_BITS) : HZMcodec(dims, perm, bits), stream(stream) { count = CHAR_BIT; } + + // decode node indices of a cell + unsigned decode(int* v); + +private: + void get(); + IBSTREAM* stream; +}; + +#endif diff -Nru silo-llnl-4.10.2/src/hzip/hzmencoder.cpp silo-llnl-4.10.2.real/src/hzip/hzmencoder.cpp --- silo-llnl-4.10.2/src/hzip/hzmencoder.cpp 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/hzip/hzmencoder.cpp 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,39 @@ +#include "hzmencoder.h" +#include "hzresidual.h" + +void +HZMencoder::put() +{ + // write compressed data for last cell(s) + stream->put(mask); + for (unsigned i = 0; i < CHAR_BIT; i++) + if (mask & (1 << i)) + diff[i].put(stream); + mask = count = 0; +} + +unsigned +HZMencoder::encode(const int* v) +{ + // encode cell + for (unsigned i = 0; i < cellsize; i++, count++) { + node[i] = v[perm[i]]; + unsigned p = pred[i]->predict(node, i); + if (p != node[i]) { + unsigned q = pred[i]->repredict(node, i); + diff[count] = HZresidual(q, node[i]); + mask |= 1 << count; + } + } + if (count == CHAR_BIT) + put(); + advance(); + return cellsize; +} + +void +HZMencoder::end() +{ + if (count) + put(); +} diff -Nru silo-llnl-4.10.2/src/hzip/hzmencoder.h silo-llnl-4.10.2.real/src/hzip/hzmencoder.h --- silo-llnl-4.10.2/src/hzip/hzmencoder.h 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/hzip/hzmencoder.h 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,23 @@ +#ifndef HZM_ENCODER_H +#define HZM_ENCODER_H + +#include "hzmcodec.h" +#include "obstream.h" + +// mesh encoder +class HZMencoder : public HZMcodec { +public: + HZMencoder(OBSTREAM* stream, unsigned dims = 3, unsigned perm = 0, unsigned bits = HZM_HASH_BITS) : HZMcodec(dims, perm, bits), stream(stream) {} + + // encode node indices of a cell + unsigned encode(const int* v); + + // end encoding + void end(); + +private: + void put(); + OBSTREAM* stream; +}; + +#endif diff -Nru silo-llnl-4.10.2/src/hzip/hzmio.cpp silo-llnl-4.10.2.real/src/hzip/hzmio.cpp --- silo-llnl-4.10.2/src/hzip/hzmio.cpp 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/hzip/hzmio.cpp 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,69 @@ +#include "hzip.h" +#include "hzmio.h" + +/*@p-r-i-v-a-t-e---f-u-n-c-t-i-o-n-s-----------------------------------------*/ + +// close stream for reading and deallocate +static int +read_close( + HZMstream* stream // input stream +) +{ + IBSTREAM* in = stream->in; + int status = bytes(in); + + delete stream->decoder; + delete stream; + delete in; + + return status; +} + +// close stream for writing and deallocate +static int +write_close( + HZMstream* stream // output stream +) +{ + stream->encoder->end(); + OBSTREAM* out = stream->out; + if (!stream->count) + putuint(out->tail(), 0); + out->close(); + int status = bytes(out); + + delete stream->encoder; + delete stream; + delete out; + + return status; +} + +/*@p-u-b-l-i-c---f-u-n-c-t-i-o-n-s-------------------------------------------*/ + +// return mesh dimensionality +unsigned +hzip_mesh_dimensions( + HZMstream* stream // I/O stream +) +{ + return stream->dims; +} + +// return number of cells in stream +unsigned +hzip_mesh_cells( + HZMstream* stream // I/O stream +) +{ + return stream->count; +} + +// close stream and deallocate +int +hzip_mesh_close( + HZMstream* stream // I/O stream +) +{ + return stream->access == hzREAD ? read_close(stream) : write_close(stream); +} diff -Nru silo-llnl-4.10.2/src/hzip/hzmio.h silo-llnl-4.10.2.real/src/hzip/hzmio.h --- silo-llnl-4.10.2/src/hzip/hzmio.h 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/hzip/hzmio.h 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,25 @@ +#ifndef HZMIO_H +#define HZMIO_H + +#include "hzio.h" +#include "hzmencoder.h" +#include "hzmdecoder.h" + +// mesh input/output stream +struct HZMstream { + HZMstream(HZaccess access) : access(access) {} + HZaccess access; // read or write access + union { + OBSTREAM* out; // output stream + IBSTREAM* in; // input stream + }; + union { + HZMencoder* encoder; // mesh compressor + HZMdecoder* decoder; // mesh decompressor + }; + unsigned dims; // mesh dimensionality + unsigned count; // total number of cells (0 if unknown) + unsigned avail; // number of cells left in chunk +}; + +#endif diff -Nru silo-llnl-4.10.2/src/hzip/hzmpredictor.cpp silo-llnl-4.10.2.real/src/hzip/hzmpredictor.cpp --- silo-llnl-4.10.2/src/hzip/hzmpredictor.cpp 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/hzip/hzmpredictor.cpp 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,80 @@ +#include "hzmpredictor.h" + +#define HZM_ORDER 2 + +HZMpredictor::HZMpredictor(unsigned dims, unsigned bits) : + dims(dims), size(1 << bits), shift(bits / HZM_ORDER), conf(size, false) +{ + hash = new unsigned[size]; + for (unsigned i = 0; i < size; i++) + hash[i] = 0; +} + +HZMpredictor::~HZMpredictor() +{ + delete[] hash; +} + +unsigned +HZMpredictor::predict(const unsigned* v, unsigned i) +{ + unsigned a = node(v, -1, i - 0) - node(v, -2, i - 0); + unsigned b = node(v, 0, i - 1) - node(v, -1, i - 1); + unsigned h = index((b << shift) + a); + unsigned p = hash[h] + node(v, -1, i) + a; + if (p == v[i]) + conf[h] = true; + else { + if (conf[h]) + conf[h] = false; + else + hash[h] += v[i] - p; + } + return p; +} + +unsigned +HZMpredictor::retrodict(const unsigned* v, unsigned i, bool correct) +{ + unsigned a = node(v, -1, i - 0) - node(v, -2, i - 0); + unsigned b = node(v, 0, i - 1) - node(v, -1, i - 1); + unsigned h = index((b << shift) + a); + unsigned p = hash[h] + node(v, -1, i) + a; + if (correct) + conf[h] = true; + else { + if (conf[h]) + conf[h] = false; + else + hash[h] += v[i] - p; + } + return p; +} + +// Predict v[i] as one of the already encoded neighbors along the up to +// four axes (up to three within this cell plus the corresponding node +// in the previous cell). The chosen axis is the one that minimizes the +// prediction error (difference) among the past eight nodes (some of +// which may belong to the previous cell). +unsigned +HZMpredictor::repredict(const unsigned* v, unsigned i) const +{ + unsigned l = dims; + if (i) { + unsigned n = 1 << dims; + v -= n; + i += n; + unsigned d[4] = { 0, 0, 0, 0 }; + unsigned c[4] = { 0, 0, 0, 0 }; + for (unsigned j = i - n; j < i; j++) + for (unsigned k = 0, m = 1; k <= dims; k++, m <<= 1) + if (i & j & m) { + d[k] += length(v[j], v[j - m]); + c[k]++; + } + for (unsigned k = 0; k < dims; k++) + if (c[l] * d[k] < c[k] * d[l]) + l = k; + } + return v[(int)i - (1 << l)]; +} diff -Nru silo-llnl-4.10.2/src/hzip/hzmpredictor.h silo-llnl-4.10.2.real/src/hzip/hzmpredictor.h --- silo-llnl-4.10.2/src/hzip/hzmpredictor.h 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/hzip/hzmpredictor.h 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,35 @@ +#ifndef HZM_PREDICTOR_H +#define HZM_PREDICTOR_H + +#include "bitvector.h" + +#define HZM_HASH_BITS 12 + +// mesh predictor of node indices +class HZMpredictor { +public: + HZMpredictor(unsigned dims = 3, unsigned bits = HZM_HASH_BITS); + ~HZMpredictor(); + + // primary index prediction for node v[i] + unsigned predict(const unsigned* v, unsigned i); + + // primary index prediction for node v[i] + unsigned retrodict(const unsigned* v, unsigned i, bool correct); + + // secondary index prediction for node v[i] + unsigned repredict(const unsigned* v, unsigned i) const; + +private: + unsigned index(unsigned x) const { return x & (size - 1); } + unsigned length(unsigned u, unsigned v) const { return u > v ? u - v : v - u; } + unsigned node(const unsigned* v, int i, int j) const { return v[(i << dims) + j]; } + + const unsigned dims; // number of dimensions + const unsigned size; // hash table size + const unsigned shift; // hash key shift + unsigned* hash; // hash table + BITVECTOR conf; // confidence flags for hash entries +}; + +#endif diff -Nru silo-llnl-4.10.2/src/hzip/hzmread.cpp silo-llnl-4.10.2.real/src/hzip/hzmread.cpp --- silo-llnl-4.10.2/src/hzip/hzmread.cpp 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/hzip/hzmread.cpp 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,106 @@ +#include "hzip.h" +#include "hzmio.h" + +/*@p-r-i-v-a-t-e---f-u-n-c-t-i-o-n-s-----------------------------------------*/ + +// read header data +static HZMstream* +read_header( + IBSTREAM* in, // input stream + unsigned perm // node permutation +) +{ +#ifndef HZ_WITHOUT_MAGIC + // magic and format + if (in->get() != 'h' || + in->get() != 'z' || + in->get() != 'm' || + in->get() != HZM_VERSION) { + delete in; + return 0; + } +#endif + + // codec parameters and number of cells + HZMstream* stream = new HZMstream(hzREAD); + stream->dims = in->get(); + in->get(); + unsigned codec = in->get(); + switch (codec) { + case HZM_CODEC_BASE: + stream->in = in; + break; +#ifndef WITHOUT_ZLIB + case HZM_CODEC_ZLIB: + stream->in = new IBSTREAMzlib(in); + break; +#endif + default: + delete stream; + delete in; + return 0; + } + unsigned bits = in->get(); + stream->count = getuint(in); + stream->avail = stream->count ? stream->count : getuint(in); + + // check for errors + if (stream->in->error()) { + delete stream->in; + delete stream; + return 0; + } + + // initialize decoder + stream->decoder = new HZMdecoder(stream->in, stream->dims, perm, bits); + + return stream; +} + +/*@p-u-b-l-i-c---f-u-n-c-t-i-o-n-s-------------------------------------------*/ + +// open stream for reading mesh from file +HZMstream* +hzip_mesh_open_file( + FILE* file, // compressed input file + unsigned perm // node permutation +) +{ + return read_header(new IBSTREAMfile(file), perm); +} + +// open stream for reading mesh from memory +HZMstream* +hzip_mesh_open_mem( + const void* buffer, // pointer to compressed data + size_t size, // byte size of compressed data + unsigned perm // node permutation +) +{ + return read_header(new IBSTREAMmem(buffer, size), perm); +} + +// read and decompress mesh from stream +int +hzip_mesh_read( + HZMstream* stream, // input stream + int* mesh, // array of node indices to read + unsigned count // number of cells to read +) +{ + IBSTREAM* in = stream->in; + + // decompress mesh connectivity + unsigned left = count; + for (unsigned read; left && stream->avail; left -= read) { + read = left < stream->avail ? left : stream->avail; + for (unsigned i = 0; i < read; i++) + mesh += stream->decoder->decode(mesh); + if (stream->count) + stream->avail -= read; + else + stream->avail = getuint(in->head()); + } + + return in->error() ? in->error() : (int)(count - left); +} diff -Nru silo-llnl-4.10.2/src/hzip/hzmwrite.cpp silo-llnl-4.10.2.real/src/hzip/hzmwrite.cpp --- silo-llnl-4.10.2/src/hzip/hzmwrite.cpp 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/hzip/hzmwrite.cpp 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,137 @@ +#include "hzip.h" +#include "hzmio.h" + +/*@p-r-i-v-a-t-e---f-u-n-c-t-i-o-n-s-----------------------------------------*/ + +// write header data +static HZMstream* +write_header( + OBSTREAM* out, // output stream + unsigned perm, // node permutation + unsigned dims, // mesh dimensionality + unsigned count, // total number of cells + unsigned codec, // codec number + const void* param // codec parameters +) +{ + HZMstream* stream = new HZMstream(hzWRITE); + unsigned bits; + + switch (codec) { + case HZM_CODEC_BASE: { + const HZMCODECbase* p = param ? (const HZMCODECbase*)param : &hzm_codec_base; + stream->out = out; + bits = p->bits; + } + break; +#ifndef WITHOUT_ZLIB + case HZM_CODEC_ZLIB: { + const HZMCODECzlib* p = param ? (const HZMCODECzlib*)param : &hzm_codec_zlib; + stream->out = new OBSTREAMzlib(out, p->zlib.level, p->zlib.insize, p->zlib.outsize); + bits = p->bits; + } + break; +#endif + default: + delete stream; + delete out; + return 0; + } + stream->dims = dims; + stream->count = count; + +#ifndef HZ_WITHOUT_MAGIC + // magic and format + out->put('h'); + out->put('z'); + out->put('m'); + out->put(HZM_VERSION); +#endif + + // cell count and codec parameters + out->put(dims); + out->put(0); + out->put(codec); + out->put(bits); + putuint(out, count); + + // check for errors + if (stream->out->error()) { + delete stream->out; + delete stream; + return 0; + } + + // initialize encoder + stream->encoder = new HZMencoder(stream->out, dims, perm, bits); + + return stream; +} + +/*@p-u-b-l-i-c---f-u-n-c-t-i-o-n-s-------------------------------------------*/ + +// create stream for writing mesh to file +HZMstream* +hzip_mesh_create_file( + FILE* file, // compressed output file + unsigned perm, // node permutation + unsigned dims, // mesh dimensionality + unsigned count, // total number of cells + unsigned codec, // codec number + const void* param // codec parameters +) +{ + return write_header(new OBSTREAMfile(file), perm, dims, count, codec, param); +} + +// create stream for writing mesh to memory +HZMstream* +hzip_mesh_create_mem( + void* buffer, // pointer to compressed data + size_t size, // byte size of allocated storage + unsigned perm, // node permutation + unsigned dims, // mesh dimensionality + unsigned count, // total number of cells + unsigned codec, // codec number + const void* param // codec parameters +) +{ + return write_header(new OBSTREAMmem(buffer, size), perm, dims, count, codec, param); +} + +// compress and write mesh to stream +int +hzip_mesh_write( + HZMstream* stream, // output stream + const int* mesh, // array of node indices to write + unsigned count // number of cells to write +) +{ + OBSTREAM* out = stream->out; + + // if total cell count is not known, write size of this chunk + if (!stream->count) + putuint(out->tail(), count); + + // compress mesh connectivity + for (unsigned i = 0; i < count; i++) + mesh += stream->encoder->encode(mesh); + + // flush all buffers in case more chunks follow + if (!stream->count) + out->flush(); + + return bytes(out); +} + +// flush all buffers +int +hzip_mesh_flush( + HZMstream* stream // output stream +) +{ + OBSTREAM* out = stream->out; + if (stream->count) + out->flush(); + return bytes(out); +} diff -Nru silo-llnl-4.10.2/src/hzip/hzncodec.h silo-llnl-4.10.2.real/src/hzip/hzncodec.h --- silo-llnl-4.10.2/src/hzip/hzncodec.h 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/hzip/hzncodec.h 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,41 @@ +#ifndef HZNCODEC_H +#define HZNCODEC_H + +#include +#include "hzip.h" +#include "hzresidual.h" +#include "hznpredictor.h" +#include "bitvector.h" + +#define HZN_VERSION 0x10 + +// base class for node encoder/decoder +template +class HZNcodec { +public: + inline HZNcodec(unsigned nodes, unsigned dims = 3, unsigned perm = 0, int bias = 0); + virtual ~HZNcodec() { delete pred; } + + // number of encoded/decoded nodes + unsigned nodes() const { return count; } + +protected: + // zero-based index of i'th node in cell + unsigned index(const int* cell, unsigned i) const { return cell[perm[i]] - bias; } + + // prepare for encoding/decoding nodes in cell + inline unsigned prepare(unsigned* v, const int* cell) const; + + const unsigned cellsize; // number of nodes per cell + const int bias; // index offset + unsigned mask; // prediction mask + unsigned count; // number of encoded/decoded nodes + BITVECTOR coded; // per-node encoded/decoded flag + HZNpredictor* pred; // spectral predictor + HZresidual diff[CHAR_BIT]; // residuals for last eight nodes + unsigned perm[HZ_CELLSIZE_MAX]; // in-cell permutation of nodes +}; + +#include "hzncodec.inl" + +#endif diff -Nru silo-llnl-4.10.2/src/hzip/hzncodec.inl silo-llnl-4.10.2.real/src/hzip/hzncodec.inl --- silo-llnl-4.10.2/src/hzip/hzncodec.inl 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/hzip/hzncodec.inl 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,26 @@ +template +HZNcodec::HZNcodec(unsigned nodes, unsigned dims, unsigned pcode, int bias) : + cellsize(1 << dims), + bias(bias), + mask(0), + count(0), + coded(nodes, false), + pred(new HZNpredictor(dims)) +{ + if (!pcode) + pcode = 0x76543210; + for (unsigned i = 0; i < cellsize; i++, pcode >>= 4) + perm[i] = pcode & 0xf; +} + +template +unsigned +HZNcodec::prepare(unsigned* v, const int* cell) const +{ + unsigned m = 0; + for (unsigned i = 0; i < cellsize; i++) { + v[i] = index(cell, i); + m += (coded[v[i]] ? 1 : 0) << i; + } + return m; +} diff -Nru silo-llnl-4.10.2/src/hzip/hzndecoder.h silo-llnl-4.10.2.real/src/hzip/hzndecoder.h --- silo-llnl-4.10.2/src/hzip/hzndecoder.h 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/hzip/hzndecoder.h 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,31 @@ +#ifndef HZNDECODER_H +#define HZNDECODER_H + +#include "hzncodec.h" +#include "ibstream.h" + +// node decoder +template +class HZNdecoder : public HZNcodec { +public: + HZNdecoder(IBSTREAM* stream, unsigned nodes, unsigned dims = 3, unsigned perm = 0, int bias = 0) : HZNcodec(nodes, dims, perm, bias), stream(stream) {} + + // encode all nodes of a cell + inline unsigned decode(T* node, const int* cell); + +private: + using HZNcodec::prepare; + using HZNcodec::cellsize; + using HZNcodec::mask; + using HZNcodec::count; + using HZNcodec::coded; + using HZNcodec::pred; + using HZNcodec::diff; + + void get(); + IBSTREAM* stream; +}; + +#include "hzndecoder.inl" + +#endif diff -Nru silo-llnl-4.10.2/src/hzip/hzndecoder.inl silo-llnl-4.10.2.real/src/hzip/hzndecoder.inl --- silo-llnl-4.10.2/src/hzip/hzndecoder.inl 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/hzip/hzndecoder.inl 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,39 @@ +template +void +HZNdecoder::get() +{ + // read compressed data for eight nodes + mask = stream->get(); + for (unsigned i = 0; i < CHAR_BIT; i++) + if (mask & (1 << i)) + diff[i] = HZresidual(stream); +} + +template +unsigned +HZNdecoder::decode( + T* node, + const int* cell +) +{ + // compute mask of already decoded nodes in cell + unsigned v[HZ_CELLSIZE_MAX]; + unsigned m = prepare(v, cell); + + // encode all unencoded nodes in cell + for (unsigned i = 0; i < cellsize; i++) + if (!(m & (1 << i))) { + unsigned j = count++ % CHAR_BIT; + if (!j) + get(); + // predict, record difference, and mark node as encoded + T p = pred->predict(node, v, i, m); + m += 1 << i; + coded[v[i]] = true; + node[v[i]] = p; + if (mask & (1 << j)) + node[v[i]] += diff[j]; + } + + return cellsize; +} diff -Nru silo-llnl-4.10.2/src/hzip/hznencoder.h silo-llnl-4.10.2.real/src/hzip/hznencoder.h --- silo-llnl-4.10.2/src/hzip/hznencoder.h 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/hzip/hznencoder.h 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,34 @@ +#ifndef HZNENCODER_H +#define HZNENCODER_H + +#include "hzncodec.h" +#include "obstream.h" + +// node encoder +template +class HZNencoder : public HZNcodec { +public: + HZNencoder(OBSTREAM* stream, unsigned nodes, unsigned dims = 3, unsigned perm = 0, int bias = 0) : HZNcodec(nodes, dims, perm, bias), stream(stream) {} + + // encode all nodes of a cell + inline unsigned encode(const T* node, const int* cell); + + // end encoding + inline void end(); + +private: + using HZNcodec::prepare; + using HZNcodec::cellsize; + using HZNcodec::mask; + using HZNcodec::count; + using HZNcodec::coded; + using HZNcodec::pred; + using HZNcodec::diff; + + void put(); + OBSTREAM* stream; +}; + +#include "hznencoder.inl" + +#endif diff -Nru silo-llnl-4.10.2/src/hzip/hznencoder.inl silo-llnl-4.10.2.real/src/hzip/hznencoder.inl --- silo-llnl-4.10.2/src/hzip/hznencoder.inl 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/hzip/hznencoder.inl 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,48 @@ +template +void +HZNencoder::put() +{ + // write compressed data for eight nodes + stream->put(mask); + for (unsigned i = 0; i < CHAR_BIT; i++) + if (mask & (1 << i)) + diff[i].put(stream); + mask = 0; +} + +template +unsigned +HZNencoder::encode( + const T* node, + const int* cell +) +{ + // compute mask of already encoded nodes in cell + unsigned v[HZ_CELLSIZE_MAX]; + unsigned m = prepare(v, cell); + + // encode all unencoded nodes in cell + for (unsigned i = 0; i < cellsize; i++) + if (!(m & (1 << i))) { + // predict, record difference, and mark node as encoded + T p = pred->predict(node, v, i, m); + m += 1 << i; + coded[v[i]] = true; + unsigned j = count++ % CHAR_BIT; + diff[j] = HZresidual(p, node[v[i]]); + if (!diff[j].zero()) + mask += 1 << j; + if (j == CHAR_BIT - 1) + put(); + } + + return cellsize; +} + +template +void +HZNencoder::end() +{ + if (count % CHAR_BIT) + put(); +} diff -Nru silo-llnl-4.10.2/src/hzip/hznio.cpp silo-llnl-4.10.2.real/src/hzip/hznio.cpp --- silo-llnl-4.10.2/src/hzip/hznio.cpp 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/hzip/hznio.cpp 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,114 @@ +#include "hzip.h" +#include "hznio.h" + +/*@p-r-i-v-a-t-e---f-u-n-c-t-i-o-n-s-----------------------------------------*/ + +// close stream for writing and deallocate +static int +read_close( + HZNstream* stream // output stream +) +{ + switch (stream->type) { + case hzUCHAR: + delete stream->cdecoder; + break; + case hzUSHORT: + delete stream->sdecoder; + break; + case hzINT: + delete stream->idecoder; + break; + case hzFLOAT: + delete stream->fdecoder; + break; + case hzDOUBLE: + delete stream->ddecoder; + break; + } + + IBSTREAM* in = stream->in; + int status = bytes(in); + + delete stream; + delete in; + + return status; +} + +// close stream for writing and deallocate +static int +write_close( + HZNstream* stream // output stream +) +{ + switch (stream->type) { + case hzUCHAR: + stream->cencoder->end(); + delete stream->cencoder; + break; + case hzUSHORT: + stream->sencoder->end(); + delete stream->sencoder; + break; + case hzINT: + stream->iencoder->end(); + delete stream->iencoder; + break; + case hzFLOAT: + stream->fencoder->end(); + delete stream->fencoder; + break; + case hzDOUBLE: + stream->dencoder->end(); + delete stream->dencoder; + break; + } + + OBSTREAM* out = stream->out; + out->close(); + int status = bytes(out); + + delete stream; + delete out; + + return status; +} + +/*@p-u-b-l-i-c---f-u-n-c-t-i-o-n-s-------------------------------------------*/ + +// return mesh dimensionality +unsigned +hzip_node_dimensions( + HZNstream* stream // I/O stream +) +{ + return stream->dims; +} + +// return number of nodes in stream +unsigned +hzip_node_count( + HZNstream* stream // input stream +) +{ + return stream->count; +} + +// return node data type +HZtype +hzip_node_type( + HZNstream* stream // input stream +) +{ + return stream->type; +} + +// close stream and deallocate +int +hzip_node_close( + HZNstream* stream // I/O stream +) +{ + return stream->access == hzREAD ? read_close(stream) : write_close(stream); +} diff -Nru silo-llnl-4.10.2/src/hzip/hznio.h silo-llnl-4.10.2.real/src/hzip/hznio.h --- silo-llnl-4.10.2/src/hzip/hznio.h 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/hzip/hznio.h 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,33 @@ +#ifndef HZNIO_H +#define HZNIO_H + +#include "hzio.h" +#include "hznencoder.h" +#include "hzndecoder.h" + +// node input/output stream +struct HZNstream { + HZNstream(HZaccess access) : access(access) {} + HZaccess access; // read or write access + HZtype type; // node data type + union { + OBSTREAM* out; // output stream + IBSTREAM* in; // input stream + }; + union { + HZNencoder* cencoder; + HZNencoder* sencoder; + HZNencoder* iencoder; + HZNencoder* fencoder; + HZNencoder* dencoder; + HZNdecoder* cdecoder; + HZNdecoder* sdecoder; + HZNdecoder* idecoder; + HZNdecoder* fdecoder; + HZNdecoder* ddecoder; + }; + unsigned dims; // mesh dimensionality + unsigned count; // total number of nodes (0 if unknown) +}; + +#endif diff -Nru silo-llnl-4.10.2/src/hzip/hznpredictor.cpp silo-llnl-4.10.2.real/src/hzip/hznpredictor.cpp --- silo-llnl-4.10.2/src/hzip/hznpredictor.cpp 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/hzip/hznpredictor.cpp 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,134 @@ +#include "hznpredictor.h" + +// denominator, numerator1, ..., numerator7 +const int +HZNpredictor::weight[][8] = { + { 1, 0, 0, 0, 0, 0, 0, 0 }, // 00 + { 1, 1, 0, 0, 0, 0, 0, 0 }, // 01 + { 1, 0, 1, 0, 0, 0, 0, 0 }, // 02 + { 2, 1, 1, 0, 0, 0, 0, 0 }, // 03 + { 1, 0, 0, 1, 0, 0, 0, 0 }, // 04 + { 1, 1, 0, 0, 0, 0, 0, 0 }, // 05 + { 1, 0, 1, 0, 0, 0, 0, 0 }, // 06 + { 1, 1, 1, -1, 0, 0, 0, 0 }, // 07 + { 1, 0, 0, 0, 1, 0, 0, 0 }, // 08 + { 2, 1, 0, 0, 1, 0, 0, 0 }, // 09 + { 2, 0, 1, 0, 1, 0, 0, 0 }, // 0a + { 3, 1, 1, 0, 1, 0, 0, 0 }, // 0b + { 3, 0, 0, 1, 2, 0, 0, 0 }, // 0c + { 2, 1, 0, 0, 1, 0, 0, 0 }, // 0d + { 2, 0, 1, 0, 1, 0, 0, 0 }, // 0e + { 1, 1, 1, -1, 0, 0, 0, 0 }, // 0f + { 1, 0, 0, 0, 0, 1, 0, 0 }, // 10 + { 1, 1, 0, 0, 0, 0, 0, 0 }, // 11 + { 3, 0, 2, 0, 0, 1, 0, 0 }, // 12 + { 2, 1, 1, 0, 0, 0, 0, 0 }, // 13 + { 2, 0, 0, 1, 0, 1, 0, 0 }, // 14 + { 1, 1, 0, 0, 0, 0, 0, 0 }, // 15 + { 2, 0, 2, -1, 0, 1, 0, 0 }, // 16 + { 1, 1, 1, -1, 0, 0, 0, 0 }, // 17 + { 1, 0, 0, 0, 1, 0, 0, 0 }, // 18 + { 1, 1, 0, 0, 1, -1, 0, 0 }, // 19 + { 2, 0, 1, 0, 1, 0, 0, 0 }, // 1a + { 1, 1, 0, 0, 1, -1, 0, 0 }, // 1b + { 2, 0, 0, 1, 2, -1, 0, 0 }, // 1c + { 1, 1, 0, 0, 1, -1, 0, 0 }, // 1d + { 2, 0, 1, 0, 1, 0, 0, 0 }, // 1e + { 2, 2, 1, -1, 1, -1, 0, 0 }, // 1f + { 1, 0, 0, 0, 0, 0, 1, 0 }, // 20 + { 3, 2, 0, 0, 0, 0, 1, 0 }, // 21 + { 1, 0, 1, 0, 0, 0, 0, 0 }, // 22 + { 2, 1, 1, 0, 0, 0, 0, 0 }, // 23 + { 2, 0, 0, 1, 0, 0, 1, 0 }, // 24 + { 2, 2, 0, -1, 0, 0, 1, 0 }, // 25 + { 1, 0, 1, 0, 0, 0, 0, 0 }, // 26 + { 1, 1, 1, -1, 0, 0, 0, 0 }, // 27 + { 1, 0, 0, 0, 1, 0, 0, 0 }, // 28 + { 2, 1, 0, 0, 1, 0, 0, 0 }, // 29 + { 1, 0, 1, 0, 1, 0, -1, 0 }, // 2a + { 1, 0, 1, 0, 1, 0, -1, 0 }, // 2b + { 2, 0, 0, 1, 2, 0, -1, 0 }, // 2c + { 2, 1, 0, 0, 1, 0, 0, 0 }, // 2d + { 1, 0, 1, 0, 1, 0, -1, 0 }, // 2e + { 2, 1, 2, -1, 1, 0, -1, 0 }, // 2f + { 2, 0, 0, 0, 0, 1, 1, 0 }, // 30 + { 2, 2, 0, 0, 0, -1, 1, 0 }, // 31 + { 2, 0, 2, 0, 0, 1, -1, 0 }, // 32 + { 2, 1, 1, 0, 0, 0, 0, 0 }, // 33 + { 3, 0, 0, 1, 0, 1, 1, 0 }, // 34 + { 1, 2, 0, -1, 0, -1, 1, 0 }, // 35 + { 1, 0, 2, -1, 0, 1, -1, 0 }, // 36 + { 1, 1, 1, -1, 0, 0, 0, 0 }, // 37 + { 1, 0, 0, 0, 1, 0, 0, 0 }, // 38 + { 1, 1, 0, 0, 1, -1, 0, 0 }, // 39 + { 1, 0, 1, 0, 1, 0, -1, 0 }, // 3a + { 2, 1, 1, 0, 2, -1, -1, 0 }, // 3b + { 1, 0, 0, 1, 2, -1, -1, 0 }, // 3c + { 1, 1, 0, 0, 1, -1, 0, 0 }, // 3d + { 1, 0, 1, 0, 1, 0, -1, 0 }, // 3e + { 3, 2, 2, -1, 2, -1, -1, 0 }, // 3f + { 1, 0, 0, 0, 0, 0, 0, 1 }, // 40 + { 1, 1, 0, 0, 0, 0, 0, 0 }, // 41 + { 1, 0, 1, 0, 0, 0, 0, 0 }, // 42 + { 3, 2, 2, 0, 0, 0, 0, -1 }, // 43 + { 1, 0, 0, 1, 0, 0, 0, 0 }, // 44 + { 1, 1, 0, 0, 0, 0, 0, 0 }, // 45 + { 1, 0, 1, 0, 0, 0, 0, 0 }, // 46 + { 1, 1, 1, -1, 0, 0, 0, 0 }, // 47 + { 1, 0, 0, 0, 1, 0, 0, 0 }, // 48 + { 3, 2, 0, 0, 2, 0, 0, -1 }, // 49 + { 3, 0, 2, 0, 2, 0, 0, -1 }, // 4a + { 2, 1, 1, 0, 1, 0, 0, -1 }, // 4b + { 1, 0, 0, 1, 1, 0, 0, -1 }, // 4c + { 1, 0, 0, 1, 1, 0, 0, -1 }, // 4d + { 1, 0, 0, 1, 1, 0, 0, -1 }, // 4e + { 3, 2, 2, -1, 1, 0, 0, -1 }, // 4f + { 1, 0, 0, 0, 0, 1, 0, 0 }, // 50 + { 1, 1, 0, 0, 0, 0, 0, 0 }, // 51 + { 1, 0, 1, 0, 0, 1, 0, -1 }, // 52 + { 1, 0, 1, 0, 0, 1, 0, -1 }, // 53 + { 1, 0, 0, 1, 0, 1, 0, -1 }, // 54 + { 1, 1, 0, 0, 0, 0, 0, 0 }, // 55 + { 1, 0, 1, 0, 0, 1, 0, -1 }, // 56 + { 1, 1, 1, -1, 0, 0, 0, 0 }, // 57 + { 1, 0, 0, 0, 1, 0, 0, 0 }, // 58 + { 1, 1, 0, 0, 1, -1, 0, 0 }, // 59 + { 1, 0, 1, 0, 0, 1, 0, -1 }, // 5a + { 3, 2, 1, 0, 2, -1, 0, -1 }, // 5b + { 1, 0, 0, 1, 1, 0, 0, -1 }, // 5c + { 1, 1, 0, 0, 1, -1, 0, 0 }, // 5d + { 2, 0, 1, 1, 1, 1, 0, -2 }, // 5e + { 2, 2, 1, -1, 1, -1, 0, 0 }, // 5f + { 1, 0, 0, 0, 0, 0, 1, 0 }, // 60 + { 1, 1, 0, 0, 0, 0, 1, -1 }, // 61 + { 1, 0, 1, 0, 0, 0, 0, 0 }, // 62 + { 1, 1, 0, 0, 0, 0, 1, -1 }, // 63 + { 1, 0, 0, 1, 0, 0, 1, -1 }, // 64 + { 1, 1, 0, 0, 0, 0, 1, -1 }, // 65 + { 1, 0, 1, 0, 0, 0, 0, 0 }, // 66 + { 1, 1, 1, -1, 0, 0, 0, 0 }, // 67 + { 1, 0, 0, 0, 1, 0, 0, 0 }, // 68 + { 1, 1, 0, 0, 0, 0, 1, -1 }, // 69 + { 1, 0, 1, 0, 1, 0, -1, 0 }, // 6a + { 3, 1, 2, 0, 2, 0, -1, -1 }, // 6b + { 1, 0, 0, 1, 1, 0, 0, -1 }, // 6c + { 2, 1, 0, 1, 1, 0, 1, -2 }, // 6d + { 1, 0, 1, 0, 1, 0, -1, 0 }, // 6e + { 2, 1, 2, -1, 1, 0, -1, 0 }, // 6f + { 1, 0, 0, 0, 0, 1, 1, -1 }, // 70 + { 1, 1, 0, 0, 0, 0, 1, -1 }, // 71 + { 1, 0, 1, 0, 0, 1, 0, -1 }, // 72 + { 2, 1, 1, 0, 0, 1, 1, -2 }, // 73 + { 1, 0, 0, 1, 0, 1, 1, -2 }, // 74 + { 1, 1, 0, 0, 0, 0, 1, -1 }, // 75 + { 1, 0, 1, 0, 0, 1, 0, -1 }, // 76 + { 1, 1, 1, -1, 0, 0, 0, 0 }, // 77 + { 1, 0, 0, 0, 1, 0, 0, 0 }, // 78 + { 1, 1, 0, 0, 1, -1, 0, 0 }, // 79 + { 1, 0, 1, 0, 1, 0, -1, 0 }, // 7a + { 2, 1, 1, 0, 2, -1, -1, 0 }, // 7b + { 1, 0, 0, 1, 1, 0, 0, -1 }, // 7c + { 1, 1, 0, 0, 1, -1, 0, 0 }, // 7d + { 1, 0, 1, 0, 1, 0, -1, 0 }, // 7e + { 1, 1, 1, -1, 1, -1, -1, 1 }, // 7f +}; diff -Nru silo-llnl-4.10.2/src/hzip/hznpredictor.h silo-llnl-4.10.2.real/src/hzip/hznpredictor.h --- silo-llnl-4.10.2/src/hzip/hznpredictor.h 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/hzip/hznpredictor.h 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,20 @@ +#ifndef HZNPREDICTOR_H +#define HZNPREDICTOR_H + +// spectral predictor for node-centered data +class HZNpredictor { +public: + HZNpredictor(unsigned dims) : cellsize(1 << dims) {} + + // predict node with index cell[i] from known in-cell neighbors given by mask + template + inline T predict(const T* node, const unsigned* cell, unsigned i, unsigned mask); + +private: + static const int weight[][8]; + const unsigned cellsize; +}; + +#include "hznpredictor.inl" + +#endif diff -Nru silo-llnl-4.10.2/src/hzip/hznpredictor.inl silo-llnl-4.10.2.real/src/hzip/hznpredictor.inl --- silo-llnl-4.10.2/src/hzip/hznpredictor.inl 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/hzip/hznpredictor.inl 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,25 @@ +template +T +HZNpredictor::predict( + const T* node, + const unsigned* cell, + unsigned i, + unsigned mask +) +{ + // renumber nodes so that predicted node i is first in cell + unsigned j = mask; + j = ((j << (i & 1)) & 0xaa) + ((j >> (i & 1)) & 0x55); + j = ((j << (i & 2)) & 0xcc) + ((j >> (i & 2)) & 0x33); + j = ((j << (i & 4)) & 0xf0) + ((j >> (i & 4)) & 0x0f); + j >>= 1; + + // predict node as weighted combination of its neighbors + volatile T p = 0; + for (unsigned k = 1; k < cellsize; k++) + if (weight[j][k]) + p = T(p + weight[j][k] * node[cell[i ^ k]]); + p = T(p / weight[j][0]); + + return p; +} diff -Nru silo-llnl-4.10.2/src/hzip/hznread.cpp silo-llnl-4.10.2.real/src/hzip/hznread.cpp --- silo-llnl-4.10.2/src/hzip/hznread.cpp 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/hzip/hznread.cpp 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,148 @@ +#include "hzip.h" +#include "hznio.h" + +/*@p-r-i-v-a-t-e---f-u-n-c-t-i-o-n-s-----------------------------------------*/ + +// read header data +static HZNstream* +read_header( + IBSTREAM* in, // input stream + unsigned perm, // node permutation + int bias // node index bias +) +{ +#ifndef HZ_WITHOUT_MAGIC + // magic and format + if (in->get() != 'h' || + in->get() != 'z' || + in->get() != 'n' || + in->get() != HZN_VERSION) { + delete in; + return 0; + } +#endif + + // codec parameters and number of cells + HZNstream* stream = new HZNstream(hzREAD); + stream->dims = in->get(); + in->get(); + unsigned codec = in->get(); + switch (codec) { + case HZN_CODEC_BASE: + stream->in = in; + break; +#ifndef WITHOUT_ZLIB + case HZN_CODEC_ZLIB: + stream->in = new IBSTREAMzlib(in); + break; +#endif + default: + delete stream; + delete in; + return 0; + } + stream->type = HZtype(in->get()); + stream->count = getuint(in); + + // check for errors + if (stream->in->error()) { + delete stream->in; + delete stream; + return 0; + } + + // initialize decoder + switch (stream->type) { + case hzUCHAR: + stream->cdecoder = new HZNdecoder(stream->in, stream->count, stream->dims, perm, bias); + break; + case hzUSHORT: + stream->sdecoder = new HZNdecoder(stream->in, stream->count, stream->dims, perm, bias); + break; + case hzINT: + stream->idecoder = new HZNdecoder(stream->in, stream->count, stream->dims, perm, bias); + break; + case hzFLOAT: + stream->fdecoder = new HZNdecoder(stream->in, stream->count, stream->dims, perm, bias); + break; + case hzDOUBLE: + stream->ddecoder = new HZNdecoder(stream->in, stream->count, stream->dims, perm, bias); + break; + } + + return stream; +} + +// read and decompress node data +template +static unsigned +read( + HZNdecoder* decoder, // node decoder + void* node, // node data array to read to + const int* mesh, // array of node indices + unsigned count // number of cells to visit +) +{ + unsigned nodes = decoder->nodes(); + for (unsigned i = 0; i < count; i++) + mesh += decoder->decode((T*)node, mesh); + return decoder->nodes() - nodes; +} + +/*@p-u-b-l-i-c---f-u-n-c-t-i-o-n-s-------------------------------------------*/ + +// open stream for reading node-centered data from file +HZNstream* +hzip_node_open_file( + FILE* file, // compressed input file + unsigned perm, // node permutation + int bias // node index bias +) +{ + return read_header(new IBSTREAMfile(file), perm, bias); +} + +// open stream for reading node-centered data from memory +HZNstream* +hzip_node_open_mem( + const void* buffer, // pointer to compressed data + size_t size, // byte size of compressed data + unsigned perm, // node permutation + int bias // node index bias +) +{ + return read_header(new IBSTREAMmem(buffer, size), perm, bias); +} + +// read and decompress node-centered data from stream +int +hzip_node_read( + HZNstream* stream, // input stream + void* node, // node data array to read to + const int* mesh, // array of node indices + unsigned count // number of cells to visit +) +{ + IBSTREAM* in = stream->in; + int nodes = -1; + + switch (stream->type) { + case hzUCHAR: + nodes = read(stream->cdecoder, node, mesh, count); + break; + case hzUSHORT: + nodes = read(stream->sdecoder, node, mesh, count); + break; + case hzINT: + nodes = read(stream->idecoder, node, mesh, count); + break; + case hzFLOAT: + nodes = read(stream->fdecoder, node, mesh, count); + break; + case hzDOUBLE: + nodes = read(stream->ddecoder, node, mesh, count); + break; + } + + return in->error() ? in->error() : nodes; +} diff -Nru silo-llnl-4.10.2/src/hzip/hznwrite.cpp silo-llnl-4.10.2.real/src/hzip/hznwrite.cpp --- silo-llnl-4.10.2/src/hzip/hznwrite.cpp 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/hzip/hznwrite.cpp 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,173 @@ +#include "hzip.h" +#include "hznio.h" + +/*@p-r-i-v-a-t-e---f-u-n-c-t-i-o-n-s-----------------------------------------*/ + +// write header data +static HZNstream* +write_header( + OBSTREAM* out, // output stream + unsigned perm, // node permutation + int bias, // node index bias + unsigned dims, // mesh dimensionality + unsigned count, // total number of nodes + HZtype type, // node data type + unsigned codec, // codec number + const void* param // codec parameters +) +{ + HZNstream* stream = new HZNstream(hzWRITE); + + switch (codec) { + case HZN_CODEC_BASE: + stream->out = out; + break; +#ifndef WITHOUT_ZLIB + case HZN_CODEC_ZLIB: { + const HZNCODECzlib* p = param ? (const HZNCODECzlib*)param : &hzn_codec_zlib; + stream->out = new OBSTREAMzlib(out, p->zlib.level, p->zlib.insize, p->zlib.outsize); + } + break; +#endif + default: + delete stream; + delete out; + return 0; + } + stream->type = type; + stream->dims = dims; + stream->count = count; + +#ifndef HZ_WITHOUT_MAGIC + // magic and format + out->put('h'); + out->put('z'); + out->put('n'); + out->put(HZN_VERSION); +#endif + + // cell count and codec parameters + out->put(dims); + out->put(0); + out->put(codec); + out->put(type); + putuint(out, count); + + // check for errors + if (stream->out->error()) { + delete stream->out; + delete stream; + return 0; + } + + // initialize encoder + switch (type) { + case hzUCHAR: + stream->cencoder = new HZNencoder(stream->out, count, dims, perm, bias); + break; + case hzUSHORT: + stream->sencoder = new HZNencoder(stream->out, count, dims, perm, bias); + break; + case hzINT: + stream->iencoder = new HZNencoder(stream->out, count, dims, perm, bias); + break; + case hzFLOAT: + stream->fencoder = new HZNencoder(stream->out, count, dims, perm, bias); + break; + case hzDOUBLE: + stream->dencoder = new HZNencoder(stream->out, count, dims, perm, bias); + break; + } + + return stream; +} + +// compress and write node data +template +static void +write( + HZNencoder* encoder, // node encoder + const void* node, // node data array + const int* mesh, // array of node indices + unsigned count // number of cells to visit +) +{ + for (unsigned i = 0; i < count; i++) + mesh += encoder->encode((const T*)node, mesh); +} + +/*@p-u-b-l-i-c---f-u-n-c-t-i-o-n-s-------------------------------------------*/ + +// create stream for writing node data to file +HZNstream* +hzip_node_create_file( + FILE* file, // compressed output file + unsigned perm, // node permutation + int bias, // node index bias + unsigned dims, // mesh dimensionality + unsigned count, // total number of nodes + HZtype type, // node data type + unsigned codec, // codec number + const void* param // codec parameters +) +{ + return write_header(new OBSTREAMfile(file), perm, bias, dims, count, type, codec, param); +} + +// create stream for writing node data to memory +HZNstream* +hzip_node_create_mem( + void* buffer, // pointer to compressed data + size_t size, // byte size of allocated storage + unsigned perm, // node permutation + int bias, // node index bias + unsigned dims, // mesh dimensionality + unsigned count, // total number of nodes + HZtype type, // node data type + unsigned codec, // codec number + const void* param // codec parameters +) +{ + return write_header(new OBSTREAMmem(buffer, size), perm, bias, dims, count, type, codec, param); +} + +// compress node data for count cells +int +hzip_node_write( + HZNstream* stream, // output stream + const void* node, // node data array to write from + const int* mesh, // array of node indices + unsigned count // number of cells to visit +) +{ + switch (stream->type) { + case hzUCHAR: + write(stream->cencoder, node, mesh, count); + break; + case hzUSHORT: + write(stream->sencoder, node, mesh, count); + break; + case hzINT: + write(stream->iencoder, node, mesh, count); + break; + case hzFLOAT: + write(stream->fencoder, node, mesh, count); + break; + case hzDOUBLE: + write(stream->dencoder, node, mesh, count); + break; + } + + return bytes(stream->out); +} + +// flush all buffers +int +hzip_node_flush( + HZNstream* stream // output stream +) +{ + OBSTREAM* out = stream->out; + out->flush(); + return bytes(out); +} diff -Nru silo-llnl-4.10.2/src/hzip/hzresidual.h silo-llnl-4.10.2.real/src/hzip/hzresidual.h --- silo-llnl-4.10.2/src/hzip/hzresidual.h 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/hzip/hzresidual.h 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,59 @@ +#ifndef HZRESIDUAL_H +#define HZRESIDUAL_H + +#include "ibstream.h" +#include "obstream.h" +#include "hzmap.h" + +// variable-length residual computation and I/O +template < typename T, class M = HZmap > +class HZresidual { +public: + HZresidual() : value() {} + + // construct residual from predicted and actual values + HZresidual(T p, T a); + + // read and construct residual from stream + HZresidual(IBSTREAM* stream); + + // write residual to stream + void put(OBSTREAM* stream) const; + + // compute actual value from prediction and residual + T operator+(T p) const; + + // is residual zero? + bool zero() const { return !value; } + +private: + typedef typename M::RANGE U; + U value; // value of residual + M map; // functors for mapping between value type T and integer type U +}; + +template +inline T operator+(T p, HZresidual r) { return r + p; } + +template +inline T& operator+=(T& v, HZresidual r) { v = r + v; return v; } + +// specialization for fixed-length unsigned char residuals +template +class HZresidual { +private: + typedef unsigned char U; +public: + HZresidual() : value() {} + HZresidual(U p, U a) : value(U(p - a)) {} + HZresidual(IBSTREAM* stream) : value(U(stream->get())) {} + void put(OBSTREAM* stream) const { stream->put(value); } + U operator+(U p) const { return U(p - value); } + bool zero() const { return !value; } +private: + U value; // value of residual +}; + +#include "hzresidual.inl" + +#endif diff -Nru silo-llnl-4.10.2/src/hzip/hzresidual.inl silo-llnl-4.10.2.real/src/hzip/hzresidual.inl --- silo-llnl-4.10.2/src/hzip/hzresidual.inl 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/hzip/hzresidual.inl 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,45 @@ +// compute (possibly zero) residual from predicted and actual values +template +HZresidual::HZresidual(T p, T a) +{ + U r = U(map(p) - map(a)); + U c = U(~r); + value = U(c < r ? ~(2 * r) : 2 * r); +} + +// read byte-aligned variable-length residual from stream +template +HZresidual::HZresidual(IBSTREAM* stream) +{ + U r = 0; + U c; + unsigned i = 0; + do { + c = U(stream->get()); + r = U(r + (c << i)); + i += 7; + } while (c & 0x80); + value = r; +} + +// write byte-aligned variable-length residual to stream +template +void +HZresidual::put(OBSTREAM* stream) const +{ + U r = value; + do { + stream->put((r >> 7 ? 0x80 : 0x00) + (r & 0x7f)); + r >>= 7; + } while (r--); +} + +// reconstruct actual value from prediction and residual +template +T +HZresidual::operator+(T p) const +{ + U r = value; + U a = U(map(p) - ((r >> 1) ^ (0 - (r & 1)))); + return map(a); +} diff -Nru silo-llnl-4.10.2/src/hzip/hzutil.cpp silo-llnl-4.10.2.real/src/hzip/hzutil.cpp --- silo-llnl-4.10.2/src/hzip/hzutil.cpp 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/hzip/hzutil.cpp 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,48 @@ +#include "hzip.h" + +/*@p-r-i-v-a-t-e---f-u-n-c-t-i-o-n-s-----------------------------------------*/ + +// recursively construct mesh +static int* +mesh_construct( + int* mesh, // array of node indices to construct + unsigned dims, // topological mesh dimensionality (1-3) + const unsigned count[], // structured grid dimensions (node counts) + unsigned dim, // current dimension + const int offset[], // node offset along each dimension + int index // current node index +) +{ + if (dim--) + for (unsigned i = 0; i < count[dim] - 1; i++, index += offset[dim]) + mesh = mesh_construct(mesh, dims, count, dim, offset, index); + else { + unsigned cellsize = 1 << dims; + for (unsigned i = 0; i < cellsize; i++) { + int k = index; + for (unsigned j = 0; j < dims; j++) + if (i & (1 << j)) + k += offset[j]; + *mesh++ = k; + } + } + return mesh; +} + +/*@p-u-b-l-i-c---f-u-n-c-t-i-o-n-s-------------------------------------------*/ + +// construct mesh connectivity for regular grid +unsigned +hzip_mesh_construct( + int* mesh, // array of node indices to construct + unsigned dims, // topological mesh dimensionality (1-3) + const unsigned count[], // structured grid dimensions (node counts) + int bias // node index bias +) +{ + int offset[HZ_DIMS_MAX] = { 1 }; + for (unsigned i = 1; i < dims; i++) + offset[i] = count[i - 1] * offset[i - 1]; + mesh_construct(mesh, dims, count, dims, offset, bias); + return 0; +} diff -Nru silo-llnl-4.10.2/src/hzip/ibstream.h silo-llnl-4.10.2.real/src/hzip/ibstream.h --- silo-llnl-4.10.2/src/hzip/ibstream.h 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/hzip/ibstream.h 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,245 @@ +#ifndef IBSTREAM_H +#define IBSTREAM_H + +#include +#include + +// error codes +enum IBSTREAMerror { + IBSTREAM_OK = 0, + IBSTREAM_ERR_UNKNOWN = -1, + IBSTREAM_ERR_INVALID = -2, + IBSTREAM_ERR_ZLIB = -3 +}; + +//@IBSTREAM.................................................................... + +// abstract base class for input byte stream +class IBSTREAM { +public: + virtual ~IBSTREAM() {} + + // previous stream object in pipeline (or 0 if none) + virtual IBSTREAM* prev() { return 0; } + + // head stream object in pipeline (the source object that generates bytes) + virtual IBSTREAM* head() { return this; } + + // detach this stream object from the previous one in the pipeline + virtual IBSTREAM* detach() { return 0; } + + // input a single byte (EOF is returned if no more input) + virtual int get() = 0; + + // input a sequence of bytes (the actual number of bytes read is returned) + virtual size_t get(void *byte, size_t size) + { + unsigned char* p = (unsigned char*)byte; + for (int c; size-- && (c = get()) != EOF; p++) + *p = (unsigned char)c; + return (size_t)(p - (unsigned char*)byte); + } + + // rewind stream a number of bytes + virtual bool unget(size_t size) = 0; + + // number of bytes read from this stream object + virtual size_t bytes() const = 0; + + // error code (0 is returned if no error) + virtual int error() const = 0; +}; + +//@IBSTREAMmem................................................................. + +// read stream from a fixed-size memory buffer +class IBSTREAMmem : public IBSTREAM { +public: + IBSTREAMmem(const void* buffer, size_t size) : + begin((const unsigned char*)buffer), + end(begin + size), + ptr(begin), + status(IBSTREAM_OK) + {} + int get() + { + return ptr == end ? EOF : *ptr++; + } + size_t get(void* byte, size_t size) + { + if (size > (size_t)(end - ptr)) + size = (size_t)(end - ptr); + memcpy(byte, ptr, size); + ptr += size; + return size; + } + bool unget(size_t size) + { + if ((size_t)(ptr - begin) < size) { + status = IBSTREAM_ERR_INVALID; + return false; + } + else { + ptr -= size; + return true; + } + } + size_t bytes() const { return (size_t)(ptr - begin); } + int error() const { return status; } +private: + const unsigned char* const begin; + const unsigned char* const end; + const unsigned char* ptr; + int status; +}; + +//@IBSTREAMfile................................................................ + +// read stream from a binary file +class IBSTREAMfile : public IBSTREAM { +public: + IBSTREAMfile(FILE* in) : file(in), read(0), status(IBSTREAM_OK) {} + int get() + { + int c = fgetc(file); + if (c == EOF) { + if (ferror(file)) + status = IBSTREAM_ERR_UNKNOWN; + } + else + read++; + return c; + } + size_t get(void* byte, size_t size) + { + size = fread(byte, 1, size, file); + if (ferror(file)) + status = IBSTREAM_ERR_UNKNOWN; + read += size; + return size; + } + bool unget(size_t size) + { + if (fseek(file, -(long)size, SEEK_CUR)) { + status = IBSTREAM_ERR_INVALID; + return false; + } + else { + read -= size; + return true; + } + } + size_t bytes() const { return read; } + int error() const { return status; } +private: + FILE* file; + size_t read; + int status; +}; + +//@IBSTREAMzlib................................................................ + +#ifndef WITHOUT_ZLIB +#include + +#define IBSTREAM_ZLIB_IBUF_SIZE 0x2000 +#define IBSTREAM_ZLIB_OBUF_SIZE 0x6000 + +// zlib compressed stream +class IBSTREAMzlib : public IBSTREAM { +public: + IBSTREAMzlib(IBSTREAM* stream, size_t insize = IBSTREAM_ZLIB_IBUF_SIZE, size_t outsize = IBSTREAM_ZLIB_OBUF_SIZE) : + ibstream(stream), insize(insize), outsize(outsize), + in(new unsigned char[insize]), + out(new unsigned char[outsize]), + end(0), + ptr(0), + read(0), + status(IBSTREAM_OK) + { + zstream.zalloc = Z_NULL; + zstream.zfree = Z_NULL; + zstream.opaque = Z_NULL; + zstream.next_in = Z_NULL; + zstream.avail_in = 0; + if (inflateInit(&zstream) != Z_OK) + status = IBSTREAM_ERR_ZLIB; + } + ~IBSTREAMzlib() + { + inflateEnd(&zstream); + delete[] in; + delete[] out; + if (ibstream) + delete ibstream; + } + IBSTREAM* prev() { return ibstream; } + IBSTREAM* head() { return ibstream->head(); } + IBSTREAM* detach() { IBSTREAM* s = ibstream; ibstream = 0; return s; } + int get() + { + return ptr == end && !decode() ? EOF : *ptr++; + } + bool unget(size_t size) + { + if (size) { + status = IBSTREAM_ERR_INVALID; + return false; + } + else + return true; + } + using IBSTREAM::get; + size_t bytes() const { return read; } + int error() const { return status ? status : ibstream->error(); } + +private: + // decode buffer + bool decode() + { + do { + if (!zstream.avail_in) { + zstream.next_in = in; + zstream.avail_in = ibstream->get(in, insize); + if (!zstream.avail_in) { + status = IBSTREAM_ERR_ZLIB; + return false; + } + } + zstream.next_out = out; + zstream.avail_out = outsize; + switch (inflate(&zstream, Z_NO_FLUSH)) { + case Z_OK: + break; + case Z_STREAM_END: + if (inflateEnd(&zstream) == Z_OK) { + if (ibstream->unget(zstream.avail_in)) + zstream.avail_in = 0; + break; + } + /*FALLTHROUGH*/ + default: + status = IBSTREAM_ERR_ZLIB; + return false; + } + end = out + outsize - zstream.avail_out; + } while (end == out); + read += (unsigned)(end - out); + ptr = out; + return true; + } + + IBSTREAM* ibstream; + z_stream zstream; + const size_t insize; + const size_t outsize; + unsigned char* const in; + unsigned char* const out; + const unsigned char* end; + const unsigned char* ptr; + size_t read; + int status; +}; +#endif + +#endif diff -Nru silo-llnl-4.10.2/src/hzip/Makefile.am silo-llnl-4.10.2.real/src/hzip/Makefile.am --- silo-llnl-4.10.2/src/hzip/Makefile.am 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/hzip/Makefile.am 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,100 @@ +# Copyright (c) 1994 - 2010, Lawrence Livermore National Security, LLC. +# LLNL-CODE-425250. +# All rights reserved. +# +# This file is part of Silo. For details, see silo.llnl.gov. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the disclaimer below. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the disclaimer (as noted +# below) in the documentation and/or other materials provided with +# the distribution. +# * Neither the name of the LLNS/LLNL nor the names of its +# contributors may be used to endorse or promote products derived +# from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL LAWRENCE +# LIVERMORE NATIONAL SECURITY, LLC, THE U.S. DEPARTMENT OF ENERGY OR +# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +# PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +# LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# +# This work was produced at Lawrence Livermore National Laboratory under +# Contract No. DE-AC52-07NA27344 with the DOE. +# +# Neither the United States Government nor Lawrence Livermore National +# Security, LLC nor any of their employees, makes any warranty, express +# or implied, or assumes any liability or responsibility for the +# accuracy, completeness, or usefulness of any information, apparatus, +# product, or process disclosed, or represents that its use would not +# infringe privately-owned rights. +# +# Any reference herein to any specific commercial products, process, or +# services by trade name, trademark, manufacturer or otherwise does not +# necessarily constitute or imply its endorsement, recommendation, or +# favoring by the United States Government or Lawrence Livermore +# National Security, LLC. The views and opinions of authors expressed +# herein do not necessarily state or reflect those of the United States +# Government or Lawrence Livermore National Security, LLC, and shall not +# be used for advertising or product endorsement purposes. +# +## Procss this file with automake to create Makefile.in + + +if !ZLIB_AVAILABLE +AM_CPPFLAGS = -DWITHOUT_ZLIB +endif + +noinst_LTLIBRARIES = libsilo_hzip.la +libsilo_hzip_la_SOURCES = $(FILES) + +noinst_HEADERS = \ + bitvector.h \ + hzio.h \ + hzip.h \ + hzmap.h \ + hzmcodec.h \ + hzmdecoder.h \ + hzmencoder.h \ + hzmio.h \ + hzmpredictor.h \ + hzncodec.h \ + hzndecoder.h \ + hznencoder.h \ + hznio.h \ + hznpredictor.h \ + hzresidual.h \ + ibstream.h \ + obstream.h \ + hzio.inl \ + hzmcodec.inl \ + hzncodec.inl \ + hzndecoder.inl \ + hznencoder.inl \ + hznpredictor.inl \ + hzresidual.inl + +FILES = \ + hzmdecoder.cpp \ + hzmencoder.cpp \ + hzmio.cpp \ + hzmpredictor.cpp \ + hzmread.cpp \ + hzmwrite.cpp \ + hznio.cpp \ + hznpredictor.cpp \ + hznread.cpp \ + hznwrite.cpp \ + hzutil.cpp diff -Nru silo-llnl-4.10.2/src/hzip/Makefile.in silo-llnl-4.10.2.real/src/hzip/Makefile.in --- silo-llnl-4.10.2/src/hzip/Makefile.in 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/hzip/Makefile.in 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,641 @@ +# Makefile.in generated by automake 1.11.1 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, +# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, +# Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ + +# Copyright (c) 1994 - 2010, Lawrence Livermore National Security, LLC. +# LLNL-CODE-425250. +# All rights reserved. +# +# This file is part of Silo. For details, see silo.llnl.gov. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the disclaimer below. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the disclaimer (as noted +# below) in the documentation and/or other materials provided with +# the distribution. +# * Neither the name of the LLNS/LLNL nor the names of its +# contributors may be used to endorse or promote products derived +# from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL LAWRENCE +# LIVERMORE NATIONAL SECURITY, LLC, THE U.S. DEPARTMENT OF ENERGY OR +# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +# PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +# LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# +# This work was produced at Lawrence Livermore National Laboratory under +# Contract No. DE-AC52-07NA27344 with the DOE. +# +# Neither the United States Government nor Lawrence Livermore National +# Security, LLC nor any of their employees, makes any warranty, express +# or implied, or assumes any liability or responsibility for the +# accuracy, completeness, or usefulness of any information, apparatus, +# product, or process disclosed, or represents that its use would not +# infringe privately-owned rights. +# +# Any reference herein to any specific commercial products, process, or +# services by trade name, trademark, manufacturer or otherwise does not +# necessarily constitute or imply its endorsement, recommendation, or +# favoring by the United States Government or Lawrence Livermore +# National Security, LLC. The views and opinions of authors expressed +# herein do not necessarily state or reflect those of the United States +# Government or Lawrence Livermore National Security, LLC, and shall not +# be used for advertising or product endorsement purposes. +# + + +VPATH = @srcdir@ +pkgdatadir = $(datadir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_triplet = @build@ +host_triplet = @host@ +subdir = src/hzip +DIST_COMMON = $(noinst_HEADERS) $(srcdir)/Makefile.am \ + $(srcdir)/Makefile.in +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/config/ax_check_compiler_flags.m4 \ + $(top_srcdir)/config/ax_have_qt.m4 \ + $(top_srcdir)/config/libtool.m4 \ + $(top_srcdir)/config/ltoptions.m4 \ + $(top_srcdir)/config/ltsugar.m4 \ + $(top_srcdir)/config/ltversion.m4 \ + $(top_srcdir)/config/lt~obsolete.m4 \ + $(top_srcdir)/config/vl_lib_readline.m4 \ + $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +LTLIBRARIES = $(noinst_LTLIBRARIES) +libsilo_hzip_la_LIBADD = +am__objects_1 = hzmdecoder.lo hzmencoder.lo hzmio.lo hzmpredictor.lo \ + hzmread.lo hzmwrite.lo hznio.lo hznpredictor.lo hznread.lo \ + hznwrite.lo hzutil.lo +am_libsilo_hzip_la_OBJECTS = $(am__objects_1) +libsilo_hzip_la_OBJECTS = $(am_libsilo_hzip_la_OBJECTS) +DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) +depcomp = $(SHELL) $(top_srcdir)/config/depcomp +am__depfiles_maybe = depfiles +am__mv = mv -f +CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ + $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) +LTCXXCOMPILE = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ + --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ + $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) +CXXLD = $(CXX) +CXXLINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ + --mode=link $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) \ + $(LDFLAGS) -o $@ +SOURCES = $(libsilo_hzip_la_SOURCES) +DIST_SOURCES = $(libsilo_hzip_la_SOURCES) +HEADERS = $(noinst_HEADERS) +ETAGS = etags +CTAGS = ctags +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +ACLOCAL = @ACLOCAL@ +AMTAR = @AMTAR@ +AR = @AR@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +BROWSER = @BROWSER@ +BUNDLE_TARGET = @BUNDLE_TARGET@ +CC = @CC@ +CCDEPMODE = @CCDEPMODE@ +CC_FULLPATH = @CC_FULLPATH@ +CFLAGS = @CFLAGS@ +CONFIG_CMD = @CONFIG_CMD@ +CONFIG_DATE = @CONFIG_DATE@ +CONFIG_USER = @CONFIG_USER@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +CXXDEPMODE = @CXXDEPMODE@ +CXXFLAGS = @CXXFLAGS@ +CXX_FULLPATH = @CXX_FULLPATH@ +CYGPATH_W = @CYGPATH_W@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +DSYMUTIL = @DSYMUTIL@ +DUMPBIN = @DUMPBIN@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +EXEEXT = @EXEEXT@ +F77 = @F77@ +FC = @FC@ +FCFLAGS = @FCFLAGS@ +FCLIBS = @FCLIBS@ +FC_FULLPATH = @FC_FULLPATH@ +FFLAGS = @FFLAGS@ +FGREP = @FGREP@ +FORTRAN = @FORTRAN@ +FPZIP = @FPZIP@ +GREP = @GREP@ +HDF5_DRV = @HDF5_DRV@ +HZIP = @HZIP@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +JSON = @JSON@ +LD = @LD@ +LDFLAGS = @LDFLAGS@ +LIBM = @LIBM@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ +LN_S = @LN_S@ +LTLIBOBJS = @LTLIBOBJS@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MKDIR_P = @MKDIR_P@ +NETCDF = @NETCDF@ +NM = @NM@ +NMEDIT = @NMEDIT@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +OTOOL = @OTOOL@ +OTOOL64 = @OTOOL64@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +PDBP_DRV = @PDBP_DRV@ +PDB_DRV = @PDB_DRV@ +PYTHON = @PYTHON@ +PYTHONMODULE = @PYTHONMODULE@ +PYTHON_CPPFLAGS = @PYTHON_CPPFLAGS@ +PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@ +PYTHON_PLATFORM = @PYTHON_PLATFORM@ +PYTHON_PREFIX = @PYTHON_PREFIX@ +PYTHON_VERSION = @PYTHON_VERSION@ +QT_CXXFLAGS = @QT_CXXFLAGS@ +QT_DIR = @QT_DIR@ +QT_LIBS = @QT_LIBS@ +QT_LRELEASE = @QT_LRELEASE@ +QT_LUPDATE = @QT_LUPDATE@ +QT_MOC = @QT_MOC@ +QT_UIC = @QT_UIC@ +RANLIB = @RANLIB@ +READLINE_LIBS = @READLINE_LIBS@ +SED = @SED@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +SILEX = @SILEX@ +SILO_VERS_MAJ = @SILO_VERS_MAJ@ +SILO_VERS_MIN = @SILO_VERS_MIN@ +SILO_VERS_PAT = @SILO_VERS_PAT@ +SILO_VERS_PRE = @SILO_VERS_PRE@ +SILO_VERS_TAG = @SILO_VERS_TAG@ +STRIP = @STRIP@ +TAURUS = @TAURUS@ +VERSION = @VERSION@ +XMKMF = @XMKMF@ +X_CFLAGS = @X_CFLAGS@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_LIBS = @X_LIBS@ +X_PRE_LIBS = @X_PRE_LIBS@ +ZLIB = @ZLIB@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_CXX = @ac_ct_CXX@ +ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ +ac_ct_F77 = @ac_ct_F77@ +ac_ct_FC = @ac_ct_FC@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +lt_ECHO = @lt_ECHO@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +pkgpyexecdir = @pkgpyexecdir@ +pkgpythondir = @pkgpythondir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +pyexecdir = @pyexecdir@ +pythondir = @pythondir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +@ZLIB_AVAILABLE_FALSE@AM_CPPFLAGS = -DWITHOUT_ZLIB +noinst_LTLIBRARIES = libsilo_hzip.la +libsilo_hzip_la_SOURCES = $(FILES) +noinst_HEADERS = \ + bitvector.h \ + hzio.h \ + hzip.h \ + hzmap.h \ + hzmcodec.h \ + hzmdecoder.h \ + hzmencoder.h \ + hzmio.h \ + hzmpredictor.h \ + hzncodec.h \ + hzndecoder.h \ + hznencoder.h \ + hznio.h \ + hznpredictor.h \ + hzresidual.h \ + ibstream.h \ + obstream.h \ + hzio.inl \ + hzmcodec.inl \ + hzncodec.inl \ + hzndecoder.inl \ + hznencoder.inl \ + hznpredictor.inl \ + hzresidual.inl + +FILES = \ + hzmdecoder.cpp \ + hzmencoder.cpp \ + hzmio.cpp \ + hzmpredictor.cpp \ + hzmread.cpp \ + hzmwrite.cpp \ + hznio.cpp \ + hznpredictor.cpp \ + hznread.cpp \ + hznwrite.cpp \ + hzutil.cpp + +all: all-am + +.SUFFIXES: +.SUFFIXES: .cpp .lo .o .obj +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/hzip/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --foreign src/hzip/Makefile +.PRECIOUS: Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): + +clean-noinstLTLIBRARIES: + -test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES) + @list='$(noinst_LTLIBRARIES)'; for p in $$list; do \ + dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \ + test "$$dir" != "$$p" || dir=.; \ + echo "rm -f \"$${dir}/so_locations\""; \ + rm -f "$${dir}/so_locations"; \ + done +libsilo_hzip.la: $(libsilo_hzip_la_OBJECTS) $(libsilo_hzip_la_DEPENDENCIES) + $(CXXLINK) $(libsilo_hzip_la_OBJECTS) $(libsilo_hzip_la_LIBADD) $(LIBS) + +mostlyclean-compile: + -rm -f *.$(OBJEXT) + +distclean-compile: + -rm -f *.tab.c + +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/hzmdecoder.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/hzmencoder.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/hzmio.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/hzmpredictor.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/hzmread.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/hzmwrite.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/hznio.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/hznpredictor.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/hznread.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/hznwrite.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/hzutil.Plo@am__quote@ + +.cpp.o: +@am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ $< + +.cpp.obj: +@am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` +@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` + +.cpp.lo: +@am__fastdepCXX_TRUE@ $(LTCXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(LTCXXCOMPILE) -c -o $@ $< + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs + +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + mkid -fID $$unique +tags: TAGS + +TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + set x; \ + here=`pwd`; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ + fi +ctags: CTAGS +CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + test -z "$(CTAGS_ARGS)$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags + +distdir: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ + else \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ + || exit 1; \ + fi; \ + done +check-am: all-am +check: check-am +all-am: Makefile $(LTLIBRARIES) $(HEADERS) +installdirs: +install: install-am +install-exec: install-exec-am +install-data: install-data-am +uninstall: uninstall-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + `test -z '$(STRIP)' || \ + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-am + +clean-am: clean-generic clean-libtool clean-noinstLTLIBRARIES \ + mostlyclean-am + +distclean: distclean-am + -rm -rf ./$(DEPDIR) + -rm -f Makefile +distclean-am: clean-am distclean-compile distclean-generic \ + distclean-tags + +dvi: dvi-am + +dvi-am: + +html: html-am + +html-am: + +info: info-am + +info-am: + +install-data-am: + +install-dvi: install-dvi-am + +install-dvi-am: + +install-exec-am: + +install-html: install-html-am + +install-html-am: + +install-info: install-info-am + +install-info-am: + +install-man: + +install-pdf: install-pdf-am + +install-pdf-am: + +install-ps: install-ps-am + +install-ps-am: + +installcheck-am: + +maintainer-clean: maintainer-clean-am + -rm -rf ./$(DEPDIR) + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-compile mostlyclean-generic \ + mostlyclean-libtool + +pdf: pdf-am + +pdf-am: + +ps: ps-am + +ps-am: + +uninstall-am: + +.MAKE: install-am install-strip + +.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ + clean-libtool clean-noinstLTLIBRARIES ctags distclean \ + distclean-compile distclean-generic distclean-libtool \ + distclean-tags distdir dvi dvi-am html html-am info info-am \ + install install-am install-data install-data-am install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-info install-info-am install-man \ + install-pdf install-pdf-am install-ps install-ps-am \ + install-strip installcheck installcheck-am installdirs \ + maintainer-clean maintainer-clean-generic mostlyclean \ + mostlyclean-compile mostlyclean-generic mostlyclean-libtool \ + pdf pdf-am ps ps-am tags uninstall uninstall-am + + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff -Nru silo-llnl-4.10.2/src/hzip/obstream.h silo-llnl-4.10.2.real/src/hzip/obstream.h --- silo-llnl-4.10.2/src/hzip/obstream.h 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/hzip/obstream.h 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,206 @@ +#ifndef OBSTREAM_H +#define OBSTREAM_H + +#include +#include +#include + +// error codes +enum OBSTREAMerror { + OBSTREAM_OK = 0, + OBSTREAM_ERR_UNKNOWN = -1, + OBSTREAM_ERR_NO_SPACE = -2, + OBSTREAM_ERR_ZLIB = -3 +}; + +//@OBSTREAM.................................................................... + +// abstract base class for output byte stream +class OBSTREAM { +public: + virtual ~OBSTREAM() {} + + // next stream object in pipeline (or 0 if none) + virtual OBSTREAM* next() { return 0; } + + // tail stream object in pipeline (the terminal object that outputs bytes) + virtual OBSTREAM* tail() { return this; } + + // detach this stream object from the next one in the pipeline + virtual OBSTREAM* detach() { return 0; } + + // output a single byte + virtual void put(unsigned char byte) = 0; + + // output a sequence of bytes + virtual void put(const void* byte, size_t size) + { + for (const unsigned char* p = (const unsigned char*)byte; size--; p++) + put(*p); + } + + // flush any buffered data + virtual void flush() {} + + // flush and close stream for writing + virtual void close() {} + + // number of bytes written to this stream object + virtual size_t bytes() const = 0; + + // error code (0 is returned if no error) + virtual int error() const = 0; +}; + +//@OBSTREAMmem................................................................. + +// write stream to a fixed-size memory buffer +class OBSTREAMmem : public OBSTREAM { +public: + OBSTREAMmem(void* buffer, size_t size) : + begin((unsigned char*)buffer), + end(begin + size), + ptr(begin), + status(OBSTREAM_OK) + {} + void put(unsigned char byte) + { + if (ptr == end) + status = OBSTREAM_ERR_NO_SPACE; + else + *ptr++ = byte; + } + void put(const void* byte, size_t size) + { + if (ptr + size > end) + status = OBSTREAM_ERR_NO_SPACE; + else { + memcpy(ptr, byte, size); + ptr += size; + } + } + size_t bytes() const { return (size_t)(ptr - begin); } + int error() const { return status; } +private: + unsigned char* const begin; + unsigned char* const end; + unsigned char* ptr; + int status; +}; + +//@OBSTREAMfile................................................................ + +// write stream to a binary file +class OBSTREAMfile : public OBSTREAM { +public: + OBSTREAMfile(FILE* out) : file(out), written(0), status(OBSTREAM_OK) {} + void put(unsigned char byte) + { + if (fputc(byte, file) == EOF) + status = (errno == ENOMEM ? OBSTREAM_ERR_NO_SPACE : OBSTREAM_ERR_UNKNOWN); + else + written++; + } + void put(const void* byte, size_t size) + { + if (fwrite(byte, 1, size, file) != size) + status = (errno == ENOMEM ? OBSTREAM_ERR_NO_SPACE : OBSTREAM_ERR_UNKNOWN); + else + written += size; + } + void flush() { fflush(file); } + void close() { flush(); } + size_t bytes() const { return written; } + int error() const { return status; } +private: + FILE* file; + size_t written; + int status; +}; + +//@OBSTREAMzlib................................................................ + +#ifndef WITHOUT_ZLIB +#include + +#define OBSTREAM_ZLIB_IBUF_SIZE 0x6000 +#define OBSTREAM_ZLIB_OBUF_SIZE 0x2000 + +// zlib compressed stream +class OBSTREAMzlib : public OBSTREAM { +public: + OBSTREAMzlib(OBSTREAM* stream, int level = Z_DEFAULT_COMPRESSION, size_t insize = OBSTREAM_ZLIB_IBUF_SIZE, size_t outsize = OBSTREAM_ZLIB_OBUF_SIZE) : + obstream(stream), + insize(insize), + outsize(outsize), + in(new unsigned char[insize]), + out(new unsigned char[outsize]), + end(in + insize), + ptr(in), + written(0), + status(OBSTREAM_OK) + { + zstream.zalloc = Z_NULL; + zstream.zfree = Z_NULL; + zstream.opaque = Z_NULL; + if (deflateInit(&zstream, level) != Z_OK) + status = OBSTREAM_ERR_ZLIB; + } + ~OBSTREAMzlib() + { + delete[] in; + delete[] out; + if (obstream) + delete obstream; + } + OBSTREAM* next() { return obstream; } + OBSTREAM* tail() { return obstream->tail(); } + OBSTREAM* detach() { OBSTREAM* s = obstream; obstream = 0; return s; } + void put(unsigned char byte) + { + if (ptr == end) + encode(Z_NO_FLUSH); + *ptr++ = byte; + } + using OBSTREAM::put; + void flush() { encode(Z_SYNC_FLUSH); obstream->flush(); } + void close() + { + encode(Z_FINISH); + if (deflateEnd(&zstream) != Z_OK) + status = OBSTREAM_ERR_ZLIB; + obstream->close(); + } + size_t bytes() const { return written; } + int error() const { return status ? status : obstream->error(); } + +private: + // encode buffer + void encode(int mode) + { + zstream.next_in = in; + zstream.avail_in = (unsigned)(ptr - in); + written += zstream.avail_in; + do { + zstream.next_out = out; + zstream.avail_out = outsize; + deflate(&zstream, mode); + obstream->put(out, outsize - zstream.avail_out); + } while (!zstream.avail_out); + ptr = in; + } + + OBSTREAM* obstream; + z_stream zstream; + const size_t insize; + const size_t outsize; + unsigned char* const in; + unsigned char* const out; + unsigned char* const end; + unsigned char* ptr; + size_t written; + int status; +}; +#endif + +#endif diff -Nru silo-llnl-4.10.2/src/Makefile.am silo-llnl-4.10.2.real/src/Makefile.am --- silo-llnl-4.10.2/src/Makefile.am 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/src/Makefile.am 2018-02-15 17:25:43.000000000 +0000 @@ -85,8 +85,14 @@ endif SUBDIRS = score pdb silo debug \ $(DRIVER_DIRS) unknown filters . -DIST_SUBDIRS = . debug filters hdf5_drv hzip fpzip netcdf \ +DIST_SUBDIRS = . debug filters hdf5_drv netcdf \ pdb pdb_drv pdbp_drv score silo taurus unknown +if HZIP_NEEDED +DIST_SUBDIRS += hzip +endif +if FPZIP_NEEDED +DIST_SUBDIRS += fpzip +endif MAKESETTINGS = make.settings if HDF5_DRV_NEEDED diff -Nru silo-llnl-4.10.2/src/Makefile.in silo-llnl-4.10.2.real/src/Makefile.in --- silo-llnl-4.10.2/src/Makefile.in 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/src/Makefile.in 2018-02-15 17:25:43.000000000 +0000 @@ -101,6 +101,8 @@ @HZIP_NEEDED_TRUE@am__append_12 = hzip/libsilo_hzip.la @FPZIP_NEEDED_TRUE@am__append_13 = fpzip @FPZIP_NEEDED_TRUE@am__append_14 = fpzip/libsilo_fpzip.la +@HZIP_NEEDED_TRUE@am__append_15 = hzip +@FPZIP_NEEDED_TRUE@am__append_16 = fpzip subdir = src DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ $(srcdir)/libsilo.settings.in $(srcdir)/libsiloh5.settings.in @@ -275,6 +277,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +JSON = @JSON@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBM = @LIBM@ @@ -323,9 +326,6 @@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SILEX = @SILEX@ -SILO_DTYPPTR = @SILO_DTYPPTR@ -SILO_DTYPPTR1 = @SILO_DTYPPTR1@ -SILO_DTYPPTR2 = @SILO_DTYPPTR2@ SILO_VERS_MAJ = @SILO_VERS_MAJ@ SILO_VERS_MIN = @SILO_VERS_MIN@ SILO_VERS_PAT = @SILO_VERS_PAT@ @@ -408,9 +408,8 @@ SUBDIRS = score pdb silo debug \ $(DRIVER_DIRS) unknown filters . -DIST_SUBDIRS = . debug filters hdf5_drv hzip fpzip netcdf \ -pdb pdb_drv pdbp_drv score silo taurus unknown - +DIST_SUBDIRS = . debug filters hdf5_drv netcdf pdb pdb_drv pdbp_drv \ + score silo taurus unknown $(am__append_15) $(am__append_16) MAKESETTINGS = make.settings @HDF5_DRV_NEEDED_FALSE@SETTINGSFILE = libsilo.settings @HDF5_DRV_NEEDED_TRUE@SETTINGSFILE = libsiloh5.settings diff -Nru silo-llnl-4.10.2/src/netcdf/api.c silo-llnl-4.10.2.real/src/netcdf/api.c --- silo-llnl-4.10.2/src/netcdf/api.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/src/netcdf/api.c 2018-02-15 17:25:43.000000000 +0000 @@ -158,7 +158,7 @@ */ /* ARGSUSED */ INTERNAL int -silonetcdf_ncopen (char *filename, int mode) +silonetcdf_ncopen (char const *filename, int mode) { PDBfile *pdb_file; /* PDB File descriptor. */ int dbid; /* Database identifier. */ @@ -167,7 +167,7 @@ silo_Init(); /* Attempt to open file. */ - if ((pdb_file = lite_PD_open(filename, "r")) == NULL) { + if ((pdb_file = lite_PD_open((char*)filename, "r")) == NULL) { /* Not a SILO file. */ /* silo_Error (lite_PD_err, SILO_ERROR); */ silo_Error("File is not a SILO file.", SILO_ERROR); @@ -388,7 +388,7 @@ * *---------------------------------------------------------------------*/ INTERNAL int -silonetcdf_ncvarid (int dbid, char *name) +silonetcdf_ncvarid (int dbid, char const *name) { int id; @@ -624,7 +624,7 @@ * Return the object ID of the object with the given name. *---------------------------------------------------------------------*/ INTERNAL int -silonetcdf_ncobjid (int dbid, char *name) +silonetcdf_ncobjid (int dbid, char const *name) { int id; diff -Nru silo-llnl-4.10.2/src/netcdf/ent.c silo-llnl-4.10.2.real/src/netcdf/ent.c --- silo-llnl-4.10.2/src/netcdf/ent.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/src/netcdf/ent.c 2018-02-15 17:25:43.000000000 +0000 @@ -255,7 +255,7 @@ * *--------------------------------------------------------------------*/ INTERNAL int -silo_GetVarId (int sid, int dirid, char *name) +silo_GetVarId (int sid, int dirid, char const *name) { int i, relid = -1; @@ -280,7 +280,7 @@ * Return relative ID of object in given directory. *--------------------------------------------------------------------*/ INTERNAL int -silo_GetObjId(int sid, int dirid, char *name) +silo_GetObjId(int sid, int dirid, char const *name) { int i, relid = -1; diff -Nru silo-llnl-4.10.2/src/netcdf/Makefile.in silo-llnl-4.10.2.real/src/netcdf/Makefile.in --- silo-llnl-4.10.2/src/netcdf/Makefile.in 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/src/netcdf/Makefile.in 2018-02-15 17:25:43.000000000 +0000 @@ -181,6 +181,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +JSON = @JSON@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBM = @LIBM@ @@ -229,9 +230,6 @@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SILEX = @SILEX@ -SILO_DTYPPTR = @SILO_DTYPPTR@ -SILO_DTYPPTR1 = @SILO_DTYPPTR1@ -SILO_DTYPPTR2 = @SILO_DTYPPTR2@ SILO_VERS_MAJ = @SILO_VERS_MAJ@ SILO_VERS_MIN = @SILO_VERS_MIN@ SILO_VERS_PAT = @SILO_VERS_PAT@ diff -Nru silo-llnl-4.10.2/src/netcdf/netcdf.c silo-llnl-4.10.2.real/src/netcdf/netcdf.c --- silo-llnl-4.10.2/src/netcdf/netcdf.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/src/netcdf/netcdf.c 2018-02-15 17:25:43.000000000 +0000 @@ -561,7 +561,7 @@ char *local_sink, *local_source; /* Index by bytes */ local_sink = (char*)sink; - local_source = source; + local_source = (char *)source; /* If sink is 1D, just do a memory copy from source */ if (ndims == 1) { diff -Nru silo-llnl-4.10.2/src/netcdf/silo_netcdf.c silo-llnl-4.10.2.real/src/netcdf/silo_netcdf.c --- silo-llnl-4.10.2/src/netcdf/silo_netcdf.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/src/netcdf/silo_netcdf.c 2018-02-15 17:25:43.000000000 +0000 @@ -105,7 +105,6 @@ { dbfile->pub.close = db_cdf_Close; dbfile->pub.g_dir = db_cdf_GetDir; - dbfile->pub.g_attr = db_cdf_GetAtt; dbfile->pub.g_ma = db_cdf_GetMaterial; dbfile->pub.g_ms = db_cdf_GetMatspecies; dbfile->pub.g_comp = db_cdf_GetComponent; @@ -124,11 +123,8 @@ dbfile->pub.exist = db_cdf_InqVarExists; dbfile->pub.inqvartype = db_cdf_InqVarType; dbfile->pub.i_meshtype = db_cdf_InqMeshtype; - dbfile->pub.r_att = db_cdf_ReadAtt; dbfile->pub.r_var = db_cdf_ReadVar; - dbfile->pub.r_var1 = db_cdf_ReadVar1; dbfile->pub.cd = db_cdf_SetDir; - dbfile->pub.cdid = db_cdf_SetDirID; dbfile->pub.newtoc = db_cdf_NewToc; dbfile->pub.module = db_cdf_Filters; } @@ -208,7 +204,7 @@ *-------------------------------------------------------------------------*/ /* ARGSUSED */ INTERNAL DBfile * -db_cdf_Open(char *name, int mode, int subtype) +db_cdf_Open(char const *name, int mode, int subtype) { char *me = "db_cdf_Open"; int cdf; @@ -595,47 +591,6 @@ } /*------------------------------------------------------------------------- - * Function: db_cdf_GetAtt - * - * Purpose: Allocate space for, and read, the given attribute of the - * given variable. - * - * Return: Success: pointer to result - * - * Failure: NULL - * - * Programmer: matzke@viper - * Fri Jan 6 16:39:25 PST 1995 - * - * Modifications: - * - *------------------------------------------------------------------------- - */ -SILO_CALLBACK void * -db_cdf_GetAtt(DBfile *_dbfile, char *varname, char *attname) -{ - void *result; - DBfile_cdf *dbfile = (DBfile_cdf *) _dbfile; - char *me = "db_cdf_GetAtt"; - int varid, datatype, len, nbytes; - - /* Convert ascii name into SILO variable id. */ - if ((varid = silonetcdf_ncvarid(dbfile->cdf, varname)) < 0) { - db_perror("silonetcdf_ncvarid", E_CALLFAIL, me); - return NULL; - } - - /* Get size of attribute and allocate space for it. */ - silonetcdf_ncattinq(dbfile->cdf, varid, attname, &datatype, &len); - - nbytes = len * silo_GetDataSize(dbfile->cdf, datatype); - result = ALLOC_N(char, nbytes); - - silonetcdf_ncattget(dbfile->cdf, varid, attname, result); - return result; -} - -/*------------------------------------------------------------------------- * Function: db_cdf_GetMaterial * * Purpose: Read a material-data object from a NetCDF file and return @@ -654,7 +609,7 @@ * *-------------------------------------------------------------------------*/ SILO_CALLBACK DBmaterial * -db_cdf_GetMaterial(DBfile *_dbfile, char *name) +db_cdf_GetMaterial(DBfile *_dbfile, char const *name) { DBfile_cdf *dbfile = (DBfile_cdf *) _dbfile; char *me = "db_cdf_GetMaterial"; @@ -728,7 +683,7 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK DBmatspecies * -db_cdf_GetMatspecies(DBfile *_dbfile, char *objname) +db_cdf_GetMatspecies(DBfile *_dbfile, char const *objname) { DBfile_cdf *dbfile = (DBfile_cdf *) _dbfile; DBmatspecies *mm = DBAllocMatspecies(); @@ -813,7 +768,7 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK void * -db_cdf_GetComponent(DBfile *_dbfile, char *objname, char *compname) +db_cdf_GetComponent(DBfile *_dbfile, char const *objname, char const *compname) { void *result = NULL; DBfile_cdf *dbfile = (DBfile_cdf *) _dbfile; @@ -861,7 +816,7 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK DBmultimesh * -db_cdf_GetMultimesh(DBfile *_dbfile, char *objname) +db_cdf_GetMultimesh(DBfile *_dbfile, char const *objname) { DBfile_cdf *dbfile = (DBfile_cdf *) _dbfile; char *me = "db_cdf_GetMultimesh"; @@ -947,7 +902,7 @@ * *-------------------------------------------------------------------------*/ SILO_CALLBACK DBpointmesh * -db_cdf_GetPointmesh(DBfile *_dbfile, char *objname) +db_cdf_GetPointmesh(DBfile *_dbfile, char const *objname) { DBfile_cdf *dbfile = (DBfile_cdf *) _dbfile; char *me = "db_cdf_GetPointmesh"; @@ -1023,7 +978,7 @@ * *-------------------------------------------------------------------------*/ SILO_CALLBACK DBmeshvar * -db_cdf_GetPointvar(DBfile *_dbfile, char *objname) +db_cdf_GetPointvar(DBfile *_dbfile, char const *objname) { DBfile_cdf *dbfile = (DBfile_cdf *) _dbfile; char *me = "db_cdf_GetPointvar"; @@ -1065,7 +1020,7 @@ */ if ((mv->nvals > 0) && (SILO_Globals.dataReadMask & DBPVData)) { INIT_OBJ(&tmp_obj); - mv->vals = ALLOC_N(DB_DTPTR*, mv->nvals); + mv->vals = ALLOC_N(void*, mv->nvals); for (i = 0; i < mv->nvals; i++) { DEFALL_OBJ(_valstr[0], &mv->vals[i], DB_FLOAT); @@ -1101,7 +1056,7 @@ * *-------------------------------------------------------------------------*/ SILO_CALLBACK DBquadmesh * -db_cdf_GetQuadmesh(DBfile *_dbfile, char *objname) +db_cdf_GetQuadmesh(DBfile *_dbfile, char const *objname) { DBfile_cdf *dbfile = (DBfile_cdf *) _dbfile; char *me = "db_cdf_GetQuadmesh"; @@ -1185,7 +1140,7 @@ * *-------------------------------------------------------------------------*/ SILO_CALLBACK DBquadvar * -db_cdf_GetQuadvar(DBfile *_dbfile, char *objname) +db_cdf_GetQuadvar(DBfile *_dbfile, char const *objname) { DBfile_cdf *dbfile = (DBfile_cdf *) _dbfile; char *me = "db_cdf_GetQuadvar"; @@ -1239,10 +1194,10 @@ if ((qv->nvals > 0) && (SILO_Globals.dataReadMask & DBQVData)) { INIT_OBJ(&tmp_obj); - qv->vals = ALLOC_N(DB_DTPTR*, qv->nvals); + qv->vals = ALLOC_N(void*, qv->nvals); if (qv->mixlen > 0) { - qv->mixvals = ALLOC_N(DB_DTPTR*, qv->nvals); + qv->mixvals = ALLOC_N(void*, qv->nvals); } if (qv->datatype == 0) { strcpy(tmpstr, objname); @@ -1295,7 +1250,7 @@ * Handle topo_dim member correctly. *-------------------------------------------------------------------------*/ SILO_CALLBACK DBucdmesh * -db_cdf_GetUcdmesh(DBfile *_dbfile, char *meshname) +db_cdf_GetUcdmesh(DBfile *_dbfile, char const *meshname) { DBfile_cdf *dbfile = (DBfile_cdf *) _dbfile; char *me = "db_cdf_GetUcdmesh"; @@ -1453,7 +1408,7 @@ * Added support for the read mask stuff. *--------------------------------------------------------------------*/ SILO_CALLBACK DBucdvar * -db_cdf_GetUcdvar(DBfile *_dbfile, char *varname) +db_cdf_GetUcdvar(DBfile *_dbfile, char const *varname) { DBfile_cdf *dbfile = (DBfile_cdf *) _dbfile; char *me = "db_cdf_GetUcdvar"; @@ -1500,10 +1455,10 @@ if ((uv->nvals > 0) && (SILO_Globals.dataReadMask & DBUVData)) { INIT_OBJ(&tmp_obj); - uv->vals = ALLOC_N(DB_DTPTR*, uv->nvals); + uv->vals = ALLOC_N(void*, uv->nvals); if (uv->mixlen > 0) { - uv->mixvals = ALLOC_N(DB_DTPTR*, uv->nvals); + uv->mixvals = ALLOC_N(void*, uv->nvals); } for (i = 0; i < uv->nvals; i++) { @@ -1542,7 +1497,7 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK void * -db_cdf_GetVar(DBfile *_dbfile, char *name) +db_cdf_GetVar(DBfile *_dbfile, char const *name) { char *me = "db_cdf_GetVar"; char *data; @@ -1583,7 +1538,7 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK int -db_cdf_GetVarByteLength(DBfile *_dbfile, char *varname) +db_cdf_GetVarByteLength(DBfile *_dbfile, char const *varname) { DBfile_cdf *dbfile = (DBfile_cdf *) _dbfile; char *me = "db_cdf_GetVarByteLength"; @@ -1619,7 +1574,7 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK int -db_cdf_GetVarLength(DBfile *_dbfile, char *varname) +db_cdf_GetVarLength(DBfile *_dbfile, char const *varname) { DBfile_cdf *dbfile = (DBfile_cdf *) _dbfile; char *me = "db_cdf_GetVarLength"; @@ -1652,7 +1607,7 @@ *-------------------------------------------------------------------- */ SILO_CALLBACK DBObjectType -db_cdf_InqVarType(DBfile *_dbfile, char *varname) +db_cdf_InqVarType(DBfile *_dbfile, char const *varname) { DBfile_cdf *dbfile = (DBfile_cdf *) _dbfile; char *me = "db_cdf_InqVarType"; @@ -1688,7 +1643,7 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK int -db_cdf_InqMeshname(DBfile *_dbfile, char *vname, char *mname) +db_cdf_InqMeshname(DBfile *_dbfile, char const *vname, char *mname) { DBfile_cdf *dbfile = (DBfile_cdf *) _dbfile; int meshid; @@ -1728,7 +1683,7 @@ *-------------------------------------------------------------------- */ SILO_CALLBACK int -db_cdf_InqMeshtype(DBfile *_dbfile, char *meshname) +db_cdf_InqMeshtype(DBfile *_dbfile, char const *meshname) { DBfile_cdf *dbfile = (DBfile_cdf *) _dbfile; char *me = "db_cdf_InqMeshtype"; @@ -1785,7 +1740,7 @@ * *--------------------------------------------------------------------*/ SILO_CALLBACK int -db_cdf_InqVarExists(DBfile *_dbfile, char *varname) +db_cdf_InqVarExists(DBfile *_dbfile, char const *varname) { DBfile_cdf *dbfile = (DBfile_cdf *) _dbfile; @@ -1813,7 +1768,7 @@ *-------------------------------------------------------------------- */ SILO_CALLBACK int -db_cdf_GetVarType(DBfile *_dbfile, char *vname) +db_cdf_GetVarType(DBfile *_dbfile, char const *vname) { DBfile_cdf *dbfile = (DBfile_cdf *) _dbfile; char *me = "db_cdf_GetVarType"; @@ -1831,39 +1786,6 @@ } /*------------------------------------------------------------------------- - * Function: db_cdf_ReadAtt - * - * Purpose: Reads the given attribute value into the provided space. - * - * Return: Success: 0 - * - * Failure: -1 - * - * Programmer: matzke@viper - * Wed Jan 11 09:14:11 PST 1995 - * - * Modifications: - * - *------------------------------------------------------------------------- - */ -SILO_CALLBACK int -db_cdf_ReadAtt(DBfile *_dbfile, char *vname, char *aname, void *results) -{ - DBfile_cdf *dbfile = (DBfile_cdf *) _dbfile; - char *me = "db_cdf_ReadAtt"; - int varid; - - if ((varid = silonetcdf_ncvarid(dbfile->cdf, vname)) < 0) { - return db_perror("silonetcdf_ncvarid", E_CALLFAIL, me); - } - - if (silonetcdf_ncattget(dbfile->cdf, varid, aname, results) < 0) { - return db_perror("silonetcdf_ncattget", E_CALLFAIL, me); - } - return 0; -} - -/*------------------------------------------------------------------------- * Function: db_cdf_ReadVar * * Purpose: Reads a variable into the given space. @@ -1880,7 +1802,7 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK int -db_cdf_ReadVar(DBfile *_dbfile, char *name, void *result) +db_cdf_ReadVar(DBfile *_dbfile, char const *name, void *result) { DBfile_cdf *dbfile = (DBfile_cdf *) _dbfile; char *me = "db_cdf_ReadVar"; @@ -1906,32 +1828,6 @@ } /*------------------------------------------------------------------------- - * Function: db_cdf_ReadVar1 - * - * Purpose: Reads one element from a variable into the provided - * space. - * - * Return: Success: 0 - * - * Failure: -1 - * - * Programmer: matzke@viper - * Wed Jan 11 09:24:27 PST 1995 - * - * Modifications: - * - *------------------------------------------------------------------------- - */ -/* ARGSUSED */ -SILO_CALLBACK int -db_cdf_ReadVar1(DBfile *_dbfile, char *vname, int offset, void *result) -{ - char *me = "db_cdf_ReadVar1"; - - return db_perror("mismatched parameters to `silonetcdf_ncvarget1'", E_NOTIMP, me); -} - -/*------------------------------------------------------------------------- * Function: db_setdir * * Purpose: Set the current directory to the given directory name iff @@ -2015,13 +1911,14 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK int -db_cdf_SetDir(DBfile *_dbfile, char *path) +db_cdf_SetDir(DBfile *_dbfile, char const *path) { DBfile_cdf *dbfile = (DBfile_cdf *) _dbfile; char *me = "db_cdf_SetDir"; int orig_dir = dbfile->pub.dirid; int ierr=0, dirid; char *subpath=NULL; + char *pathcp = _db_safe_strdup(path); if (STR_EQUAL(path, "/") || STR_EQUAL(path, " ")) { db_setdir(dbfile, "/"); @@ -2035,7 +1932,7 @@ if (path[0] == '/') db_setdir(dbfile, "/"); - subpath = (char *)strtok(path, "/"); + subpath = (char *)strtok(pathcp, "/"); while (subpath != NULL && !ierr) { if (db_setdir(dbfile, subpath) < 0) ierr = 1; @@ -2044,6 +1941,8 @@ } } + free(pathcp); + dirid = silonetcdf_ncdirget(dbfile->cdf); if (ierr) { silonetcdf_ncdirset(dbfile->cdf, orig_dir); @@ -2056,41 +1955,3 @@ return 0; } - -/*------------------------------------------------------------------------- - * Function: db_cdf_SetDirID - * - * Purpose: Sets the current directory withing the database. - * - * Return: Success: 0 - * - * Failure: -1 - * - * Programmer: matzke@viper - * Wed Jan 11 09:39:38 PST 1995 - * - * Modifications: - * Eric Brugger, Fri Jan 27 08:27:46 PST 1995 - * I changed the call DBGetToc to db_cdf_GetToc. - * - * Robb Matzke, Tue Mar 7 10:32:45 EST 1995 - * I changed the call db_cdf_GetToc to DBNewToc. - * - *------------------------------------------------------------------------- - */ -SILO_CALLBACK int -db_cdf_SetDirID(DBfile *_dbfile, int dirid) -{ - DBfile_cdf *dbfile = (DBfile_cdf *) _dbfile; - char *me = "db_cdf_SetDirID"; - - if (silonetcdf_ncdirset(dbfile->cdf, dirid) < 0) { - return db_perror(NULL, E_NOTDIR, me); - } - - /* Update directory ID and TOC */ - dbfile->pub.dirid = silonetcdf_ncdirget(dbfile->cdf); - DBNewToc(_dbfile); - - return 0; -} diff -Nru silo-llnl-4.10.2/src/netcdf/silo_netcdf_private.h silo-llnl-4.10.2.real/src/netcdf/silo_netcdf_private.h --- silo-llnl-4.10.2/src/netcdf/silo_netcdf_private.h 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/src/netcdf/silo_netcdf_private.h 2018-02-15 17:25:43.000000000 +0000 @@ -75,7 +75,7 @@ } DBfile_cdf; typedef struct { - char *name[80]; /* Component name */ + char const *name[80]; /* Component name */ void *ptr[80]; /* Address of component value */ int type[80]; /* Datatype of component */ unsigned char alloced[80]; /* Sentinel: 1 == space already alloc'd */ @@ -130,32 +130,28 @@ */ #ifndef SILO_NO_CALLBACKS SILO_CALLBACK int db_cdf_Close(DBfile *); -SILO_CALLBACK int db_cdf_InqVarExists(DBfile *, char *); +SILO_CALLBACK int db_cdf_InqVarExists(DBfile *, char const *); SILO_CALLBACK int db_cdf_GetDir(DBfile *, char *); -SILO_CALLBACK void *db_cdf_GetAtt(DBfile *, char *, char *); -SILO_CALLBACK void *db_cdf_GetComponent(DBfile *, char *, char *); -SILO_CALLBACK DBmaterial *db_cdf_GetMaterial(DBfile *, char *); -SILO_CALLBACK DBmatspecies *db_cdf_GetMatspecies(DBfile *, char *); -SILO_CALLBACK DBmultimesh *db_cdf_GetMultimesh(DBfile *, char *); -SILO_CALLBACK DBpointmesh *db_cdf_GetPointmesh(DBfile *, char *); -SILO_CALLBACK DBmeshvar *db_cdf_GetPointvar(DBfile *, char *); -SILO_CALLBACK DBquadmesh *db_cdf_GetQuadmesh(DBfile *, char *); -SILO_CALLBACK DBquadvar *db_cdf_GetQuadvar(DBfile *, char *); -SILO_CALLBACK DBucdmesh *db_cdf_GetUcdmesh(DBfile *, char *); -SILO_CALLBACK DBucdvar *db_cdf_GetUcdvar(DBfile *, char *); -SILO_CALLBACK void *db_cdf_GetVar(DBfile *, char *); -SILO_CALLBACK int db_cdf_GetVarByteLength(DBfile *, char *); -SILO_CALLBACK int db_cdf_GetVarLength(DBfile *, char *); -SILO_CALLBACK int db_cdf_GetVarType(DBfile *, char *); -SILO_CALLBACK DBObjectType db_cdf_InqVarType(DBfile *, char *); -SILO_CALLBACK int db_cdf_InqMeshname(DBfile *, char *, char *); -SILO_CALLBACK int db_cdf_InqMeshtype(DBfile *, char *); -SILO_CALLBACK int db_cdf_ReadAtt(DBfile *, char *, char *, void *); -SILO_CALLBACK int db_cdf_ReadVar(DBfile *, char *, void *); -SILO_CALLBACK int db_cdf_ReadVar1(DBfile *, char *, int, void *); -SILO_CALLBACK int db_cdf_SetDir(DBfile *, char *); -SILO_CALLBACK int db_cdf_SetDirID(DBfile *, int); +SILO_CALLBACK void *db_cdf_GetComponent(DBfile *, char const *, char const *); +SILO_CALLBACK DBmaterial *db_cdf_GetMaterial(DBfile *, char const *); +SILO_CALLBACK DBmatspecies *db_cdf_GetMatspecies(DBfile *, char const *); +SILO_CALLBACK DBmultimesh *db_cdf_GetMultimesh(DBfile *, char const *); +SILO_CALLBACK DBpointmesh *db_cdf_GetPointmesh(DBfile *, char const *); +SILO_CALLBACK DBmeshvar *db_cdf_GetPointvar(DBfile *, char const *); +SILO_CALLBACK DBquadmesh *db_cdf_GetQuadmesh(DBfile *, char const *); +SILO_CALLBACK DBquadvar *db_cdf_GetQuadvar(DBfile *, char const *); +SILO_CALLBACK DBucdmesh *db_cdf_GetUcdmesh(DBfile *, char const *); +SILO_CALLBACK DBucdvar *db_cdf_GetUcdvar(DBfile *, char const *); +SILO_CALLBACK void *db_cdf_GetVar(DBfile *, char const *); +SILO_CALLBACK int db_cdf_GetVarByteLength(DBfile *, char const *); +SILO_CALLBACK int db_cdf_GetVarLength(DBfile *, char const *); +SILO_CALLBACK int db_cdf_GetVarType(DBfile *, char const *); +SILO_CALLBACK DBObjectType db_cdf_InqVarType(DBfile *, char const *); +SILO_CALLBACK int db_cdf_InqMeshname(DBfile *, char const *, char *); +SILO_CALLBACK int db_cdf_InqMeshtype(DBfile *, char const *); +SILO_CALLBACK int db_cdf_ReadVar(DBfile *, char const *, void *); +SILO_CALLBACK int db_cdf_SetDir(DBfile *, char const *); SILO_CALLBACK int db_cdf_Filters(DBfile *, FILE *); SILO_CALLBACK int db_cdf_NewToc(DBfile *); @@ -293,13 +289,13 @@ extern int silo_Verify(PDBfile *); /*api.c */ -extern int silonetcdf_ncopen(char *, int); +extern int silonetcdf_ncopen(char const *, int); extern int silonetcdf_ncinqall(int, int *, int *, int *, int *, int *, int *); extern int silonetcdf_ncobjinq(int, int, char *, int *, int *); extern int silonetcdf_ncdirlist(int, int, int *, int *); -extern int silonetcdf_ncvarid(int, char *); +extern int silonetcdf_ncvarid(int, char const *); extern int silonetcdf_ncattinq(int, int, char *, int *, int *); -extern int silonetcdf_ncobjid(int, char *); +extern int silonetcdf_ncobjid(int, char const *); extern int silonetcdf_ncattget(int, int, char *, void *); extern int silonetcdf_ncdirget(int); extern int silonetcdf_ncclose(int); @@ -325,10 +321,10 @@ extern int silo_GetDirCount(int, int); extern int silo_GetDirId(int, int, char *); extern int silo_GetObjCount(int, int); -extern int silo_GetObjId(int, int, char *); +extern int silo_GetObjId(int, int, char const *); extern int silo_GetTables(int); extern int silo_GetVarCount(int, int); -extern int silo_GetVarId(int, int, char *); +extern int silo_GetVarId(int, int, char const *); /*obj.c */ extern int SO_GetObject(int, int, SO_Object *); diff -Nru silo-llnl-4.10.2/src/pdb/Makefile.in silo-llnl-4.10.2.real/src/pdb/Makefile.in --- silo-llnl-4.10.2/src/pdb/Makefile.in 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/src/pdb/Makefile.in 2018-02-15 17:25:43.000000000 +0000 @@ -205,6 +205,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +JSON = @JSON@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBM = @LIBM@ @@ -253,9 +254,6 @@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SILEX = @SILEX@ -SILO_DTYPPTR = @SILO_DTYPPTR@ -SILO_DTYPPTR1 = @SILO_DTYPPTR1@ -SILO_DTYPPTR2 = @SILO_DTYPPTR2@ SILO_VERS_MAJ = @SILO_VERS_MAJ@ SILO_VERS_MIN = @SILO_VERS_MIN@ SILO_VERS_PAT = @SILO_VERS_PAT@ diff -Nru silo-llnl-4.10.2/src/pdb/pdb.c silo-llnl-4.10.2.real/src/pdb/pdb.c --- silo-llnl-4.10.2/src/pdb/pdb.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/src/pdb/pdb.c 2018-02-15 17:25:43.000000000 +0000 @@ -1057,7 +1057,7 @@ if (file->virtual_internal) { SC_address ad; - ad.memaddr = vr; + ad.memaddr = (char *)vr; ep->blocks->diskaddr = ad.diskaddr; lite_SC_mark(vr, 1); ep = lite_PD_copy_syment(ep); @@ -1235,6 +1235,10 @@ file->system_version = PDB_SYSTEM_VERSION; file->date = lite_SC_date(); + /* + * Create the top-level directory + */ + lite_PD_mkdir(file,"/"); return(file); } #endif /* PDB_WRITE */ diff -Nru silo-llnl-4.10.2/src/pdb/pdlow.c silo-llnl-4.10.2.real/src/pdb/pdlow.c --- silo-llnl-4.10.2/src/pdb/pdlow.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/src/pdb/pdlow.c 2018-02-15 17:25:43.000000000 +0000 @@ -1757,13 +1757,13 @@ _lite_PD_eod (PDBfile *file) { FILE *fp; - long old, new; + long old_one, new_one; fp = file->stream; - old = file->chrtaddr; - new = io_tell(fp); + old_one = file->chrtaddr; + new_one = io_tell(fp); - file->chrtaddr = MAX(old, new); + file->chrtaddr = MAX(old_one, new_one); } #endif /* PDB_WRITE */ diff -Nru silo-llnl-4.10.2/src/pdb/pdrdwr.c silo-llnl-4.10.2.real/src/pdb/pdrdwr.c --- silo-llnl-4.10.2/src/pdb/pdrdwr.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/src/pdb/pdrdwr.c 2018-02-15 17:25:43.000000000 +0000 @@ -297,7 +297,7 @@ */ tep = _lite_PD_mk_syment(NULL, 0L, 0L, &(ep->indirects), NULL); - nrd = _PD_rd_hyper_index(file, tep, vr, pi, + nrd = _PD_rd_hyper_index(file, tep, (char *)vr, pi, PD_entry_type(ep), outtype, PD_entry_address(ep), PD_entry_blocks(ep), hbyt, fbyt); @@ -1356,7 +1356,7 @@ slen = strlen(s); c = slen > 0 ? s[slen-1] : 0; if (((c != ')') && (c != ']')) || (dims == NULL)) { - return(_lite_PD_wr_syment(file, vr, PD_entry_number(ep), + return(_lite_PD_wr_syment(file, (char *)vr, PD_entry_number(ep), intype, PD_entry_type(ep))); } @@ -1395,7 +1395,7 @@ PD_WRITE); } - _PD_wr_hyper_index(file, vr, pi, intype, + _PD_wr_hyper_index(file, (char *)vr, pi, intype, PD_entry_type(ep), PD_entry_address(ep), PD_entry_blocks(ep), hbyt, fbyt); @@ -1727,7 +1727,7 @@ PD_WRITE); } vbuf = buf; - svr = vr; + svr = (char *)vr; in_offs = 0L; out_offs = 0L; lite_PD_convert(&vbuf, &svr, intype, outtype, nitems, diff -Nru silo-llnl-4.10.2/src/pdb_drv/Makefile.in silo-llnl-4.10.2.real/src/pdb_drv/Makefile.in --- silo-llnl-4.10.2/src/pdb_drv/Makefile.in 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/src/pdb_drv/Makefile.in 2018-02-15 17:25:43.000000000 +0000 @@ -128,6 +128,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +JSON = @JSON@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBM = @LIBM@ @@ -176,9 +177,6 @@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SILEX = @SILEX@ -SILO_DTYPPTR = @SILO_DTYPPTR@ -SILO_DTYPPTR1 = @SILO_DTYPPTR1@ -SILO_DTYPPTR2 = @SILO_DTYPPTR2@ SILO_VERS_MAJ = @SILO_VERS_MAJ@ SILO_VERS_MIN = @SILO_VERS_MIN@ SILO_VERS_PAT = @SILO_VERS_PAT@ diff -Nru silo-llnl-4.10.2/src/pdb_drv/silo_pdb.c silo-llnl-4.10.2.real/src/pdb_drv/silo_pdb.c --- silo-llnl-4.10.2/src/pdb_drv/silo_pdb.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/src/pdb_drv/silo_pdb.c 2018-02-15 17:25:43.000000000 +0000 @@ -88,7 +88,7 @@ (int) PJ_read_as_alt() */ -static char *pj_fixname(PDBfile *, char *); +static char *pj_fixname(PDBfile *, char const *); /*------------------------------------------------------------------------- * Function: PJ_read @@ -106,7 +106,7 @@ *------------------------------------------------------------------------- */ INTERNAL int -PJ_read (PDBfile *file, char *name, void *var) { +PJ_read (PDBfile *file, char const *name, void *var) { char *newname = pj_fixname(file, name); @@ -209,7 +209,7 @@ *------------------------------------------------------------------------- */ INTERNAL syment * -PJ_inquire_entry (PDBfile *file, char *name) { +PJ_inquire_entry (PDBfile *file, char const *name) { char *newname = pj_fixname(file, name); @@ -252,7 +252,7 @@ *------------------------------------------------------------------------- */ INTERNAL char * -pj_fixname (PDBfile *file, char *inname) { +pj_fixname (PDBfile *file, char const *inname) { static char _outname[MAXLINE]; @@ -320,7 +320,8 @@ char *newname = pj_fixname(file, name); - return (lite_PD_write_alt(file, newname, type, var, nd, ind)); + return (lite_PD_write_alt(file, newname, (char *) type, + (void *) var, nd, (long *) ind)); } #endif /* PDB_WRITE */ @@ -343,8 +344,8 @@ */ #ifdef PDB_WRITE INTERNAL int -PJ_write_len (PDBfile *file, char *name, char *type, void const *var, int nd, - long *len) { +PJ_write_len (PDBfile *file, char const *name, char const *type, void const *var, int nd, + long const *len) { long ind[15], i; @@ -356,7 +357,7 @@ ind[i * 3 + 2] = 1; } - return (lite_PD_write_alt(file, newname, type, (void*) var, nd, ind)); + return (lite_PD_write_alt(file, newname, (char*) type, (void*) var, nd, ind)); } #endif /* PDB_WRITE */ /* END pjjacket.c */ @@ -431,7 +432,7 @@ static char *cached_obj_name = NULL; static char *cached_file_name = NULL; -PRIVATE int db_pdb_ParseVDBSpec (char *mvdbspec, char **varname, +PRIVATE int db_pdb_ParseVDBSpec (char const *mvdbspec, char **varname, char **filename); PRIVATE int pj_GetVarDatatypeID (PDBfile *file, char *varname); PRIVATE void reduce_path(char *path, char *npath); @@ -565,11 +566,11 @@ * match the expected_dbtype. *--------------------------------------------------------------------*/ INTERNAL int -PJ_GetObject(PDBfile *file_in, char *objname_in, PJcomplist *tobj, int expected_dbtype) +PJ_GetObject(PDBfile *file_in, char const *objname_in, PJcomplist *tobj, int expected_dbtype) { int i, j, error; char *varname=NULL, *filename=NULL; - char *objname=NULL; + char const *objname=NULL; PDBfile *file=NULL; char *me = "PJ_GetObject"; @@ -590,7 +591,7 @@ if (filename != NULL) { objname = varname; - if ((file = lite_PD_open(filename, "r")) == NULL) + if ((file = lite_PD_open((char*)filename, "r")) == NULL) { FREE (varname); FREE (filename); @@ -792,7 +793,7 @@ *-------------------------------------------------------------------- */ INTERNAL void * -PJ_GetComponent (PDBfile *file, char *objname, char *compname) { +PJ_GetComponent (PDBfile *file, char const *objname, char const *compname) { char *result = NULL; PJcomplist tmp_obj; @@ -830,7 +831,7 @@ *-------------------------------------------------------------------- */ INTERNAL int -PJ_GetComponentType (PDBfile *file, char *objname, char *compname) +PJ_GetComponentType (PDBfile *file, char const *objname, char const *compname) { int retval = DB_NOTYPE; char *me = "PJ_GetComponentType"; @@ -1091,7 +1092,17 @@ if (forcing) *var = ALLOC_N (char, num * sizeof(float)); else - *var = ALLOC_N (char, num * size); + { + if (act_datatype == DB_CHAR) + { + *var = ALLOC_N (char, (num+1) * size); + (*var)[num] = '\0'; + } + else + { + *var = ALLOC_N (char, num * size); + } + } alloced = 1; } @@ -1247,7 +1258,7 @@ * *--------------------------------------------------------------------*/ PRIVATE int -db_pdb_ParseVDBSpec (char *mvdbspec, char **varname, char **filename) +db_pdb_ParseVDBSpec (char const *mvdbspec, char **varname, char **filename) { int len_filename, len_varname; @@ -1463,7 +1474,7 @@ INTERNAL int PJ_get_group( PDBfile *file, /* PDB file pointer */ - char *name, /* Name of group desc to read */ + char const *name, /* Name of group desc to read */ PJgroup **group) /* Variable to write into */ { syment *ep; @@ -1471,7 +1482,7 @@ /* * Make sure the thing we're looking up is really a group. */ - ep = lite_PD_inquire_entry (file, name, TRUE, NULL); + ep = lite_PD_inquire_entry (file, (char *) name, TRUE, NULL); if (!ep || strcmp(PD_entry_type(ep), "Group *")) return 0; @@ -1748,7 +1759,6 @@ coming into existence. This is to ensure diffs on files before and after this change don't vary due to leading semicolon. */ -static int const handleSlashSwap = 1; static int const skipFirstSemicolon = 1; /*---------------------------------------------------------------------- @@ -1773,7 +1783,7 @@ * Moved here from pjobj.c so it could be made static (private). *--------------------------------------------------------------------*/ PRIVATE int -db_pdb_GetVarDatatype (PDBfile *pdb, char *varname) { +db_pdb_GetVarDatatype (PDBfile *pdb, char const *varname) { syment *ep; int datatype; @@ -1830,7 +1840,6 @@ dbfile->pub.cd = db_pdb_SetDir; dbfile->pub.g_dir = db_pdb_GetDir; dbfile->pub.newtoc = db_pdb_NewToc; - dbfile->pub.cdid = NULL; /*DBSetDirID() not supported */ #ifdef PDB_WRITE dbfile->pub.mkdir = db_pdb_MkDir; #endif @@ -1841,9 +1850,6 @@ dbfile->pub.g_varbl = db_pdb_GetVarByteLength; dbfile->pub.g_vartype = db_pdb_GetVarType; dbfile->pub.g_vardims = db_pdb_GetVarDims; - dbfile->pub.r_var1 = NULL; /*DBReadVar1() not supported */ - dbfile->pub.g_attr = db_pdb_GetAtt; - dbfile->pub.r_att = db_pdb_ReadAtt; /* Variable I/O operations */ dbfile->pub.g_var = db_pdb_GetVar; @@ -2060,7 +2066,7 @@ * Changed error code for failure to open to E_DRVRCANTOPEN *-------------------------------------------------------------------------*/ INTERNAL DBfile * -db_pdb_Open(char *name, int mode, int opts_set_id) +db_pdb_Open(char const *name, int mode, int opts_set_id) { PDBfile *pdb; DBfile_pdb *dbfile; @@ -2077,14 +2083,14 @@ } if (mode == DB_READ) { - if (NULL == (pdb = lite_PD_open(name, "r"))) + if (NULL == (pdb = lite_PD_open((char*)name, "r"))) { db_perror(NULL, E_DRVRCANTOPEN, me); return NULL; } } else if (mode == DB_APPEND) { - if (NULL == (pdb = lite_PD_open(name, "a"))) + if (NULL == (pdb = lite_PD_open((char*)name, "a"))) { db_perror(NULL, E_DRVRCANTOPEN, me); return NULL; @@ -2164,7 +2170,7 @@ *-------------------------------------------------------------------------*/ /* ARGSUSED */ INTERNAL DBfile * -db_pdb_Create (char *name, int mode, int target, int opts_set_id, char *finfo) +db_pdb_Create (char const *name, int mode, int target, int opts_set_id, char const *finfo) { DBfile_pdb *dbfile; static char *me = "db_pdb_create"; @@ -2223,16 +2229,16 @@ #endif db_pdb_InitCallbacks((DBfile *) dbfile); - if (NULL == (dbfile->pdb = lite_PD_open(name, "w"))) + if (NULL == (dbfile->pdb = lite_PD_open((char*)name, "w"))) { FREE(dbfile->pub.name); + FREE(dbfile); db_perror(name, E_NOFILE, me); return NULL; } #ifdef USING_PDB_PROPER PD_set_track_pointers(dbfile->pdb, FALSE); #endif - lite_PD_mkdir(dbfile->pdb, "/"); DBNewToc((DBfile *) dbfile); if (finfo) { @@ -2350,7 +2356,7 @@ PJ_get_fullpath( PDBfile *file, char *cwd, /* Current working directory */ - char *path, /* Pathname (abs or rel) to traverse */ + char const *path, /* Pathname (abs or rel) to traverse */ char *name) /* Returned adjusted name */ { int ierr; @@ -2453,7 +2459,7 @@ *-------------------------------------------------------------------------*/ PRIVATE int db_pdb_getobjinfo (PDBfile *pdb, - char *name, /* Name of object to inquire about */ + char const *name, /* Name of object to inquire about */ char *type, /* Returned object type of 'name' */ int *num) /* Returned number of elements */ { @@ -2509,7 +2515,7 @@ *-------------------------------------------------------------------------*/ PRIVATE int db_pdb_getvarinfo (PDBfile *pdb, - char *name, /*Name of var to inquire about */ + char const *name, /*Name of var to inquire about */ char *type, /*Returned datatype of 'name' */ int *num, /*Returned number of elements */ int *size, /*Returned element size */ @@ -3140,7 +3146,7 @@ * Put in cast to remove compiler warning. *-------------------------------------------------------------------------*/ SILO_CALLBACK DBObjectType -db_pdb_InqVarType(DBfile *_dbfile, char *varname) +db_pdb_InqVarType(DBfile *_dbfile, char const *varname) { DBfile_pdb *dbfile = (DBfile_pdb *) _dbfile; PDBfile *file = dbfile->pdb; @@ -3150,7 +3156,7 @@ int typetag; /* First, check to see if it exists */ - entry = lite_PD_inquire_entry(file, varname, TRUE, NULL); + entry = lite_PD_inquire_entry(file, (char *)varname, TRUE, NULL); if (entry == NULL) { /* This could be a directory. Add a "/" to the end and try again. */ @@ -3194,39 +3200,6 @@ } /*------------------------------------------------------------------------- - * Function: db_pdb_GetAtt - * - * Purpose: Allocate space for, and read, the given attribute of the - * given variable. - * - * Return: Success: pointer to result - * - * Failure: NULL - * - * Programmer: matzke@viper - * Tue Nov 8 08:06:45 PST 1994 - * - * Modifications: - * Sean Ahern, Sun Oct 1 03:07:41 PDT 1995 - * Made "me" static. - *-------------------------------------------------------------------------*/ -SILO_CALLBACK void * -db_pdb_GetAtt (DBfile *_dbfile, char *varname, char *attname) -{ - void *result; - DBfile_pdb *dbfile = (DBfile_pdb *) _dbfile; - static char *me = "db_pdb_GetAtt"; - - result = lite_PD_get_attribute(dbfile->pdb, varname, attname); - if (!result) { - db_perror("PD_get_attribute", E_CALLFAIL, me); - return NULL; - } - return result; -} - - -/*------------------------------------------------------------------------- * Function: db_pdb_GetObject * * Purpose: Reads a group from a PDB file. @@ -3250,7 +3223,7 @@ * a leak. *-------------------------------------------------------------------------*/ SILO_CALLBACK DBobject * -db_pdb_GetObject (DBfile *_file, char *name) +db_pdb_GetObject (DBfile *_file, char const *name) { PJgroup *group=NULL; PDBfile *file = ((DBfile_pdb *)_file)->pdb; @@ -3264,16 +3237,16 @@ * because we have a character string type name instead of an * integer type constant. */ - obj = malloc (sizeof (DBobject)); - obj->name = safe_strdup (group->name); - obj->type = safe_strdup (group->type); + obj = (DBobject *)calloc (1, sizeof (DBobject)); + obj->name = _db_safe_strdup (group->name); + obj->type = _db_safe_strdup (group->type); obj->ncomponents = obj->maxcomponents = group->ncomponents; - obj->comp_names = malloc (obj->maxcomponents * sizeof(char*)); - obj->pdb_names = malloc (obj->maxcomponents * sizeof(char*)); + obj->comp_names = (char **)malloc (obj->maxcomponents * sizeof(char*)); + obj->pdb_names = (char **)malloc (obj->maxcomponents * sizeof(char*)); for (i=0; incomponents; i++) { - obj->comp_names[i] = safe_strdup (group->comp_names[i]); - obj->pdb_names[i] = safe_strdup (group->pdb_names[i]); + obj->comp_names[i] = _db_safe_strdup (group->comp_names[i]); + obj->pdb_names[i] = _db_safe_strdup (group->pdb_names[i]); } PJ_rel_group (group); @@ -3322,7 +3295,7 @@ *--------------------------------------------------------------------*/ SILO_CALLBACK DBmaterial * db_pdb_GetMaterial(DBfile *_dbfile, /*DB file pointer */ - char *name) /*Name of material object to return*/ + char const *name) /*Name of material object to return*/ { DBmaterial *mm = NULL; DBfile_pdb *dbfile = (DBfile_pdb *) _dbfile; @@ -3409,8 +3382,7 @@ } if ((tmpcolors != NULL) && (mm->nmat > 0)) { - mm->matcolors = DBStringListToStringArray(tmpcolors, &(mm->nmat), - !handleSlashSwap, !skipFirstSemicolon); + mm->matcolors = DBStringListToStringArray(tmpcolors, &(mm->nmat), !skipFirstSemicolon); FREE(tmpcolors); } @@ -3464,7 +3436,7 @@ *--------------------------------------------------------------------*/ SILO_CALLBACK DBmatspecies * db_pdb_GetMatspecies (DBfile *_dbfile, /*DB file pointer */ - char *objname) /*Name of matspecies obj to return */ + char const *objname) /*Name of matspecies obj to return */ { DBmatspecies *mm; DBfile_pdb *dbfile = (DBfile_pdb *) _dbfile; @@ -3537,15 +3509,13 @@ if (tmpnames != NULL) { if (nstrs > 0) - mm->specnames = DBStringListToStringArray(tmpnames, &nstrs, - !handleSlashSwap, !skipFirstSemicolon); + mm->specnames = DBStringListToStringArray(tmpnames, &nstrs, !skipFirstSemicolon); FREE(tmpnames); } if (tmpcolors != NULL) { if (nstrs > 0) - mm->speccolors = DBStringListToStringArray(tmpcolors, &nstrs, - !handleSlashSwap, !skipFirstSemicolon); + mm->speccolors = DBStringListToStringArray(tmpcolors, &nstrs, !skipFirstSemicolon); FREE(tmpcolors); } @@ -3577,7 +3547,7 @@ * value of PJ_GetObject. *-------------------------------------------------------------------------*/ SILO_CALLBACK DBcompoundarray * -db_pdb_GetCompoundarray (DBfile *_dbfile, char *array_name) +db_pdb_GetCompoundarray (DBfile *_dbfile, char const *array_name) { int i; DBfile_pdb *dbfile = (DBfile_pdb *) _dbfile; @@ -3676,7 +3646,7 @@ * Added DBOPT_REFERENCE support. *-------------------------------------------------------------------------*/ SILO_CALLBACK DBcurve * -db_pdb_GetCurve (DBfile *_dbfile, char *name) +db_pdb_GetCurve (DBfile *_dbfile, char const *name) { DBfile_pdb *dbfile = (DBfile_pdb *) _dbfile ; DBcurve *cu ; @@ -3698,20 +3668,13 @@ DEFALL_OBJ ("yunits", &tmpcu.yunits, DB_CHAR) ; DEFALL_OBJ ("reference",&tmpcu.reference,DB_CHAR) ; DEFINE_OBJ ("guihide", &tmpcu.guihide, DB_INT) ; + DEFINE_OBJ ("coord_sys", &tmpcu.coord_sys, DB_INT) ; + DEFINE_OBJ ("missing_value", &tmpcu.missing_value, DB_DOUBLE); if (PJ_GetObject (dbfile->pdb, name, &tmp_obj, DB_CURVE)<0) return NULL ; if (NULL == (cu = DBAllocCurve ())) return NULL ; *cu = tmpcu; -#if 0 - if (cu->npts<=0) - { - DBFreeCurve (cu) ; - db_perror (name, E_NOTFOUND, me) ; - return NULL ; - } -#endif - if (DB_DOUBLE == cu->datatype && PJ_InqForceSingle()) cu->datatype = DB_FLOAT ; @@ -3734,6 +3697,11 @@ } } + if (cu->missing_value == DB_MISSING_VALUE_NOT_SET) + cu->missing_value = 0.0; + else if (cu->missing_value == 0.0) + cu->missing_value = DB_MISSING_VALUE_NOT_SET; + cu->id = 0 ; return cu ; @@ -3756,7 +3724,7 @@ * Made "me" static. *-------------------------------------------------------------------------*/ SILO_CALLBACK void * -db_pdb_GetComponent (DBfile *_dbfile, char *objname, char *compname) +db_pdb_GetComponent (DBfile *_dbfile, char const *objname, char const *compname) { void *result; DBfile_pdb *dbfile = (DBfile_pdb *) _dbfile; @@ -3786,7 +3754,7 @@ * Modifications: *-------------------------------------------------------------------------*/ SILO_CALLBACK int -db_pdb_GetComponentType (DBfile *_dbfile, char *objname, char *compname) +db_pdb_GetComponentType (DBfile *_dbfile, char const *objname, char const *compname) { int retval = DB_NOTYPE; DBfile_pdb *dbfile = (DBfile_pdb *) _dbfile; @@ -3852,15 +3820,13 @@ if ((tmpnames != NULL) && (defv->ndefs > 0)) { - defv->names = DBStringListToStringArray(tmpnames, &(defv->ndefs), - !handleSlashSwap, !skipFirstSemicolon); + defv->names = DBStringListToStringArray(tmpnames, &(defv->ndefs), !skipFirstSemicolon); FREE(tmpnames); } if ((tmpdefns != NULL) && (defv->ndefs > 0)) { - defv->defns = DBStringListToStringArray(tmpdefns, &(defv->ndefs), - !handleSlashSwap, !skipFirstSemicolon); + defv->defns = DBStringListToStringArray(tmpdefns, &(defv->ndefs), !skipFirstSemicolon); FREE(tmpdefns); } } @@ -4009,7 +3975,7 @@ * Added support for namescheme/empty list options. *--------------------------------------------------------------------*/ SILO_CALLBACK DBmultimesh * -db_pdb_GetMultimesh (DBfile *_dbfile, char *objname) +db_pdb_GetMultimesh (DBfile *_dbfile, char const *objname) { DBmultimesh *mm = NULL; int ncomps, type; @@ -4081,13 +4047,10 @@ *----------------------------------------*/ if ((tmpnames != NULL) && (mm->nblocks > 0)) { - mm->meshnames = DBStringListToStringArray(tmpnames, &(mm->nblocks), - handleSlashSwap, skipFirstSemicolon); - FREE(tmpnames); + db_StringListToStringArrayMBOpt(tmpnames, &(mm->meshnames), &(mm->meshnames_alloc), mm->nblocks); } if ((tmpgnames != NULL) && (mm->lgroupings > 0)) { - mm->groupnames = DBStringListToStringArray(tmpgnames, &(mm->lgroupings), - !handleSlashSwap, !skipFirstSemicolon); + mm->groupnames = DBStringListToStringArray(tmpgnames, &(mm->lgroupings), !skipFirstSemicolon); FREE(tmpgnames); } } @@ -4300,7 +4263,7 @@ * Added support for namescheme/empty list options. *-------------------------------------------------------------------------*/ SILO_CALLBACK DBmultivar * -db_pdb_GetMultivar (DBfile *_dbfile, char *objname) +db_pdb_GetMultivar (DBfile *_dbfile, char const *objname) { DBmultivar *mv = NULL; int ncomps, type; @@ -4341,6 +4304,7 @@ DEFALL_OBJ("empty_list", &tmpmv.empty_list, DB_INT); DEFINE_OBJ("empty_cnt", &tmpmv.empty_cnt, DB_INT); DEFINE_OBJ("repr_block_idx", &tmpmv.repr_block_idx, DB_INT); + DEFINE_OBJ("missing_value", &tmpmv.missing_value, DB_DOUBLE); if (PJ_GetObject(dbfile->pdb, objname, &tmp_obj, DB_MULTIVAR) < 0) return NULL; @@ -4359,17 +4323,20 @@ *----------------------------------------*/ if (tmpnames != NULL && mv->nvars > 0) { - mv->varnames = DBStringListToStringArray(tmpnames, &(mv->nvars), - handleSlashSwap, skipFirstSemicolon); - FREE(tmpnames); + db_StringListToStringArrayMBOpt(tmpnames, &(mv->varnames), &(mv->varnames_alloc), mv->nvars); } if (rpnames != NULL) { - mv->region_pnames = DBStringListToStringArray(rpnames, 0, - !handleSlashSwap, !skipFirstSemicolon); + mv->region_pnames = DBStringListToStringArray(rpnames, 0, !skipFirstSemicolon); FREE(rpnames); } + + if (mv->missing_value == DB_MISSING_VALUE_NOT_SET) + mv->missing_value = 0.0; + else if (mv->missing_value == 0.0) + mv->missing_value = DB_MISSING_VALUE_NOT_SET; + } return (mv); @@ -4434,7 +4401,7 @@ * Added support for namescheme/empty list options. *-------------------------------------------------------------------------*/ SILO_CALLBACK DBmultimat * -db_pdb_GetMultimat (DBfile *_dbfile, char *objname) +db_pdb_GetMultimat (DBfile *_dbfile, char const *objname) { DBmultimat *mt = NULL; int ncomps, type; @@ -4494,21 +4461,19 @@ if (tmpnames != NULL && mt->nmats > 0) { - mt->matnames = DBStringListToStringArray(tmpnames, &(mt->nmats), - handleSlashSwap, skipFirstSemicolon); - FREE(tmpnames); + db_StringListToStringArrayMBOpt(tmpnames, &(mt->matnames), &(mt->matnames_alloc), mt->nmats); } if (tmpmaterial_names && mt->nmatnos > 0) { mt->material_names = DBStringListToStringArray(tmpmaterial_names, - &(mt->nmatnos), !handleSlashSwap, !skipFirstSemicolon); + &(mt->nmatnos), !skipFirstSemicolon); FREE(tmpmaterial_names); } if (tmpmatcolors && mt->nmatnos > 0) { mt->matcolors = DBStringListToStringArray(tmpmatcolors, - &(mt->nmatnos), !handleSlashSwap, !skipFirstSemicolon); + &(mt->nmatnos), !skipFirstSemicolon); FREE(tmpmatcolors); } } @@ -4557,7 +4522,7 @@ * Added support for namescheme/empty list options. *-------------------------------------------------------------------------*/ SILO_CALLBACK DBmultimatspecies * -db_pdb_GetMultimatspecies (DBfile *_dbfile, char *objname) +db_pdb_GetMultimatspecies (DBfile *_dbfile, char const *objname) { DBmultimatspecies *mms = NULL; int ncomps, type; @@ -4615,9 +4580,7 @@ if (tmpnames != NULL && mms->nspec > 0) { - mms->specnames = DBStringListToStringArray(tmpnames, &(mms->nspec), - handleSlashSwap, skipFirstSemicolon); - FREE(tmpnames); + db_StringListToStringArrayMBOpt(tmpnames, &(mms->specnames), &(mms->specnames_alloc), mms->nspec); } if (tmpspecnames != NULL) @@ -4625,8 +4588,7 @@ for (i = 0; i < mms->nmat; i++) nstrs += mms->nmatspec[i]; if (nstrs > 0) - mms->species_names = DBStringListToStringArray(tmpspecnames, &nstrs, - !handleSlashSwap, !skipFirstSemicolon); + mms->species_names = DBStringListToStringArray(tmpspecnames, &nstrs, !skipFirstSemicolon); FREE(tmpspecnames); } if (tmpcolors != NULL) @@ -4637,8 +4599,7 @@ nstrs += mms->nmatspec[i]; } if (nstrs > 0) - mms->speccolors = DBStringListToStringArray(tmpcolors, &nstrs, - !handleSlashSwap, !skipFirstSemicolon); + mms->speccolors = DBStringListToStringArray(tmpcolors, &nstrs, !skipFirstSemicolon); FREE(tmpcolors); } } @@ -4688,7 +4649,7 @@ * is whatever is stored in gnznodtype member. *--------------------------------------------------------------------*/ SILO_CALLBACK DBpointmesh * -db_pdb_GetPointmesh (DBfile *_dbfile, char *objname) +db_pdb_GetPointmesh (DBfile *_dbfile, char const *objname) { DBpointmesh *pm = NULL; DBfile_pdb *dbfile = (DBfile_pdb *) _dbfile; @@ -4696,6 +4657,7 @@ static char *me = "db_pdb_GetPointmesh"; DBpointmesh tmppm; PJcomplist *_tcl; + char *tmpannums = 0; /*------------------------------------------------------------*/ /* Comp. Name Comp. Address Data Type */ @@ -4734,12 +4696,22 @@ DEFALL_OBJ("units1", &tmppm.units[1], DB_CHAR); DEFALL_OBJ("units2", &tmppm.units[2], DB_CHAR); + if (SILO_Globals.dataReadMask & DBPMGhostNodeLabels) + DEFALL_OBJ("ghost_node_labels", &tmppm.ghost_node_labels, DB_CHAR); + DEFALL_OBJ("alt_nodenum_vars", &tmpannums, DB_CHAR); + if (PJ_GetObject(dbfile->pdb, objname, &tmp_obj, DB_POINTMESH) < 0) return NULL; if ((pm = DBAllocPointmesh()) == NULL) return NULL; *pm = tmppm; + if (tmpannums != NULL) + { + pm->alt_nodenum_vars = DBStringListToStringArray(tmpannums, 0, !skipFirstSemicolon); + FREE(tmpannums); + } + /* * Read the remainder of the object: loop over all values * associated with this variable. @@ -4824,7 +4796,7 @@ * db_StringListToStringArray. *--------------------------------------------------------------------*/ SILO_CALLBACK DBmeshvar * -db_pdb_GetPointvar (DBfile *_dbfile, char *objname) +db_pdb_GetPointvar (DBfile *_dbfile, char const *objname) { DBmeshvar *mv = NULL; int i; @@ -4858,6 +4830,7 @@ DEFALL_OBJ("region_pnames", &rpnames, DB_CHAR); DEFINE_OBJ("conserved", &tmpmv.conserved, DB_INT); DEFINE_OBJ("extensive", &tmpmv.extensive, DB_INT); + DEFINE_OBJ("missing_value", &tmpmv.missing_value, DB_DOUBLE); if (PJ_GetObject(dbfile->pdb, objname, &tmp_obj, DB_POINTVAR) < 0) return NULL; @@ -4870,10 +4843,10 @@ * associated with this variable. */ - if ((mv->nvals > 0) && (SILO_Globals.dataReadMask & DBPVData)) { + if (mv->ndims>0 && mv->nels>0 && mv->nvals>0 && (SILO_Globals.dataReadMask & DBPVData)) { INIT_OBJ(&tmp_obj); - mv->vals = ALLOC_N(DB_DTPTR *, mv->nvals); + mv->vals = ALLOC_N(void*, mv->nvals); if (mv->datatype == 0) { if(mv->nvals == 1) @@ -4910,11 +4883,15 @@ if (rpnames != NULL) { - mv->region_pnames = DBStringListToStringArray(rpnames, 0, - !handleSlashSwap, !skipFirstSemicolon); + mv->region_pnames = DBStringListToStringArray(rpnames, 0, !skipFirstSemicolon); FREE(rpnames); } + if (mv->missing_value == DB_MISSING_VALUE_NOT_SET) + mv->missing_value = 0.0; + else if (mv->missing_value == 0.0) + mv->missing_value = DB_MISSING_VALUE_NOT_SET; + mv->id = 0; mv->name = STRDUP(objname); @@ -4964,7 +4941,7 @@ * value of PJ_GetObject. *--------------------------------------------------------------------*/ SILO_CALLBACK DBquadmesh * -db_pdb_GetQuadmesh (DBfile *_dbfile, char *objname) +db_pdb_GetQuadmesh (DBfile *_dbfile, char const *objname) { DBquadmesh *qm = NULL; PJcomplist tmp_obj; @@ -4972,6 +4949,7 @@ static char *me = "db_pdb_GetQuadmesh"; DBquadmesh tmpqm; PJcomplist *_tcl; + char *tmpannum = 0, *tmpaznum = 0; memset(&tmpqm, 0, sizeof(DBquadmesh)); tmpqm.base_index[0] = -99999; @@ -5019,6 +4997,13 @@ DEFINE_OBJ("guihide", &tmpqm.guihide, DB_INT); DEFALL_OBJ("mrgtree_name", &tmpqm.mrgtree_name, DB_CHAR); + if (SILO_Globals.dataReadMask & DBQMGhostNodeLabels) + DEFALL_OBJ("ghost_node_labels", &tmpqm.ghost_node_labels, DB_CHAR); + if (SILO_Globals.dataReadMask & DBQMGhostZoneLabels) + DEFALL_OBJ("ghost_zone_labels", &tmpqm.ghost_zone_labels, DB_CHAR); + DEFALL_OBJ("alt_nodenum_vars", &tmpannum, DB_CHAR); + DEFALL_OBJ("alt_zonenum_vars", &tmpaznum, DB_CHAR); + /* The type passed here to PJ_GetObject is NULL because quadmeshes can have * one of two types: DB_COLLINEAR or DB_NONCOLLINEAR. */ if (PJ_GetObject(dbfile->pdb, objname, &tmp_obj, DB_QUADMESH) < 0) @@ -5027,6 +5012,17 @@ return NULL; *qm = tmpqm; + if (tmpannum) + { + qm->alt_nodenum_vars = DBStringListToStringArray(tmpannum, 0, !skipFirstSemicolon); + FREE(tmpannum); + } + if (tmpaznum) + { + qm->alt_zonenum_vars = DBStringListToStringArray(tmpaznum, 0, !skipFirstSemicolon); + FREE(tmpaznum); + } + /* * If base_index was not set with the PJ_GetObject call, then * set it based on origin. @@ -5034,7 +5030,7 @@ if (qm->base_index[0] == -99999) { int i; - + qm->base_index[0] = 0; for (i = 0; i < qm->ndims; i++) { qm->base_index[i] = qm->origin; @@ -5108,7 +5104,7 @@ * db_StringListToStringArray. *--------------------------------------------------------------------*/ SILO_CALLBACK DBquadvar * -db_pdb_GetQuadvar (DBfile *_dbfile, char *objname) +db_pdb_GetQuadvar (DBfile *_dbfile, char const *objname) { DBquadvar *qv = NULL; int i; @@ -5144,6 +5140,7 @@ DEFINE_OBJ("guihide", &tmpqv.guihide, DB_INT); DEFINE_OBJ("conserved", &tmpqv.conserved, DB_INT); DEFINE_OBJ("conserved", &tmpqv.extensive, DB_INT); + DEFINE_OBJ("missing_value", &tmpqv.missing_value, DB_DOUBLE); /* Arrays */ DEFINE_OBJ("min_index", tmpqv.min_index, DB_INT); @@ -5167,13 +5164,13 @@ * associated with this variable. */ - if ((qv->nvals > 0) && (SILO_Globals.dataReadMask & DBQVData)) { + if ((qv->ndims>0) && (qv->nvals > 0) && (SILO_Globals.dataReadMask & DBQVData)) { INIT_OBJ(&tmp_obj); - qv->vals = ALLOC_N(DB_DTPTR *, qv->nvals); + qv->vals = ALLOC_N(void*, qv->nvals); if (qv->mixlen > 0) { - qv->mixvals = ALLOC_N(DB_DTPTR *, qv->nvals); + qv->mixvals = ALLOC_N(void*, qv->nvals); } if (qv->datatype == 0) { @@ -5201,11 +5198,15 @@ if (rpnames != NULL) { - qv->region_pnames = DBStringListToStringArray(rpnames, 0, - !handleSlashSwap, !skipFirstSemicolon); + qv->region_pnames = DBStringListToStringArray(rpnames, 0, !skipFirstSemicolon); FREE(rpnames); } + if (qv->missing_value == DB_MISSING_VALUE_NOT_SET) + qv->missing_value = 0.0; + else if (qv->missing_value == 0.0) + qv->missing_value = DB_MISSING_VALUE_NOT_SET; + qv->id = 0; qv->name = STRDUP(objname); @@ -5277,7 +5278,7 @@ * is whatever is stored in gnznodtype member. *--------------------------------------------------------------------*/ SILO_CALLBACK DBucdmesh * -db_pdb_GetUcdmesh (DBfile *_dbfile, char *meshname) +db_pdb_GetUcdmesh (DBfile *_dbfile, char const *meshname) { DBfile_pdb *dbfile = (DBfile_pdb *) _dbfile; DBucdmesh *um = NULL; @@ -5288,6 +5289,7 @@ static char *me = "db_pdb_GetUcdmesh"; DBucdmesh tmpum; PJcomplist *_tcl; + char *tmpannum = 0; /*------------------------------------------------------------*/ /* Comp. Name Comp. Address Data Type */ @@ -5337,12 +5339,22 @@ DEFINE_OBJ("tv_connectivity", &tmpum.tv_connectivity, DB_INT); DEFINE_OBJ("disjoint_mode", &tmpum.disjoint_mode, DB_INT); + if (SILO_Globals.dataReadMask & DBUMGhostNodeLabels) + DEFALL_OBJ("ghost_node_labels", &tmpum.ghost_node_labels, DB_CHAR); + DEFALL_OBJ("alt_nodenum_vars", &tmpannum, DB_CHAR); + if (PJ_GetObject(dbfile->pdb, meshname, &tmp_obj, DB_UCDMESH) < 0) return NULL; if ((um = DBAllocUcdmesh()) == NULL) return NULL; *um = tmpum; + if (tmpannum) + { + um->alt_nodenum_vars = DBStringListToStringArray(tmpannum, 0, !skipFirstSemicolon); + FREE(tmpannum); + } + if (PJ_InqForceSingle() == TRUE) um->datatype = DB_FLOAT; @@ -5362,7 +5374,7 @@ /* Optional global node number */ um->gnznodtype = um->gnznodtype?um->gnznodtype:DB_INT; - if (SILO_Globals.dataReadMask & DBUMGlobNodeNo) { + if (um->nnodes>0 && (SILO_Globals.dataReadMask & DBUMGlobNodeNo)) { INIT_OBJ(&tmp_obj); DEFALL_OBJ("gnodeno", &tmpum.gnodeno, um->gnznodtype); um->gnodeno = 0; @@ -5372,7 +5384,7 @@ /* Read facelist, zonelist, and edgelist */ - if ((flname != NULL && strlen(flname) > 0) + if (um->nnodes>0 && (flname != NULL && strlen(flname) > 0) && (SILO_Globals.dataReadMask & DBUMFacelist)) { DBfacelist tmpfaces; @@ -5412,7 +5424,7 @@ } - if ((zlname != NULL && strlen(zlname) > 0) + if (um->nnodes>0 && (zlname != NULL && strlen(zlname) > 0) && (SILO_Globals.dataReadMask & DBUMZonelist)) { DBzonelist tmpzones; @@ -5442,6 +5454,9 @@ hi_offset = 0; DEFINE_OBJ("lo_offset", &lo_offset, DB_INT); DEFINE_OBJ("hi_offset", &hi_offset, DB_INT); + + if (SILO_Globals.dataReadMask & DBZonelistGhostZoneLabels) + DEFALL_OBJ("ghost_zone_labels", &tmpzones.ghost_zone_labels, DB_CHAR); if (PJ_GetObject(dbfile->pdb, zlname, &tmp_obj, DB_ZONELIST) < 0) { @@ -5482,7 +5497,7 @@ } - if (elname && *elname) { + if (um->nnodes>0 && elname && *elname) { DBedgelist tmpedges; memset(&tmpedges, 0, sizeof(DBedgelist)); @@ -5512,7 +5527,7 @@ *(um->edges) = tmpedges; } - if (phzlname && *phzlname && (SILO_Globals.dataReadMask & DBUMZonelist)) { + if (um->nnodes>0 && phzlname && *phzlname && (SILO_Globals.dataReadMask & DBUMZonelist)) { um->phzones = db_pdb_GetPHZonelist(_dbfile, phzlname); } @@ -5585,7 +5600,7 @@ * db_StringListToStringArray. *--------------------------------------------------------------------*/ SILO_CALLBACK DBucdvar * -db_pdb_GetUcdvar (DBfile *_dbfile, char *objname) +db_pdb_GetUcdvar (DBfile *_dbfile, char const *objname) { DBucdvar *uv = NULL; int i; @@ -5623,6 +5638,7 @@ DEFALL_OBJ("region_pnames", &rpnames, DB_CHAR); DEFINE_OBJ("conserved", &tmpuv.conserved, DB_INT); DEFINE_OBJ("extensive", &tmpuv.extensive, DB_INT); + DEFINE_OBJ("missing_value", &tmpuv.missing_value, DB_DOUBLE); if (PJ_GetObject(dbfile->pdb, objname, &tmp_obj, DB_UCDVAR) < 0) return NULL; @@ -5637,10 +5653,10 @@ if ((uv->nvals > 0) && (SILO_Globals.dataReadMask & DBUVData)) { INIT_OBJ(&tmp_obj); - uv->vals = ALLOC_N(DB_DTPTR *, uv->nvals); + uv->vals = ALLOC_N(void*, uv->nvals); if (uv->mixlen > 0) { - uv->mixvals = ALLOC_N(DB_DTPTR *, uv->nvals); + uv->mixvals = ALLOC_N(void*, uv->nvals); } if (uv->datatype == 0) { @@ -5668,11 +5684,15 @@ if (rpnames != NULL) { - uv->region_pnames = DBStringListToStringArray(rpnames, 0, - !handleSlashSwap, !skipFirstSemicolon); + uv->region_pnames = DBStringListToStringArray(rpnames, 0, !skipFirstSemicolon); FREE(rpnames); } + if (uv->missing_value == DB_MISSING_VALUE_NOT_SET) + uv->missing_value = 0.0; + else if (uv->missing_value == 0.0) + uv->missing_value = DB_MISSING_VALUE_NOT_SET; + uv->id = 0; uv->name = STRDUP(objname); @@ -5767,14 +5787,14 @@ if ((tmpbndnames != NULL) && (tmpcsgm.nbounds > 0)) { - tmpcsgm.bndnames = DBStringListToStringArray(tmpbndnames, &tmpcsgm.nbounds, - !handleSlashSwap, !skipFirstSemicolon); + tmpcsgm.bndnames = DBStringListToStringArray(tmpbndnames, &tmpcsgm.nbounds, !skipFirstSemicolon); FREE(tmpbndnames); } tmpcsgm.name = STRDUP(meshname); - if ((zlname && *zlname && (SILO_Globals.dataReadMask & DBCSGMZonelist))) + if ((tmpcsgm.nbounds > 0 && zlname && *zlname && + (SILO_Globals.dataReadMask & DBCSGMZonelist))) tmpcsgm.zones = db_pdb_GetCSGZonelist(_dbfile, zlname); if ((csgm = DBAllocCsgmesh()) == NULL) @@ -5835,6 +5855,7 @@ DEFALL_OBJ("meshid",&tmpcsgv.meshname, DB_CHAR); DEFINE_OBJ("guihide", &tmpcsgv.guihide, DB_INT); DEFALL_OBJ("region_pnames", &rpnames, DB_CHAR); + DEFINE_OBJ("missing_value", &tmpcsgv.missing_value, DB_DOUBLE); if (PJ_GetObject(dbfile->pdb, (char*) objname, &tmp_obj, DB_CSGVAR) < 0) return NULL; @@ -5869,11 +5890,15 @@ if (rpnames != NULL) { - csgv->region_pnames = DBStringListToStringArray(rpnames, 0, - !handleSlashSwap, !skipFirstSemicolon); + tmpcsgv.region_pnames = DBStringListToStringArray(rpnames, 0, !skipFirstSemicolon); FREE(rpnames); } + if (tmpcsgv.missing_value == DB_MISSING_VALUE_NOT_SET) + tmpcsgv.missing_value = 0.0; + else if (tmpcsgv.missing_value == 0.0) + tmpcsgv.missing_value = DB_MISSING_VALUE_NOT_SET; + if ((csgv = DBAllocCsgvar()) == NULL) return NULL; @@ -5909,7 +5934,7 @@ * value of PJ_GetObject. *-------------------------------------------------------------------------*/ SILO_CALLBACK DBfacelist * -db_pdb_GetFacelist(DBfile *_dbfile, char *objname) +db_pdb_GetFacelist(DBfile *_dbfile, char const *objname) { DBfacelist *fl=NULL; PJcomplist tmp_obj; @@ -5988,7 +6013,7 @@ * is whatever is stored in gnznodtype member. *-------------------------------------------------------------------------*/ SILO_CALLBACK DBzonelist * -db_pdb_GetZonelist(DBfile *_dbfile, char *objname) +db_pdb_GetZonelist(DBfile *_dbfile, char const *objname) { DBzonelist *zl = NULL; PJcomplist tmp_obj; @@ -5996,6 +6021,7 @@ static char *me = "db_pdb_GetZonelist"; DBzonelist tmpzl; PJcomplist *_tcl; + char *tmpaznum = 0; /*------------------------------------------------------------*/ /* Comp. Name Comp. Address Data Type */ @@ -6021,12 +6047,22 @@ DEFALL_OBJ("zoneno", &tmpzl.zoneno, DB_INT); } + if (SILO_Globals.dataReadMask & DBZonelistGhostZoneLabels) + DEFALL_OBJ("ghost_zone_labels", &tmpzl.ghost_zone_labels, DB_CHAR); + DEFALL_OBJ("alt_zonenum_vars", &tmpaznum, DB_CHAR); + if (PJ_GetObject(dbfile->pdb, objname, &tmp_obj, DB_ZONELIST) < 0) return NULL; if ((zl = DBAllocZonelist()) == NULL) return NULL; *zl = tmpzl; + if (tmpaznum) + { + zl->alt_zonenum_vars = DBStringListToStringArray(tmpaznum, 0, !skipFirstSemicolon); + FREE(tmpaznum); + } + /* optional global zone numbers */ zl->gnznodtype = zl->gnznodtype?zl->gnznodtype:DB_INT; if (SILO_Globals.dataReadMask & DBZonelistGlobZoneNo) { @@ -6076,7 +6112,7 @@ * is whatever is stored in gnznodtype member. *-------------------------------------------------------------------------*/ SILO_CALLBACK DBphzonelist * -db_pdb_GetPHZonelist(DBfile *_dbfile, char *objname) +db_pdb_GetPHZonelist(DBfile *_dbfile, char const *objname) { DBphzonelist *phzl = NULL; PJcomplist tmp_obj; @@ -6084,6 +6120,7 @@ static char *me = "db_pdb_GetPHZonelist"; DBphzonelist tmpphzl; PJcomplist *_tcl; + char *tmpaznum = 0; /*------------------------------------------------------------*/ /* Comp. Name Comp. Address Data Type */ @@ -6110,12 +6147,22 @@ DEFALL_OBJ("zoneno", &tmpphzl.zoneno, DB_INT); } + if (SILO_Globals.dataReadMask & DBZonelistGhostZoneLabels) + DEFALL_OBJ("ghost_zone_labels", &tmpphzl.ghost_zone_labels, DB_CHAR); + DEFALL_OBJ("alt_zonenum_vars", &tmpaznum, DB_CHAR); + if (PJ_GetObject(dbfile->pdb, objname, &tmp_obj, DB_PHZONELIST) < 0) return NULL; if ((phzl = DBAllocPHZonelist()) == NULL) return NULL; *phzl = tmpphzl; + if (tmpaznum) + { + phzl->alt_zonenum_vars = DBStringListToStringArray(tmpaznum, 0, !skipFirstSemicolon); + FREE(tmpaznum); + } + /* optional global zone numbers */ phzl->gnznodtype = phzl->gnznodtype?phzl->gnznodtype:DB_INT; if (SILO_Globals.dataReadMask & DBZonelistGlobZoneNo) { @@ -6151,7 +6198,7 @@ SILO_CALLBACK DBcsgzonelist * db_pdb_GetCSGZonelist(DBfile *_dbfile, char const *objname) { - char *tmprnames = 0, *tmpznames = 0; + char *tmprnames = 0, *tmpznames = 0, *tmpaznums = 0; DBcsgzonelist *zl = NULL; PJcomplist tmp_obj; DBfile_pdb *dbfile = (DBfile_pdb*)_dbfile; @@ -6184,6 +6231,7 @@ DEFALL_OBJ("regnames", &tmprnames, DB_CHAR); if (SILO_Globals.dataReadMask & DBCSGZonelistZoneNames) DEFALL_OBJ("zonenames", &tmpznames, DB_CHAR); + DEFALL_OBJ("alt_zonenum_vars", &tmpaznums, DB_CHAR); if (PJ_GetObject(dbfile->pdb, (char*) objname, &tmp_obj, DB_CSGZONELIST) < 0) return NULL; @@ -6203,18 +6251,22 @@ if ((tmprnames != NULL) && (tmpzl.nregs > 0)) { - tmpzl.regnames = DBStringListToStringArray(tmprnames, &tmpzl.nregs, - !handleSlashSwap, !skipFirstSemicolon); + tmpzl.regnames = DBStringListToStringArray(tmprnames, &tmpzl.nregs, !skipFirstSemicolon); FREE(tmprnames); } if ((tmpznames != NULL) && (tmpzl.nzones > 0)) { - tmpzl.zonenames = DBStringListToStringArray(tmpznames, &tmpzl.nzones, - !handleSlashSwap, !skipFirstSemicolon); + tmpzl.zonenames = DBStringListToStringArray(tmpznames, &tmpzl.nzones, !skipFirstSemicolon); FREE(tmpznames); } + if (tmpaznums != NULL) + { + tmpzl.alt_zonenum_vars = DBStringListToStringArray(tmpaznums, 0, !skipFirstSemicolon); + FREE(tmpaznums); + } + if ((zl = DBAllocCSGZonelist()) == NULL) return NULL; *zl = tmpzl; @@ -6240,7 +6292,7 @@ * Made "me" static. *-------------------------------------------------------------------------*/ SILO_CALLBACK void * -db_pdb_GetVar (DBfile *_dbfile, char *name) +db_pdb_GetVar (DBfile *_dbfile, char const *name) { static char *me = "db_pdb_GetVar"; char *data; @@ -6278,7 +6330,7 @@ * Modifications: *-------------------------------------------------------------------------*/ SILO_CALLBACK int -db_pdb_GetVarByteLength (DBfile *_dbfile, char *varname) +db_pdb_GetVarByteLength (DBfile *_dbfile, char const *varname) { DBfile_pdb *dbfile = (DBfile_pdb *) _dbfile; int number, size; @@ -6308,7 +6360,7 @@ * weren't being used. *-------------------------------------------------------------------------*/ SILO_CALLBACK int -db_pdb_GetVarDims (DBfile *_dbfile, char *varname, int maxdims, int *dims) +db_pdb_GetVarDims (DBfile *_dbfile, char const *varname, int maxdims, int *dims) { DBfile_pdb *dbfile = (DBfile_pdb *) _dbfile; static char *me = "db_pdb_GetVarDims"; @@ -6341,14 +6393,14 @@ * Modifications: *-------------------------------------------------------------------------*/ SILO_CALLBACK int -db_pdb_GetVarType (DBfile *_dbfile, char *varname) +db_pdb_GetVarType (DBfile *_dbfile, char const *varname) { DBfile_pdb *dbfile = (DBfile_pdb *) _dbfile; int number, size; - char typename[256]; + char type_name[256]; - db_pdb_getvarinfo(dbfile->pdb, varname, typename, &number, &size, 0); - return db_GetDatatypeID(typename); + db_pdb_getvarinfo(dbfile->pdb, varname, type_name, &number, &size, 0); + return db_GetDatatypeID(type_name); } /*------------------------------------------------------------------------- @@ -6366,7 +6418,7 @@ * Modifications: *-------------------------------------------------------------------------*/ SILO_CALLBACK int -db_pdb_GetVarLength (DBfile *_dbfile, char *varname) +db_pdb_GetVarLength (DBfile *_dbfile, char const *varname) { DBfile_pdb *dbfile = (DBfile_pdb *) _dbfile; int number, size; @@ -6396,7 +6448,7 @@ * Fixed a memory leak. *-------------------------------------------------------------------------*/ SILO_CALLBACK int -db_pdb_InqMeshname (DBfile *_dbfile, char *vname, char *mname) +db_pdb_InqMeshname (DBfile *_dbfile, char const *vname, char *mname) { DBfile_pdb *dbfile = (DBfile_pdb *) _dbfile; void *v; @@ -6435,7 +6487,7 @@ * Added code to free ctype to eliminate a memory leak. *-------------------------------------------------------------------------*/ SILO_CALLBACK int -db_pdb_InqMeshtype (DBfile *_dbfile, char *mname) +db_pdb_InqMeshtype (DBfile *_dbfile, char const *mname) { DBfile_pdb *dbfile = (DBfile_pdb *) _dbfile; char tmp[256], *ctype; @@ -6472,7 +6524,7 @@ * weren't being used. *--------------------------------------------------------------------*/ SILO_CALLBACK int -db_pdb_InqVarExists (DBfile *_dbfile, char *varname) +db_pdb_InqVarExists (DBfile *_dbfile, char const *varname) { DBfile_pdb *dbfile = (DBfile_pdb *) _dbfile; syment *ep; @@ -6485,35 +6537,6 @@ } /*------------------------------------------------------------------------- - * Function: db_pdb_ReadAtt - * - * Purpose: Reads the specified attribute value into the provided - * space. - * - * Return: Success: 0 - * - * Failure: -1 - * - * Programmer: robb@cloud - * Mon Nov 21 21:00:56 EST 1994 - * - * Modifications: - * - *-------------------------------------------------------------------------*/ -SILO_CALLBACK int -db_pdb_ReadAtt(DBfile *_dbfile, char *vname, char *attname, void *results) -{ - DBfile_pdb *dbfile = (DBfile_pdb *) _dbfile; - char *attval; - - attval = lite_PD_get_attribute(dbfile->pdb, vname, attname); - memcpy(results, attval, lite_SC_arrlen(attval)); - SFREE(attval); - - return 0; -} - -/*------------------------------------------------------------------------- * Function: db_pdb_ReadVar * * Purpose: Reads a variable into the given space. @@ -6530,7 +6553,7 @@ * Made "me" static. *-------------------------------------------------------------------------*/ SILO_CALLBACK int -db_pdb_ReadVar (DBfile *_dbfile, char *vname, void *result) +db_pdb_ReadVar (DBfile *_dbfile, char const *vname, void *result) { DBfile_pdb *dbfile = (DBfile_pdb *) _dbfile; static char *me = "db_pdb_ReadVar"; @@ -6558,8 +6581,8 @@ * Made "me" static. *-------------------------------------------------------------------------*/ SILO_CALLBACK int -db_pdb_ReadVarSlice (DBfile *_dbfile, char *vname, int *offset, int *length, - int *stride, int ndims, void *result) +db_pdb_ReadVarSlice (DBfile *_dbfile, char const *vname, int const *offset, int const *length, + int const *stride, int ndims, void *result) { int i; DBfile_pdb *dbfile = (DBfile_pdb *) _dbfile; @@ -6572,7 +6595,7 @@ ind[3 * i + 2] = stride[i]; } - if (!PJ_read_alt(dbfile->pdb, vname, result, ind)) { + if (!PJ_read_alt(dbfile->pdb, (char*)vname, result, ind)) { return db_perror("PJ_read_alt", E_CALLFAIL, me); } return 0; @@ -6608,13 +6631,13 @@ * Turned off the PJgroup cache when we change directories. *-------------------------------------------------------------------------*/ SILO_CALLBACK int -db_pdb_SetDir (DBfile *_dbfile, char *path) +db_pdb_SetDir (DBfile *_dbfile, char const *path) { DBfile_pdb *dbfile = (DBfile_pdb *) _dbfile; static char *me = "db_pdb_SetDir"; char error_message[256]; - if (1 == lite_PD_cd(dbfile->pdb, path)) { + if (1 == lite_PD_cd(dbfile->pdb, (char*) path)) { dbfile->pub.dirid = 0; /* We've changed directories, so we can't cache PJgroups any more */ @@ -6683,7 +6706,7 @@ * Changed strdup to safe_strdup. *-------------------------------------------------------------------------*/ SILO_CALLBACK int -db_pdb_GetComponentNames (DBfile *_dbfile, char *objname, +db_pdb_GetComponentNames (DBfile *_dbfile, char const *objname, char ***comp_names, char ***file_names) { PJgroup *group = NULL ; @@ -6698,7 +6721,7 @@ * First make sure that the specified object is type "Group *", otherwise * we'll get a segmentation fault deep within the PDB library! */ - ep = lite_PD_inquire_entry (dbfile->pdb, objname, TRUE, NULL) ; + ep = lite_PD_inquire_entry (dbfile->pdb, (char*)objname, TRUE, NULL) ; if (!ep || strcmp(ep->type, "Group *")) return 0 ; /* @@ -6718,8 +6741,8 @@ if (file_names) *file_names = (char**)malloc(group->ncomponents * sizeof(char *)) ; for (i=0; incomponents; i++) { - if (comp_names) (*comp_names)[i] = safe_strdup (group->comp_names[i]) ; - if (file_names) (*file_names)[i] = safe_strdup (group->pdb_names[i]) ; + if (comp_names) (*comp_names)[i] = _db_safe_strdup (group->comp_names[i]) ; + if (file_names) (*file_names)[i] = _db_safe_strdup (group->pdb_names[i]) ; } return group->ncomponents ; @@ -6810,8 +6833,7 @@ PJ_GetObject(dbfile->pdb, (char*)mrgtree_name, &tmp_obj, 0); if (s) { - strArray = DBStringListToStringArray(s, &num_nodes, - !handleSlashSwap, !skipFirstSemicolon); + strArray = DBStringListToStringArray(s, &num_nodes, !skipFirstSemicolon); for (i = 0; i < num_nodes; i++) ltree[i]->name = strArray[i]; FREE(s); @@ -6824,8 +6846,7 @@ PJ_GetObject(dbfile->pdb, (char*)mrgtree_name, &tmp_obj, 0); if (s) { - strArray = DBStringListToStringArray(s, 0, !handleSlashSwap, - !skipFirstSemicolon); + strArray = DBStringListToStringArray(s, 0, !skipFirstSemicolon); n = 0; for (i = 0; i < num_nodes; i++) { @@ -6855,8 +6876,7 @@ PJ_GetObject(dbfile->pdb, (char*)mrgtree_name, &tmp_obj, 0); if (s) { - strArray = DBStringListToStringArray(s, &num_nodes, !handleSlashSwap, - !skipFirstSemicolon); + strArray = DBStringListToStringArray(s, &num_nodes, !skipFirstSemicolon); for (i = 0; i < num_nodes; i++) ltree[i]->maps_name = strArray[i]; FREE(s); @@ -6933,14 +6953,12 @@ if (mrgv_onames) { - tree->mrgvar_onames = DBStringListToStringArray(mrgv_onames, 0, - !handleSlashSwap, !skipFirstSemicolon); + tree->mrgvar_onames = DBStringListToStringArray(mrgv_onames, 0, !skipFirstSemicolon); FREE(mrgv_onames); } if (mrgv_rnames) { - tree->mrgvar_rnames = DBStringListToStringArray(mrgv_rnames, 0, - !handleSlashSwap, !skipFirstSemicolon); + tree->mrgvar_rnames = DBStringListToStringArray(mrgv_rnames, 0, !skipFirstSemicolon); FREE(mrgv_rnames); } @@ -7015,7 +7033,7 @@ /* unflatten frac data if we have it */ if (fracLengths != NULL) { - gm->segment_fracs = malloc(gm->num_segments * sizeof(void*)); + gm->segment_fracs = (void **)malloc(gm->num_segments * sizeof(void*)); n = 0; for (i = 0; i < gm->num_segments; i++) { @@ -7130,15 +7148,13 @@ if (cnames != NULL) { - mrgv->compnames = DBStringListToStringArray(cnames, &(mrgv->ncomps), - !handleSlashSwap, !skipFirstSemicolon); + mrgv->compnames = DBStringListToStringArray(cnames, &(mrgv->ncomps), !skipFirstSemicolon); FREE(cnames); } if (rpnames != NULL) { - mrgv->reg_pnames = DBStringListToStringArray(rpnames, 0, - !handleSlashSwap, !skipFirstSemicolon); + mrgv->reg_pnames = DBStringListToStringArray(rpnames, 0, !skipFirstSemicolon); FREE(rpnames); } @@ -7323,9 +7339,17 @@ *-------------------------------------------------------------------------*/ #ifdef PDB_WRITE SILO_CALLBACK int -db_pdb_WriteSlice (DBfile *_dbfile, char *vname, void *values, int dtype, - int offset[], int length[], int stride[], int dims[], - int ndims) +db_pdb_WriteSlice( + DBfile *_dbfile, + char const *vname, + void const *values, + int dtype, + int const *offset, + int const *length, + int const *stride, + int const *dims, + int ndims +) { char *dtype_s ; long dim_extents[9] ; @@ -7339,7 +7363,7 @@ return db_perror ("db_GetDatatypeString", E_CALLFAIL, me) ; } - if ((ep=lite_PD_inquire_entry (dbfile->pdb, vname, TRUE, NULL))) { + if ((ep=lite_PD_inquire_entry (dbfile->pdb, (char*) vname, TRUE, NULL))) { /* * Variable already exists. Make sure the supplied dimensions * are the same as what was originally used when space was reserved. @@ -7369,7 +7393,7 @@ dim_extents[i*2+0] = 0 ; /*minimum index*/ dim_extents[i*2+1] = dims[i]-1 ; /*maximum index*/ } - if (!lite_PD_defent_alt (dbfile->pdb, vname, dtype_s, ndims, + if (!lite_PD_defent_alt (dbfile->pdb, (char*) vname, dtype_s, ndims, dim_extents)) { FREE(dtype_s); return db_perror ("PD_defent_alt", E_CALLFAIL, me) ; @@ -7429,12 +7453,12 @@ *-------------------------------------------------------------------------*/ #ifdef PDB_WRITE SILO_CALLBACK int -db_pdb_MkDir (DBfile *_dbfile, char *name) +db_pdb_MkDir (DBfile *_dbfile, char const *name) { DBfile_pdb *dbfile = (DBfile_pdb *) _dbfile; static char *me = "db_pdb_MkDir"; - if (!lite_PD_mkdir(dbfile->pdb, name)) { + if (!lite_PD_mkdir(dbfile->pdb, (char*) name)) { return db_perror("PD_mkdir", E_CALLFAIL, me); } return 0; @@ -7496,15 +7520,17 @@ #ifdef PDB_WRITE /* ARGSUSED */ SILO_CALLBACK int -db_pdb_PutCompoundarray (DBfile *_dbfile, /*pointer to open file */ - char *array_name, /*name of array object */ - char *elemnames[], /*simple array names */ - int *elemlengths, /*lengths of simple arrays */ - int nelems, /*number of simple arrays */ - void *values, /*vector of simple values */ - int nvalues, /*num of values (redundant) */ - int datatype, /*type of simple all values */ - DBoptlist *optlist) /*option list */ +db_pdb_PutCompoundarray ( + DBfile *_dbfile, /*pointer to open file */ + char const *array_name, /*name of array object */ + char const * const *elemnames, /*simple array names */ + int const *elemlengths, /*lengths of simple arrays */ + int nelems, /*number of simple arrays */ + void const *values, /*vector of simple values */ + int nvalues, /*num of values (redundant) */ + int datatype, /*type of simple all values */ + DBoptlist const *optlist /*option list */ +) { DBobject *obj; char *tmp, *cur; @@ -7590,8 +7616,8 @@ *-------------------------------------------------------------------------*/ #ifdef PDB_WRITE SILO_CALLBACK int -db_pdb_PutCurve (DBfile *_dbfile, char *name, void *xvals, void *yvals, - int dtype, int npts, DBoptlist *opts) +db_pdb_PutCurve (DBfile *_dbfile, char const *name, void const *xvals, void const *yvals, + int dtype, int npts, DBoptlist const *opts) { DBobject *obj ; char *dtype_s ; @@ -7603,7 +7629,7 @@ * them with any values specified in the options list. */ db_InitCurve (opts) ; - obj = DBMakeObject (name, DB_CURVE, 18) ; + obj = DBMakeObject (name, DB_CURVE, 19) ; /* * Write the X and Y arrays. If the user specified a variable @@ -7617,7 +7643,7 @@ if (_cu._varname[0]) { DBAddVarComponent (obj, "xvals", _cu._varname[0]) ; } else { - if (xvals && !_cu._reference) { + if (npts && xvals && !_cu._reference) { DBWriteComponent (_dbfile, obj, "xvals", name, dtype_s, xvals, 1, &lnpts); } @@ -7625,7 +7651,7 @@ if (_cu._varname[1]) { DBAddVarComponent (obj, "yvals", _cu._varname[1]) ; } else { - if (yvals && !_cu._reference) { + if (npts && yvals && !_cu._reference) { DBWriteComponent (_dbfile, obj, "yvals", name, dtype_s, yvals, 1, &lnpts); } @@ -7645,7 +7671,16 @@ if (_cu._labels[1]) DBAddStrComponent (obj, "ylabel", _cu._labels[1]) ; if (_cu._units[1]) DBAddStrComponent (obj, "yunits", _cu._units[1]) ; if (_cu._reference) DBAddStrComponent (obj, "reference",_cu._reference) ; - if (_cu._guihide) DBAddIntComponent (obj, "guihide", _cu._guihide); + if (_cu._guihide) DBAddIntComponent (obj, "guihide", _cu._guihide) ; + if (_cu._coord_sys) DBAddIntComponent (obj, "coord_sys", _cu._coord_sys) ; + if (_cu._missing_value != DB_MISSING_VALUE_NOT_SET) + { + if (_cu._missing_value == 0.0) + DBAddDblComponent(obj, "missing_value", DB_MISSING_VALUE_NOT_SET); + else + DBAddDblComponent(obj, "missing_value", _cu._missing_value); + } + DBWriteObject (_dbfile, obj, TRUE) ; DBFreeObject(obj); @@ -7668,10 +7703,16 @@ *--------------------------------------------------------------------*/ #ifdef PDB_WRITE SILO_CALLBACK int -db_pdb_PutDefvars (DBfile *dbfile, char const *name, int ndefs, - char *names[], int const types[], - char *defns[], DBoptlist *optlists[]) { - +db_pdb_PutDefvars( + DBfile *dbfile, + char const *name, + int ndefs, + char const * const *names, + int const *types, + char const * const *defns, + DBoptlist const * const *optlists +) +{ int i, len; long count[1]; DBobject *obj; @@ -7713,7 +7754,7 @@ /*------------------------------------------------------------- * Define and write variable names *-------------------------------------------------------------*/ - DBStringArrayToStringList(names, ndefs, &tmp, &len); + DBStringArrayToStringList((char const * const *)names, ndefs, &tmp, &len); count[0] = len; DBWriteComponent(dbfile, obj, "names", name, "char", tmp, 1, count); @@ -7723,7 +7764,7 @@ /*------------------------------------------------------------- * Define and write variable definitions *-------------------------------------------------------------*/ - DBStringArrayToStringList(defns, ndefs, &tmp, &len); + DBStringArrayToStringList((char const * const *)defns, ndefs, &tmp, &len); count[0] = len; DBWriteComponent(dbfile, obj, "defns", name, "char", tmp, 1, count); @@ -7771,10 +7812,22 @@ *--------------------------------------------------------------------*/ #ifdef PDB_WRITE SILO_CALLBACK int -db_pdb_PutFacelist (DBfile *dbfile, char *name, int nfaces, int ndims, - int *nodelist, int lnodelist, int origin, - int *zoneno, int *shapesize, int *shapecnt, int nshapes, - int *types, int *typelist, int ntypes) +db_pdb_PutFacelist( + DBfile *dbfile, + char const *name, + int nfaces, + int ndims, + int const *nodelist, + int lnodelist, + int origin, + int const *zoneno, + int const *shapesize, + int const *shapecnt, + int nshapes, + int const *types, + int const *typelist, + int ntypes +) { long count[5]; DBobject *obj; @@ -7878,17 +7931,38 @@ *--------------------------------------------------------------------*/ #ifdef PDB_WRITE SILO_CALLBACK int -db_pdb_PutMaterial (DBfile *dbfile, char *name, char *mname, - int nmat, int matnos[], int matlist[], - int dims[], int ndims, - int mix_next[], int mix_mat[], int mix_zone[], - DB_DTPTR1 mix_vf, int mixlen, int datatype, - DBoptlist *optlist) +db_pdb_PutMaterial( + DBfile *dbfile, + char const *name, + char const *mname, + int nmat, + int const *matnos, + int const *matlist, + int const *dims, + int ndims, + int const *mix_next, + int const *mix_mat, + int const *mix_zone, + void const *mix_vf, + int mixlen, + int datatype, + DBoptlist const *optlist +) { int i, nels; long count[3]; DBobject *obj; char *datatype_str; + int is_empty = 1; + + for (i = 0; i < ndims; i++) + { + if (dims[i] > 0) + { + is_empty = 0; + break; + } + } /*------------------------------------------------------------- * Process option list; build object description. @@ -7919,20 +7993,20 @@ DBWriteComponent(dbfile, obj, "dims", name, "integer", dims, 1, count); /* Do zonal material ID array */ - for (nels = 1, i = 0; i < ndims; i++) + nels = ndims==0?0:1; + for (i = 0; i < ndims; i++) nels *= dims[i]; count[0] = nels; - DBWriteComponent(dbfile, obj, "matlist", name, "integer", - matlist, 1, count); + if (!is_empty) + DBWriteComponent(dbfile, obj, "matlist", name, "integer", matlist, 1, count); /* Do material numbers list */ count[0] = nmat; - DBWriteComponent(dbfile, obj, "matnos", name, "integer", - matnos, 1, count); + DBWriteComponent(dbfile, obj, "matnos", name, "integer", matnos, 1, count); /* Now do mixed data arrays (mix_zone is optional) */ - if (mixlen > 0) { + if (!is_empty && mixlen > 0) { datatype_str = db_GetDatatypeString(datatype); count[0] = mixlen; @@ -7955,7 +8029,7 @@ if (_ma._matnames != NULL) { int len; long llen; char *tmpstr = 0; - DBStringArrayToStringList(_ma._matnames, nmat, &tmpstr, &len); + DBStringArrayToStringList((char const * const *)_ma._matnames, nmat, &tmpstr, &len); llen = (long) len; DBWriteComponent(dbfile, obj, "matnames", name, "char", tmpstr, 1, &llen); FREE(tmpstr); @@ -7964,13 +8038,14 @@ if (_ma._matcolors != NULL) { int len; long llen; char *tmpstr = 0; - DBStringArrayToStringList(_ma._matcolors, nmat, &tmpstr, &len); + DBStringArrayToStringList((char const * const *)_ma._matcolors, nmat, &tmpstr, &len); llen = (long) len; DBWriteComponent(dbfile, obj, "matcolors", name, "char", tmpstr, 1, &llen); FREE(tmpstr); _ma._matcolors = NULL; } + /*------------------------------------------------------------- * Write material object to output file. Request that underlying * memory be freed (the 'TRUE' argument.) @@ -8019,16 +8094,26 @@ *--------------------------------------------------------------------*/ #ifdef PDB_WRITE SILO_CALLBACK int -db_pdb_PutMatspecies (DBfile *dbfile, char *name, char *matname, - int nmat, int nmatspec[], int speclist[], - int dims[], int ndims, int nspecies_mf, - DB_DTPTR1 species_mf, int mix_speclist[], - int mixlen, int datatype, DBoptlist *optlist) { +db_pdb_PutMatspecies (DBfile *dbfile, char const *name, char const *matname, + int nmat, int const *nmatspec, int const *speclist, + int const *dims, int ndims, int nspecies_mf, + void const *species_mf, int const *mix_speclist, + int mixlen, int datatype, DBoptlist const *optlist) { long count[3]; int i, nels, nstrs; DBobject *obj; char *datatype_str; + int is_empty = 1; + + for (i = 0; i < ndims; i++) + { + if (dims[i] > 0) + { + is_empty = 0; + break; + } + } /*------------------------------------------------------------- * Process option list; build object description. @@ -8056,27 +8141,27 @@ DBWriteComponent(dbfile, obj, "dims", name, "integer", dims, 1, count); /* Do zonal material species ID array */ - for (nels = 1, i = 0; i < ndims; i++) + nels = ndims==0?0:1; + for (i = 0; i < ndims; i++) nels *= dims[i]; count[0] = nels; - DBWriteComponent(dbfile, obj, "speclist", name, "integer", - speclist, 1, count); + if (!is_empty) + DBWriteComponent(dbfile, obj, "speclist", name, "integer", speclist, 1, count); /* Do material species count per material list */ count[0] = nmat; - DBWriteComponent(dbfile, obj, "nmatspec", name, "integer", - nmatspec, 1, count); + DBWriteComponent(dbfile, obj, "nmatspec", name, "integer", nmatspec, 1, count); /* Do material species mass fractions */ datatype_str = db_GetDatatypeString(datatype); count[0] = nspecies_mf; - DBWriteComponent(dbfile, obj, "species_mf", name, datatype_str, - species_mf, 1, count); + if (!is_empty) + DBWriteComponent(dbfile, obj, "species_mf", name, datatype_str, species_mf, 1, count); FREE(datatype_str); /* Now do mixed data arrays */ - if (mixlen > 0) { + if (!is_empty && mixlen > 0) { count[0] = mixlen; DBWriteComponent(dbfile, obj, "mix_speclist", name, "integer", mix_speclist, 1, count); @@ -8091,7 +8176,7 @@ /* count how many names we have */ for (i=0; i < nmat; i++) nstrs += nmatspec[i]; - DBStringArrayToStringList(_ms._specnames, nstrs, &tmpstr, &len); + DBStringArrayToStringList((char const * const *)_ms._specnames, nstrs, &tmpstr, &len); llen = (long) len; DBWriteComponent(dbfile, obj, "species_names", name, "char", tmpstr, 1, &llen); FREE(tmpstr); @@ -8107,7 +8192,7 @@ for (i=0; i < nmat; i++) nstrs += nmatspec[i]; } - DBStringArrayToStringList(_ms._speccolors, nstrs, &tmpstr, &len); + DBStringArrayToStringList((char const * const *)_ms._speccolors, nstrs, &tmpstr, &len); llen = (long) len; DBWriteComponent(dbfile, obj, "speccolors", name, "char", tmpstr, 1, &llen); FREE(tmpstr); @@ -8175,8 +8260,8 @@ *--------------------------------------------------------------------*/ #ifdef PDB_WRITE SILO_CALLBACK int -db_pdb_PutMultimesh (DBfile *dbfile, char DB_CONSTARR1 name, int nmesh, - char DB_CONSTARR2 meshnames, int DB_CONSTARR1 meshtypes, +db_pdb_PutMultimesh (DBfile *dbfile, char const *name, int nmesh, + char const * const *meshnames, int const *meshtypes, DBoptlist const *optlist) { int i, len; @@ -8297,7 +8382,7 @@ if (_mm._lgroupings > 0) DBAddIntComponent(obj, "lgroupings", _mm._lgroupings); if ((_mm._lgroupings > 0) && (_mm._groupnames != NULL)) { - DBStringArrayToStringList(_mm._groupnames, + DBStringArrayToStringList((char const * const *)_mm._groupnames, _mm._lgroupings, >mp, &len); count[0] = len; @@ -8367,11 +8452,11 @@ *--------------------------------------------------------------------*/ #ifdef PDB_WRITE SILO_CALLBACK int -db_pdb_PutMultimeshadj (DBfile *_dbfile, char DB_CONSTARR1 name, int nmesh, - int DB_CONSTARR1 meshtypes, int DB_CONSTARR1 nneighbors, - int DB_CONSTARR1 neighbors, int DB_CONSTARR1 back, - int DB_CONSTARR1 lnodelists, int DB_CONSTARR2 nodelists, - int DB_CONSTARR1 lzonelists, int DB_CONSTARR2 zonelists, +db_pdb_PutMultimeshadj (DBfile *_dbfile, char const *name, int nmesh, + int const *meshtypes, int const *nneighbors, + int const *neighbors, int const *back, + int const *lnodelists, int const * const *nodelists, + int const *lzonelists, int const * const *zonelists, DBoptlist const *optlist) { @@ -8670,8 +8755,8 @@ *--------------------------------------------------------------------*/ #ifdef PDB_WRITE SILO_CALLBACK int -db_pdb_PutMultivar (DBfile *dbfile, char *name, int nvars, - char *varnames[], int vartypes[], DBoptlist *optlist) { +db_pdb_PutMultivar (DBfile *dbfile, char const *name, int nvars, + char const * const *varnames, int const *vartypes, DBoptlist const *optlist) { int i, len; long count[3]; @@ -8686,7 +8771,7 @@ /*------------------------------------------------------------- * Build object description from literals and var-id's *-------------------------------------------------------------*/ - obj = DBMakeObject(name, DB_MULTIVAR, 31); + obj = DBMakeObject(name, DB_MULTIVAR, 32); DBAddIntComponent(obj, "nvars", nvars); DBAddIntComponent(obj, "ngroups", _mm._ngroups); DBAddIntComponent(obj, "blockorigin", _mm._blockorigin); @@ -8696,7 +8781,7 @@ if (_mm._region_pnames != NULL) { char *s=0; int len=0; long llen; - DBStringArrayToStringList(_mm._region_pnames, -1, &s, &len); + DBStringArrayToStringList((char const * const *)_mm._region_pnames, -1, &s, &len); llen = len; DBWriteComponent(dbfile, obj, "region_pnames", name, "char", s, 1, &llen); FREE(s); @@ -8799,6 +8884,14 @@ if (_mm._repr_block_idx) DBAddIntComponent(obj, "repr_block_idx", _mm._repr_block_idx); + if (_mm._missing_value != DB_MISSING_VALUE_NOT_SET) + { + if (_mm._missing_value == 0.0) + DBAddDblComponent(obj, "missing_value", DB_MISSING_VALUE_NOT_SET); + else + DBAddDblComponent(obj, "missing_value", _mm._missing_value); + } + /*------------------------------------------------------------- * Write multi-var object to SILO file. *-------------------------------------------------------------*/ @@ -8864,8 +8957,8 @@ *--------------------------------------------------------------------*/ #ifdef PDB_WRITE SILO_CALLBACK int -db_pdb_PutMultimat (DBfile *dbfile, char *name, int nmats, - char *matnames[], DBoptlist *optlist) { +db_pdb_PutMultimat (DBfile *dbfile, char const *name, int nmats, + char const * const *matnames, DBoptlist const *optlist) { int i, len; long count[3]; @@ -8981,7 +9074,7 @@ *-------------------------------------------------------------*/ if (_mm._matnames && _mm._nmatnos > 0) { int len; long llen; char *tmpstr = 0; - DBStringArrayToStringList(_mm._matnames, _mm._nmatnos, + DBStringArrayToStringList((char const * const *)_mm._matnames, _mm._nmatnos, &tmpstr, &len); llen = (long) len; DBWriteComponent(dbfile, obj, "material_names", name, "char", tmpstr, 1, &llen); @@ -8993,7 +9086,7 @@ *-------------------------------------------------------------*/ if (_mm._matcolors && _mm._nmatnos > 0) { int len; long llen; char *tmpstr = 0; - DBStringArrayToStringList(_mm._matcolors, _mm._nmatnos, + DBStringArrayToStringList((char const * const *)_mm._matcolors, _mm._nmatnos, &tmpstr, &len); llen = (long) len; DBWriteComponent(dbfile, obj, "matcolors", name, "char", tmpstr, 1, &llen); @@ -9076,8 +9169,8 @@ *--------------------------------------------------------------------*/ #ifdef PDB_WRITE SILO_CALLBACK int -db_pdb_PutMultimatspecies (DBfile *dbfile, char *name, int nspec, - char *specnames[], DBoptlist *optlist) { +db_pdb_PutMultimatspecies (DBfile *dbfile, char const *name, int nspec, + char const * const *specnames, DBoptlist const *optlist) { int i, len, nstrs; long count[3]; @@ -9170,7 +9263,7 @@ /* count how many names we have */ for (i=0; i < _mm._nmat; i++) nstrs += _mm._nmatspec[i]; - DBStringArrayToStringList(_mm._specnames, nstrs, &tmpstr, &len); + DBStringArrayToStringList((char const * const *)_mm._specnames, nstrs, &tmpstr, &len); llen = (long) len; DBWriteComponent(dbfile, obj, "species_names", name, "char", tmpstr, 1, &llen); FREE(tmpstr); @@ -9185,7 +9278,7 @@ for (i=0; i < _mm._nmat; i++) nstrs += _mm._nmatspec[i]; } - DBStringArrayToStringList(_mm._speccolors, nstrs, &tmpstr, &len); + DBStringArrayToStringList((char const * const *)_mm._speccolors, nstrs, &tmpstr, &len); llen = (long) len; DBWriteComponent(dbfile, obj, "speccolors", name, "char", tmpstr, 1, &llen); FREE(tmpstr); @@ -9283,8 +9376,8 @@ *--------------------------------------------------------------------*/ #ifdef PDB_WRITE SILO_CALLBACK int -db_pdb_PutPointmesh (DBfile *dbfile, char *name, int ndims, DB_DTPTR2 _coords, - int nels, int datatype, DBoptlist *optlist) { +db_pdb_PutPointmesh (DBfile *dbfile, char const *name, int ndims, DBVCP2_t _coords, + int nels, int datatype, DBoptlist const *optlist) { int i; long count[3]; @@ -9293,7 +9386,7 @@ float fmin_extents[3], fmax_extents[3]; double dmin_extents[3], dmax_extents[3]; static char *me = "db_pdb_PutPointmesh"; - DB_DTPTR **coords = (DB_DTPTR**) _coords; + void const * const *coords = (void const * const *) _coords; /*------------------------------------------------------------- * Initialize global data, and process options. @@ -9306,7 +9399,7 @@ *-------------------------------------------------------------*/ datatype_str = db_GetDatatypeString(datatype); count[0] = nels; - for (i = 0; i < ndims; i++) { + for (i = 0; i < ndims && nels; i++) { sprintf(tmp, "coord%d", i); DBWriteComponent(dbfile, obj, tmp, name, datatype_str, coords[i], 1, count); @@ -9318,16 +9411,16 @@ * them out to output file. *-------------------------------------------------------------*/ count[0] = ndims; - if (ndims) { + if (ndims && nels) { switch (datatype) { case DB_FLOAT: switch (ndims) { case 3: - _DBarrminmax(coords[2], nels, &fmin_extents[2], &fmax_extents[2]); + _DBarrminmax((float*)coords[2], nels, &fmin_extents[2], &fmax_extents[2]); case 2: - _DBarrminmax(coords[1], nels, &fmin_extents[1], &fmax_extents[1]); + _DBarrminmax((float*)coords[1], nels, &fmin_extents[1], &fmax_extents[1]); case 1: - _DBarrminmax(coords[0], nels, &fmin_extents[0], &fmax_extents[0]); + _DBarrminmax((float*)coords[0], nels, &fmin_extents[0], &fmax_extents[0]); break; default: return db_perror("ndims", E_BADARGS, me); @@ -9366,7 +9459,7 @@ } } - if (_pm._gnodeno) + if (nels>0 && _pm._gnodeno) { count[0] = nels; if (_pm._llong_gnodeno) @@ -9430,6 +9523,22 @@ if (_pm._mrgtree_name != NULL) DBAddStrComponent(obj, "mrgtree_name", _pm._mrgtree_name); + if (nels>0 && _pm._ghost_node_labels != NULL) + { + count[0] = nels; + DBWriteComponent(dbfile, obj, "ghost_node_labels", name, "char", + _pm._ghost_node_labels, 1, count); + } + + if (nels>0 && _pm._alt_nodenum_vars) + { + int nvars=-1, len; long llen; char *tmpstr = 0; + DBStringArrayToStringList((char const * const *)_pm._alt_nodenum_vars, nvars, &tmpstr, &len); + llen = (long) len; + DBWriteComponent(dbfile, obj, "alt_nodenum_vars", name, "char", tmpstr, 1, &llen); + FREE(tmpstr); + } + /*------------------------------------------------------------- * Write point-mesh object to output file. *-------------------------------------------------------------*/ @@ -9478,42 +9587,45 @@ *--------------------------------------------------------------------*/ #ifdef PDB_WRITE SILO_CALLBACK int -db_pdb_PutPointvar (DBfile *dbfile, char *name, char *meshname, int nvars, - DB_DTPTR2 _vars, int nels, int datatype, - DBoptlist *optlist) { +db_pdb_PutPointvar (DBfile *dbfile, char const *name, char const *meshname, int nvars, + DBVCP2_t _vars, int nels, int datatype, + DBoptlist const *optlist) { int i; long count[3]; DBobject *obj; char *datatype_str; char tmp[1024]; - DB_DTPTR **vars = (DB_DTPTR**) _vars; + void const * const *vars = (void const * const *) _vars; /*------------------------------------------------------------- * Initialize global data, and process options. *-------------------------------------------------------------*/ db_InitPoint(dbfile, optlist, _pm._ndims, nels); - obj = DBMakeObject(name, DB_POINTVAR, 24); + obj = DBMakeObject(name, DB_POINTVAR, nvars+20); /*------------------------------------------------------------- * Write variable arrays. * Set index variables and counters. *-----------------------------------------------------------*/ - datatype_str = db_GetDatatypeString(datatype); - count[0] = nels; - if (nvars == 1) { - DBWriteComponent(dbfile, obj, "_data", name, datatype_str, - vars[0], 1, count); - } - else { - for (i = 0; i < nvars; i++) { - sprintf(tmp, "%d_data", i); - DBWriteComponent(dbfile, obj, tmp, name, datatype_str, - vars[i], 1, count); + if (nels>0 && nvars>0) + { + datatype_str = db_GetDatatypeString(datatype); + count[0] = nels; + if (nvars == 1) { + DBWriteComponent(dbfile, obj, "_data", name, datatype_str, + vars[0], 1, count); + } + else { + for (i = 0; i < nvars; i++) { + sprintf(tmp, "%d_data", i); + DBWriteComponent(dbfile, obj, tmp, name, datatype_str, + vars[i], 1, count); + } } + FREE(datatype_str); } - FREE(datatype_str); /*------------------------------------------------------------- * Build a SILO object definition for a point var. The @@ -9540,7 +9652,7 @@ if (_pm._guihide) DBAddIntComponent(obj, "guihide", _pm._guihide); if (_pm._ascii_labels) - DBAddIntComponent(obj, "ascii_labels", _pm._ascii_labels); + DBAddIntComponent(obj, "ascii_labels", _pm._ascii_labels); /*------------------------------------------------------------- * Process character strings: labels & units for variable. @@ -9554,7 +9666,7 @@ if (_pm._region_pnames != NULL) { char *s=0; int len=0; long llen; - DBStringArrayToStringList(_pm._region_pnames, -1, &s, &len); + DBStringArrayToStringList((char const * const *)_pm._region_pnames, -1, &s, &len); llen = len; DBWriteComponent(dbfile, obj, "region_pnames", name, "char", s, 1, &llen); FREE(s); @@ -9566,6 +9678,14 @@ if (_pm._extensive) DBAddIntComponent(obj, "extensive", _pm._extensive); + if (_pm._missing_value != DB_MISSING_VALUE_NOT_SET) + { + if (_pm._missing_value == 0.0) + DBAddDblComponent(obj, "missing_value", DB_MISSING_VALUE_NOT_SET); + else + DBAddDblComponent(obj, "missing_value", _pm._missing_value); + } + /*------------------------------------------------------------- * Write point-mesh object to output file. *-------------------------------------------------------------*/ @@ -9624,9 +9744,9 @@ #ifdef PDB_WRITE /* ARGSUSED */ SILO_CALLBACK int -db_pdb_PutQuadmesh (DBfile *dbfile, char *name, char *coordnames[], - DB_DTPTR2 _coords, int dims[], int ndims, int datatype, - int coordtype, DBoptlist *optlist) +db_pdb_PutQuadmesh (DBfile *dbfile, char const *name, char const * const *coordnames, + DBVCP2_t _coords, int const *dims, int ndims, int datatype, + int coordtype, DBoptlist const *optlist) { int i; long count[3]; @@ -9634,10 +9754,11 @@ char *datatype_str; DBobject *obj; char tmp[1024]; - DB_DTPTR **coords = (DB_DTPTR**) _coords; + void const * const *coords = (void const * const *) _coords; + int is_empty = 1; /* The following is declared as double for worst case. */ - double min_extents[3], max_extents[3]; + double min_extents[3]={0,0,0}, max_extents[3]={0,0,0}; /*------------------------------------------------------------- * Initialize global data, and process options. @@ -9649,6 +9770,15 @@ * Write coordinate arrays. *-------------------------------------------------------------*/ for (i = 0; i < ndims; i++) + { + if (dims[i] > 0) + { + is_empty = 0; + break; + } + } + + for (i = 0; i < ndims; i++) count[i] = dims[i]; if (coordtype == DB_COLLINEAR) nd = 1; @@ -9656,7 +9786,7 @@ nd = ndims; datatype_str = db_GetDatatypeString(datatype); - for (i = 0; i < ndims; i++) + for (i = 0; (i < ndims) && !is_empty; i++) { if (coordtype == DB_COLLINEAR) count[0] = dims[i]; @@ -9701,7 +9831,7 @@ DBAddIntComponent(obj, "facetype", _qm._facetype); DBAddIntComponent(obj, "major_order", _qm._majororder); DBAddIntComponent(obj, "cycle", _qm._cycle); - DBAddIntComponent(obj, "coord_sys", _qm._coordsys); + DBAddIntComponent(obj, "coord_sys", _qm._coord_sys); DBAddIntComponent(obj, "planar", _qm._planar); DBAddIntComponent(obj, "origin", _qm._origin); @@ -9745,6 +9875,40 @@ if (_qm._mrgtree_name != NULL) DBAddStrComponent(obj, "mrgtree_name", _qm._mrgtree_name); + if (!is_empty && _qm._ghost_node_labels != NULL) + { + for (i = 0; i < ndims; i++) + count[i] = dims[i]; + DBWriteComponent(dbfile, obj, "ghost_node_labels", name, "char", + _qm._ghost_node_labels, ndims, count); + } + + if (!is_empty && _qm._ghost_zone_labels != NULL) + { + for (i = 0; i < ndims; i++) + count[i] = dims[i]-1; + DBWriteComponent(dbfile, obj, "ghost_zone_labels", name, "char", + _qm._ghost_zone_labels, ndims, count); + } + + if (!is_empty && _qm._alt_nodenum_vars) + { + int nvars=-1, len; long llen; char *tmpstr = 0; + DBStringArrayToStringList((char const * const *)_qm._alt_nodenum_vars, nvars, &tmpstr, &len); + llen = (long) len; + DBWriteComponent(dbfile, obj, "alt_nodenum_vars", name, "char", tmpstr, 1, &llen); + FREE(tmpstr); + } + + if (!is_empty && _qm._alt_zonenum_vars) + { + int nvars=-1, len; long llen; char *tmpstr = 0; + DBStringArrayToStringList((char const * const *)_qm._alt_zonenum_vars, nvars, &tmpstr, &len); + llen = (long) len; + DBWriteComponent(dbfile, obj, "alt_zonenum_vars", name, "char", tmpstr, 1, &llen); + FREE(tmpstr); + } + /*------------------------------------------------------------- * Write quad-mesh object to SILO file. *-------------------------------------------------------------*/ @@ -9813,10 +9977,10 @@ *--------------------------------------------------------------------*/ #ifdef PDB_WRITE SILO_CALLBACK int -db_pdb_PutQuadvar (DBfile *_dbfile, char *name, char *meshname, int nvars, - char *varnames[], DB_DTPTR2 _vars, int dims[], int ndims, - DB_DTPTR2 _mixvars, int mixlen, int datatype, int centering, - DBoptlist *optlist) { +db_pdb_PutQuadvar (DBfile *_dbfile, char const *name, char const *meshname, int nvars, + char const * const *varnames, DBVCP2_t _vars, int const *dims, int ndims, + DBVCP2_t _mixvars, int mixlen, int datatype, int centering, + DBoptlist const *optlist) { DBfile_pdb *dbfile = (DBfile_pdb *) _dbfile; int i, nels; @@ -9825,15 +9989,25 @@ static char *me = "db_pdb_PutQuadvar"; DBobject *obj; int maxindex[3] ; - DB_DTPTR **vars = (DB_DTPTR**) _vars; - DB_DTPTR **mixvars = (DB_DTPTR**) _mixvars; + void const * const *vars = (void const * const *) _vars; + void const * const *mixvars = (void const * const *) _mixvars; + int is_empty = 1; + + for (i = 0; i < ndims; i++) + { + if (dims[i] > 0) + { + is_empty = 0; + break; + } + } /*------------------------------------------------------------- * Initialize global data, and process options. *-------------------------------------------------------------*/ db_InitQuad(_dbfile, meshname, optlist, dims, ndims); - obj = DBMakeObject(name, DB_QUADVAR, 30); + obj = DBMakeObject(name, DB_QUADVAR, (1+(mixlen!=0))*nvars + 30); DBAddStrComponent(obj, "meshid", meshname); @@ -9841,7 +10015,7 @@ * Write variable arrays. * Set index variables and counters. *-----------------------------------------------------------*/ - nels = ndims?1:0; + nels = !is_empty?1:0; for (i = 0; i < ndims; i++) { count[i] = dims[i]; nels *= dims[i]; @@ -9905,7 +10079,7 @@ suffix = "data"; datatype_str = db_GetDatatypeString(datatype); - for (i = 0; i < nvars; i++) { + for (i = 0; i < nvars && !is_empty; i++) { db_mkname(dbfile->pdb, varnames[i], suffix, tmp2); if ((ndims > 1 && centering == DB_EDGECENT) || @@ -9921,7 +10095,7 @@ } else { - int k; long n=1; + int k; long n=ndims==0?0:1; for (k = 0; k < ndims; n *= count[k++]); if (n) PJ_write_len(dbfile->pdb, tmp2, datatype_str, vars[i], ndims, count); @@ -9991,7 +10165,7 @@ if (_qm._region_pnames != NULL) { char *s=0; int len=0; long llen; - DBStringArrayToStringList(_qm._region_pnames, -1, &s, &len); + DBStringArrayToStringList((char const * const *)_qm._region_pnames, -1, &s, &len); llen = len; DBWriteComponent(_dbfile, obj, "region_pnames", name, "char", s, 1, &llen); FREE(s); @@ -10004,6 +10178,14 @@ DBAddIntComponent(obj, "extensive", _qm._extensive); + if (_qm._missing_value != DB_MISSING_VALUE_NOT_SET) + { + if (_qm._missing_value == 0.0) + DBAddDblComponent(obj, "missing_value", DB_MISSING_VALUE_NOT_SET); + else + DBAddDblComponent(obj, "missing_value", _qm._missing_value); + } + /*------------------------------------------------------------- * Write quad-var object to output file. *-------------------------------------------------------------*/ @@ -10034,7 +10216,7 @@ int const *typeflags, int const *bndids, void const *coeffs, int lcoeffs, int datatype, double const *extents, char const *zlname, - DBoptlist *optlist) { + DBoptlist const *optlist) { long count[3]; DBobject *obj; @@ -10046,23 +10228,22 @@ *-------------------------------------------------------------*/ strcpy(_csgm._meshname, name); - db_InitCsg(dbfile, (char*) name, optlist); + db_InitCsg(dbfile, name, optlist); obj = DBMakeObject(name, DB_CSGMESH, 34); count[0] = nbounds; - DBWriteComponent(dbfile, obj, "typeflags", name, "integer", - typeflags, 1, count); + if (nbounds) + DBWriteComponent(dbfile, obj, "typeflags", name, "integer", typeflags, 1, count); - if (bndids) - DBWriteComponent(dbfile, obj, "bndids", name, "integer", - bndids, 1, count); + if (nbounds && bndids) + DBWriteComponent(dbfile, obj, "bndids", name, "integer", bndids, 1, count); datatype_str = db_GetDatatypeString(datatype); count[0] = lcoeffs; - DBWriteComponent(dbfile, obj, "coeffs", name, datatype_str, - coeffs, 1, count); + if (nbounds) + DBWriteComponent(dbfile, obj, "coeffs", name, datatype_str, coeffs, 1, count); FREE(datatype_str); if (extents) @@ -10169,9 +10350,9 @@ #ifdef PDB_WRITE SILO_CALLBACK int db_pdb_PutCsgvar (DBfile *_dbfile, char const *name, char const *meshname, - int nvars, char *varnames[], void *vars[], + int nvars, char const * const *varnames, void const * const *vars, int nels, int datatype, int centering, - DBoptlist *optlist) { + DBoptlist const *optlist) { DBfile_pdb *dbfile = (DBfile_pdb *) _dbfile; int i; @@ -10180,9 +10361,9 @@ char *suffix, *datatype_str, tmp1[256], tmp2[256]; static char *me = "db_pdb_PutCsgvar"; - db_InitCsg(_dbfile, (char*) name, optlist); + db_InitCsg(_dbfile, name, optlist); - obj = DBMakeObject(name, DB_CSGVAR, 29); + obj = DBMakeObject(name, DB_CSGVAR, nvars+19); DBAddStrComponent(obj, "meshid", meshname); @@ -10212,7 +10393,7 @@ suffix = "data"; datatype_str = db_GetDatatypeString(datatype); - for (i = 0; i < nvars; i++) { + for (i = 0; i < nvars && nels; i++) { db_mkname(dbfile->pdb, (char*) varnames[i], suffix, tmp2); PJ_write_len(dbfile->pdb, tmp2, datatype_str, vars[i], @@ -10272,7 +10453,7 @@ if (_csgm._region_pnames != NULL) { char *s=0; int len=0; long llen; - DBStringArrayToStringList(_csgm._region_pnames, -1, &s, &len); + DBStringArrayToStringList((char const * const *)_csgm._region_pnames, -1, &s, &len); llen = len; DBWriteComponent(_dbfile, obj, "region_pnames", name, "char", s, 1, &llen); FREE(s); @@ -10284,6 +10465,14 @@ if (_csgm._extensive) DBAddIntComponent(obj, "extensive", _csgm._extensive); + if (_csgm._missing_value != DB_MISSING_VALUE_NOT_SET) + { + if (_csgm._missing_value == 0.0) + DBAddDblComponent(obj, "missing_value", DB_MISSING_VALUE_NOT_SET); + else + DBAddDblComponent(obj, "missing_value", _csgm._missing_value); + } + /*------------------------------------------------------------- * Write ucd-mesh object to output file. *-------------------------------------------------------------*/ @@ -10313,7 +10502,7 @@ int const *typeflags, int const *leftids, int const *rightids, void const *xforms, int lxforms, int datatype, - int nzones, int const *zonelist, DBoptlist *optlist) { + int nzones, int const *zonelist, DBoptlist const *optlist) { long count[1]; DBobject *obj; @@ -10346,27 +10535,33 @@ { char *datatype_str = db_GetDatatypeString(datatype); count[0] = lxforms; - DBWriteComponent(dbfile, obj, "xforms", name, datatype_str, - xforms, 1, count); + DBWriteComponent(dbfile, obj, "xforms", name, datatype_str, xforms, 1, count); } if (_csgzl._regnames) { int len; char *tmp; - DBStringArrayToStringList(_csgzl._regnames, nregs, &tmp, &len); + DBStringArrayToStringList((char const * const *)_csgzl._regnames, nregs, &tmp, &len); count[0] = len; - DBWriteComponent(dbfile, obj, "regnames", name, "char", - tmp, 1, count); + DBWriteComponent(dbfile, obj, "regnames", name, "char", tmp, 1, count); FREE(tmp); } if (_csgzl._zonenames) { int len; char *tmp; - DBStringArrayToStringList(_csgzl._zonenames, nzones, &tmp, &len); + DBStringArrayToStringList((char const * const *)_csgzl._zonenames, nzones, &tmp, &len); + count[0] = len; + DBWriteComponent(dbfile, obj, "zonenames", name, "char", tmp, 1, count); + FREE(tmp); + } + + if (_csgzl._alt_zonenum_vars) + { + int nvars=-1, len; char *tmp; + DBStringArrayToStringList((char const * const *)_csgzl._alt_zonenum_vars, nvars, &tmp, &len); count[0] = len; - DBWriteComponent(dbfile, obj, "zonenames", name, "char", - tmp, 1, count); + DBWriteComponent(dbfile, obj, "alt_zonenum_vars", name, "char", tmp, 1, count); FREE(tmp); } @@ -10430,19 +10625,19 @@ #ifdef PDB_WRITE /* ARGSUSED */ SILO_CALLBACK int -db_pdb_PutUcdmesh (DBfile *dbfile, char *name, int ndims, char *coordnames[], - DB_DTPTR2 _coords, int nnodes, int nzones, char *zlname, - char *flname, int datatype, DBoptlist *optlist) { +db_pdb_PutUcdmesh (DBfile *dbfile, char const *name, int ndims, char const * const *coordnames, + DBVCP2_t _coords, int nnodes, int nzones, char const *zlname, + char const *flname, int datatype, DBoptlist const *optlist) { int i; long count[3]; DBobject *obj; char *datatype_str; char tmp[256]; - DB_DTPTR **coords = (DB_DTPTR**) _coords; + void const * const *coords = (void const * const *) _coords; /* Following is declared as double for worst case */ - double min_extents[3], max_extents[3]; + double min_extents[3]={0,0,0}, max_extents[3]={0,0,0}; /*------------------------------------------------------------- * Initialize global data, and process options. @@ -10462,7 +10657,7 @@ datatype_str = db_GetDatatypeString(datatype); count[0] = nnodes; - for (i = 0; i < ndims; i++) { + for (i = 0; (i < ndims) && (nnodes > 0); i++) { sprintf(tmp, "coord%d", i); @@ -10506,7 +10701,7 @@ DBAddIntComponent(obj, "nzones", nzones); DBAddIntComponent(obj, "facetype", _um._facetype); DBAddIntComponent(obj, "cycle", _um._cycle); - DBAddIntComponent(obj, "coord_sys", _um._coordsys); + DBAddIntComponent(obj, "coord_sys", _um._coord_sys); if (_um._topo_dim > 0) DBAddIntComponent(obj, "topo_dim", _um._topo_dim); DBAddIntComponent(obj, "planar", _um._planar); @@ -10573,6 +10768,22 @@ if (_um._disjoint_mode) DBAddIntComponent(obj, "disjoint_mode", _um._disjoint_mode); + if (nnodes>0 && _um._ghost_node_labels != NULL) + { + count[0] = nnodes; + DBWriteComponent(dbfile, obj, "ghost_node_labels", name, "char", + _um._ghost_node_labels, 1, count); + } + + if (nnodes>0 && _um._alt_nodenum_vars) + { + int nvars=-1, len; long llen; char *tmpstr = 0; + DBStringArrayToStringList((char const * const *)_um._alt_nodenum_vars, nvars, &tmpstr, &len); + llen = (long) len; + DBWriteComponent(dbfile, obj, "alt_nodenum_vars", name, "char", tmpstr, 1, &llen); + FREE(tmpstr); + } + /*------------------------------------------------------------- * Write ucd-mesh object to output file. *-------------------------------------------------------------*/ @@ -10603,9 +10814,9 @@ *--------------------------------------------------------------------*/ #ifdef PDB_WRITE SILO_CALLBACK int -db_pdb_PutUcdsubmesh (DBfile *dbfile, char *name, char *parentmesh, - int nzones, char *zlname, char *flname, - DBoptlist *optlist) { +db_pdb_PutUcdsubmesh (DBfile *dbfile, char const *name, char const *parentmesh, + int nzones, char const *zlname, char const *flname, + DBoptlist const *optlist) { int i; DBobject *obj; @@ -10618,11 +10829,11 @@ * Of course this had better succeed... *-------------------------------------------------------------*/ - Pndims = DBGetComponent(dbfile,parentmesh,"ndims"); + Pndims = (int *)DBGetComponent(dbfile,parentmesh,"ndims"); ndims = *Pndims; - Pnnodes = DBGetComponent(dbfile,parentmesh,"nnodes"); + Pnnodes = (int *)DBGetComponent(dbfile,parentmesh,"nnodes"); nnodes = *Pnnodes; - Pdatatype = DBGetComponent(dbfile,parentmesh,"datatype"); + Pdatatype = (int *)DBGetComponent(dbfile,parentmesh,"datatype"); datatype = *Pdatatype; /*------------------------------------------------------------- @@ -10689,7 +10900,7 @@ DBAddIntComponent(obj, "nzones", nzones); DBAddIntComponent(obj, "facetype", _um._facetype); DBAddIntComponent(obj, "cycle", _um._cycle); - DBAddIntComponent(obj, "coord_sys", _um._coordsys); + DBAddIntComponent(obj, "coord_sys", _um._coord_sys); if (_um._topo_dim > 0) DBAddIntComponent(obj, "topo_dim", _um._topo_dim); DBAddIntComponent(obj, "planar", _um._planar); @@ -10804,10 +11015,10 @@ *--------------------------------------------------------------------*/ #ifdef PDB_WRITE SILO_CALLBACK int -db_pdb_PutUcdvar (DBfile *_dbfile, char *name, char *meshname, int nvars, - char *varnames[], DB_DTPTR2 _vars, int nels, DB_DTPTR2 _mixvars, +db_pdb_PutUcdvar (DBfile *_dbfile, char const *name, char const *meshname, int nvars, + char const * const *varnames, DBVCP2_t _vars, int nels, DBVCP2_t _mixvars, int mixlen, int datatype, int centering, - DBoptlist *optlist) { + DBoptlist const *optlist) { DBfile_pdb *dbfile = (DBfile_pdb *) _dbfile; int i; @@ -10815,8 +11026,8 @@ DBobject *obj; char *suffix, *datatype_str, tmp1[256], tmp2[256]; static char *me = "db_pdb_PutUcdvar"; - DB_DTPTR **vars = (DB_DTPTR**) _vars; - DB_DTPTR **mixvars = (DB_DTPTR**) _mixvars; + void const * const *vars = (void const * const *) _vars; + void const * const *mixvars = (void const * const *) _mixvars; /*------------------------------------------------------------- * Initialize global data, and process options. @@ -10828,7 +11039,7 @@ db_InitUcd(_dbfile, meshname, optlist, ndims, nnodes, nzones); #endif - obj = DBMakeObject(name, DB_UCDVAR, 29); + obj = DBMakeObject(name, DB_UCDVAR, (1+(mixlen!=0)) * nvars + 22); DBAddStrComponent(obj, "meshid", meshname); @@ -10848,7 +11059,7 @@ suffix = "data"; datatype_str = db_GetDatatypeString(datatype); - for (i = 0; i < nvars; i++) { + for (i = 0; i < nvars && nels; i++) { db_mkname(dbfile->pdb, varnames[i], suffix, tmp2); PJ_write_len(dbfile->pdb, tmp2, datatype_str, vars[i], @@ -10923,7 +11134,7 @@ if (_um._region_pnames != NULL) { char *s=0; int len=0; long llen; - DBStringArrayToStringList(_um._region_pnames, -1, &s, &len); + DBStringArrayToStringList((char const * const *)_um._region_pnames, -1, &s, &len); llen = len; DBWriteComponent(_dbfile, obj, "region_pnames", name, "char", s, 1, &llen); FREE(s); @@ -10935,6 +11146,14 @@ if (_um._extensive) DBAddIntComponent(obj, "extensive", _um._extensive); + if (_um._missing_value != DB_MISSING_VALUE_NOT_SET) + { + if (_um._missing_value == 0.0) + DBAddDblComponent(obj, "missing_value", DB_MISSING_VALUE_NOT_SET); + else + DBAddDblComponent(obj, "missing_value", _um._missing_value); + } + /*------------------------------------------------------------- * Write ucd-mesh object to output file. *-------------------------------------------------------------*/ @@ -10965,9 +11184,9 @@ *--------------------------------------------------------------------*/ #ifdef PDB_WRITE SILO_CALLBACK int -db_pdb_PutZonelist (DBfile *dbfile, char *name, int nzones, int ndims, - int nodelist[], int lnodelist, int origin, int shapesize[], - int shapecnt[], int nshapes) { +db_pdb_PutZonelist (DBfile *dbfile, char const *name, int nzones, int ndims, + int const *nodelist, int lnodelist, int origin, int const *shapesize, + int const *shapecnt, int nshapes) { long count[5]; DBobject *obj; @@ -11035,11 +11254,11 @@ *--------------------------------------------------------------------*/ #ifdef PDB_WRITE SILO_CALLBACK int -db_pdb_PutZonelist2 (DBfile *dbfile, char *name, int nzones, int ndims, - int nodelist[], int lnodelist, int origin, - int lo_offset, int hi_offset, int shapetype[], - int shapesize[], int shapecnt[], int nshapes, - DBoptlist *optlist) { +db_pdb_PutZonelist2 (DBfile *dbfile, char const *name, int nzones, int ndims, + int const *nodelist, int lnodelist, int origin, + int lo_offset, int hi_offset, int const *shapetype, + int const *shapesize, int const *shapecnt, int nshapes, + DBoptlist const *optlist) { long count[5]; DBobject *obj; @@ -11078,7 +11297,7 @@ DBWriteComponent(dbfile, obj, "shapetype", name, "integer", shapetype, 1, count); - if (_uzl._gzoneno) + if (nzones>0 && _uzl._gzoneno) { count[0] = nzones; if (_uzl._llong_gzoneno) @@ -11089,6 +11308,22 @@ _uzl._gzoneno, 1, count); } + if (nzones>0 && _uzl._ghost_zone_labels) + { + count[0] = nzones; + DBWriteComponent(dbfile, obj, "ghost_zone_labels", name, "char", + _uzl._ghost_zone_labels, 1, count); + } + + if (nzones>0 && _uzl._alt_zonenum_vars) + { + int nvars=-1, len; long llen; char *tmpstr = 0; + DBStringArrayToStringList((char const * const *)_uzl._alt_zonenum_vars, nvars, &tmpstr, &len); + llen = (long) len; + DBWriteComponent(dbfile, obj, "alt_zonenum_vars", name, "char", tmpstr, 1, &llen); + FREE(tmpstr); + } + /*------------------------------------------------------------- * Write object to output file. *-------------------------------------------------------------*/ @@ -11128,11 +11363,11 @@ *--------------------------------------------------------------------*/ #ifdef PDB_WRITE SILO_CALLBACK int -db_pdb_PutPHZonelist (DBfile *dbfile, char *name, - int nfaces, int *nodecnt, int lnodelist, int *nodelist, char *extface, - int nzones, int *facecnt, int lfacelist, int *facelist, +db_pdb_PutPHZonelist (DBfile *dbfile, char const *name, + int nfaces, int const *nodecnt, int lnodelist, int const *nodelist, char const *extface, + int nzones, int const *facecnt, int lfacelist, int const *facelist, int origin, int lo_offset, int hi_offset, - DBoptlist *optlist) { + DBoptlist const *optlist) { long count[1]; DBobject *obj; @@ -11190,7 +11425,7 @@ extface, 1, count); } - if (_phzl._gzoneno) + if (nzones>0 && _phzl._gzoneno) { count[0] = nzones; if (_phzl._llong_gzoneno) @@ -11201,6 +11436,22 @@ _phzl._gzoneno, 1, count); } + if (nzones>0 && _phzl._ghost_zone_labels) + { + count[0] = nzones; + DBWriteComponent(dbfile, obj, "ghost_zone_labels", name, "char", + _phzl._ghost_zone_labels, 1, count); + } + + if (nzones>0 && _phzl._alt_zonenum_vars) + { + int nvars=-1, len; long llen; char *tmpstr = 0; + DBStringArrayToStringList((char const * const *)_phzl._alt_zonenum_vars, nvars, &tmpstr, &len); + llen = (long) len; + DBWriteComponent(dbfile, obj, "alt_zonenum_vars", name, "char", tmpstr, 1, &llen); + FREE(tmpstr); + } + /*------------------------------------------------------------- * Write object to output file. *-------------------------------------------------------------*/ @@ -11232,7 +11483,7 @@ /* ARGSUSED */ SILO_CALLBACK int db_pdb_PutMrgtree(DBfile *dbfile, char const *name, - char const *mesh_name, DBmrgtree *tree, DBoptlist *optlist) + char const *mesh_name, DBmrgtree const *tree, DBoptlist const *optlist) { int i, j, n, len, pass, num_nodes = tree->num_nodes; int tot_segs, tot_children; @@ -11253,7 +11504,7 @@ ltree = (DBmrgtnode **) malloc(num_nodes * sizeof(DBmrgtnode*)); /* walk tree to populate the linearized list of nodes ptrs */ - DBWalkMrgtree(tree, DBLinearizeMrgtree, ltree, DB_POSTORDER); + DBWalkMrgtree(tree, (DBmrgwalkcb) DBLinearizeMrgtree, ltree, DB_POSTORDER); /* form an array of the integer, scalar data at each node */ intArray = (int *) malloc(num_nodes * sizeof(int) * 6); @@ -11277,7 +11528,7 @@ /* output all the node names as one long dataset */ s = 0; - DBStringArrayToStringList(strArray, num_nodes, &s, &len); + DBStringArrayToStringList((char const * const *)strArray, num_nodes, &s, &len); count = len; DBWriteComponent(dbfile, obj, "name", name, "char", s, 1, &count); FREE(s); @@ -11319,7 +11570,7 @@ if (n > 0) { s = 0; - DBStringArrayToStringList(strArray, n, &s, &len); + DBStringArrayToStringList((char const * const *)strArray, n, &s, &len); count = len; DBWriteComponent(dbfile, obj, "names", name, "char", s, 1, &count); FREE(s); @@ -11332,7 +11583,7 @@ strArray[i] = ltree[i]->maps_name; s = 0; len = 0; - DBStringArrayToStringList(strArray, num_nodes, &s, &len); + DBStringArrayToStringList((char const * const *)strArray, num_nodes, &s, &len); count = len; DBWriteComponent(dbfile, obj, "maps_name", name, "char", s, 1, &count); FREE(s); @@ -11377,21 +11628,25 @@ tot_children = 0; for (i = 0; i < num_nodes; i++) tot_children += ltree[i]->num_children; - count = tot_children; - intArray = (int *) malloc(tot_children * sizeof(int)); - n = 0; - for (i = 0; i < num_nodes; i++) - for (j = 0; j < ltree[i]->num_children; j++) - intArray[n++] = ltree[i]->children[j]->walk_order; - DBWriteComponent(dbfile, obj, "children", name, "integer", intArray, 1, &count); - FREE(intArray); + if (tot_children) + { + count = tot_children; + intArray = (int *) malloc(tot_children * sizeof(int)); + n = 0; + for (i = 0; i < num_nodes; i++) + for (j = 0; j < ltree[i]->num_children; j++) + intArray[n++] = ltree[i]->children[j]->walk_order; + DBWriteComponent(dbfile, obj, "children", name, "integer", intArray, 1, &count); + FREE(intArray); + } + FREE(ltree); if (_mrgt._mrgvar_onames) { s = 0; len = 0; - DBStringArrayToStringList(_mrgt._mrgvar_onames, -1, &s, &len); + DBStringArrayToStringList((char const * const *)_mrgt._mrgvar_onames, -1, &s, &len); count = len; DBWriteComponent(dbfile, obj, "mrgvar_onames", name, "char", s, 1, &count); FREE(s); @@ -11401,7 +11656,7 @@ { s = 0; len = 0; - DBStringArrayToStringList(_mrgt._mrgvar_rnames, -1, &s, &len); + DBStringArrayToStringList((char const * const *)_mrgt._mrgvar_rnames, -1, &s, &len); count = len; DBWriteComponent(dbfile, obj, "mrgvar_rnames", name, "char", s, 1, &count); FREE(s); @@ -11442,9 +11697,9 @@ /* ARGSUSED */ SILO_CALLBACK int db_pdb_PutGroupelmap(DBfile *dbfile, char const *name, - int num_segments, int *groupel_types, int *segment_lengths, - int *segment_ids, int **segment_data, void **segment_fracs, - int fracs_data_type, DBoptlist *opts) + int num_segments, int const *groupel_types, int const *segment_lengths, + int const *segment_ids, int const * const *segment_data, void const * const *segment_fracs, + int fracs_data_type, DBoptlist const *opts) { int i, j, tot_len; int *intArray; @@ -11473,15 +11728,18 @@ tot_len = 0; for (i = 0; i < num_segments; i++) tot_len += segment_lengths[i]; - intArray = (int *) malloc(tot_len * sizeof(int)); - tot_len = 0; - for (i = 0; i < num_segments; i++) - for (j = 0; j < segment_lengths[i]; j++) - intArray[tot_len++] = segment_data[i][j]; - count = tot_len; - DBWriteComponent(dbfile, obj, "segment_data", name, "integer", - intArray, 1, &count); - FREE(intArray); + if (tot_len) + { + intArray = (int *) malloc(tot_len * sizeof(int)); + tot_len = 0; + for (i = 0; i < num_segments; i++) + for (j = 0; j < segment_lengths[i]; j++) + intArray[tot_len++] = segment_data[i][j]; + count = tot_len; + DBWriteComponent(dbfile, obj, "segment_data", name, "integer", + intArray, 1, &count); + FREE(intArray); + } /* write out fractional data if we have it */ if (segment_fracs) @@ -11504,35 +11762,38 @@ FREE(intArray); /* build and write out fractional data array */ - fracsArray = (void *) malloc(tot_len * ((fracs_data_type==DB_FLOAT)?sizeof(float):sizeof(double))); - tot_len = 0; - for (i = 0; i < num_segments; i++) + if (tot_len) { - if (segment_fracs[i] == 0) - continue; - - for (j = 0; j < segment_lengths[i]; j++) + fracsArray = (void *) malloc(tot_len * ((fracs_data_type==DB_FLOAT)?sizeof(float):sizeof(double))); + tot_len = 0; + for (i = 0; i < num_segments; i++) { - if (fracs_data_type == DB_FLOAT) - { - float *pfa = (float *) fracsArray; - float *psf = (float *) segment_fracs[i]; - pfa[tot_len++] = psf[j]; - } - else + if (segment_fracs[i] == 0) + continue; + + for (j = 0; j < segment_lengths[i]; j++) { - double *pfa = (double *) fracsArray; - double *psf = (double *) segment_fracs[i]; - pfa[tot_len++] = psf[j]; + if (fracs_data_type == DB_FLOAT) + { + float *pfa = (float *) fracsArray; + float *psf = (float *) segment_fracs[i]; + pfa[tot_len++] = psf[j]; + } + else + { + double *pfa = (double *) fracsArray; + double *psf = (double *) segment_fracs[i]; + pfa[tot_len++] = psf[j]; + } } } + count = tot_len; + datatype_str = db_GetDatatypeString(fracs_data_type); + DBWriteComponent(dbfile, obj, "segment_fracs", name, datatype_str, + fracsArray, 1, &count); + FREE(fracsArray); + FREE(datatype_str); } - count = tot_len; - datatype_str = db_GetDatatypeString(fracs_data_type); - DBWriteComponent(dbfile, obj, "segment_fracs", name, datatype_str, - fracsArray, 1, &count); - FREE(fracsArray); - FREE(datatype_str); } /*------------------------------------------------------------- @@ -11561,9 +11822,9 @@ #ifdef PDB_WRITE SILO_CALLBACK int db_pdb_PutMrgvar(DBfile *_dbfile, char const *name, char const *mrgt_name, - int ncomps, char **compnames, - int nregns, char **reg_pnames, - int datatype, void **data, DBoptlist *optlist) + int ncomps, char const * const *compnames, + int nregns, char const * const *reg_pnames, + int datatype, void const * const *data, DBoptlist const *optlist) { DBfile_pdb *dbfile = (DBfile_pdb *) _dbfile; int i, nstrs; @@ -11610,7 +11871,7 @@ if (compnames) { - DBStringArrayToStringList(compnames, ncomps, &s, &len); + DBStringArrayToStringList((char const * const *)compnames, ncomps, &s, &len); llen = len; DBWriteComponent(_dbfile, obj, "compnames", name, "char", s, 1, &llen); FREE(s); @@ -11619,7 +11880,7 @@ nstrs = nregns; if (strchr(reg_pnames[0], '%') != 0) nstrs = 1; - DBStringArrayToStringList(reg_pnames, nstrs, &s, &len); + DBStringArrayToStringList((char const * const *)reg_pnames, nstrs, &s, &len); llen = len; DBWriteComponent(_dbfile, obj, "reg_pnames", name, "char", s, 1, &llen); FREE(s); @@ -11707,7 +11968,7 @@ *--------------------------------------------------------------------*/ #ifdef PDB_WRITE PRIVATE int -db_InitCsg(DBfile *_dbfile, char *meshname, DBoptlist *optlist) { +db_InitCsg(DBfile *_dbfile, char const *meshname, DBoptlist const *optlist) { DBfile_pdb *dbfile = (DBfile_pdb *) _dbfile; long count[3]; @@ -11769,7 +12030,7 @@ *--------------------------------------------------------------------*/ #ifdef PDB_WRITE PRIVATE int -db_InitPoint (DBfile *_dbfile, DBoptlist *optlist, int ndims, int nels) { +db_InitPoint (DBfile *_dbfile, DBoptlist const *optlist, int ndims, int nels) { DBfile_pdb *dbfile = (DBfile_pdb *) _dbfile; long count[3]; @@ -11856,11 +12117,11 @@ *--------------------------------------------------------------------*/ #ifdef PDB_WRITE PRIVATE int -db_InitQuad (DBfile *_dbfile, char *meshname, DBoptlist *optlist, - int dims[], int ndims) { +db_InitQuad (DBfile *_dbfile, char const *meshname, DBoptlist const *optlist, + int const *dims, int ndims) { DBfile_pdb *dbfile = (DBfile_pdb *) _dbfile; - int i; + int i, is_empty = 1; int nzones, nnodes; long count[3]; float a[3]; @@ -11875,6 +12136,8 @@ for (i = 0; i < ndims; i++) { nzones *= (dims[i] - 1); nnodes *= dims[i]; + if (dims[i] > 0) + is_empty = 0; } /*-------------------------------------------------- @@ -11928,23 +12191,16 @@ count[0] = ndims; /* File name contained within meshname */ - p = strchr(meshname, ':'); - if (p == NULL && count[0]) { + p = (char *)strchr(meshname, ':'); + if (p == NULL) { PJ_write_len(dbfile->pdb, _qm._nm_dims, "integer", dims, 1, count); - PJ_write_len(dbfile->pdb, _qm._nm_zones, "integer", _qm._zones, - 1, count); - PJ_write_len(dbfile->pdb, _qm._nm_maxindex_n, "integer", - _qm._maxindex_n, 1, count); - PJ_write_len(dbfile->pdb, _qm._nm_maxindex_z, "integer", - _qm._maxindex_z, 1, count); - PJ_write_len(dbfile->pdb, _qm._nm_minindex, "integer", - _qm._minindex, 1, count); - PJ_write_len(dbfile->pdb, _qm._nm_baseindex, "integer", - _qm._baseindex, 1, count); - + PJ_write_len(dbfile->pdb, _qm._nm_zones, "integer", _qm._zones, 1, count); + PJ_write_len(dbfile->pdb, _qm._nm_maxindex_n, "integer", _qm._maxindex_n, 1, count); + PJ_write_len(dbfile->pdb, _qm._nm_maxindex_z, "integer", _qm._maxindex_z, 1, count); + PJ_write_len(dbfile->pdb, _qm._nm_minindex, "integer", _qm._minindex, 1, count); + PJ_write_len(dbfile->pdb, _qm._nm_baseindex, "integer", _qm._baseindex, 1, count); a[0] = a[1] = a[2] = 0.5; PJ_write_len(dbfile->pdb, _qm._nm_alignz, "float", a, 1, count); - a[0] = a[1] = a[2] = 0.0; PJ_write_len(dbfile->pdb, _qm._nm_alignn, "float", a, 1, count); } @@ -11993,7 +12249,7 @@ *--------------------------------------------------------------------*/ #ifdef PDB_WRITE PRIVATE int -db_InitUcd (DBfile *_dbfile, char *meshname, DBoptlist *optlist, +db_InitUcd (DBfile *_dbfile, char const *meshname, DBoptlist const *optlist, int ndims, int nnodes, int nzones) { DBfile_pdb *dbfile = (DBfile_pdb *) _dbfile; @@ -12042,7 +12298,7 @@ * there is possibily another mesh that may be pointing to, * so we'll use that meshes discriptions. *-----------------------------------------------------*/ - p = strchr(meshname, ':'); + p = (char *)strchr(meshname, ':'); if (p == NULL && count[0]) { a[0] = a[1] = a[2] = 0.5; PJ_write_len(dbfile->pdb, _um._nm_alignz, "float", a, 1, count); @@ -12090,7 +12346,7 @@ #ifdef PDB_WRITE /* ARGSUSED */ PRIVATE int -db_InitZonelist (DBfile *_dbfile, DBoptlist *optlist) +db_InitZonelist (DBfile *_dbfile, DBoptlist const *optlist) { /*-------------------------------------------------- * Process the given option list (this function @@ -12120,7 +12376,7 @@ #ifdef PDB_WRITE /* ARGSUSED */ PRIVATE int -db_InitPHZonelist (DBfile *_dbfile, DBoptlist *optlist) +db_InitPHZonelist (DBfile *_dbfile, DBoptlist const *optlist) { /*-------------------------------------------------- * Process the given option list (this function @@ -12149,7 +12405,7 @@ *--------------------------------------------------------------------*/ #ifdef PDB_WRITE PRIVATE void -db_build_shared_names_csgmesh(DBfile *_dbfile, char *meshname) { +db_build_shared_names_csgmesh(DBfile *_dbfile, char const *meshname) { DBfile_pdb *dbfile = (DBfile_pdb *) _dbfile; @@ -12186,7 +12442,7 @@ *--------------------------------------------------------------------*/ #ifdef PDB_WRITE PRIVATE void -db_build_shared_names_quadmesh (DBfile *_dbfile, char *meshname) { +db_build_shared_names_quadmesh (DBfile *_dbfile, char const *meshname) { DBfile_pdb *dbfile = (DBfile_pdb *) _dbfile; @@ -12250,7 +12506,7 @@ *--------------------------------------------------------------------*/ #ifdef PDB_WRITE PRIVATE void -db_build_shared_names_ucdmesh (DBfile *_dbfile, char *meshname) { +db_build_shared_names_ucdmesh (DBfile *_dbfile, char const *meshname) { DBfile_pdb *dbfile = (DBfile_pdb *) _dbfile; @@ -12285,7 +12541,7 @@ *--------------------------------------------------------------------*/ #ifdef PDB_WRITE PRIVATE void -db_mkname (PDBfile *pdb, char *name, char *suffix, char *out) +db_mkname (PDBfile *pdb, char const *name, char const *suffix, char *out) { char *cwd; @@ -12398,7 +12654,7 @@ *-------------------------------------------------------------------------*/ #ifdef PDB_WRITE PRIVATE void -db_InitCurve (DBoptlist *opts) { +db_InitCurve (DBoptlist const * const opts) { db_ResetGlobalData_Curve () ; db_ProcessOptlist (DB_CURVE, opts) ; @@ -12420,7 +12676,7 @@ *-------------------------------------------------------------------------*/ #ifdef PDB_WRITE PRIVATE void -db_InitDefvars (DBoptlist *opts) { +db_InitDefvars (DBoptlist const *opts) { db_ResetGlobalData_Defvars () ; db_ProcessOptlist (DB_DEFVARS, opts) ; diff -Nru silo-llnl-4.10.2/src/pdb_drv/silo_pdb_private.h silo-llnl-4.10.2.real/src/pdb_drv/silo_pdb_private.h --- silo-llnl-4.10.2/src/pdb_drv/silo_pdb_private.h 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/src/pdb_drv/silo_pdb_private.h 2018-02-15 17:25:43.000000000 +0000 @@ -95,7 +95,7 @@ } PJdir; typedef struct { - char *name[80]; /* Component name */ + char const *name[80]; /* Component name */ void *ptr[80]; /* Address of component value */ int type[80]; /* Datatype of component */ unsigned char alloced[80]; /* Sentinel: 1 == space already alloc'd */ @@ -104,166 +104,217 @@ #ifndef SILO_NO_CALLBACKS SILO_CALLBACK int db_pdb_close (DBfile *); -SILO_CALLBACK int db_pdb_InqVarExists (DBfile *, char *); -SILO_CALLBACK void *db_pdb_GetComponent (DBfile *, char *, char *); -SILO_CALLBACK int db_pdb_GetComponentType (DBfile *, char *, char *); -SILO_CALLBACK void *db_pdb_GetAtt (DBfile *, char *, char *); +SILO_CALLBACK int db_pdb_InqVarExists (DBfile *, char const *); +SILO_CALLBACK void *db_pdb_GetComponent (DBfile *, char const *, char const *); +SILO_CALLBACK int db_pdb_GetComponentType (DBfile *, char const *, char const *); SILO_CALLBACK int db_pdb_GetDir (DBfile *, char *); -SILO_CALLBACK DBobject *db_pdb_GetObject (DBfile*, char*); -SILO_CALLBACK DBcompoundarray *db_pdb_GetCompoundarray (DBfile *, char *); -SILO_CALLBACK DBcurve *db_pdb_GetCurve (DBfile *, char *); +SILO_CALLBACK DBobject *db_pdb_GetObject (DBfile*, char const *); +SILO_CALLBACK DBcompoundarray *db_pdb_GetCompoundarray (DBfile *, char const *); +SILO_CALLBACK DBcurve *db_pdb_GetCurve (DBfile *, char const *); SILO_CALLBACK DBdefvars *db_pdb_GetDefvars (DBfile *, char const *); -SILO_CALLBACK DBmaterial *db_pdb_GetMaterial (DBfile *, char *); -SILO_CALLBACK DBmatspecies *db_pdb_GetMatspecies (DBfile *, char *); -SILO_CALLBACK DBmultimesh *db_pdb_GetMultimesh (DBfile *, char *); +SILO_CALLBACK DBmaterial *db_pdb_GetMaterial (DBfile *, char const *); +SILO_CALLBACK DBmatspecies *db_pdb_GetMatspecies (DBfile *, char const *); +SILO_CALLBACK DBmultimesh *db_pdb_GetMultimesh (DBfile *, char const *); SILO_CALLBACK DBmultimeshadj *db_pdb_GetMultimeshadj (DBfile *, char const *, int, int const *); -SILO_CALLBACK DBmultivar *db_pdb_GetMultivar (DBfile *, char *); -SILO_CALLBACK DBmultimat *db_pdb_GetMultimat (DBfile *, char *); -SILO_CALLBACK DBmultimatspecies *db_pdb_GetMultimatspecies (DBfile *, char *); -SILO_CALLBACK DBpointmesh *db_pdb_GetPointmesh (DBfile *, char *); -SILO_CALLBACK DBmeshvar *db_pdb_GetPointvar (DBfile *, char *); -SILO_CALLBACK DBquadmesh *db_pdb_GetQuadmesh (DBfile *, char *); -SILO_CALLBACK DBquadvar *db_pdb_GetQuadvar (DBfile *, char *); -SILO_CALLBACK DBucdmesh *db_pdb_GetUcdmesh (DBfile *, char *); -SILO_CALLBACK DBucdvar *db_pdb_GetUcdvar (DBfile *, char *); +SILO_CALLBACK DBmultivar *db_pdb_GetMultivar (DBfile *, char const *); +SILO_CALLBACK DBmultimat *db_pdb_GetMultimat (DBfile *, char const *); +SILO_CALLBACK DBmultimatspecies *db_pdb_GetMultimatspecies (DBfile *, char const *); +SILO_CALLBACK DBpointmesh *db_pdb_GetPointmesh (DBfile *, char const *); +SILO_CALLBACK DBmeshvar *db_pdb_GetPointvar (DBfile *, char const *); +SILO_CALLBACK DBquadmesh *db_pdb_GetQuadmesh (DBfile *, char const *); +SILO_CALLBACK DBquadvar *db_pdb_GetQuadvar (DBfile *, char const *); +SILO_CALLBACK DBucdmesh *db_pdb_GetUcdmesh (DBfile *, char const *); +SILO_CALLBACK DBucdvar *db_pdb_GetUcdvar (DBfile *, char const *); SILO_CALLBACK DBcsgmesh *db_pdb_GetCsgmesh (DBfile *, char const *); SILO_CALLBACK DBcsgvar *db_pdb_GetCsgvar (DBfile *, char const *); -SILO_CALLBACK DBfacelist *db_pdb_GetFacelist(DBfile*, char*); -SILO_CALLBACK DBzonelist *db_pdb_GetZonelist(DBfile*, char*); -SILO_CALLBACK DBphzonelist *db_pdb_GetPHZonelist(DBfile*, char*); -SILO_CALLBACK DBcsgzonelist *db_pdb_GetCSGZonelist(DBfile*, char const*); +SILO_CALLBACK DBfacelist *db_pdb_GetFacelist(DBfile*, char const *); +SILO_CALLBACK DBzonelist *db_pdb_GetZonelist(DBfile*, char const *); +SILO_CALLBACK DBphzonelist *db_pdb_GetPHZonelist(DBfile*, char const *); +SILO_CALLBACK DBcsgzonelist *db_pdb_GetCSGZonelist(DBfile*, char const *); SILO_CALLBACK DBmrgtree *db_pdb_GetMrgtree(DBfile *_dbfile, char const *name); SILO_CALLBACK DBmrgvar *db_pdb_GetMrgvar(DBfile *dbfile, char const *name); SILO_CALLBACK DBgroupelmap *db_pdb_GetGroupelmap(DBfile *dbfile, char const *name); -SILO_CALLBACK void *db_pdb_GetVar (DBfile *, char *); -SILO_CALLBACK int db_pdb_GetVarByteLength (DBfile *, char *); -SILO_CALLBACK int db_pdb_GetVarLength (DBfile *, char *); -SILO_CALLBACK int db_pdb_GetVarDims (DBfile*, char*, int, int*); -SILO_CALLBACK int db_pdb_GetVarType (DBfile *, char *); -SILO_CALLBACK DBObjectType db_pdb_InqVarType (DBfile *, char *); -SILO_CALLBACK int db_pdb_InqMeshname (DBfile *, char *, char *); -SILO_CALLBACK int db_pdb_InqMeshtype (DBfile *, char *); -SILO_CALLBACK int db_pdb_ReadAtt (DBfile *, char *, char *, void *); -SILO_CALLBACK int db_pdb_ReadVar (DBfile *, char *, void *); -SILO_CALLBACK int db_pdb_ReadVarSlice (DBfile *, char *, int *, int *, int *, - int, void *); -SILO_CALLBACK int db_pdb_SetDir (DBfile *, char *); +SILO_CALLBACK void *db_pdb_GetVar (DBfile *, char const *); +SILO_CALLBACK int db_pdb_GetVarByteLength (DBfile *, char const *); +SILO_CALLBACK int db_pdb_GetVarLength (DBfile *, char const *); +SILO_CALLBACK int db_pdb_GetVarDims (DBfile*, char const *, int, int*); +SILO_CALLBACK int db_pdb_GetVarType (DBfile *, char const *); +SILO_CALLBACK DBObjectType db_pdb_InqVarType (DBfile *, char const *); +SILO_CALLBACK int db_pdb_InqMeshname (DBfile *, char const *, char *); +SILO_CALLBACK int db_pdb_InqMeshtype (DBfile *, char const *); +SILO_CALLBACK int db_pdb_ReadVar (DBfile *, char const *, void *); +SILO_CALLBACK int db_pdb_ReadVarSlice (DBfile *, char const *, int const *, int const *, int const *, int, void *); +SILO_CALLBACK int db_pdb_SetDir (DBfile *, char const *); SILO_CALLBACK int db_pdb_Filters (DBfile *, FILE *); SILO_CALLBACK int db_pdb_NewToc (DBfile *); -SILO_CALLBACK int db_pdb_GetComponentNames (DBfile *, char *, char ***, char ***); +SILO_CALLBACK int db_pdb_GetComponentNames (DBfile *, char const *, char ***, char ***); SILO_CALLBACK int db_pdb_FreeCompressionResources(DBfile *_dbfile, char const *meshname); -PRIVATE int db_pdb_getobjinfo (PDBfile *, char *, char *, int *); -PRIVATE int db_pdb_getvarinfo (PDBfile *, char *, char *, int *, int *, int); +PRIVATE int db_pdb_getobjinfo (PDBfile *, char const *, char *, int *); +PRIVATE int db_pdb_getvarinfo (PDBfile *, char const *, char *, int *, int *, int); #ifdef PDB_WRITE SILO_CALLBACK int db_pdb_WriteObject (DBfile *, DBobject const *, int); SILO_CALLBACK int db_pdb_WriteComponent (DBfile *, DBobject *, char const *, char const *, char const *, void const *, int, long const *); -SILO_CALLBACK int db_pdb_MkDir (DBfile *, char *); -SILO_CALLBACK int db_pdb_PutCompoundarray (DBfile *, char *, char **, int *, - int, void *, int, int, DBoptlist *); -SILO_CALLBACK int db_pdb_PutCurve (DBfile *, char *, void *, void *, int, int, - DBoptlist *); -SILO_CALLBACK int db_pdb_PutDefvars(DBfile *, char const *, int, char **, - int const *, char **, DBoptlist **); -SILO_CALLBACK int db_pdb_PutFacelist (DBfile *, char *, int, int, int *, int, - int, int *, int *, int *, int, int *, - int *, int); -SILO_CALLBACK int db_pdb_PutMaterial (DBfile *, char *, char *, int, int *, - int *, int *, int, int *, int *, int *, - DB_DTPTR1, int, int, DBoptlist *); -SILO_CALLBACK int db_pdb_PutMatspecies (struct DBfile *, char *, char *, int, - int *, int *, int *, int, int, DB_DTPTR1, - int *, int, int, DBoptlist *); -SILO_CALLBACK int db_pdb_PutMultimesh (DBfile *, char DB_CONSTARR1, int, char DB_CONSTARR2, int DB_CONSTARR1, - DBoptlist const *); -SILO_CALLBACK int db_pdb_PutMultimeshadj (DBfile *, char DB_CONSTARR1, int, int DB_CONSTARR1, - int DB_CONSTARR1, int DB_CONSTARR1, int DB_CONSTARR1, int DB_CONSTARR1, - int DB_CONSTARR2, int DB_CONSTARR1, int DB_CONSTARR2, +SILO_CALLBACK int db_pdb_MkDir (DBfile *, char const *); +SILO_CALLBACK int db_pdb_PutCompoundarray( + DBfile * dbfile, + char const *name, + char const * const *elemnames, + int const *elemlens, + int nelems, + void const *values, + int nvalues, + int datatype, + DBoptlist const * +); +SILO_CALLBACK int db_pdb_PutCurve( + DBfile *dbfile, + char const *name, + void const *xvals, + void const *yvals, + int npts, + int datatype, + DBoptlist const * +); +SILO_CALLBACK int db_pdb_PutDefvars( + DBfile *dbfile, + char const *name, + int, + char const * const *names, + int const *types, + char const * const *defns, + DBoptlist const * const *opts +); +SILO_CALLBACK int db_pdb_PutFacelist( + DBfile *dbfile, + char const * name, + int nfaces, + int ndims, + int const *nodelist, + int lnodelist, + int origin, + int const *zoneno, + int const *shapesize, + int const *shapecnt, + int nshapes, + int const *types, + int const *typelist, + int ntypes +); +SILO_CALLBACK int db_pdb_PutMaterial( + DBfile *dbfile, + char const *name, + char const *meshname, + int nmat, + int const *matnos, + int const *matlist, + int const *dims, + int ndims, + int const *mix_next, + int const *mix_mat, + int const *mix_zone, + void const *mix_vf, + int mixlen, + int datatype, + DBoptlist const *opts +); +SILO_CALLBACK int db_pdb_PutMatspecies (struct DBfile *, char const *, char const *, int, + int const *, int const *, int const *, int, int, void const *, + int const *, int, int, DBoptlist const *); +SILO_CALLBACK int db_pdb_PutMultimesh (DBfile *, char const *, int, char const * const *, + int const *, DBoptlist const *); +SILO_CALLBACK int db_pdb_PutMultimeshadj (DBfile *, char const *, int, int const *, + int const *, int const *, int const *, int const *, + int const * const *, int const *, int const * const *, DBoptlist const *optlist); -SILO_CALLBACK int db_pdb_PutMultivar (DBfile *, char *, int, char **, int *, - DBoptlist *); -SILO_CALLBACK int db_pdb_PutMultimat (DBfile *, char *, int, char **, - DBoptlist *); -SILO_CALLBACK int db_pdb_PutMultimatspecies (DBfile *, char *, int, char **, - DBoptlist *); -SILO_CALLBACK int db_pdb_PutPointmesh (DBfile *, char *, int, DB_DTPTR2, int, - int, DBoptlist *); -SILO_CALLBACK int db_pdb_PutPointvar (DBfile *, char *, char *, int, DB_DTPTR2, - int, int, DBoptlist *); -SILO_CALLBACK int db_pdb_PutQuadmesh (DBfile *, char *, char **, DB_DTPTR2, - int *, int, int, int, DBoptlist *); -SILO_CALLBACK int db_pdb_PutQuadvar (DBfile *, char *, char *, int, char **, - DB_DTPTR2, int *, int, DB_DTPTR2, int, int, - int, DBoptlist *); -SILO_CALLBACK int db_pdb_PutUcdmesh (DBfile *, char *, int, char **, DB_DTPTR2, - int, int, char *, char *, int, - DBoptlist *); -SILO_CALLBACK int db_pdb_PutUcdsubmesh (DBfile *, char *, char *, - int, char *, char *, - DBoptlist *); -SILO_CALLBACK int db_pdb_PutUcdvar (DBfile *, char *, char *, int, char **, - DB_DTPTR2, int, DB_DTPTR2, int, int, int, - DBoptlist *); +SILO_CALLBACK int db_pdb_PutMultivar (DBfile *, char const *, int, char const * const *, int const *, + DBoptlist const *); +SILO_CALLBACK int db_pdb_PutMultimat (DBfile *, char const *, int, char const * const *, + DBoptlist const *); +SILO_CALLBACK int db_pdb_PutMultimatspecies (DBfile *, char const *, int, char const * const *, + DBoptlist const *); +SILO_CALLBACK int db_pdb_PutPointmesh (DBfile *, char const *, int, DBVCP2_t, int, + int, DBoptlist const *); +SILO_CALLBACK int db_pdb_PutPointvar (DBfile *, char const *, char const *, int, DBVCP2_t, + int, int, DBoptlist const *); +SILO_CALLBACK int db_pdb_PutQuadmesh (DBfile *, char const *, char const * const *, DBVCP2_t, + int const *, int, int, int, DBoptlist const *); +SILO_CALLBACK int db_pdb_PutQuadvar (DBfile *, char const *, char const *, int, char const * const *, + DBVCP2_t, int const *, int, DBVCP2_t, int, int, + int, DBoptlist const *); +SILO_CALLBACK int db_pdb_PutUcdmesh (DBfile *, char const *, int, char const * const *, DBVCP2_t, + int, int, char const *, char const *, int, DBoptlist const *); +SILO_CALLBACK int db_pdb_PutUcdsubmesh (DBfile *, char const *, char const *, + int, char const *, char const *, DBoptlist const *); +SILO_CALLBACK int db_pdb_PutUcdvar (DBfile *, char const *, char const *, int, char const * const *, + DBVCP2_t, int, DBVCP2_t, int, int, int, DBoptlist const *); SILO_CALLBACK int db_pdb_PutCsgmesh (DBfile *, char const *, int, int, - int const *, int const *, - void const *, int, int, double const *, - char const *, DBoptlist *); + int const *, int const *, void const *,int, int, + double const *, char const *, DBoptlist const *); SILO_CALLBACK int db_pdb_PutCsgvar (DBfile *, char const *, char const *, int, - char **varnames, void **vars, - int, int, int, DBoptlist *); -SILO_CALLBACK int db_pdb_PutZonelist (DBfile *, char *, int, int, int *, int, - int, int *, int *, int); -SILO_CALLBACK int db_pdb_PutZonelist2 (DBfile *, char *, int, int, int *, int, - int, int, int, int *, int *, int *, int, - DBoptlist *); -SILO_CALLBACK int db_pdb_PutPHZonelist(DBfile *, char *, - int, int *, int, int *, char *, - int, int *, int, int *, - int, int, int, DBoptlist *); + char const * const *varnames, void const * const *vars, + int, int, int, DBoptlist const *); +SILO_CALLBACK int db_pdb_PutZonelist (DBfile *, char const *, int, int, int const *, int, + int, int const *, int const *, int); +SILO_CALLBACK int db_pdb_PutZonelist2 (DBfile *, char const *, int, int, int const *, int, + int, int, int, int const *, int const *, int const *, int, + DBoptlist const *); +SILO_CALLBACK int db_pdb_PutPHZonelist(DBfile *, char const *, + int, int const *, int, int const *, char const *, + int, int const *, int, int const *, + int, int, int, DBoptlist const *); SILO_CALLBACK int db_pdb_PutCSGZonelist (DBfile *, char const *, int, int const *, int const *, int const *, void const *, int, int, - int, int const *, DBoptlist *); -SILO_CALLBACK int db_pdb_PutMrgtree(DBfile *_dbfile, char const *name, - char const *mesh_name, DBmrgtree *tree, - DBoptlist *optlist); + int, int const *, DBoptlist const *); +SILO_CALLBACK int db_pdb_PutMrgtree(DBfile *_dbfile, char const *name, char const *mesh_name, + DBmrgtree const *tree, DBoptlist const *optlist); SILO_CALLBACK int db_pdb_PutGroupelmap(DBfile *_dbfile, char const *map_name, - int num_segments, int *groupel_types, - int *segment_lengths, int *segment_ids, - int **segment_data, void **segment_fracs, - int fracs_data_type, DBoptlist *opts); + int num_segments, int const *groupel_types, + int const *segment_lengths, int const *segment_ids, + int const * const *segment_data, void const * const *segment_fracs, + int fracs_data_type, DBoptlist const *opts); SILO_CALLBACK int db_pdb_PutMrgvar(DBfile *dbfile, char const *name, char const *mrgt_name, - int ncomps, char **compnames, - int nregns, char **reg_pnames, - int datatype, void **data, DBoptlist *opts); + int ncomps, char const * const *compnames, + int nregns, char const * const *reg_pnames, + int datatype, void const * const *data, DBoptlist const *opts); SILO_CALLBACK int db_pdb_Write (DBfile *, char const *, void const *, int const *, int, int); -SILO_CALLBACK int db_pdb_WriteSlice (DBfile*, char*, void*, int, int[], int[], - int[], int[], int); +SILO_CALLBACK int db_pdb_WriteSlice( + DBfile*, + char const *array_name, + void const *data, + int datatype, + int const *offsets, + int const *lengths, + int const *strides, + int const *dims, + int ndims +); SILO_CALLBACK int db_pdb_SortObjectsByOffset(DBfile *_dbfile, int nobjs, char const *const *const names, int *ordering); -PRIVATE int db_InitCsg (DBfile *, char *, DBoptlist *); -PRIVATE int db_InitPoint (DBfile *, DBoptlist *, int, int); -PRIVATE int db_InitQuad (DBfile *, char *, DBoptlist *, int *, int); -PRIVATE void db_InitCurve (DBoptlist*); -PRIVATE void db_build_shared_names_csgmesh (DBfile *, char *); -PRIVATE void db_build_shared_names_quadmesh (DBfile *, char *); -PRIVATE int db_InitUcd (DBfile *, char *, DBoptlist *, int, int, int); -PRIVATE int db_InitZonelist (DBfile *, DBoptlist *); +PRIVATE int db_InitCsg (DBfile *, char const *, DBoptlist const *); +PRIVATE int db_InitPoint (DBfile *, DBoptlist const *, int, int); +PRIVATE int db_InitQuad (DBfile *, char const *, DBoptlist const *, int const *, int); +PRIVATE void db_InitCurve (DBoptlist const * const); +PRIVATE void db_build_shared_names_csgmesh (DBfile *, char const *); +PRIVATE void db_build_shared_names_quadmesh (DBfile *, char const *); +PRIVATE int db_InitUcd (DBfile *, char const *, DBoptlist const *, int, int, int); +PRIVATE int db_InitZonelist (DBfile *, DBoptlist const *); PRIVATE int db_ResetGlobalData_phzonelist (void); -PRIVATE int db_InitPHZonelist (DBfile *, DBoptlist *); -PRIVATE void db_build_shared_names_ucdmesh (DBfile *, char *); -PRIVATE void db_mkname (PDBfile*, char*, char*, char*); +PRIVATE int db_InitPHZonelist (DBfile *, DBoptlist const *); +PRIVATE void db_build_shared_names_ucdmesh (DBfile *, char const *); +PRIVATE void db_mkname (PDBfile*, char const *, char const *, char*); PRIVATE int db_InitMulti (DBfile*, DBoptlist const *const); -PRIVATE void db_InitDefvars (DBoptlist*); +PRIVATE void db_InitDefvars (DBoptlist const *); #endif /* PDB_WRITE */ #endif /* !SILO_NO_CALLBACKS */ @@ -287,25 +338,25 @@ *------------------------------------------------------------------------- */ PRIVATE char **PJ_ls (PDBfile *, char *, char *, int *); -PRIVATE int PJ_get_fullpath (PDBfile *, char *, char *, char *); +PRIVATE int PJ_get_fullpath (PDBfile *, char *, char const *, char *); -PRIVATE int PJ_read (PDBfile *, char *, void *); +PRIVATE int PJ_read (PDBfile *, char const *, void *); PRIVATE int PJ_read_alt (PDBfile *, char *, void *, long *); PRIVATE int PJ_read_as (PDBfile *, char *, char *, void *); PRIVATE int PJ_read_as_alt (PDBfile *, char *, char *, void *, long *); -PRIVATE syment *PJ_inquire_entry (PDBfile *, char *); +PRIVATE syment *PJ_inquire_entry (PDBfile *, char const *); PRIVATE int pdb_getvarinfo (PDBfile *, char *, char *, int *, int *, int); PRIVATE int PJ_ForceSingle (int); -PRIVATE int PJ_GetObject (PDBfile *, char *, PJcomplist *, int expected_dbtype); +PRIVATE int PJ_GetObject (PDBfile *, char const *, PJcomplist *, int expected_dbtype); PRIVATE int PJ_ClearCache(void); PRIVATE int PJ_InqForceSingle (void); PRIVATE void PJ_NoCache ( void ); -PRIVATE void *PJ_GetComponent (PDBfile *, char *, char *); -PRIVATE int PJ_GetComponentType (PDBfile *, char *, char *); +PRIVATE void *PJ_GetComponent (PDBfile *, char const *, char const *); +PRIVATE int PJ_GetComponentType (PDBfile *, char const *, char const *); PRIVATE int PJ_ReadVariable (PDBfile *, char *, int, int, char **); -PRIVATE int PJ_get_group (PDBfile *, char *, PJgroup **); +PRIVATE int PJ_get_group (PDBfile *, char const *, PJgroup **); PRIVATE PJgroup *PJ_make_group (char *, char *, char **, char **, int); PRIVATE int PJ_rel_group (PJgroup *); PRIVATE int PJ_print_group (PJgroup *, FILE *); @@ -313,7 +364,7 @@ #ifdef PDB_WRITE PRIVATE int PJ_put_group (PDBfile*,PJgroup*, int); PRIVATE int PJ_write (PDBfile*,char*,char*,void*) ; -PRIVATE int PJ_write_len (PDBfile*,char*,char*,void const *,int,long*); +PRIVATE int PJ_write_len (PDBfile*,char const *,char const *,void const *,int,long const *); PRIVATE int PJ_write_alt (PDBfile*,char const *,char const *,void const *,int,long const *); #endif /* PDB_WRITE */ diff -Nru silo-llnl-4.10.2/src/pdbp_drv/Makefile.in silo-llnl-4.10.2.real/src/pdbp_drv/Makefile.in --- silo-llnl-4.10.2/src/pdbp_drv/Makefile.in 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/src/pdbp_drv/Makefile.in 2018-02-15 17:25:43.000000000 +0000 @@ -178,6 +178,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +JSON = @JSON@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBM = @LIBM@ @@ -226,9 +227,6 @@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SILEX = @SILEX@ -SILO_DTYPPTR = @SILO_DTYPPTR@ -SILO_DTYPPTR1 = @SILO_DTYPPTR1@ -SILO_DTYPPTR2 = @SILO_DTYPPTR2@ SILO_VERS_MAJ = @SILO_VERS_MAJ@ SILO_VERS_MIN = @SILO_VERS_MIN@ SILO_VERS_PAT = @SILO_VERS_PAT@ diff -Nru silo-llnl-4.10.2/src/score/Makefile.in silo-llnl-4.10.2.real/src/score/Makefile.in --- silo-llnl-4.10.2/src/score/Makefile.in 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/src/score/Makefile.in 2018-02-15 17:25:43.000000000 +0000 @@ -203,6 +203,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +JSON = @JSON@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBM = @LIBM@ @@ -251,9 +252,6 @@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SILEX = @SILEX@ -SILO_DTYPPTR = @SILO_DTYPPTR@ -SILO_DTYPPTR1 = @SILO_DTYPPTR1@ -SILO_DTYPPTR2 = @SILO_DTYPPTR2@ SILO_VERS_MAJ = @SILO_VERS_MAJ@ SILO_VERS_MIN = @SILO_VERS_MIN@ SILO_VERS_PAT = @SILO_VERS_PAT@ diff -Nru silo-llnl-4.10.2/src/score/scctla.c silo-llnl-4.10.2.real/src/score/scctla.c --- silo-llnl-4.10.2/src/score/scctla.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/src/score/scctla.c 2018-02-15 17:25:43.000000000 +0000 @@ -851,6 +851,8 @@ int i, j; + if (!s) return NULL; + i = strcspn(s, delim); j = strlen(s); if ((i == 0) && (i != j)) { @@ -898,7 +900,6 @@ r = lite_SC_strrev(s); temp = _lite_SC_pr_tok(r, delim); - s = lite_SC_strrev(r); return lite_SC_strrev (temp); } diff -Nru silo-llnl-4.10.2/src/silo/alloc.c silo-llnl-4.10.2.real/src/silo/alloc.c --- silo-llnl-4.10.2/src/silo/alloc.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/src/silo/alloc.c 2018-02-15 17:25:43.000000000 +0000 @@ -459,7 +459,11 @@ if (msh == NULL) return; - if (msh->meshnames) + if (msh->meshnames_alloc) + { + FREE(msh->meshnames_alloc); + } + else if (msh->meshnames) { for (i = 0; i < msh->nblocks; i++) { FREE(msh->meshnames[i]); @@ -560,7 +564,11 @@ if (mv == NULL) return; - if (mv->varnames) + if (mv->varnames_alloc) + { + FREE(mv->varnames_alloc); + } + else if (mv->varnames) { for (i = 0; i < mv->nvars; i++) { FREE(mv->varnames[i]); @@ -616,7 +624,11 @@ if (mat == NULL) return; - if (mat->matnames) + if (mat->matnames_alloc) + { + FREE(mat->matnames_alloc); + } + else if (mat->matnames) { for (i = 0; i < mat->nmats; i++) { FREE(mat->matnames[i]); @@ -699,7 +711,11 @@ FREE(spec->speccolors); } - if (spec->specnames) + if (spec->specnames_alloc) + { + FREE(spec->specnames_alloc); + } + else if (spec->specnames) { for (i = 0; i < spec->nspec; i++) { FREE(spec->specnames[i]); @@ -791,13 +807,7 @@ PUBLIC int DBIsEmptyCsgmesh(DBcsgmesh const *msh) { - if (!msh) return 0; - if (msh->nbounds!=0) return 0; - if (msh->typeflags!=0) return 0; - if (msh->bndids!=0) return 0; - if (msh->coeffs!=0) return 0; - if (msh->lcoeffs!=0) return 0; - if (msh->coeffidx!=0) return 0; + if (msh && msh->nbounds!=0) return 0; return 1; } @@ -868,16 +878,17 @@ PUBLIC int DBIsEmptyQuadmesh(DBquadmesh const *msh) { - if (!msh) return 0; - if (msh->nnodes!=0) return 0; - if (msh->coords[0]!=0) return 0; - if (msh->coords[1]!=0) return 0; - if (msh->coords[2]!=0) return 0; - if (msh->ndims!=0) return 0; - if (msh->dims[0]!=0) return 0; - if (msh->dims[1]!=0) return 0; - if (msh->dims[2]!=0) return 0; - return 1; + int i, is_empty = 1; + + for (i = 0; msh && i < msh->ndims; i++) + { + if (msh->dims[i] > 0) + { + is_empty = 0; + break; + } + } + return is_empty; } /*---------------------------------------------------------------------- @@ -949,12 +960,7 @@ PUBLIC int DBIsEmptyPointmesh(DBpointmesh const *msh) { - if (!msh) return 0; - if (msh->nels!=0) return 0; - if (msh->ndims!=0) return 0; - if (msh->coords[0]!=0) return 0; - if (msh->coords[1]!=0) return 0; - if (msh->coords[2]!=0) return 0; + if (msh && msh->nels!=0) return 0; return 1; } @@ -1026,14 +1032,7 @@ PUBLIC int DBIsEmptyMeshvar(DBmeshvar const *var) { - if (!var) return 0; - if (var->nels!=0) return 0; - if (var->nvals!=0) return 0; - if (var->vals!=0) return 0; - /*if (var->ndims!=0) return 0; long standing bug/assumption in Silo */ - if (var->dims[0]!=0) return 0; - if (var->dims[1]!=0) return 0; - if (var->dims[2]!=0) return 0; + if (var && var->nels!=0) return 0; return 1; } @@ -1138,16 +1137,7 @@ PUBLIC int DBIsEmptyUcdmesh(DBucdmesh const *msh) { - if (!msh) return 0; - if (msh->ndims!=0) return 0; - if (msh->topo_dim!=-1) return 0; /* unique case; -1 means 'unset' */ - if (msh->nnodes!=0) return 0; - if (msh->coords[0]!=0) return 0; - if (msh->coords[1]!=0) return 0; - if (msh->coords[2]!=0) return 0; - if (msh->faces!=0) return 0; - if (msh->zones!=0) return 0; - if (msh->edges!=0) return 0; + if (msh && msh->nnodes!=0) return 0; return 1; } @@ -1213,10 +1203,7 @@ PUBLIC int DBIsEmptyCsgvar(DBcsgvar const *var) { - if (!var) return 0; - if (var->nels!=0) return 0; - if (var->nvals!=0) return 0; - if (var->vals!=0) return 0; + if (var && var->nels!=0) return 0; return 1; } @@ -1309,15 +1296,17 @@ PUBLIC int DBIsEmptyQuadvar(DBquadvar const *var) { - if (!var) return 0; - if (var->nels!=0) return 0; - if (var->nvals!=0) return 0; - if (var->vals!=0) return 0; - if (var->ndims!=0) return 0; - if (var->dims[0]!=0) return 0; - if (var->dims[1]!=0) return 0; - if (var->dims[2]!=0) return 0; - return 1; + int i, is_empty = 1; + + for (i = 0; var && i < var->ndims; i++) + { + if (var->dims[i] > 0) + { + is_empty = 0; + break; + } + } + return is_empty; } /*---------------------------------------------------------------------- @@ -1409,11 +1398,7 @@ PUBLIC int DBIsEmptyUcdvar(DBucdvar const *var) { - if (!var) return 0; - if (var->nels!=0) return 0; - if (var->nvals!=0) return 0; - if (var->ndims!=0) return 0; - if (var->vals!=0) return 0; + if (var && var->nels!=0) return 0; return 1; } @@ -1449,15 +1434,7 @@ PUBLIC int DBIsEmptyZonelist(DBzonelist const *zl) { - if (!zl) return 0; - if (zl->ndims!=0) return 0; - if (zl->nzones!=0) return 0; - if (zl->nshapes!=0) return 0; - if (zl->lnodelist!=0) return 0; - if (zl->nodelist!=0) return 0; - if (zl->shapecnt!=0) return 0; - if (zl->shapesize!=0) return 0; - if (zl->shapetype!=0) return 0; + if (zl && zl->nzones!=0) return 0; return 1; } @@ -1489,11 +1466,7 @@ PUBLIC int DBIsEmptyPHZonelist(DBphzonelist const *zl) { - if (!zl) return 0; - if (zl->nfaces!=0) return 0; - if (zl->nodecnt!=0) return 0; - if (zl->lnodelist!=0) return 0; - if (zl->nodelist!=0) return 0; + if (zl && zl->nfaces!=0) return 0; return 1; } @@ -1525,13 +1498,7 @@ PUBLIC int DBIsEmptyCSGZonelist(DBcsgzonelist const *zl) { - if (!zl) return 0; - if (zl->nregs!=0) return 0; - if (zl->typeflags!=0) return 0; - if (zl->leftids!=0) return 0; - if (zl->rightids!=0) return 0; - if (zl->nzones!=0) return 0; - if (zl->zonelist!=0) return 0; + if (zl && zl->nzones!=0) return 0; return 1; } @@ -1705,14 +1672,7 @@ PUBLIC int DBIsEmptyFacelist(DBfacelist const *fl) { - if (!fl) return 0; - if (fl->ndims!=0) return 0; - if (fl->nfaces!=0) return 0; - if (fl->lnodelist!=0) return 0; - if (fl->nodelist!=0) return 0; - if (fl->nshapes!=0) return 0; - if (fl->shapecnt!=0) return 0; - if (fl->shapesize!=0) return 0; + if (fl && fl->nfaces!=0) return 0; return 1; } @@ -1811,16 +1771,17 @@ PUBLIC int DBIsEmptyMaterial(DBmaterial const *mats) { - if (!mats) return 0; - if (mats->nmat!=0) return 0; - if (mats->matnos!=0) return 0; - if (mats->ndims!=0) return 0; - if (mats->dims[0]!=0) return 0; - if (mats->dims[1]!=0) return 0; - if (mats->dims[2]!=0) return 0; - if (mats->matlist!=0) return 0; - if (mats->mixlen!=0) return 0; - return 1; + int i, is_empty = 1; + + for (i = 0; mats && i < mats->ndims; i++) + { + if (mats->dims[i] > 0) + { + is_empty = 0; + break; + } + } + return is_empty; } /*---------------------------------------------------------------------- @@ -1904,19 +1865,20 @@ PUBLIC int DBIsEmptyMatspecies(DBmatspecies const *species) { - if (!species) return 0; - if (species->nmat!=0) return 0; - if (species->nmatspec!=0) return 0; - if (species->ndims!=0) return 0; - if (species->dims[0]!=0) return 0; - if (species->dims[1]!=0) return 0; - if (species->dims[2]!=0) return 0; - if (species->nspecies_mf!=0) return 0; - if (species->species_mf!=0) return 0; - if (species->speclist!=0) return 0; - if (species->mixlen!=0) return 0; - if (species->mix_speclist!=0) return 0; - return 1; + int i, is_empty = 1; + + if (species->nspecies_mf == 0) + return 1; + + for (i = 0; species && i < species->ndims; i++) + { + if (species->dims[i] > 0) + { + is_empty = 0; + break; + } + } + return is_empty; } /*------------------------------------------------------------------------- @@ -2014,10 +1976,7 @@ PUBLIC int DBIsEmptyCurve(DBcurve const *crv) { - if (!crv) return 0; - if (crv->npts!=0) return 0; - if (crv->x!=0) return 0; - if (crv->y!=0) return 0; + if (crv && crv->npts!=0) return 0; return 1; } diff -Nru silo-llnl-4.10.2/src/silo/Makefile.am silo-llnl-4.10.2.real/src/silo/Makefile.am --- silo-llnl-4.10.2/src/silo/Makefile.am 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/src/silo/Makefile.am 2018-02-15 17:25:43.000000000 +0000 @@ -53,6 +53,9 @@ ## Procss this file with automake to create Makefile.in AM_CPPFLAGS = -I$(top_srcdir)/src +if JSON_NEEDED + AM_CPPFLAGS += -I$(prefix)/json/include +endif noinst_LTLIBRARIES = libsilo_silo.la libsilo_silo_la_SOURCES = $(FILES) @@ -64,15 +67,27 @@ EXTRAINCS += silo_f.h endif +if JSON_NEEDED + EXTRAFILES += silo_json.c +endif + EXTRA_DIST = \ silo_fcb.c \ silo_f.h \ silo_f.c \ + silo_json.c \ silo.h.in include_HEADERS = \ silo.inc \ - pmpio.h + silo_f77.inc \ + silo_f9x.inc \ + pmpio.h \ + silo_exports.h + +if JSON_NEEDED + include_HEADERS += silo_json.h +endif nodist_include_HEADERS = \ silo.h @@ -90,11 +105,16 @@ silo_ns.c \ $(EXTRAFILES) -BUILT_SOURCES = silo.inc +BUILT_SOURCES = silo.inc silo_f9x.inc DISTCLEANFILES = silo_version.h # built if it doesn't exit, could cause problem with VPATH # be extra careful about check-in time-stamps! silo.inc MUST be the oldest. silo.inc: silo.h.in silo_f.h - if test ! -e $@; then \ - cat ./silo.h $(srcdir)/silo_f.h | $(top_srcdir)/config/mkinc > $@; fi + cat ./silo.h $(srcdir)/silo_f.h | $(top_srcdir)/config/mkinc > $@ + +silo_f77.inc: silo.inc + @ln -s $< $@ 2>/dev/null + +silo_f9x.inc: silo.h.in silo_f.h + cat ./silo.h $(srcdir)/silo_f.h | $(top_srcdir)/config/mkinc --f90 > $@ diff -Nru silo-llnl-4.10.2/src/silo/Makefile.in silo-llnl-4.10.2.real/src/silo/Makefile.in --- silo-llnl-4.10.2/src/silo/Makefile.in 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/src/silo/Makefile.in 2018-02-15 17:25:43.000000000 +0000 @@ -88,10 +88,13 @@ POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ -@FORTRAN_NEEDED_TRUE@am__append_1 = silo_f.c -@FORTRAN_NEEDED_TRUE@am__append_2 = silo_f.h +@JSON_NEEDED_TRUE@am__append_1 = -I$(prefix)/json/include +@FORTRAN_NEEDED_TRUE@am__append_2 = silo_f.c +@FORTRAN_NEEDED_TRUE@am__append_3 = silo_f.h +@JSON_NEEDED_TRUE@am__append_4 = silo_json.c +@JSON_NEEDED_TRUE@am__append_5 = silo_json.h subdir = src/silo -DIST_COMMON = $(am__noinst_HEADERS_DIST) $(include_HEADERS) \ +DIST_COMMON = $(am__include_HEADERS_DIST) $(am__noinst_HEADERS_DIST) \ $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ $(srcdir)/silo.h.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 @@ -113,12 +116,13 @@ LTLIBRARIES = $(noinst_LTLIBRARIES) libsilo_silo_la_LIBADD = am__libsilo_silo_la_SOURCES_DIST = alloc.c extface.c silo.c silo_ns.c \ - silo_f.c + silo_f.c silo_json.c @FORTRAN_NEEDED_TRUE@am__objects_1 = silo_f.lo -am__objects_2 = $(am__objects_1) -am__objects_3 = alloc.lo extface.lo silo.lo silo_ns.lo \ - $(am__objects_2) -am_libsilo_silo_la_OBJECTS = $(am__objects_3) +@JSON_NEEDED_TRUE@am__objects_2 = silo_json.lo +am__objects_3 = $(am__objects_1) $(am__objects_2) +am__objects_4 = alloc.lo extface.lo silo.lo silo_ns.lo \ + $(am__objects_3) +am_libsilo_silo_la_OBJECTS = $(am__objects_4) libsilo_silo_la_OBJECTS = $(am_libsilo_silo_la_OBJECTS) DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) depcomp = $(SHELL) $(top_srcdir)/config/depcomp @@ -135,6 +139,8 @@ $(LDFLAGS) -o $@ SOURCES = $(libsilo_silo_la_SOURCES) DIST_SOURCES = $(am__libsilo_silo_la_SOURCES_DIST) +am__include_HEADERS_DIST = silo.inc silo_f77.inc silo_f9x.inc pmpio.h \ + silo_exports.h silo_json.h am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ @@ -214,6 +220,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +JSON = @JSON@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBM = @LIBM@ @@ -262,9 +269,6 @@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SILEX = @SILEX@ -SILO_DTYPPTR = @SILO_DTYPPTR@ -SILO_DTYPPTR1 = @SILO_DTYPPTR1@ -SILO_DTYPPTR2 = @SILO_DTYPPTR2@ SILO_VERS_MAJ = @SILO_VERS_MAJ@ SILO_VERS_MIN = @SILO_VERS_MIN@ SILO_VERS_PAT = @SILO_VERS_PAT@ @@ -338,21 +342,20 @@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ -AM_CPPFLAGS = -I$(top_srcdir)/src +AM_CPPFLAGS = -I$(top_srcdir)/src $(am__append_1) noinst_LTLIBRARIES = libsilo_silo.la libsilo_silo_la_SOURCES = $(FILES) -EXTRAFILES = $(am__append_1) -EXTRAINCS = $(am__append_2) +EXTRAFILES = $(am__append_2) $(am__append_4) +EXTRAINCS = $(am__append_3) EXTRA_DIST = \ silo_fcb.c \ silo_f.h \ silo_f.c \ + silo_json.c \ silo.h.in -include_HEADERS = \ - silo.inc \ - pmpio.h - +include_HEADERS = silo.inc silo_f77.inc silo_f9x.inc pmpio.h \ + silo_exports.h $(am__append_5) nodist_include_HEADERS = \ silo.h @@ -369,7 +372,7 @@ silo_ns.c \ $(EXTRAFILES) -BUILT_SOURCES = silo.inc +BUILT_SOURCES = silo.inc silo_f9x.inc DISTCLEANFILES = silo_version.h all: $(BUILT_SOURCES) $(MAKE) $(AM_MAKEFLAGS) all-am @@ -430,6 +433,7 @@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/extface.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/silo.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/silo_f.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/silo_json.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/silo_ns.Plo@am__quote@ .c.o: @@ -709,8 +713,13 @@ # built if it doesn't exit, could cause problem with VPATH # be extra careful about check-in time-stamps! silo.inc MUST be the oldest. silo.inc: silo.h.in silo_f.h - if test ! -e $@; then \ - cat ./silo.h $(srcdir)/silo_f.h | $(top_srcdir)/config/mkinc > $@; fi + cat ./silo.h $(srcdir)/silo_f.h | $(top_srcdir)/config/mkinc > $@ + +silo_f77.inc: silo.inc + @ln -s $< $@ 2>/dev/null + +silo_f9x.inc: silo.h.in silo_f.h + cat ./silo.h $(srcdir)/silo_f.h | $(top_srcdir)/config/mkinc --f90 > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff -Nru silo-llnl-4.10.2/src/silo/silo.c silo-llnl-4.10.2.real/src/silo/silo.c --- silo-llnl-4.10.2/src/silo/silo.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/src/silo/silo.c 2018-02-15 17:25:43.000000000 +0000 @@ -131,8 +131,9 @@ /* No lines of the form 'int Silo_version_Maj_Min_Pat = 0;' below here indicates that this version is not backwards compatible with any previous versions.*/ -int Silo_version_4_9 = 0; -int Silo_version_4_9_0 = 0; +int Silo_version_4_10 = 0; +int Silo_version_4_10_0 = 0; +int Silo_version_4_10_1 = 0; /* Symbols for error handling */ PUBLIC int DBDebugAPI = 0; /*file desc for API debug messages */ @@ -182,6 +183,7 @@ "of HDF5 already on your sytem, you will also need\n" "to obtain HDF5 from www.hdfgroup.org and install it.", /* 33 */ "Empty objects not permitted. See DBSetAllowEmptyObjects()." /* 34 */ + "No more tiny array buffer space for custom object." /* 35 */ }; PRIVATE unsigned char _db_fstatus[DB_NFILES]; /*file status */ @@ -236,8 +238,8 @@ #endif } db_silo_stat_t; +/* This function is used in API_BEGIN macros and so we forward declare it */ PRIVATE int db_isregistered_file(DBfile *dbfile, const db_silo_stat_t *filestate); -PRIVATE int db_silo_stat(const char *name, db_silo_stat_t *statbuf, int opts_set_id); /* Global structures for option lists. */ struct _ma _ma; @@ -320,7 +322,14 @@ db_perror(char const *s, int errorno, char const *fname) { int call_abort = 0; - static char old_s[256]; + static char old_s[256] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}; /* * Save error number and function name so application @@ -517,7 +526,7 @@ /* If there's a ':' in the name, allow anything before the ':'. After the * ':' we have to be more strict. */ - p = strchr(s,':'); + p = (char *)strchr(s,':'); if (p == NULL) p = (char *)s; else @@ -559,7 +568,7 @@ } /* kept this to deal with non-const qualified API */ INTERNAL int -db_VariableNameValid(char *s) +db_VariableNameValid(char const *s) { return DBVariableNameValid(s); } @@ -1115,41 +1124,16 @@ int size; char *me = "db_GetMachDataSize"; - switch (datatype) { - case DB_CHAR: - size = sizeof(char); - - break; - case DB_SHORT: - size = sizeof(short); - - break; - case DB_INT: - size = sizeof(int); - - break; - case DB_LONG: - size = sizeof(long); - - case DB_LONG_LONG: - size = sizeof(long long); - - break; - case DB_FLOAT: - size = sizeof(float); - - break; - case DB_DOUBLE: - size = sizeof(double); - - break; - default: -#if 1 - return db_perror("datatype", E_BADARGS, me); -#else - size = 0; - break; -#endif + switch (datatype) + { + case DB_CHAR: size = sizeof(char); break; + case DB_SHORT: size = sizeof(short); break; + case DB_INT: size = sizeof(int); break; + case DB_LONG: size = sizeof(long); break; + case DB_LONG_LONG: size = sizeof(long long); break; + case DB_FLOAT: size = sizeof(float); break; + case DB_DOUBLE: size = sizeof(double); break; + default: return db_perror("datatype", E_BADARGS, me); } return (size); } @@ -1186,7 +1170,7 @@ * Made long long support UNconditionally compiled. *--------------------------------------------------------------------*/ INTERNAL int -db_GetDatatypeID(char *dataname) +db_GetDatatypeID(char const * const dataname) { int size; char *me = "db_GetDatatypeID"; @@ -1224,7 +1208,7 @@ * * Parameters * - * typename {In} {Name of object type to inquire about} + * type_name {In} {Name of object type to inquire about} * * Notes * @@ -1246,7 +1230,7 @@ * Added `zonelist' and `facelist' and `edgelist' * * Eric Brugger, Tue Feb 7 11:05:39 PST 1995 - * I modified the routine to return DB_USERDEF if the typename + * I modified the routine to return DB_USERDEF if the type_name * is not known. * * Katherine Price, Thu May 25 10:00:50 PDT 1995 @@ -1256,102 +1240,102 @@ * Added multi-block material species. *--------------------------------------------------------------------*/ PUBLIC int -DBGetObjtypeTag(char const *typename) +DBGetObjtypeTag(char const *type_name) { int tag; char *me = "DBGetObjtypeTag"; - if (!typename || !*typename) + if (!type_name || !*type_name) return db_perror("type name", E_BADARGS, me); - if (typename[0] == 'D' && typename[1] == 'B') - typename += 2; + if (type_name[0] == 'D' && type_name[1] == 'B') + type_name += 2; - if (STR_EQUAL(typename, "multiblockmesh") || - STR_EQUAL(typename, "multimesh")) + if (STR_EQUAL(type_name, "multiblockmesh") || + STR_EQUAL(type_name, "multimesh")) tag = DB_MULTIMESH; - else if (STR_EQUAL(typename, "multimeshadj")) + else if (STR_EQUAL(type_name, "multimeshadj")) tag = DB_MULTIMESHADJ; - else if (STR_EQUAL(typename, "multiblockvar") || - STR_EQUAL(typename, "multivar")) + else if (STR_EQUAL(type_name, "multiblockvar") || + STR_EQUAL(type_name, "multivar")) tag = DB_MULTIVAR; - else if (STR_EQUAL(typename, "multiblockmat") || - STR_EQUAL(typename, "multimat")) + else if (STR_EQUAL(type_name, "multiblockmat") || + STR_EQUAL(type_name, "multimat")) tag = DB_MULTIMAT; - else if (STR_EQUAL(typename, "multimatspecies")) + else if (STR_EQUAL(type_name, "multimatspecies")) tag = DB_MULTIMATSPECIES; - else if (STR_EQUAL(typename, "quadmesh-rect")) + else if (STR_EQUAL(type_name, "quadmesh-rect")) tag = DB_QUAD_RECT; - else if (STR_EQUAL(typename, "quadmesh-curv")) + else if (STR_EQUAL(type_name, "quadmesh-curv")) tag = DB_QUAD_CURV; - else if (STR_EQUAL(typename, "csgmesh")) + else if (STR_EQUAL(type_name, "csgmesh")) tag = DB_CSGMESH; - else if (STR_EQUAL(typename, "csgvar")) + else if (STR_EQUAL(type_name, "csgvar")) tag = DB_CSGVAR; - else if (STR_EQUAL(typename, "defvars")) + else if (STR_EQUAL(type_name, "defvars")) tag = DB_DEFVARS; - else if (STR_EQUAL(typename, "quadmesh")) + else if (STR_EQUAL(type_name, "quadmesh")) tag = DB_QUADMESH; - else if (STR_EQUAL(typename, "quadvar")) + else if (STR_EQUAL(type_name, "quadvar")) tag = DB_QUADVAR; - else if (STR_EQUAL(typename, "ucdmesh")) + else if (STR_EQUAL(type_name, "ucdmesh")) tag = DB_UCDMESH; - else if (STR_EQUAL(typename, "ucdvar")) + else if (STR_EQUAL(type_name, "ucdvar")) tag = DB_UCDVAR; - else if (STR_EQUAL(typename, "pointmesh")) + else if (STR_EQUAL(type_name, "pointmesh")) tag = DB_POINTMESH; - else if (STR_EQUAL(typename, "pointvar")) + else if (STR_EQUAL(type_name, "pointvar")) tag = DB_POINTVAR; - else if (STR_EQUAL(typename, "curve")) + else if (STR_EQUAL(type_name, "curve")) tag = DB_CURVE; - else if (STR_EQUAL(typename, "material")) + else if (STR_EQUAL(type_name, "material")) tag = DB_MATERIAL; - else if (STR_EQUAL(typename, "matspecies")) + else if (STR_EQUAL(type_name, "matspecies")) tag = DB_MATSPECIES; - else if (STR_EQUAL(typename, "compoundarray")) + else if (STR_EQUAL(type_name, "compoundarray")) tag = DB_ARRAY; - else if (STR_EQUAL(typename, "facelist")) + else if (STR_EQUAL(type_name, "facelist")) tag = DB_FACELIST; - else if (STR_EQUAL(typename, "zonelist")) + else if (STR_EQUAL(type_name, "zonelist")) tag = DB_ZONELIST; - else if (STR_EQUAL(typename, "polyhedral-zonelist")) + else if (STR_EQUAL(type_name, "polyhedral-zonelist")) tag = DB_PHZONELIST; - else if (STR_EQUAL(typename, "csgzonelist")) + else if (STR_EQUAL(type_name, "csgzonelist")) tag = DB_CSGZONELIST; - else if (STR_EQUAL(typename, "edgelist")) + else if (STR_EQUAL(type_name, "edgelist")) tag = DB_EDGELIST; - else if (STR_EQUAL(typename, "mrgtree")) + else if (STR_EQUAL(type_name, "mrgtree")) tag = DB_MRGTREE; - else if (STR_EQUAL(typename, "groupelmap")) + else if (STR_EQUAL(type_name, "groupelmap")) tag = DB_GROUPELMAP; - else if (STR_EQUAL(typename, "mrgvar")) + else if (STR_EQUAL(type_name, "mrgvar")) tag = DB_MRGVAR; else @@ -1961,8 +1945,8 @@ INTERNAL context_t * context_switch(DBfile *dbfile, char const *name, char const **base) { - char *me = "context_switch"; - char s[256], *b; + char const *me = "context_switch"; + char s[256], *b; context_t *old = ALLOC(context_t); /* @@ -1988,7 +1972,7 @@ * is the stuff after the last `/'. If the base name is empty * then we should raise an E_NOTFOUND right away. */ - b = strrchr(name, '/'); + b = (char *)strrchr(name, '/'); if (!b || !b[1]) { FREE(old->name); FREE(old); @@ -2055,12 +2039,7 @@ return 0; } - if (dbfile->pub.cdid) { - DBSetDirID(dbfile, old->dirid); - } - else { - DBSetDir(dbfile, old->name); - } + DBSetDir(dbfile, old->name); FREE(old->name); FREE(old); @@ -2344,6 +2323,21 @@ { int retval = db_silo_stat_one_file(name, statbuf); + /* check for case where we're opening a buffer as a file */ + if (opts_set_id > DB_FILE_OPTS_LAST) + { + const DBoptlist *opts = SILO_Globals.fileOptionsSets[opts_set_id-NUM_DEFAULT_FILE_OPTIONS_SETS]; + void *p; int vfd = -1; + if ((p = DBGetOption(opts, DBOPT_H5_VFD))) + vfd = *((int*)p); + if (vfd == DB_H5VFD_FIC) + { + statbuf->s.st_mode = 0x0; + statbuf->s.st_mode |= S_IREAD; + return 0; + } + } + if (opts_set_id == -1 || opts_set_id == DB_FILE_OPTS_H5_DEFAULT_SPLIT || opts_set_id > DB_FILE_OPTS_LAST) @@ -2361,7 +2355,6 @@ void *p; int vfd = -1; const DBoptlist *opts; - if (opts_set_id == -1) opts = SILO_Globals.fileOptionsSets[i]; else if (opts_set_id == DB_FILE_OPTS_H5_DEFAULT_SPLIT) @@ -2373,15 +2366,16 @@ if (opts) { /* ignore if options set unrelated to split vfds */ - if (p = DBGetOption(opts, DBOPT_H5_VFD)) + if ((p = DBGetOption(opts, DBOPT_H5_VFD))) vfd = *((int*)p); + if (vfd != DB_H5VFD_SPLIT) continue; /* ok, get meta/raw filenaming extension conventions */ - if (p = DBGetOption(opts, DBOPT_H5_META_EXTENSION)) + if ((p = DBGetOption(opts, DBOPT_H5_META_EXTENSION))) meta_ext = (char *) p; - if (p = DBGetOption(opts, DBOPT_H5_RAW_EXTENSION)) + if ((p = DBGetOption(opts, DBOPT_H5_RAW_EXTENSION))) raw_ext = (char *) p; } @@ -2468,7 +2462,7 @@ len = DBGetVarLength(dbfile, "_filters"); if (len <= 0) return 0; /*no filters requested */ - if (NULL == (var = DBGetVar(dbfile, "_filters"))) + if (NULL == (var = (char*)DBGetVar(dbfile, "_filters"))) return -1; /* @@ -2647,7 +2641,7 @@ } /*---------------------------------------------------------------------- - * Routine: DBSetDataReadMask + * Routine: DBSetDataReadMask2 * * Purpose: Set and return the data read mask * @@ -2674,16 +2668,16 @@ * * Modifications: *--------------------------------------------------------------------*/ -PUBLIC long -DBSetDataReadMask(long mask) +PUBLIC unsigned long long +DBSetDataReadMask2(unsigned long long mask) { - int oldmask = SILO_Globals.dataReadMask; + unsigned long long oldmask = SILO_Globals.dataReadMask; SILO_Globals.dataReadMask = mask; return oldmask; } /*---------------------------------------------------------------------- - * Routine: DBGetDataReadMask + * Routine: DBGetDataReadMask2 * * Purpose: Return the current data read mask * @@ -2695,8 +2689,8 @@ * * Modifications: *--------------------------------------------------------------------*/ -PUBLIC long -DBGetDataReadMask(void) +PUBLIC unsigned long long +DBGetDataReadMask2(void) { return SILO_Globals.dataReadMask; } @@ -2804,7 +2798,7 @@ } } -PUBLIC char * +PUBLIC char const * DBGetCompression() { return SILO_Globals.compressionParams; @@ -2819,7 +2813,7 @@ if (!dbfile->pub.free_z) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = ((dbfile->pub.free_z) (dbfile, (char *)meshname)); + retval = ((dbfile->pub.free_z) (dbfile, meshname)); API_RETURN(retval); } @@ -2974,7 +2968,7 @@ * Description: This routine sets the flag that controls whether * checksums are computed on client data. *--------------------------------------------------------------------*/ -PUBLIC int* +PUBLIC int const * DBSetUnknownDriverPriorities(const int *priorities) { int i = 0; @@ -2990,7 +2984,7 @@ return oldPriorities; } -PUBLIC int* +PUBLIC int const * DBGetUnknownDriverPriorities() { static int priorities[MAX_FILE_OPTIONS_SETS+DB_NFORMATS+1]; @@ -3202,6 +3196,39 @@ return DB_UNKNOWN; } +static int +db_IncObjectComponentCount(DBobject *obj) +{ + int new_maxcomps = 0; + char **new_comp_names = 0; + char **new_pdb_names = 0; + + obj->ncomponents++; + if (obj->ncomponents < obj->maxcomponents) + return 1; + + new_maxcomps = obj->maxcomponents * 1.5 + 1; /* golden rule + 1 */ + new_comp_names = REALLOC_N(obj->comp_names, char *, new_maxcomps); + if (!new_comp_names) + { + db_perror(0, E_NOMEM, "db_IncObjectComponentCount"); + return 0; + } + new_pdb_names = REALLOC_N(obj->pdb_names, char *, new_maxcomps); + if (!new_pdb_names) + { + FREE(new_comp_names); + db_perror(0, E_NOMEM, "db_IncObjectComponentCount"); + return 0; + } + + obj->maxcomponents = new_maxcomps; + obj->comp_names = new_comp_names; + obj->pdb_names = new_pdb_names; + + return 1; +} + /*---------------------------------------------------------------------- * Routine DBMakeObject * @@ -3229,25 +3256,30 @@ if (!name || !*name) API_ERROR("object name", E_BADARGS); - if (db_VariableNameValid((char *)name) == 0) + if (db_VariableNameValid(name) == 0) API_ERROR("object name", E_INVALIDNAME); - if (maxcomps <= 0) - API_ERROR("maxcomps", E_BADARGS); if (NULL == (object = ALLOC(DBobject))) API_ERROR(NULL, E_NOMEM); + if (maxcomps <= 0) maxcomps = 30; object->name = STRDUP(name); object->type = STRDUP(DBGetObjtypeName(type)); object->comp_names = ALLOC_N(char *, maxcomps); object->pdb_names = ALLOC_N(char *, maxcomps); + if (!object->name || !object->type || + !object->comp_names || !object->pdb_names) + { + FREE(object->name); + FREE(object->type); + FREE(object->comp_names); + FREE(object->pdb_names); + API_ERROR(NULL, E_NOMEM); + } + object->ncomponents = 0; object->maxcomponents = maxcomps; - if (!object->name || !object->type || !object->comp_names || - !object->pdb_names) - API_ERROR(NULL, E_NOMEM); - API_RETURN(object); } API_END_NOPOP; /*BEWARE: If API_RETURN above is removed use API_END */ @@ -3295,6 +3327,9 @@ FREE(object->comp_names[i]); FREE(object->pdb_names[i]); } + for (i = 0; i < DB_MAX_H5_OBJ_VALS; i++) { + FREE(object->h5_names[i]); + } FREE(object->comp_names); FREE(object->pdb_names); @@ -3392,7 +3427,7 @@ API_ERROR("object pointer", E_BADARGS); if (!compname || !*compname) API_ERROR("component name", E_BADARGS); - if (db_VariableNameValid((char *)compname) == 0) + if (db_VariableNameValid(compname) == 0) API_ERROR("component name", E_INVALIDNAME); if (!pdbname || !*pdbname) API_ERROR("pdb name", E_BADARGS); @@ -3408,7 +3443,9 @@ API_ERROR(NULL, E_NOMEM); } - object->ncomponents++; + if (!db_IncObjectComponentCount(object)) + API_ERROR(NULL, E_NOMEM); + } API_END; @@ -3453,7 +3490,7 @@ API_ERROR("object pointer", E_BADARGS); if (!compname || !*compname) API_ERROR("component name", E_BADARGS); - if (db_VariableNameValid((char *)compname) == 0) + if (db_VariableNameValid(compname) == 0) API_ERROR("component name", E_INVALIDNAME); if (object->ncomponents >= object->maxcomponents) { API_ERROR("object ncomponents", E_BADARGS); @@ -3469,7 +3506,9 @@ API_ERROR(NULL, E_NOMEM); } - object->ncomponents++; + if (!db_IncObjectComponentCount(object)) + API_ERROR(NULL, E_NOMEM); + } API_END; @@ -3518,7 +3557,7 @@ API_ERROR("object pointer", E_BADARGS); if (!compname || !*compname) API_ERROR("component name", E_BADARGS); - if (db_VariableNameValid((char *)compname) == 0) + if (db_VariableNameValid(compname) == 0) API_ERROR("component name", E_INVALIDNAME); if (object->ncomponents >= object->maxcomponents) { API_ERROR("object ncomponents", E_BADARGS); @@ -3533,7 +3572,8 @@ FREE(object->comp_names[object->ncomponents]); API_ERROR(NULL, E_NOMEM); } - object->ncomponents++; + if (!db_IncObjectComponentCount(object)) + API_ERROR(NULL, E_NOMEM); } API_END; @@ -3569,7 +3609,7 @@ API_ERROR("object pointer", E_BADARGS); if (!compname || !*compname) API_ERROR("component name", E_BADARGS); - if (db_VariableNameValid((char *)compname) == 0) + if (db_VariableNameValid(compname) == 0) API_ERROR("component name", E_INVALIDNAME); if (object->ncomponents >= object->maxcomponents) { API_ERROR("object ncomponents", E_BADARGS); @@ -3584,7 +3624,8 @@ FREE(object->comp_names[object->ncomponents]); API_ERROR(NULL, E_NOMEM); } - object->ncomponents++; + if (!db_IncObjectComponentCount(object)) + API_ERROR(NULL, E_NOMEM); } API_END; @@ -3629,7 +3670,7 @@ API_ERROR("object pointer", E_BADARGS); if (!compname || !*compname) API_ERROR("component name", E_BADARGS); - if (db_VariableNameValid((char *)compname) == 0) + if (db_VariableNameValid(compname) == 0) API_ERROR("component name", E_INVALIDNAME); if (object->ncomponents >= object->maxcomponents) { API_ERROR("object ncomponents", E_BADARGS); @@ -3638,7 +3679,7 @@ { if (!SILO_Globals.allowEmptyObjects) API_ERROR("string literal component", E_BADARGS); - sprintf(tmp, "'null'", ss); + sprintf(tmp, "'null'"); } else sprintf(tmp, "'%s'", ss); @@ -3650,7 +3691,8 @@ FREE(object->comp_names[object->ncomponents]); API_ERROR(NULL, E_NOMEM); } - object->ncomponents++; + if (!db_IncObjectComponentCount(object)) + API_ERROR(NULL, E_NOMEM); } API_END; @@ -3771,10 +3813,10 @@ * * Modifications: *-------------------------------------------------------------------------*/ -PUBLIC char * +PUBLIC char const * DBErrString(void) { - static char s[32]; + static char s[128]; if (db_errno < 0 || db_errno >= NELMTS(_db_err_list)) { sprintf(s, "Error %d", db_errno); @@ -3790,37 +3832,7 @@ return db_errno; } -/*------------------------------------------------------------------------- - * Function: DBErrFunc - * - * Purpose: Return the name (as a static string) of the function - * that raised the last error. This could be the function - * that detected the error or the top-level API function - * depending on the arguments to DBShowErrors(). - * - * Return: Success: ptr to function name - * - * Failure: ptr to empty string - * - * Programmer: robb@cloud - * Tue Feb 21 08:25:40 EST 1995 - * - * Modifications: - * Mark C. Miller, Mon Jul 19 08:49:29 PDT 2010 - * Changed name to DBerrFuncname as this function returns the NAME of - * the last Silo function that err'd. The previous name, DBErrFunc - * suggested it returned the pointer to the function passed in - * DBShowErrors. I added a new function, DBErrfunc, to return that. - * - *-------------------------------------------------------------------------*/ -PUBLIC char * -DBErrFunc(void) -{ - DEPRECATE_MSG("DBErrFunc",4,8,"DBErrFuncname"); - return db_errfunc; -} - -PUBLIC char * +PUBLIC char const * DBErrFuncname(void) { return db_errfunc; @@ -3839,6 +3851,95 @@ } /*------------------------------------------------------------------------- + * Function: db_parse_version_digits_from_string + * + * str: version string + * sep: separator character (typically '.') + * digits: array of digits to return + * ndigits: size of digits array + * + * returns 0 on successful conversion, non-zero on failure + *-----------------------------------------------------------------------*/ +static int +db_parse_version_digits_from_string(char const *str, char sep, int *digits, int ndigits) +{ + int i, nseps, non_digits, retval = 0; + char *p, *ostr; + + if (!str || !*str) + return 1; + + ostr = strdup(str); + p = ostr; + + /* Examine string for seperator chars and non-digits */ + nseps = 0; + non_digits = 0; + while (*p) + { + if (*p == sep) + { + *p = '\0'; + nseps++; + } + else if (!strncmp(p, "-pre", 4)) + { + *(p+0) = '\0'; + *(p+1) = '0'; + *(p+2) = '0'; + *(p+3) = '0'; + nseps++; + p += 3; + } + else if (*p < '0' || *p > '9') + { + non_digits = 1; + } + p++; + } + nseps++; + + /* Make a second pass over string converting all the digits */ + if (!non_digits) + { + p = ostr; + errno = 0; + for (i = 0; i < ndigits; i++) + digits[i] = 0; + for (i = 0; i < nseps && ndigits && errno == 0; i++, ndigits--) + { + digits[i] = strtol(p, 0, 10); + while (*p != '\0') p++; + p++; + } + if (errno) + retval = 1; + } + else + { + retval = 1; + } + + free(ostr); + + return retval; +} + +static int +db_compare_version_digits(int const *a_digits, int const *b_digits, int ndigits) +{ + int i; + for (i = 0; i < ndigits; i++) + { + if (a_digits[i] < b_digits[i]) + return -1; + else if (a_digits[i] > b_digits[i]) + return 1; + } + return 0; +} + +/*------------------------------------------------------------------------- * Function: DBVersion * * Purpose: Return the version number of the library as a string. @@ -3853,7 +3954,7 @@ * Mark C. Miller, Tue Oct 24 12:39:31 PDT 2006 * Changed to use SILO_VSTRING *-------------------------------------------------------------------------*/ -PUBLIC char * +PUBLIC char const * DBVersion(void) { static char version[256]; @@ -3862,6 +3963,23 @@ return version; } +PUBLIC int +DBVersionDigits(int *maj, int *min, int *pat, int *pre) +{ + int digits[4] = {0,0,0,0}; + + if (!db_parse_version_digits_from_string(DBVersion(), '.', + digits, sizeof(digits)/sizeof(digits[0]))) + { + if (maj) *maj = digits[0]; + if (min) *min = digits[1]; + if (pat) *pat = digits[2]; + if (pre) *pre = digits[3]; + return 0; + } + return -1; +} + /*------------------------------------------------------------------------- * Function: DBVersionGE * @@ -3876,11 +3994,19 @@ PUBLIC int DBVersionGE(int Maj, int Min, int Pat) { - if (((SILO_VERS_MAJ==Maj) && (SILO_VERS_MIN==Min) && (SILO_VERS_PAT>=Pat)) || - ((SILO_VERS_MAJ==Maj) && (SILO_VERS_MIN>Min)) || - (SILO_VERS_MAJ>Maj)) - return 1; - return 0; + int a_digits[3] = {SILO_VERS_MAJ, SILO_VERS_MIN, SILO_VERS_PAT}; + int b_digits[3] = {Maj<0?0:Maj, Min<0?0:Min, Pat<0?0:Pat}; + return db_compare_version_digits(a_digits, b_digits, 3) >= 0; +} + +PUBLIC int +DBVersionGEFileVersion(const DBfile *dbfile) +{ + int a_digits[3]; + int b_digits[3] = {4, 5, 0}; /* earliest version we have version info in file */ + DBVersionDigits(&a_digits[0], &a_digits[1], &a_digits[2], 0); + DBFileVersionDigits(dbfile, &b_digits[0], &b_digits[1], &b_digits[2], 0); + return db_compare_version_digits(a_digits, b_digits, 3) >= 0; } /*------------------------------------------------------------------------- @@ -3893,7 +4019,7 @@ * * Programmer: Mark C. Miller, Mon Jan 12 20:59:30 PST 2009 *-------------------------------------------------------------------------*/ -PUBLIC char * +PUBLIC char const * DBFileVersion(const DBfile *dbfile) { static char version[256]; @@ -3904,6 +4030,22 @@ return version; } +PUBLIC int +DBFileVersionDigits(const DBfile *dbfile, int *maj, int *min, int *pat, int *pre) +{ + int digits[4] = {0,0,0,0}; + if (!db_parse_version_digits_from_string(DBFileVersion(dbfile), '.', + digits, sizeof(digits)/sizeof(digits[0]))) + { + if (maj) *maj = digits[0]; + if (min) *min = digits[1]; + if (pat) *pat = digits[2]; + if (pre) *pre = digits[3]; + return 0; + } + return -1; +} + /*------------------------------------------------------------------------- * Function: DBFileVersionGE * @@ -3921,7 +4063,9 @@ DBFileVersionGE(const DBfile *dbfile, int Maj, int Min, int Pat) { int retval = -1; - int fileMaj = -1, fileMin = -1, filePat = -1; + int unknown = 0; + int a_digits[3]; + int b_digits[3] = {Maj<0?0:Maj, Min<0?0:Min, Pat<0?0:Pat}; char *version = STRDUP(DBFileVersion(dbfile)); if (strncmp(version, "unknown", 7) == 0) @@ -3930,64 +4074,31 @@ in version 4.5.1. So, if it is 'unknown', we can return something useful ONLY if the version we're comparing against is 4.5.1 or greater. */ - if ((Maj==4 && Min==5 && Pat>=1) || - (Maj==4 && Min>5) || - (Maj>4)) - retval = 0; + a_digits[0] = 4; + a_digits[1] = 5; + a_digits[2] = 0; + unknown = 1; } else { - int val; - char *token; - - errno = 0; - token = strtok(version, "."); - if (token) - val = strtol(token, 0, 10); - if (token != 0 && val != 0 && errno == 0) - { - fileMaj = val; - token = strtok(0, "."); - if (token) - val = strtol(token, 0, 10); - if (token != 0 && val != 0 && errno == 0) - { - fileMin = val; - token = strtok(0, "."); - if (token) - val = strtol(token, 0, 10); - if (token != 0 && val != 0 && errno == 0) - filePat = val; - } - } - - if (fileMaj != -1 && fileMin != -1 && filePat != -1) - { - if ((fileMaj==Maj && fileMin==Min && filePat>=Pat) || - (fileMaj==Maj && fileMin>Min) || - (fileMaj>Maj)) - retval = 1; - else - retval = 0; - } - else if (fileMaj != -1 && fileMin != -1) - { - if ((fileMaj==Maj && fileMin>=Min) || - (fileMaj>Maj)) - retval = 1; - else - retval = 0; - } - else if (fileMaj != -1) + if (db_parse_version_digits_from_string(version, '.', + a_digits, sizeof(a_digits)/sizeof(a_digits[0]))) { - if (fileMaj>=Maj) - retval = 1; - else - retval = 0; + free(version); + return -1; } } free(version); + + retval = db_compare_version_digits(a_digits, b_digits, 3) >= 0; + + if (unknown) + { + if (retval) + retval = -1; + } + return retval; } @@ -4183,7 +4294,7 @@ if ((fileid = db_get_fileid(DB_ISOPEN)) < 0) API_ERROR((char *)name, E_MAXOPEN); - if (NULL == (dbfile = (DBOpenCB[type]) ((char *)name, mode, opts_set_id))) + if (NULL == (dbfile = (DBOpenCB[type]) (name, mode, opts_set_id))) { _db_fstatus[fileid] = 0; API_RETURN(NULL); @@ -4202,7 +4313,7 @@ } db_filter_install(dbfile); if (DBInqVarExists(dbfile, SILO_VSTRING_NAME)) - dbfile->pub.file_lib_version = DBGetVar(dbfile, SILO_VSTRING_NAME); + dbfile->pub.file_lib_version = (char*)DBGetVar(dbfile, SILO_VSTRING_NAME); API_RETURN(dbfile); } @@ -4319,8 +4430,8 @@ if ((fileid = db_get_fileid(DB_ISOPEN)) < 0) API_ERROR((char *)name, E_MAXOPEN); - dbfile = ((DBCreateCB[type]) ((char *)name, mode, target, opts_set_id, - (char *)info)); + dbfile = ((DBCreateCB[type]) (name, mode, target, opts_set_id, + info)); if (!dbfile) { _db_fstatus[fileid] = 0; @@ -4580,78 +4691,6 @@ API_END_NOPOP; /*BEWARE: If API_RETURN above is removed use API_END */ } -/*------------------------------------------------------------------------- - * Function: DBPause - * - * Purpose: Pause the specified simulation. - * - * Return: Success: 0 if the driver succeeded. - * - * Failure: -1 if the driver returned failure. - * - * Programmer: brugger@viper - * Wed Jan 25 09:21:18 PST 1995 - * - * Modifications: - * Eric Brugger, Tue Feb 7 08:09:26 PST 1995 - * I replaced API_END with API_END_NOPOP. - * - * Eric Brugger, Fri Mar 3 17:37:25 PST 1995 - * I modified the error return value to be -1, instead of NULL. - *-------------------------------------------------------------------------*/ -PUBLIC int -DBPause(DBfile *file) -{ - int retval; - - API_DEPRECATE("DBPause", int, -1, 4,6,"") { - if (!file) - API_ERROR(NULL, E_NOFILE); - if (NULL == file->pub.pause) - API_ERROR(file->pub.name, E_NOTIMP); - - retval = (file->pub.pause) (file); - API_RETURN(retval); - } - API_END_NOPOP; /*BEWARE: If API_RETURN above is removed use API_END */ -} - -/*------------------------------------------------------------------------- - * Function: DBContinue - * - * Purpose: Continue the specified simulation. - * - * Return: Success: 0 if the driver succeeded. - * - * Failure: -1 if the driver returned failure. - * - * Programmer: brugger@viper - * Wed Jan 25 09:23:22 PST 1995 - * - * Modifications: - * Eric Brugger, Tue Feb 7 08:09:26 PST 1995 - * I replaced API_END with API_END_NOPOP. - * - * Eric Brugger, Fri Mar 3 17:37:25 PST 1995 - * I modified the error return value to be -1, instead of NULL. - *-------------------------------------------------------------------------*/ -PUBLIC int -DBContinue(DBfile *file) -{ - int retval; - - API_DEPRECATE("DBContinue", int, -1, 4,6,"") { - if (!file) - API_ERROR(NULL, E_NOFILE); - if (NULL == file->pub.cont) - API_ERROR(file->pub.name, E_NOTIMP); - - retval = (file->pub.cont) (file); - API_RETURN(retval); - } - API_END_NOPOP; /*BEWARE: If API_RETURN above is removed use API_END */ -} - /*---------------------------------------------------------------------- * Routine DBInqVarExists * @@ -4683,7 +4722,6 @@ API_ERROR("variable name", E_BADARGS); if (dbfile->pub.exist == NULL) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.exist) (dbfile, varname); API_RETURN(retval); } @@ -4777,12 +4815,16 @@ API_BEGIN("DBMakeOptlist", DBoptlist *, NULL) { if (maxopts <= 0) API_ERROR("maxopts", E_BADARGS); - if (NULL == (optlist = ALLOC(DBoptlist))) - API_ERROR(NULL, E_NOMEM); - if (NULL == (optlist->options = ALLOC_N(int, maxopts))) { - API_ERROR(NULL, E_NOMEM); - } - if (NULL == (optlist->values = ALLOC_N(void *, maxopts))) { + optlist = ALLOC(DBoptlist); + if (!optlist) API_ERROR(NULL, E_NOMEM); + optlist->options = ALLOC_N(int, maxopts); + optlist->values = ALLOC_N(void *, maxopts); + + if (!optlist->options || !optlist->values) + { + FREE(optlist->values); + FREE(optlist->options); + FREE(optlist); API_ERROR(NULL, E_NOMEM); } @@ -4911,6 +4953,25 @@ optlist->options[optlist->numopts] = option; optlist->values[optlist->numopts] = value; optlist->numopts++; + + if (optlist->numopts >= optlist->maxopts) + { + int new_maxopts = optlist->maxopts * 1.5 + 1; /* golden rule + 1 */ + int *new_options = REALLOC_N(optlist->options, int, new_maxopts); + void **new_values = REALLOC_N(optlist->values, void*, new_maxopts); + + if (!new_options || !new_values) + { + FREE(new_options); + FREE(new_values); + API_ERROR(0, E_NOMEM); + } + + optlist->maxopts = new_maxopts; + optlist->options = new_options; + optlist->values = new_values; + } + } API_END; @@ -5117,50 +5178,104 @@ API_END_NOPOP; /*BEWARE: If API_RETURN above is removed use API_END */ } -/*---------------------------------------------------------------------- - * Routine DBGetAtt - * - * Purpose - * - * Allocate space for, and read, the given attribute of the given - * variable. - * - * Modified - * Robb Matzke, Mon Nov 14 14:18:56 EST 1994 - * Added error mechanism. - * - * Eric Brugger, Tue Feb 7 08:09:26 PST 1995 - * I replaced API_END with API_END_NOPOP. - * - * Sean Ahern, Tue Sep 28 10:48:06 PDT 1999 - * Added a check for variable name validity. - * - * Sean Ahern, Tue Sep 28 11:00:13 PDT 1999 - * Made the error messages a little better. - * - * Mark C. Miller, Tue Sep 6 10:57:55 PDT 2005 - * Deprecated this function - *--------------------------------------------------------------------*/ -PUBLIC void * -DBGetAtt(DBfile *dbfile, const char *varname, const char *attname) +/* +This logic is necessary to support callers accessing standard (e.g. non-DB_USERDEF) +objects via the generic interface to ensure logic for specially handled component +values is consistent with the standard object's DBGetXXX methods. +To ensure a zero for the component in the file means either not-present or +not-set, certain components, especially those for which a zero value is a valid +value for the data producer to use, special handling is required and that logic +is sprinkled about in the DBPutXXX and DBGetXXX methods of the drivers and so +to is it required here. Its a nasty maintenance issue. +*/ + +static int +db_IsComponentNameStandardWithSpecialHandling(char const *compname) { - void *retval = NULL; + if (!strcmp(compname, "missing_value")) return 1; + if (!strcmp(compname, "topo_dim")) return 1; + if (!strcmp(compname, "repr_block_idx")) return 1; + return 0; +} - API_DEPRECATE2("DBGetAtt", void *, NULL, varname, 4,6,"") { - if (!dbfile) - API_ERROR(NULL, E_NOFILE); - if (!varname || !*varname) - API_ERROR("variable name", E_BADARGS); - if (!attname || !*attname) - API_ERROR("attribute name", E_BADARGS); - if (!dbfile->pub.g_attr) - API_ERROR(dbfile->pub.name, E_NOTIMP); +/* For use in the DBGetComponent call */ +static void +db_AdjustSpeciallyHandledStandardObjectComponentValue( + void *val_ptr, int obj_type, char const *comp_name) +{ + if (!val_ptr || !comp_name) return; - retval = (dbfile->pub.g_attr) (dbfile, (char *)varname, - (char *)attname); - API_RETURN(retval); + if (!strcmp(comp_name, "missing_value") && + (obj_type == DB_UCDVAR || obj_type == DB_QUADVAR || obj_type == DB_CURVE || + obj_type == DB_POINTVAR || obj_type == DB_MULTIVAR)) + { + double val_for_mem, val_from_file = *((double*)val_ptr); + db_SetMissingValueForGet(val_for_mem, val_from_file); + *((double*)val_ptr) = val_for_mem; + } + else if (!strcmp(comp_name, "repr_block_idx") && + (obj_type == DB_MULTIMESH || obj_type == DB_MULTIVAR || + obj_type == DB_MULTIMAT || obj_type == DB_MULTIMATSPECIES)) + { + int val_for_mem, val_from_file = *((int*)val_ptr); + val_for_mem = val_from_file - 1; + *((int*)val_ptr) = val_for_mem; + } + else if (!strcmp(comp_name, "topo_dim") && + (obj_type == DB_MULTIMESH || obj_type == DB_UCDMESH)) + { + int val_for_mem, val_from_file = *((int*)val_ptr); + val_for_mem = val_from_file - 1; + *((int*)val_ptr) = val_for_mem; + } +} + +/* For use in the DBGetObject call */ +static void +db_AdjustSpeciallyHandledStandardObjectComponentValues(DBobject *obj) +{ + int i, obj_type; + + if (!obj) return; + + obj_type = DBGetObjtypeTag(obj->type); + if (obj_type == DB_USERDEF) return; + + for (i = 0; i < obj->ncomponents; i++) + { + char tmp[256]; + + if (!strcmp(obj->comp_names[i], "missing_value") && + (obj_type == DB_UCDVAR || obj_type == DB_QUADVAR || obj_type == DB_CURVE || + obj_type == DB_POINTVAR || obj_type == DB_MULTIVAR)) + { + double val_for_mem, val_from_file = strtod(obj->pdb_names[i]+4,0); + db_SetMissingValueForGet(val_for_mem, val_from_file); + sprintf(tmp, "'%.30g'", val_for_mem); + } + else if (!strcmp(obj->comp_names[i], "repr_block_idx") && + (obj_type == DB_MULTIMESH || obj_type == DB_MULTIVAR || + obj_type == DB_MULTIMAT || obj_type == DB_MULTIMATSPECIES)) + { + int val_for_mem, val_from_file = (int) strtol(obj->pdb_names[i]+4,0,10); + val_for_mem = val_from_file - 1; + sprintf(tmp, "'%d'", val_for_mem); + } + else if (!strcmp(obj->comp_names[i], "topo_dim") && + (obj_type == DB_MULTIMESH || obj_type == DB_UCDMESH)) + { + int val_for_mem, val_from_file = (int) strtol(obj->pdb_names[i]+4,0,10); + val_for_mem = val_from_file - 1; + sprintf(tmp, "'%d'", val_for_mem); + } + else + { + continue; + } + + FREE(obj->pdb_names[i]); + obj->pdb_names[i] = STRDUP(tmp); } - API_END_NOPOP; /*BEWARE: If API_RETURN above is removed use API_END */ } /*---------------------------------------------------------------------- @@ -5226,6 +5341,11 @@ API_ERROR(dbfile->pub.name, E_NOTIMP); retval = (dbfile->pub.g_comp) (dbfile, objname, compname); + + if (db_IsComponentNameStandardWithSpecialHandling(compname)) + db_AdjustSpeciallyHandledStandardObjectComponentValue(retval, + DBInqVarType(dbfile, objname), compname); + API_RETURN(retval); } API_END_NOPOP; /*BEWARE: If API_RETURN above is removed use API_END */ @@ -5369,52 +5489,7 @@ if (!dbfile->pub.cd) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.cd) (dbfile, (char *)path); - db_FreeToc(dbfile); - API_RETURN(retval); - } - API_END_NOPOP; /*BEWARE: If API_RETURN above is removed use API_END */ -} - -/*------------------------------------------------------------------------- - * Function: DBSetDirID - * - * Purpose: Same as DBSetDir() except by ID instead of name. - * - * Return: Success: 0 - * - * Failure: -1 - * - * Programmer: robb@cloud - * Wed Nov 9 13:15:19 EST 1994 - * - * Modifications: - * Robb Matzke, Mon Nov 21 21:33:11 EST 1994 - * Added error mechanism. - * - * Eric Brugger, Tue Feb 7 08:09:26 PST 1995 - * I replaced API_END with API_END_NOPOP. - * - * Robb Matzke, 2000-05-23 - * The old table of contents is discarded if the directory changes. - *-------------------------------------------------------------------------*/ -PUBLIC int -DBSetDirID(DBfile *dbfile, int dirid) -{ - int retval; - - API_BEGIN("DBSetDirID", int, -1) { - if (!dbfile) - API_ERROR(NULL, E_NOFILE); - if (SILO_Globals.enableGrabDriver == TRUE) - API_ERROR("DBSetDirID", E_GRABBED) ; - if (!dbfile->pub.toc) { - API_ERROR("missing table of contents", E_BADARGS); - } - if (!dbfile->pub.cdid) - API_ERROR(dbfile->pub.name, E_NOTIMP); - - retval = (dbfile->pub.cdid) (dbfile, dirid); + retval = (dbfile->pub.cd) (dbfile, path); db_FreeToc(dbfile); API_RETURN(retval); } @@ -5422,58 +5497,6 @@ } /*------------------------------------------------------------------------- - * Function: DBListDir - * - * Purpose: Lists the contents of the diven directories based - * on the listing options passed in through argv[]. - * - * Return: Success: 0 - * - * Failure: -1 - * - * Programmer: matzke@viper - * Tue Nov 8 11:36:05 PST 1994 - * - * Modifications: - * Robb Matzke, Mon Nov 21 21:35:29 EST 1994 - * Added error mechanism. - * - * Robb Matzke, Fri Dec 9 17:11:50 EST 1994 - * This no longer invokes a callback. There is nothing special to - * do here that depends on the device driver. All we do is format - * the existing table of contents in some nice way. - * - * Eric Brugger, Tue Feb 7 08:09:26 PST 1995 - * I replaced API_END with API_END_NOPOP. - * - * Mark C. Miller, Tue Sep 6 10:57:55 PDT 2005 - * Deprecated this function - *-------------------------------------------------------------------------*/ -PUBLIC int -DBListDir(DBfile *dbfile, char *argv[], int argc) -{ - int retval; - - API_DEPRECATE("DBListDir", int, -1, 4,6,"DBGetToc()") { - if (!dbfile) - API_ERROR(NULL, E_NOFILE); - if (SILO_Globals.enableGrabDriver == TRUE) - API_ERROR("DBListDir", E_GRABBED) ; - DBNewToc(dbfile); - if (!dbfile->pub.toc) - API_ERROR("no table of contents", E_INTERNAL); - if (argc < 0) - API_ERROR("nargs", E_BADARGS); - if (!argv && argc) - API_ERROR("args", E_BADARGS); - - retval = db_ListDir2(dbfile, argv, argc, FALSE, NULL, NULL); - API_RETURN(retval); - } - API_END_NOPOP; /*BEWARE: If API_RETURN above is removed use API_END */ -} - -/*------------------------------------------------------------------------- * Function: DBFilters * * Purpose: List the names of filters installed for the specified @@ -5552,12 +5575,12 @@ API_ERROR("DBMkDir", E_GRABBED) ; if (!name || !*name) API_ERROR("directory name", E_BADARGS); - if (db_VariableNameValid((char *)name) == 0) + if (db_VariableNameValid(name) == 0) API_ERROR("directory name", E_INVALIDNAME); if (!dbfile->pub.mkdir) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.mkdir) (dbfile, (char *)name); + retval = (dbfile->pub.mkdir) (dbfile, name); db_FreeToc(dbfile); API_RETURN(retval); } @@ -5596,7 +5619,7 @@ API_ERROR("source directory name", E_BADARGS); if (!dstDir || !*dstDir) API_ERROR("destination directory name", E_BADARGS); - if (db_VariableNameValid((char *)dstDir) == 0) + if (db_VariableNameValid(dstDir) == 0) API_ERROR("destination directory name", E_INVALIDNAME); if (!dbfile->pub.cpdir) API_ERROR(dbfile->pub.name, E_NOTIMP); @@ -5750,6 +5773,7 @@ if (!dbfile->pub.g_obj) API_ERROR(dbfile->pub.name, E_NOTIMP); retval = (dbfile->pub.g_obj) (dbfile, (char const *)objname); + db_AdjustSpeciallyHandledStandardObjectComponentValues(retval); API_RETURN(retval); } API_END_NOPOP; /* BEWARE: If API_RETURN above is @@ -5803,23 +5827,28 @@ if (!dbfile) API_ERROR(NULL, E_NOFILE); if (SILO_Globals.enableGrabDriver == TRUE) - API_ERROR("DBWriteComponent", E_GRABBED) ; + API_ERROR("DBWriteComponent", E_GRABBED) ; if (!obj) API_ERROR("object pointer", E_BADARGS); if (SILO_Globals.allowEmptyObjects) { - if (!var) API_RETURN(0); + if (nd<=0) API_RETURN(0); if (!count) API_RETURN(0); + if (!var) API_RETURN(0); for(nvals=1,i=0;iname)) API_ERROR("overwrite not allowed", E_NOOVERWRITE); +#endif if (!prefix || !*prefix) API_ERROR("prefix", E_BADARGS); if (db_VariableNameValid((char *)prefix) == 0) @@ -5839,12 +5868,13 @@ if (nvals == 0) { API_ERROR("Zero-length write attempted", E_BADARGS); } - if (obj->ncomponents >= obj->maxcomponents) { - API_ERROR("ncomponents", E_BADARGS); - } if (!dbfile->pub.w_comp) API_ERROR(dbfile->pub.name, E_NOTIMP); + /* Note that the work to add the variable component to the object is + handled down in the drivers due to the fact that the drivers may + use different rules to construct the object component names */ + retval = (dbfile->pub.w_comp) (dbfile, obj, comp_name, prefix, datatype, var, nd, count); db_FreeToc(dbfile); @@ -5899,7 +5929,7 @@ if (!vname || !*vname) API_ERROR("variable name", E_BADARGS); if (strncmp("/.silo/#", vname, 8) != 0 && - db_VariableNameValid((char *)vname) == 0) + db_VariableNameValid(vname) == 0) API_ERROR("variable name", E_INVALIDNAME); if (!SILO_Globals.allowOverwrites && DBInqVarExists(dbfile, vname)) API_ERROR("overwrite not allowed", E_NOOVERWRITE); @@ -5954,8 +5984,8 @@ * The old table of contents is discarded if the directory changes. *-------------------------------------------------------------------------*/ PUBLIC int -DBWriteSlice (DBfile *dbfile, const char *vname, void *values, int dtype, - int offset[], int length[], int stride[], int dims[], +DBWriteSlice (DBfile *dbfile, const char *vname, void const *values, int dtype, + int const *offset, int const *length, int const *stride, int const *dims, int ndims) { int retval; @@ -5969,7 +5999,7 @@ API_ERROR("DBWriteSlice", E_GRABBED) ; if (!vname || !*vname) API_ERROR("variable name", E_BADARGS); - if (db_VariableNameValid((char *)vname) == 0) + if (db_VariableNameValid(vname) == 0) API_ERROR("variable name", E_INVALIDNAME); if (!values) API_ERROR("values", E_BADARGS); @@ -5992,7 +6022,7 @@ if (!dbfile->pub.writeslice) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.writeslice) (dbfile, (char *)vname, values, + retval = (dbfile->pub.writeslice) (dbfile, vname, values, dtype, offset, length, stride, dims, ndims); db_FreeToc(dbfile); @@ -6002,60 +6032,6 @@ } /*------------------------------------------------------------------------- - * Function: DBReadAtt - * - * Purpose: Reads the given attribute value into the provided space. - * - * Return: Success: 0 - * - * Failure: -1 - * - * Programmer: robb@cloud - * Wed Nov 9 12:54:24 EST 1994 - * - * Modifications: - * Robb Matzke, Mon Nov 21 21:44:07 EST 1994 - * Added error mechanism. - * - * Eric Brugger, Tue Feb 7 08:09:26 PST 1995 - * I replaced API_END with API_END_NOPOP. - * - * Sean Ahern, Tue Sep 28 10:48:06 PDT 1999 - * Added a check for variable name validity. - * - * Sean Ahern, Tue Sep 28 11:00:13 PDT 1999 - * Made the error messages a little better. - * - * Mark C. Miller, Tue Sep 6 10:57:55 PDT 2005 - * Deprectated this function - *-------------------------------------------------------------------------*/ -PUBLIC int -DBReadAtt(DBfile *dbfile, const char *vname, const char *aname, void *results) -{ - int retval; - - API_DEPRECATE2("DBReadAtt", int, -1, vname, 4,6,"") { - if (!dbfile) - API_ERROR(NULL, E_NOFILE); - if (SILO_Globals.enableGrabDriver == TRUE) - API_ERROR("DBReadAtt", E_GRABBED) ; - if (!vname || !*vname) - API_ERROR("variable name", E_BADARGS); - if (!aname || !*aname) - API_ERROR("attribute name", E_BADARGS); - if (!results) - API_ERROR("results pointer", E_BADARGS); - if (!dbfile->pub.r_att) - API_ERROR(dbfile->pub.name, E_NOTIMP); - - retval = (dbfile->pub.r_att) (dbfile, (char *)vname, (char *)aname, - results); - API_RETURN(retval); - } - API_END_NOPOP; /*BEWARE: If API_RETURN above is removed use API_END */ -} - -/*------------------------------------------------------------------------- * Function: DBGetCompoundarray * * Purpose: Read a compound array object from the file. @@ -6075,7 +6051,7 @@ * Added a check for variable name validity. *-------------------------------------------------------------------------*/ PUBLIC DBcompoundarray * -DBGetCompoundarray(DBfile *dbfile, const char *name) +DBGetCompoundarray(DBfile *dbfile, char const *name) { DBcompoundarray *retval = NULL; @@ -6089,7 +6065,7 @@ if (NULL == dbfile->pub.g_ca) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.g_ca) (dbfile, (char *)name); + retval = (dbfile->pub.g_ca) (dbfile, name); API_RETURN(retval); } API_END_NOPOP; /*BEWARE: If API_RETURN above is removed use API_END */ @@ -6113,7 +6089,7 @@ * Added a check for variable name validity. *-------------------------------------------------------------------------*/ PUBLIC DBcurve * -DBGetCurve (DBfile *dbfile, const char *name) +DBGetCurve (DBfile *dbfile, char const *name) { DBcurve *retval = NULL; @@ -6128,7 +6104,7 @@ if (NULL == dbfile->pub.g_cu) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.g_cu) (dbfile, (char *)name); + retval = (dbfile->pub.g_cu) (dbfile, name); API_RETURN(retval); } API_END_NOPOP; /* BEWARE: If API_RETURN above is removed use API_END */ @@ -6163,7 +6139,7 @@ if (NULL == dbfile->pub.g_defv) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.g_defv) (dbfile, (char *)name); + retval = (dbfile->pub.g_defv) (dbfile, name); API_RETURN(retval); } API_END_NOPOP; /* BEWARE: If API_RETURN above is removed use API_END */ @@ -6204,7 +6180,7 @@ if (!dbfile->pub.g_ma) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.g_ma) (dbfile, (char *)name); + retval = (dbfile->pub.g_ma) (dbfile, name); API_RETURN(retval); } API_END_NOPOP; /*BEWARE: If API_RETURN above is removed use API_END */ @@ -6260,7 +6236,7 @@ if (!dbfile->pub.g_ms) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.g_ms) (dbfile, (char *)name); + retval = (dbfile->pub.g_ms) (dbfile, name); API_RETURN(retval); } API_END_NOPOP; /*BEWARE: If API_RETURN above is removed use API_END */ @@ -6305,7 +6281,7 @@ if (!dbfile->pub.g_mm) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.g_mm) (dbfile, (char *)name); + retval = (dbfile->pub.g_mm) (dbfile, name); API_RETURN(retval); } API_END_NOPOP; /*BEWARE: If API_RETURN above is removed use API_END */ @@ -6342,7 +6318,7 @@ if (!dbfile->pub.g_mmadj) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.g_mmadj) (dbfile, (char *)name, nmesh, + retval = (dbfile->pub.g_mmadj) (dbfile, name, nmesh, block_map); API_RETURN(retval); } @@ -6389,7 +6365,7 @@ if (!dbfile->pub.g_mv) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.g_mv) (dbfile, (char *)name); + retval = (dbfile->pub.g_mv) (dbfile, name); API_RETURN(retval); } API_END_NOPOP; /*BEWARE: If API_RETURN above is removed use API_END */ @@ -6431,7 +6407,7 @@ if (!dbfile->pub.g_mt) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.g_mt) (dbfile, (char *)name); + retval = (dbfile->pub.g_mt) (dbfile, name); API_RETURN(retval); } API_END_NOPOP; /*BEWARE: If API_RETURN above is removed use API_END */ @@ -6473,7 +6449,7 @@ if (!dbfile->pub.g_mms) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.g_mms) (dbfile, (char *)name); + retval = (dbfile->pub.g_mms) (dbfile, name); API_RETURN(retval); } API_END_NOPOP; /*BEWARE: If API_RETURN above is removed use API_END */ @@ -6517,7 +6493,7 @@ if (!dbfile->pub.g_pm) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.g_pm) (dbfile, (char *)name); + retval = (dbfile->pub.g_pm) (dbfile, name); API_RETURN(retval); } API_END_NOPOP; /*BEWARE: If API_RETURN above is removed use API_END */ @@ -6561,7 +6537,7 @@ if (!dbfile->pub.g_pv) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.g_pv) (dbfile, (char *)name); + retval = (dbfile->pub.g_pv) (dbfile, name); API_RETURN(retval); } API_END_NOPOP; /*BEWARE: If API_RETURN above is removed use API_END */ @@ -6609,7 +6585,7 @@ API_ERROR("quadmesh name", E_BADARGS); if (!dbfile->pub.g_qm) API_ERROR(dbfile->pub.name, E_NOTIMP); - qm = (dbfile->pub.g_qm) (dbfile, (char *)name); + qm = (dbfile->pub.g_qm) (dbfile, name); if (!qm) { API_RETURN(NULL); @@ -6691,76 +6667,13 @@ if (!dbfile->pub.g_qv) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.g_qv) (dbfile, (char *)name); + retval = (dbfile->pub.g_qv) (dbfile, name); API_RETURN(retval); } API_END_NOPOP; /*BEWARE: If API_RETURN above is removed use API_END */ } /*------------------------------------------------------------------------- - * Function: DBGetQuadvar1 - * - * Purpose: Read a scalar quadmesh variable (inverse of DBPutQuadVar1). - * - * Return: Success: 0 - * - * Failure: -1 - * - * Programmer: mcabee@viper - * Sun Jan 7, 1995 - * - * Modifications: - *-------------------------------------------------------------------------*/ -PUBLIC int -DBGetQuadvar1 (DBfile *dbfile, const char *varname, DB_DTPTR1 var, int *dims, - int *ndims, DB_DTPTR1 mixvar, int *mixlen, int *datatype, - int *centering) -{ - char tmpstr[64]; - int nbytes, i; - DBquadvar *qv = NULL; - - API_DEPRECATE2 ("DBGetQuadvar1", int, -1, varname, 4,6,"DBGetQuadvar()") { - if (SILO_Globals.enableGrabDriver == TRUE) - API_ERROR("DBGetQuadvar1", E_GRABBED) ; - if (NULL == (qv = DBGetQuadvar (dbfile, varname))) - API_ERROR ("DBGetQuadvar1", E_CALLFAIL); - - /* - * Copy the quad var into the supplied space. Assign - * the misc. attributes. - */ - nbytes = qv->nels * db_GetMachDataSize (qv->datatype); - memcpy (var, qv->vals[0], nbytes); - - *ndims = qv->ndims; - *centering = (qv->align[0] == 0.0) ? DB_NODECENT : DB_ZONECENT; - *datatype = qv->datatype; - *mixlen = qv->mixlen; - - for (i = 0; i < qv->ndims; i++) - dims[i] = qv->dims[i]; - - /* - * If there was mixed data, copy that too. - * Assume name of mixed component is 'varname_mix'. - */ - if ((int *)mixvar != NULL) { - strcpy (tmpstr, varname); - strcat (tmpstr, "_mix"); - - *mixlen = DBGetVarLength (dbfile, tmpstr); - DBReadVar (dbfile, tmpstr, mixvar); - } - - DBFreeQuadvar (qv); - - API_RETURN (0); - } - API_END_NOPOP; /*BEWARE: If API_RETURN above is removed use API_END */ -} - -/*------------------------------------------------------------------------- * Function: DBAnnotateUcdmesh * * Purpose: Walks a DBucdmesh data structure and adds shapetype @@ -6889,7 +6802,7 @@ API_ERROR("UCDmesh name", E_BADARGS); if (!dbfile->pub.g_um) API_ERROR(dbfile->pub.name, E_NOTIMP); - um = ((dbfile->pub.g_um) (dbfile, (char *)name)); + um = ((dbfile->pub.g_um) (dbfile, name)); if (!um) { API_RETURN(NULL); @@ -6969,7 +6882,7 @@ if (!dbfile->pub.g_uv) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.g_uv) (dbfile, (char *)name); + retval = (dbfile->pub.g_uv) (dbfile, name); API_RETURN(retval); } API_END_NOPOP; /*BEWARE: If API_RETURN above is removed use API_END */ @@ -7012,7 +6925,7 @@ if (!dbfile->pub.g_fl) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.g_fl) (dbfile, (char *)name); + retval = (dbfile->pub.g_fl) (dbfile, name); API_RETURN(retval); } API_END_NOPOP; /*BEWARE: If API_RETURN above is removed use API_END */ @@ -7055,7 +6968,7 @@ if (!dbfile->pub.g_zl) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.g_zl) (dbfile, (char *)name); + retval = (dbfile->pub.g_zl) (dbfile, name); API_RETURN(retval); } API_END_NOPOP; /*BEWARE: If API_RETURN above is removed use API_END */ @@ -7089,7 +7002,7 @@ if (!dbfile->pub.g_phzl) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.g_phzl) (dbfile, (char *)name); + retval = (dbfile->pub.g_phzl) (dbfile, name); API_RETURN(retval); } API_END_NOPOP; /*BEWARE: If API_RETURN above is removed use API_END */ @@ -7130,7 +7043,7 @@ if (!dbfile->pub.g_var) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.g_var) (dbfile, (char *)name); + retval = (dbfile->pub.g_var) (dbfile, name); API_RETURN(retval); } API_END_NOPOP; /*BEWARE: If API_RETURN above is removed use API_END */ @@ -7176,49 +7089,7 @@ if (!dbfile->pub.r_var) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.r_var) (dbfile, (char *)name, result); - API_RETURN(retval); - } - API_END_NOPOP; /*BEWARE: If API_RETURN above is removed use API_END */ -} - -/*------------------------------------------------------------------------- - * Function: DBReadVar1 - * - * Purpose: Reads one element form a variable into te provided space. - * - * Return: Success: 0 - * - * Failure: -1 - * - * Programmer: robb@cloud - * Wed Nov 9 13:03:16 EST 1994 - * - * Modifications: - * Sean Ahern, Tue Sep 28 10:48:06 PDT 1999 - * Added a check for variable name validity. - * - * Sean Ahern, Tue Sep 28 11:00:13 PDT 1999 - * Made the error messages a little better. - *-------------------------------------------------------------------------*/ -PUBLIC int -DBReadVar1(DBfile *dbfile, const char *vname, int offset, void *result) -{ - int retval; - - API_BEGIN2("DBReadVar1", int, -1, vname) { - if (!dbfile) - API_ERROR(NULL, E_NOFILE); - if (SILO_Globals.enableGrabDriver == TRUE) - API_ERROR("DBReadVar1", E_GRABBED) ; - if (!vname || !*vname) - API_ERROR("variable name", E_BADARGS); - if (!result) - API_ERROR("result pointer", E_BADARGS); - if (!dbfile->pub.r_var1) - API_ERROR(dbfile->pub.name, E_NOTIMP); - - retval = (dbfile->pub.r_var1) (dbfile, (char *)vname, offset, result); + retval = (dbfile->pub.r_var) (dbfile, name, result); API_RETURN(retval); } API_END_NOPOP; /*BEWARE: If API_RETURN above is removed use API_END */ @@ -7245,8 +7116,8 @@ * Made the error messages a little better. *-------------------------------------------------------------------------*/ PUBLIC int -DBReadVarSlice(DBfile *dbfile, const char *name, int *offset, int *length, - int *stride, int ndims, void *result) +DBReadVarSlice(DBfile *dbfile, const char *name, int const *offset, int const *length, + int const *stride, int ndims, void *result) { int retval; @@ -7270,7 +7141,7 @@ if (!dbfile->pub.r_varslice) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.r_varslice) (dbfile, (char *)name, offset, + retval = (dbfile->pub.r_varslice) (dbfile, name, offset, length, stride, ndims, result); API_RETURN(retval); } @@ -7311,7 +7182,7 @@ if (!dbfile->pub.g_varbl) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.g_varbl) (dbfile, (char *)name); + retval = (dbfile->pub.g_varbl) (dbfile, name); API_RETURN(retval); } API_END_NOPOP; /*BEWARE: If API_RETURN above is removed use API_END */ @@ -7351,7 +7222,7 @@ if (!dbfile->pub.g_varlen) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.g_varlen) (dbfile, (char *)name); + retval = (dbfile->pub.g_varlen) (dbfile, name); API_RETURN(retval); } API_END_NOPOP; /*BEWARE: If API_RETURN above is removed use API_END */ @@ -7398,7 +7269,7 @@ if (!dbfile->pub.g_vardims) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.g_vardims) (dbfile, (char *)name, maxdims, dims); + retval = (dbfile->pub.g_vardims) (dbfile, name, maxdims, dims); API_RETURN(retval); } API_END_NOPOP; /* BEWARE: If API_RETURN above is @@ -7439,7 +7310,7 @@ if (!dbfile->pub.g_vartype) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.g_vartype) (dbfile, (char *)name); + retval = (dbfile->pub.g_vartype) (dbfile, name); API_RETURN(retval); } API_END_NOPOP; /*BEWARE: If API_RETURN above is removed use API_END */ @@ -7469,7 +7340,7 @@ * Made the error messages a little better. *-------------------------------------------------------------------------*/ PUBLIC int -DBInqMeshname(DBfile *dbfile, const char *vname, const char *mname) +DBInqMeshname(DBfile *dbfile, const char *vname, char *mname) { int retval; @@ -7485,8 +7356,7 @@ if (!dbfile->pub.i_meshname) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.i_meshname) (dbfile, (char *)vname, - (char *)mname); + retval = (dbfile->pub.i_meshname) (dbfile, vname, mname); API_RETURN(retval); } API_END_NOPOP; /*BEWARE: If API_RETURN above is removed use API_END */ @@ -7526,7 +7396,7 @@ if (!dbfile->pub.i_meshtype) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.i_meshtype) (dbfile, (char *)name); + retval = (dbfile->pub.i_meshtype) (dbfile, name); API_RETURN(retval); } API_END_NOPOP; /*BEWARE: If API_RETURN above is removed use API_END */ @@ -7558,9 +7428,17 @@ * The old table of contents is discarded if the directory changes. *-------------------------------------------------------------------------*/ PUBLIC int -DBPutCompoundarray(DBfile *dbfile, const char *name, char **elemnames, - int *elemlengths, int nelems, void *values, int nvalues, - int datatype, DBoptlist *opts) +DBPutCompoundarray( + DBfile *dbfile, + char const *name, + char const * const *elemnames, + int const *elemlengths, + int nelems, + void const *values, + int nvalues, + int datatype, + DBoptlist const *opts +) { int retval; @@ -7571,22 +7449,37 @@ API_ERROR("DBPutCompoundarray", E_GRABBED) ; if (!name || !*name) API_ERROR("array name", E_BADARGS); - if (db_VariableNameValid((char *)name) == 0) + if (db_VariableNameValid(name) == 0) API_ERROR("array name", E_INVALIDNAME); if (!SILO_Globals.allowOverwrites && DBInqVarExists(dbfile, name)) API_ERROR("overwrite not allowed", E_NOOVERWRITE); - if (!elemnames) - API_ERROR("element names", E_BADARGS); - if (nelems <= 0) - API_ERROR("number of elements", E_BADARGS); - if (!values) - API_ERROR("values pointer", E_BADARGS); - if (nvalues < 0) - API_ERROR("number of values", E_BADARGS); + if (nelems < 0) + API_ERROR("nelems<0", E_BADARGS); + if (nelems) + { + if (!nelems) + API_ERROR("nelems=0", E_BADARGS); + if (!elemnames) + API_ERROR("elemnames=0", E_BADARGS); + if (nvalues <= 0) + API_ERROR("nvalues=0", E_BADARGS); + if (!values) + API_ERROR("values=0", E_BADARGS); + } + else if (!SILO_Globals.allowEmptyObjects) + { + /* this is an empty object but we don't know if it was intentional */ + API_ERROR("nelems=0", E_EMPTYOBJECT); + } + else + { + nvalues = 0; + } + if (NULL == dbfile->pub.p_ca) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.p_ca) (dbfile, (char *)name, elemnames, + retval = (dbfile->pub.p_ca) (dbfile, name, elemnames, elemlengths, nelems, values, nvalues, datatype, opts); db_FreeToc(dbfile); @@ -7622,8 +7515,15 @@ * The old table of contents is discarded if the directory changes. *-------------------------------------------------------------------------*/ PUBLIC int -DBPutCurve (DBfile *dbfile, const char *name, void *xvals, void *yvals, - int datatype, int npts, DBoptlist *opts) +DBPutCurve( + DBfile *dbfile, + char const *name, + void const *xvals, + void const *yvals, + int datatype, + int npts, + DBoptlist const *opts +) { int retval; @@ -7635,12 +7535,12 @@ API_ERROR("DBPutCurve", E_GRABBED) ; if (!name || !*name) API_ERROR("curve name", E_BADARGS); - if (db_VariableNameValid((char *)name) == 0) + if (db_VariableNameValid(name) == 0) API_ERROR("curve name", E_INVALIDNAME); if (!SILO_Globals.allowOverwrites && DBInqVarExists(dbfile, name)) API_ERROR("overwrite not allowed", E_NOOVERWRITE); if (npts < 0) - API_ERROR("number of values", E_BADARGS); + API_ERROR("npts<0", E_BADARGS); if (npts) { if (DBGetOption(opts, DBOPT_REFERENCE)) @@ -7651,11 +7551,11 @@ else { if (!xvals && !DBGetOption(opts, DBOPT_XVARNAME)) - API_ERROR("xvals==0 || DBOPT_XVARNAME", E_BADARGS); + API_ERROR("xvals=0 || DBOPT_XVARNAME", E_BADARGS); if (xvals && DBGetOption(opts, DBOPT_XVARNAME)) API_ERROR("xvals!=0 && DBOPT_XVARNAME", E_BADARGS); if (!yvals && !DBGetOption(opts, DBOPT_YVARNAME)) - API_ERROR("yvals==0 || DBOPT_YVARNAME", E_BADARGS); + API_ERROR("yvals=0 || DBOPT_YVARNAME", E_BADARGS); if (yvals && DBGetOption(opts, DBOPT_YVARNAME)) API_ERROR("yvals!=0 && DBOPT_YVARNAME", E_BADARGS); } @@ -7664,21 +7564,13 @@ !DBGetOption(opts, DBOPT_REFERENCE)) { /* this is an empty object but we don't know if it was intentional */ - API_ERROR("npts==0", E_EMPTYOBJECT); - } - else - { - /* this is an intentionally empty object */ - npts = 0; - xvals = 0; - yvals = 0; - datatype = DB_FLOAT; + API_ERROR("npts=0", E_EMPTYOBJECT); } if (NULL == dbfile->pub.p_cu) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.p_cu) (dbfile, (char *)name, xvals, yvals, + retval = (dbfile->pub.p_cu) (dbfile, name, (void*)xvals, (void*)yvals, datatype, npts, opts); db_FreeToc(dbfile); @@ -7701,9 +7593,15 @@ * *-------------------------------------------------------------------------*/ PUBLIC int -DBPutDefvars (DBfile *dbfile, const char *name, int ndefs, - char *names[], const int *types, char *defns[], - DBoptlist *opts[]) +DBPutDefvars( + DBfile *dbfile, + const char *name, + int ndefs, + char const * const *names, + int const *types, + char const * const *defns, + DBoptlist const * const *opts +) { int retval; @@ -7715,22 +7613,31 @@ API_ERROR("DBPutDefvars", E_GRABBED) ; if (!name || !*name) API_ERROR("defvars name", E_BADARGS); - if (db_VariableNameValid((char *)name) == 0) + if (db_VariableNameValid(name) == 0) API_ERROR("defvars name", E_INVALIDNAME); if (!SILO_Globals.allowOverwrites && DBInqVarExists(dbfile, name)) API_ERROR("overwrite not allowed", E_NOOVERWRITE); if (ndefs < 0) API_ERROR("ndefs", E_BADARGS); - if (!names) - API_ERROR("names", E_BADARGS); - if (!types) - API_ERROR("types", E_BADARGS); - if (!defns) - API_ERROR("defns", E_BADARGS); + if (ndefs) + { + if (!names) + API_ERROR("names=0", E_BADARGS); + if (!types) + API_ERROR("types=0", E_BADARGS); + if (!defns) + API_ERROR("defns=0", E_BADARGS); + } + else if (!SILO_Globals.allowEmptyObjects) + { + /* this is an empty object but we don't know if it was intentional */ + API_ERROR("ndefs=0", E_EMPTYOBJECT); + } + if (NULL == dbfile->pub.p_defv) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.p_defv) (dbfile, (char *)name, ndefs, names, + retval = (dbfile->pub.p_defv) (dbfile, name, ndefs, names, types, defns, opts); db_FreeToc(dbfile); API_RETURN(retval); @@ -7769,9 +7676,9 @@ *-------------------------------------------------------------------------*/ PUBLIC int DBPutFacelist(DBfile *dbfile, const char *name, int nfaces, int ndims, - int nodelist[], int lnodelist, int origin, int zoneno[], - int shapesize[], int shapecnt[], int nshapes, int types[], - int typelist[], int ntypes) + int const *nodelist, int lnodelist, int origin, int const *zoneno, + int const *shapesize, int const *shapecnt, int nshapes, int const *types, + int const *typelist, int ntypes) { int retval; @@ -7782,57 +7689,50 @@ API_ERROR("DBPutFacelist", E_GRABBED) ; if (!name || !*name) API_ERROR("facelist name", E_BADARGS); - if (db_VariableNameValid((char *)name) == 0) + if (db_VariableNameValid(name) == 0) API_ERROR("facelist name", E_INVALIDNAME); if (!SILO_Globals.allowOverwrites && DBInqVarExists(dbfile, name)) API_ERROR("overwrite not allowed", E_NOOVERWRITE); if (nfaces < 0) - API_ERROR("nfaces", E_BADARGS); - if (ndims < 0) - API_ERROR("ndims", E_BADARGS); - if (lnodelist < 0) - API_ERROR("lnodelist", E_BADARGS); - if (nshapes < 0) - API_ERROR("nshapes", E_BADARGS); - if (ntypes < 0) - API_ERROR("ntypes", E_BADARGS); - if (nfaces && ndims && lnodelist && nshapes) + API_ERROR("nfaces<0", E_BADARGS); + if (nfaces) { + if (nfaces <= 0) + API_ERROR("nfaces<=0", E_BADARGS); + if (ndims <= 0) + API_ERROR("ndims<=0", E_BADARGS); + if (lnodelist <= 0) + API_ERROR("lnodelist<0", E_BADARGS); + if (nshapes <= 0) + API_ERROR("nshapes<0", E_BADARGS); if (!nodelist) - API_ERROR("nodelist", E_BADARGS); + API_ERROR("nodelist==0", E_BADARGS); if (!shapesize) - API_ERROR("shapesize", E_BADARGS); + API_ERROR("shapesize==0", E_BADARGS); if (!shapecnt) - API_ERROR("shapecnt", E_BADARGS); + API_ERROR("shapecnt==0", E_BADARGS); + if (ntypes < 0) + API_ERROR("ntypes<0", E_BADARGS); + if (origin != 0 && origin != 1) + API_ERROR("origin", E_BADARGS); } else if (!SILO_Globals.allowEmptyObjects) { /* this is an empty object but we don't know if it was intentional */ - API_ERROR("nfaces==0 || ndims==0 || lnodelist==0 || nshapes==0", E_EMPTYOBJECT); + API_ERROR("nfaces=0", E_EMPTYOBJECT); } else { - /* this is an intentionally empty object */ nfaces = 0; - ndims = 0; - nodelist = 0; lnodelist = 0; - origin = 0; /* HDF5 driver needs something non-zero */ - zoneno = 0; - shapesize = 0; - shapecnt = 0; nshapes = 0; - types = 0; - typelist = 0; ntypes = 0; } - if (origin != 0 && origin != 1) - API_ERROR("origin", E_BADARGS); if (!dbfile->pub.p_fl) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.p_fl) (dbfile, (char *)name, nfaces, ndims, + retval = (dbfile->pub.p_fl) (dbfile, name, nfaces, ndims, nodelist, lnodelist, origin, zoneno, shapesize, shapecnt, nshapes, types, typelist, ntypes); @@ -7876,12 +7776,25 @@ * Removed an unnecessary check on mix_zone. *-------------------------------------------------------------------------*/ PUBLIC int -DBPutMaterial(DBfile *dbfile, const char *name, const char *meshname, int nmat, - int matnos[], int matlist[], int dims[], int ndims, - int mix_next[], int mix_mat[], int mix_zone[], DB_DTPTR1 mix_vf, - int mixlen, int datatype, DBoptlist *optlist) +DBPutMaterial( + DBfile *dbfile, + char const *name, + char const *meshname, + int nmat, + int const *matnos, + int const *matlist, + int const *dims, + int ndims, + int const *mix_next, + int const *mix_mat, + int const *mix_zone, + DBVCP1_t mix_vf, + int mixlen, + int datatype, + DBoptlist const *optlist +) { - int retval; + int i, retval, is_empty = 1; API_BEGIN2("DBPutMaterial", int, -1, name) { if (!dbfile) @@ -7890,7 +7803,7 @@ API_ERROR("DBPutMaterial", E_GRABBED) ; if (!name || !*name) API_ERROR("material name", E_BADARGS); - if (db_VariableNameValid((char *)name) == 0) + if (db_VariableNameValid(name) == 0) API_ERROR("material name", E_INVALIDNAME); if (!SILO_Globals.allowOverwrites && DBInqVarExists(dbfile, name)) API_ERROR("overwrite not allowed", E_NOOVERWRITE); @@ -7898,50 +7811,48 @@ API_ERROR("nmat<0", E_BADARGS); if (ndims < 0) API_ERROR("ndims<0", E_BADARGS); - if (nmat && ndims) + if (!dims) + API_ERROR("dims=0", E_BADARGS); + for (i = 0; i < ndims; i++) + { + if (dims[i] != 0) + { + is_empty = 0; + break; + } + } + if (!is_empty) { - int i; for (i = 0; i < ndims && dims; i++) if (dims[i] == 0) dims = 0; - if (!matnos) API_ERROR("matnos==0", E_BADARGS); - if (!dims) API_ERROR("dims==0 || dims[i]==0", E_BADARGS); - if (!matlist) API_ERROR("matlist==0", E_BADARGS); + if (!matnos) API_ERROR("matnos=0", E_BADARGS); + if (!matlist) API_ERROR("matlist=0", E_BADARGS); if (!meshname || !*meshname) API_ERROR("mesh name", E_BADARGS); - if (!db_VariableNameValid((char *)meshname)) API_ERROR("meshname", E_INVALIDNAME); + if (!db_VariableNameValid(meshname)) API_ERROR("meshname", E_INVALIDNAME); + if (mixlen < 0) + API_ERROR("mixlen<0", E_BADARGS); + if (mixlen) + { + if (!mix_next) + API_ERROR("mix_next=0", E_BADARGS); + if (!mix_mat) + API_ERROR("mix_mat=0", E_BADARGS); + if (!mix_vf) + API_ERROR("mix_vf=0", E_BADARGS); + } } else if (!SILO_Globals.allowEmptyObjects) { - API_ERROR("nmat==0 || ndims==0", E_EMPTYOBJECT); + API_ERROR("nmat=0", E_EMPTYOBJECT); } - else - { - /* this is an intentionally empty object */ - nmat = 0; - matnos = 0; - matlist = 0; - dims = 0; - ndims = 0; - mix_next = 0; - mix_mat = 0; - mix_zone = 0; - mixlen = 0; - datatype = DB_FLOAT; - } - if (mixlen < 0) - API_ERROR("mixlen<0", E_BADARGS); - if (!mix_next && mixlen) - API_ERROR("mix_next==0", E_BADARGS); - if (!mix_mat && mixlen) - API_ERROR("mix_mat==0", E_BADARGS); - if (!mix_vf && mixlen) - API_ERROR("mix_vf==0", E_BADARGS); if (!dbfile->pub.p_ma) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.p_ma) (dbfile, (char *)name, (char *)meshname, + retval = (dbfile->pub.p_ma) (dbfile, name, meshname, nmat, matnos, matlist, dims, ndims, mix_next, mix_mat, mix_zone, mix_vf, mixlen, datatype, optlist); + /* Zero out the _ma._matnames pointer so we can't accidentially use it * again. Likewise for matcolors. */ _ma._matnames = NULL; @@ -7993,12 +7904,12 @@ *--------------------------------------------------------------------*/ PUBLIC int DBPutMatspecies(DBfile *dbfile, const char *name, const char *matname, - int nmat, int nmatspec[], int speclist[], int dims[], - int ndims, int nspecies_mf, DB_DTPTR1 species_mf, - int mix_speclist[], int mixlen, int datatype, - DBoptlist *optlist) + int nmat, int const *nmatspec, int const *speclist, int const *dims, + int ndims, int nspecies_mf, DBVCP1_t species_mf, + int const *mix_speclist, int mixlen, int datatype, + DBoptlist const *optlist) { - int retval; + int i, retval, is_empty=1; API_BEGIN2("DBPutMatspecies", int, -1, name) { if (!dbfile) @@ -8007,58 +7918,59 @@ API_ERROR("DBPutMatspecies", E_GRABBED) ; if (!name || !*name) API_ERROR("matspecies name", E_BADARGS); - if (db_VariableNameValid((char *)name) == 0) + if (db_VariableNameValid(name) == 0) API_ERROR("matspecies name", E_INVALIDNAME); if (!SILO_Globals.allowOverwrites && DBInqVarExists(dbfile, name)) API_ERROR("overwrite not allowed", E_NOOVERWRITE); - if (!matname || !*matname) - API_ERROR("material name", E_BADARGS); - if (db_VariableNameValid((char *)matname) == 0) - API_ERROR("material name", E_INVALIDNAME); if (nmat < 0) API_ERROR("nmat<0", E_BADARGS); if (ndims < 0) API_ERROR("ndims<0", E_BADARGS); + if (!dims) + API_ERROR("dims=0", E_BADARGS); if (nspecies_mf < 0) API_ERROR("nspecies_mf<0", E_BADARGS); - if (nmat && ndims && nspecies_mf) + for (i = 0; i < ndims; i++) { - int i; - for (i = 0; i < ndims && dims; i++) - if (!dims[i]) dims = 0; - if (!nmatspec) API_ERROR("nmatspec==0", E_BADARGS); - if (!speclist) API_ERROR("speclist==0", E_BADARGS); - if (!dims) API_ERROR("dims==0 || dims[i]==0", E_BADARGS); - if (!species_mf) API_ERROR("species_mf==0", E_BADARGS); + if (dims[i] != 0) + { + is_empty = 0; + break; + } } - else if (!SILO_Globals.allowEmptyObjects) + if (!is_empty && nspecies_mf > 0) { - API_ERROR("nmat==0 || ndims==0 || nspecies_mf==0", E_EMPTYOBJECT); + if (!matname || !*matname) + API_ERROR("material name", E_BADARGS); + if (db_VariableNameValid(matname) == 0) + API_ERROR("material name", E_INVALIDNAME); + if (ndims == 1 && dims[0] <= 0) API_ERROR("dims[0]<=0", E_BADARGS); + if (ndims == 2 && dims[1] <= 0) API_ERROR("dims[1]<=0", E_BADARGS); + if (ndims == 3 && dims[2] <= 0) API_ERROR("dims[2]<=0", E_BADARGS); + if (!nmatspec) API_ERROR("nmatspec=0", E_BADARGS); + if (!speclist) API_ERROR("speclist=0", E_BADARGS); + if (!species_mf) API_ERROR("species_mf=0", E_BADARGS); + if (mixlen < 0) + API_ERROR("mixlen", E_BADARGS); + if (!mix_speclist && mixlen) + API_ERROR("mix_speclist", E_BADARGS); } - else + else if (!SILO_Globals.allowEmptyObjects) { - /* this is an intentionally empty object */ - nmat = 0; - nmatspec = 0; - speclist = 0; - dims = 0; - ndims = 0; - nspecies_mf = 0; - species_mf = 0; - mix_speclist = 0; - mixlen = 0; - datatype = DB_FLOAT; - } - if (mixlen < 0) - API_ERROR("mixlen", E_BADARGS); - if (!mix_speclist && mixlen) - API_ERROR("mix_speclist", E_BADARGS); + API_ERROR("dims[i]==0 for all i || nspecies_mf==0", E_EMPTYOBJECT); + } if (!dbfile->pub.p_ms) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.p_ms) (dbfile, (char *)name, (char *)matname, + retval = (dbfile->pub.p_ms) (dbfile, name, matname, nmat, nmatspec, speclist, dims, ndims, nspecies_mf, species_mf, mix_speclist, mixlen, datatype, optlist); + + /* Zero out the _ma._matnames pointer so we can't accidentially use it + * again. Likewise for matcolors. */ + _ms._specnames = NULL; + _ms._speccolors = NULL; + db_FreeToc(dbfile); API_RETURN(retval); } @@ -8097,8 +8009,9 @@ * adjusting sanity checks for args as some can be null now. *-------------------------------------------------------------------------*/ PUBLIC int -DBPutMultimesh(DBfile *dbfile, char DB_CONSTARR1 name, int nmesh, - char DB_CONSTARR2 meshnames, int DB_CONSTARR1 meshtypes, DBoptlist const *optlist) +DBPutMultimesh(DBfile *dbfile, char const *name, int nmesh, + char const * const *meshnames, int const *meshtypes, + DBoptlist const *optlist) { int retval; @@ -8109,7 +8022,7 @@ API_ERROR("DBPutMultimesh", E_GRABBED) ; if (!name || !*name) API_ERROR("multimesh name", E_BADARGS); - if (db_VariableNameValid((char *)name) == 0) + if (db_VariableNameValid(name) == 0) API_ERROR("multimesh name", E_INVALIDNAME); if (!SILO_Globals.allowOverwrites && DBInqVarExists(dbfile, name)) API_ERROR("overwrite not allowed", E_NOOVERWRITE); @@ -8125,7 +8038,7 @@ if (!dbfile->pub.p_mm) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.p_mm) (dbfile, (char *)name, nmesh, meshnames, + retval = (dbfile->pub.p_mm) (dbfile, name, nmesh, meshnames, meshtypes, optlist); db_FreeToc(dbfile); API_RETURN(retval); @@ -8151,11 +8064,11 @@ * *-------------------------------------------------------------------------*/ PUBLIC int -DBPutMultimeshadj(DBfile *dbfile, char DB_CONSTARR1 name, int nmesh, - int DB_CONSTARR1 meshtypes, int DB_CONSTARR1 nneighbors, - int DB_CONSTARR1 neighbors, int DB_CONSTARR1 back, - int DB_CONSTARR1 lnodelists, int DB_CONSTARR2 nodelists, - int DB_CONSTARR1 lzonelists, int DB_CONSTARR2 zonelists, +DBPutMultimeshadj(DBfile *dbfile, char const *name, int nmesh, + int const *meshtypes, int const *nneighbors, + int const *neighbors, int const *back, + int const *lnodelists, int const * const *nodelists, + int const *lzonelists, int const * const *zonelists, DBoptlist const *optlist) { int retval; @@ -8167,7 +8080,7 @@ API_ERROR("DBPutMultimeshadj", E_GRABBED) ; if (!name || !*name) API_ERROR("multimeshadj name", E_BADARGS); - if (db_VariableNameValid((char *)name) == 0) + if (db_VariableNameValid(name) == 0) API_ERROR("multimeshadj name", E_INVALIDNAME); if (nmesh < 0) API_ERROR("nmesh", E_BADARGS); @@ -8184,7 +8097,7 @@ if (!dbfile->pub.p_mmadj) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.p_mmadj) (dbfile, (char *)name, nmesh, meshtypes, + retval = (dbfile->pub.p_mmadj) (dbfile, name, nmesh, meshtypes, nneighbors, neighbors, back, lnodelists, nodelists, lzonelists, zonelists, optlist); @@ -8225,7 +8138,7 @@ *-------------------------------------------------------------------------*/ PUBLIC int DBPutMultivar(DBfile *dbfile, const char *name, int nvar, - char *varnames[], int vartypes[], DBoptlist *optlist) + char const * const *varnames, int const *vartypes, DBoptlist const *optlist) { int retval; @@ -8236,7 +8149,7 @@ API_ERROR("DBPutMultivar", E_GRABBED) ; if (!name || !*name) API_ERROR("multivar name", E_BADARGS); - if (db_VariableNameValid((char *)name) == 0) + if (db_VariableNameValid(name) == 0) API_ERROR("multivar name", E_INVALIDNAME); if (!SILO_Globals.allowOverwrites && DBInqVarExists(dbfile, name)) API_ERROR("overwrite not allowed", E_NOOVERWRITE); @@ -8252,7 +8165,7 @@ if (!dbfile->pub.p_mv) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.p_mv) (dbfile, (char *)name, nvar, varnames, + retval = (dbfile->pub.p_mv) (dbfile, name, nvar, varnames, vartypes, optlist); db_FreeToc(dbfile); API_RETURN(retval); @@ -8288,7 +8201,7 @@ *-------------------------------------------------------------------------*/ PUBLIC int DBPutMultimat(DBfile *dbfile, const char *name, int nmats, - char *matnames[], DBoptlist *optlist) + char const * const *matnames, DBoptlist const *optlist) { int retval; @@ -8299,7 +8212,7 @@ API_ERROR("DBPutMultimat", E_GRABBED) ; if (!name || !*name) API_ERROR("multimat name", E_BADARGS); - if (db_VariableNameValid((char *)name) == 0) + if (db_VariableNameValid(name) == 0) API_ERROR("multimat name", E_INVALIDNAME); if (!SILO_Globals.allowOverwrites && DBInqVarExists(dbfile, name)) API_ERROR("overwrite not allowed", E_NOOVERWRITE); @@ -8312,8 +8225,14 @@ if (!dbfile->pub.p_mt) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.p_mt) (dbfile, (char *)name, nmats, matnames, + retval = (dbfile->pub.p_mt) (dbfile, name, nmats, matnames, optlist); + + /* Zero out the _mm._matnames pointer so we can't accidentially use it + * again. Likewise for matcolors. */ + _mm._matnames = NULL; + _mm._matcolors = NULL; + db_FreeToc(dbfile); API_RETURN(retval); } @@ -8348,7 +8267,7 @@ *-------------------------------------------------------------------------*/ PUBLIC int DBPutMultimatspecies(DBfile *dbfile, const char *name, int nspec, - char *specnames[], DBoptlist *optlist) + char const * const *specnames, DBoptlist const *optlist) { int retval; @@ -8359,7 +8278,7 @@ API_ERROR("DBPutMultimatspecies", E_GRABBED) ; if (!name || !*name) API_ERROR("multimatspecies name", E_BADARGS); - if (db_VariableNameValid((char *)name) == 0) + if (db_VariableNameValid(name) == 0) API_ERROR("multimatspecies name", E_INVALIDNAME); if (!SILO_Globals.allowOverwrites && DBInqVarExists(dbfile, name)) API_ERROR("overwrite not allowed", E_NOOVERWRITE); @@ -8372,8 +8291,13 @@ if (!dbfile->pub.p_mms) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.p_mms) (dbfile, (char *)name, nspec, specnames, - optlist); + retval = (dbfile->pub.p_mms) (dbfile, name, nspec, specnames, optlist); + + /* Zero out the _ma._matnames pointer so we can't accidentially use it + * again. Likewise for matcolors. */ + _mm._specnames = NULL; + _mm._speccolors = NULL; + db_FreeToc(dbfile); API_RETURN(retval); } @@ -8407,8 +8331,8 @@ * The old table of contents is discarded if the directory changes. *-------------------------------------------------------------------------*/ PUBLIC int -DBPutPointmesh(DBfile *dbfile, const char *name, int ndims, DB_DTPTR2 coords, - int nels, int datatype, DBoptlist *optlist) +DBPutPointmesh(DBfile *dbfile, const char *name, int ndims, DBVCP2_t coords, + int nels, int datatype, DBoptlist const *optlist) { int retval; @@ -8419,7 +8343,7 @@ API_ERROR("DBPutPointmesh", E_GRABBED) ; if (!name || !*name) API_ERROR("pointmesh name", E_BADARGS); - if (db_VariableNameValid((char *)name) == 0) + if (db_VariableNameValid(name) == 0) API_ERROR("pointmesh name", E_INVALIDNAME); if (!SILO_Globals.allowOverwrites && DBInqVarExists(dbfile, name)) API_ERROR("overwrite not allowed", E_NOOVERWRITE); @@ -8434,22 +8358,17 @@ for (i = 0; i < ndims && coords; i++) if (coords2[i] == 0) coords = 0; if (!coords) - API_ERROR("coords==0 || coords[i]==0 for some i", E_BADARGS); + API_ERROR("coords=0 || coords[i]=0 for some i", E_BADARGS); } else if (!SILO_Globals.allowEmptyObjects) { API_ERROR("nels==0", E_EMPTYOBJECT); } - else - { - ndims = 0; - coords = 0; - datatype = DB_FLOAT; - } + if (!dbfile->pub.p_pm) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.p_pm) (dbfile, (char *)name, ndims, coords, nels, + retval = (dbfile->pub.p_pm) (dbfile, name, ndims, coords, nels, datatype, optlist); db_FreeToc(dbfile); API_RETURN(retval); @@ -8485,7 +8404,7 @@ *-------------------------------------------------------------------------*/ PUBLIC int DBPutPointvar(DBfile *dbfile, const char *vname, const char *mname, int nvars, - DB_DTPTR2 vars, int nels, int datatype, DBoptlist *optlist) + DBVCP2_t vars, int nels, int datatype, DBoptlist const *optlist) { int retval; @@ -8496,41 +8415,35 @@ API_ERROR("DBPutPointvar", E_GRABBED) ; if (!vname || !*vname) API_ERROR("pointvar name", E_BADARGS); - if (db_VariableNameValid((char *)vname) == 0) + if (db_VariableNameValid(vname) == 0) API_ERROR("pointvar name", E_INVALIDNAME); if (!SILO_Globals.allowOverwrites && DBInqVarExists(dbfile, vname)) API_ERROR("overwrite not allowed", E_NOOVERWRITE); - if (!mname || !*mname) - API_ERROR("pointmesh name", E_BADARGS); - if (db_VariableNameValid((char *)mname) == 0) - API_ERROR("pointmesh name", E_INVALIDNAME); - if (nvars < 0) - API_ERROR("nvars<0", E_BADARGS); if (nels < 0) API_ERROR("nels<0", E_BADARGS); if (nels) { int i; void **vars2 = (void**) vars; - if (!nvars) API_ERROR("nvars==0", E_BADARGS); + if (nvars <= 0) + API_ERROR("nvars<=0", E_BADARGS); for (i = 0; i < nvars && vars; i++) if (!vars2[i]) vars = 0; if (!vars) API_ERROR("vars==0 || vars[i]==0", E_BADARGS); + if (!mname || !*mname) + API_ERROR("pointmesh name", E_BADARGS); + if (db_VariableNameValid(mname) == 0) + API_ERROR("pointmesh name", E_INVALIDNAME); } else if (!SILO_Globals.allowEmptyObjects) { - API_ERROR("nels==0", E_EMPTYOBJECT); - } - else - { - nvars = 0; - vars = 0; - datatype = DB_FLOAT; + API_ERROR("nels=0", E_EMPTYOBJECT); } + if (!dbfile->pub.p_pv) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.p_pv) (dbfile, (char *)vname, (char *)mname, + retval = (dbfile->pub.p_pv) (dbfile, vname, mname, nvars, vars, nels, datatype, optlist); db_FreeToc(dbfile); API_RETURN(retval); @@ -8559,15 +8472,14 @@ *-------------------------------------------------------------------------*/ PUBLIC int DBPutPointvar1(DBfile *dbfile, const char *vname, const char *mname, - DB_DTPTR1 var, int nels, int datatype, DBoptlist *optlist) + DBVCP1_t var, int nels, int datatype, DBoptlist const *optlist) { - DB_DTPTR *vars[1]; + DBVCP1_t vars[1] = {var}; int retval; API_BEGIN2("DBPutPointvar1", int, -1, vname) { - vars[0] = var; - retval = DBPutPointvar(dbfile, (char *)vname, (char *)mname, var?1:0, vars, + retval = DBPutPointvar(dbfile, vname, mname, 1, vars, nels, datatype, optlist); db_FreeToc(dbfile); API_RETURN(retval); @@ -8609,11 +8521,11 @@ * The old table of contents is discarded if the directory changes. *-------------------------------------------------------------------------*/ PUBLIC int -DBPutQuadmesh(DBfile *dbfile, const char *name, char *coordnames[], - DB_DTPTR2 coords, int dims[], int ndims, int datatype, - int coordtype, DBoptlist *optlist) +DBPutQuadmesh(DBfile *dbfile, const char *name, char const * const *coordnames, + DBVCP2_t coords, int const *dims, int ndims, int datatype, + int coordtype, DBoptlist const *optlist) { - int retval; + int i, retval, is_empty=1; API_BEGIN2("DBPutQuadmesh", int, -1, name) { if (!dbfile) @@ -8622,47 +8534,41 @@ API_ERROR("DBPutQuadmesh", E_GRABBED) ; if (!name || !*name) API_ERROR("quadmesh name", E_BADARGS); - if (db_VariableNameValid((char *)name) == 0) + if (db_VariableNameValid(name) == 0) API_ERROR("quadmesh name", E_INVALIDNAME); if (!SILO_Globals.allowOverwrites && DBInqVarExists(dbfile, name)) API_ERROR("overwrite not allowed", E_NOOVERWRITE); + if ((coordtype != DB_COLLINEAR) && (coordtype != DB_NONCOLLINEAR)) + API_ERROR("coordtype must be DB_COLLINEAR or DB_NONCOLLINEAR", E_BADARGS); if (ndims < 0) API_ERROR("ndims", E_BADARGS); - if (ndims) + if (!dims) + API_ERROR("dims==0", E_BADARGS); + for (i = 0; i < ndims; i++) + { + if (dims[i] != 0) + { + is_empty = 0; + break; + } + } + if (!is_empty) { - int i; void **coords2 = (void**) coords; for (i = 0; i < ndims && coords; i++) if (!coords2[i]) coords = 0; - for (i = 0; i < ndims && dims; i++) - if (!dims[i]) dims = 0; if (!coords) API_ERROR("coords==0 || coords[i]==0", E_BADARGS); - if (!dims) - API_ERROR("dims==0 || dims[i]==0", E_BADARGS); } else if (!SILO_Globals.allowEmptyObjects) { /* this is an empty object but we don't think it was intentional */ - API_ERROR("ndims==0", E_EMPTYOBJECT); - } - else - { - /* this is an intentionally empty object */ - coordnames = 0; - coords = 0; - dims = 0; - datatype = DB_FLOAT; - coordtype = DB_COLLINEAR; - } - if ((datatype != DB_FLOAT) && (datatype != DB_DOUBLE)) - API_ERROR("datatype must be DB_FLOAT or DB_DOUBLE", E_BADARGS); - if ((coordtype != DB_COLLINEAR) && (coordtype != DB_NONCOLLINEAR)) - API_ERROR("coordtype must be DB_COLLINEAR or DB_NONCOLLINEAR", E_BADARGS); + API_ERROR("dims[i]==0 for all i", E_EMPTYOBJECT); + } if (!dbfile->pub.p_qm) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.p_qm) (dbfile, (char *)name, coordnames, coords, + retval = (dbfile->pub.p_qm) (dbfile, name, coordnames, coords, dims, ndims, datatype, coordtype, optlist); db_FreeToc(dbfile); @@ -8706,11 +8612,11 @@ *-------------------------------------------------------------------------*/ PUBLIC int DBPutQuadvar(DBfile *dbfile, const char *vname, const char *mname, int nvars, - char *varnames[], DB_DTPTR2 vars, int dims[], int ndims, - DB_DTPTR2 mixvars, int mixlen, int datatype, int centering, - DBoptlist *optlist) + char const * const *varnames, DBVCP2_t vars, int const *dims, int ndims, + DBVCP2_t mixvars, int mixlen, int datatype, int centering, + DBoptlist const *optlist) { - int retval; + int i, retval, is_empty = 1; API_BEGIN2("DBPutQuadvar", int, -1, vname) { if (!dbfile) @@ -8719,59 +8625,57 @@ API_ERROR("DBPutQuadvar", E_GRABBED) ; if (!vname || !*vname) API_ERROR("quadvar name", E_BADARGS); - if (db_VariableNameValid((char *)vname) == 0) + if (db_VariableNameValid(vname) == 0) API_ERROR("quadvar name", E_INVALIDNAME); if (!SILO_Globals.allowOverwrites && DBInqVarExists(dbfile, vname)) API_ERROR("overwrite not allowed", E_NOOVERWRITE); if (!mname || !*mname) API_ERROR("quadmesh name", E_BADARGS); - if (db_VariableNameValid((char *)mname) == 0) + if (db_VariableNameValid(mname) == 0) API_ERROR("quadmesh name", E_INVALIDNAME); if (ndims < 0) API_ERROR("ndims", E_BADARGS); - if (ndims) + if (!dims) + API_ERROR("dims==0", E_BADARGS); + for (i = 0; i < ndims; i++) + { + if (dims[i] != 0) + { + is_empty = 0; + break; + } + } + if (!is_empty) { int i; void **vars2 = (void**) vars; for (i = 0; i < ndims && dims; i++) if (!dims[i]) dims = 0; if (!dims) - API_ERROR("dims==0 || dims[i]==0", E_BADARGS); + API_ERROR("dims=0 || dims[i]=0", E_BADARGS); if (nvars < 1) API_ERROR("nvars<1", E_BADARGS); for (i = 0; i < nvars && vars; i++) if (!vars2[i]) vars = 0; - vars2 = mixvars; + vars2 = (void**) mixvars; for (i = 0; i < nvars && mixvars; i++) if (!vars2[i]) mixvars = 0; for (i = 0; i < nvars && varnames; i++) if (!varnames[i] && !*varnames[i]) varnames = 0; if (!vars) - API_ERROR("vars==0 || vars[i]==0", E_BADARGS); + API_ERROR("vars=0 || vars[i]=0", E_BADARGS); if (!varnames) - API_ERROR("varnames==0 || varnames[i]==0||\"\"", E_BADARGS); + API_ERROR("varnames=0 || varnames[i]=0||\"\"", E_BADARGS); + if (mixlen < 0) + API_ERROR("mixlen", E_BADARGS); + if (!mixvars && mixlen) + API_ERROR("mixvars", E_BADARGS); } else if (!SILO_Globals.allowEmptyObjects) { /* this is an empty object but we don't think it was intentional */ - API_ERROR("ndims==0", E_EMPTYOBJECT); + API_ERROR("ndims=0", E_EMPTYOBJECT); } - else - { - /* this is an intentionally empty object*/ - nvars = 0; - vars = 0; - varnames = 0; - dims = 0; - mixvars = 0; - mixlen = 0; - datatype = DB_FLOAT; - centering = DB_NODECENT; - } - if (mixlen < 0) - API_ERROR("mixlen", E_BADARGS); - if (!mixvars && mixlen) - API_ERROR("mixvars", E_BADARGS); if (centering != DB_NODECENT && centering != DB_ZONECENT && centering != DB_FACECENT && centering != DB_BNDCENT && centering != DB_EDGECENT && centering != DB_BLOCKCENT) @@ -8780,7 +8684,7 @@ API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.p_qv) (dbfile, (char *)vname, (char *)mname, + retval = (dbfile->pub.p_qv) (dbfile, vname, mname, nvars, varnames, vars, dims, ndims, mixvars, mixlen, datatype, centering, optlist); @@ -8810,21 +8714,23 @@ * The old table of contents is discarded if the directory changes. *-------------------------------------------------------------------------*/ PUBLIC int -DBPutQuadvar1(DBfile *dbfile, const char *vname, const char *mname, DB_DTPTR1 var, - int dims[], int ndims, DB_DTPTR1 mixvar, int mixlen, int datatype, - int centering, DBoptlist *optlist) -{ - char *varnames[1]; - DB_DTPTR *vars[1], *mixvars[1]; +DBPutQuadvar1(DBfile *dbfile, const char *vname, const char *mname, void const *var, + int const *dims, int ndims, void const *mixvar, int mixlen, int datatype, + int centering, DBoptlist const *optlist) +{ + char const *varnames[1]; + void const *vars[1] = {var}; + void const *mixvars[1] = {var}; int retval; API_BEGIN2("DBPutQuadvar1", int, -1, vname) { - varnames[0] = (char *)vname; + varnames[0] = vname; vars[0] = var; mixvars[0] = mixvar; - retval = DBPutQuadvar(dbfile, (char *)vname, (char *)mname, var?1:0, - varnames, vars, dims, ndims, mixvars, mixlen, + retval = DBPutQuadvar(dbfile, vname, mname, 1, + varnames, vars, dims, ndims, + mixvars, mixlen, datatype, centering, optlist); db_FreeToc(dbfile); API_RETURN(retval); @@ -8863,9 +8769,9 @@ *-------------------------------------------------------------------------*/ PUBLIC int DBPutUcdmesh(DBfile *dbfile, const char *name, int ndims, - char *coordnames[], DB_DTPTR2 coords, int nnodes, + char const * const *coordnames, DBVCP2_t coords, int nnodes, int nzones, const char *zonel_name, const char *facel_name, - int datatype, DBoptlist *optlist) + int datatype, DBoptlist const *optlist) { int retval; char *zl_name; @@ -8877,43 +8783,43 @@ API_ERROR("DBPutUcdmesh", E_GRABBED) ; if (!name || !*name) API_ERROR("UCDmesh name", E_BADARGS); - if (db_VariableNameValid((char *)name) == 0) + if (db_VariableNameValid(name) == 0) API_ERROR("UCDmesh name", E_INVALIDNAME); if (!SILO_Globals.allowOverwrites && DBInqVarExists(dbfile, name)) API_ERROR("overwrite not allowed", E_NOOVERWRITE); if (ndims < 0) - API_ERROR("ndims", E_BADARGS); + API_ERROR("ndims<0", E_BADARGS); if (nnodes < 0) - API_ERROR("nnodes", E_BADARGS); - if (nzones < 0) - API_ERROR("nzones", E_BADARGS); - if (ndims && nnodes && nzones) + API_ERROR("nnodes<0", E_BADARGS); + if (nnodes) { int i; void **coords2 = (void**) coords; + if (nzones <= 0) + API_ERROR("nzones<=0", E_BADARGS); for (i = 0; i < ndims && coords; i++) if (coords2[i] == 0) coords = 0;; if (!coords) API_ERROR("coords==0 || coords[i]==0", E_BADARGS); - if (zl_name = DBGetOption(optlist, DBOPT_PHZONELIST)) + if ((zl_name = (char*)DBGetOption(optlist, DBOPT_PHZONELIST))) { if (!zl_name || !*zl_name) API_ERROR("zonelist name specified with DBOPT_PHZONELIST is null or \"\"", E_BADARGS); - if (db_VariableNameValid((char *)zl_name) == 0) + if (db_VariableNameValid(zl_name) == 0) API_ERROR("zonelist name specified with DBOPT_PHZONELIST", E_INVALIDNAME); } else if (zonel_name) { if (!*zonel_name) API_ERROR("zonel_name==\"\"", E_BADARGS); - if (db_VariableNameValid((char *)zonel_name) == 0) + if (db_VariableNameValid(zonel_name) == 0) API_ERROR("zonel_name", E_INVALIDNAME); } else if (facel_name) { if (!*facel_name) API_ERROR("facel_name==\"\"", E_BADARGS); - if (db_VariableNameValid((char *)facel_name) == 0) + if (db_VariableNameValid(facel_name) == 0) API_ERROR("facel_name", E_INVALIDNAME); } else @@ -8924,26 +8830,15 @@ else if (!SILO_Globals.allowEmptyObjects) { /* this is an empty object but we don't know if it was intentional */ - API_ERROR("ndims==0 || nnodes==0 || nzones==0", E_EMPTYOBJECT); - } - else - { - /* this is an intentionally empty object */ - ndims = 0; - nnodes = 0; - nzones = 0; - coordnames = 0; - coords = 0; - zonel_name = 0; - facel_name = 0; - datatype = DB_FLOAT; + API_ERROR("ndims==0 || nnodes==0", E_EMPTYOBJECT); } + if (!dbfile->pub.p_um) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.p_um) (dbfile, (char *)name, ndims, coordnames, + retval = (dbfile->pub.p_um) (dbfile, name, ndims, coordnames, coords, nnodes, nzones, - (char *)zonel_name, (char *)facel_name, + zonel_name, facel_name, datatype, optlist); db_FreeToc(dbfile); API_RETURN(retval); @@ -8974,7 +8869,7 @@ PUBLIC int DBPutUcdsubmesh(DBfile *dbfile, const char *name, const char *parentmesh, int nzones, const char *zonel_name, const char *facel_name, - DBoptlist *optlist) + DBoptlist const *optlist) { int retval; @@ -8985,13 +8880,13 @@ API_ERROR("DBPutUcdsubmesh", E_GRABBED) ; if (!name || !*name) API_ERROR("mesh name", E_BADARGS); - if (db_VariableNameValid((char *)name) == 0) + if (db_VariableNameValid(name) == 0) API_ERROR("mesh name", E_INVALIDNAME); if (!SILO_Globals.allowOverwrites && DBInqVarExists(dbfile, name)) API_ERROR("overwrite not allowed", E_NOOVERWRITE); if (!parentmesh || !*parentmesh) API_ERROR("parent mesh name", E_BADARGS); - if (db_VariableNameValid((char *)parentmesh) == 0) + if (db_VariableNameValid(parentmesh) == 0) API_ERROR("parent mesh name", E_INVALIDNAME); if (nzones < 0) API_ERROR("nzones", E_BADARGS); @@ -8999,9 +8894,9 @@ API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.p_sm) (dbfile, (char *)name, (char *)parentmesh, - nzones, (char *)zonel_name, - (char *)facel_name, optlist); + retval = (dbfile->pub.p_sm) (dbfile, name, parentmesh, + nzones, zonel_name, + facel_name, optlist); db_FreeToc(dbfile); API_RETURN(retval); } @@ -9048,8 +8943,8 @@ *-------------------------------------------------------------------------*/ PUBLIC int DBPutUcdvar(DBfile *dbfile, const char *vname, const char *mname, int nvars, - char *varnames[], DB_DTPTR2 vars, int nels, DB_DTPTR2 mixvars, - int mixlen, int datatype, int centering, DBoptlist *optlist) + char const * const *varnames, DBVCP2_t vars, int nels, DBVCP2_t mixvars, + int mixlen, int datatype, int centering, DBoptlist const *optlist) { int retval; @@ -9060,57 +8955,45 @@ API_ERROR("DBPutUcdvar", E_GRABBED) ; if (!vname || !*vname) API_ERROR("UCDvar name", E_BADARGS); - if (db_VariableNameValid((char *)vname) == 0) + if (db_VariableNameValid(vname) == 0) API_ERROR("UCDvar name", E_INVALIDNAME); if (!SILO_Globals.allowOverwrites && DBInqVarExists(dbfile, vname)) API_ERROR("overwrite not allowed", E_NOOVERWRITE); if (!mname || !*mname) API_ERROR("UCDmesh name", E_BADARGS); - if (db_VariableNameValid((char *)mname) == 0) + if (db_VariableNameValid(mname) == 0) API_ERROR("UCDmesh name", E_INVALIDNAME); - if (nvars < 0) - API_ERROR("nvars<0", E_BADARGS); if (nels < 0) API_ERROR("nels<0", E_BADARGS); - if (mixlen < 0) - API_ERROR("mixlen", E_BADARGS); - if (nvars && nels) + if (nels) { int i; void **vars2 = (void**) vars; + if (nvars <= 0) + API_ERROR("nvars<0", E_BADARGS); for (i = 0; i < nvars && vars; i++) if (vars2[i] == 0) vars = 0; for (i = 0; i < nvars && varnames; i++) if (!varnames[i] && !*varnames[i]) varnames = 0; + if (mixlen < 0) + API_ERROR("mixlen", E_BADARGS); if (mixvars) { - vars2 = mixvars; + vars2 = (void**) mixvars; for (i = 0; i < nvars && mixvars; i++) if (vars2[i] == 0) mixvars = 0; } if (!vars) - API_ERROR("vars==0 || vars[i]==0", E_BADARGS); + API_ERROR("vars=0 || vars[i]=0", E_BADARGS); if (!varnames) - API_ERROR("varnames==0 || varnames[i]==0", E_BADARGS); + API_ERROR("varnames=0 || varnames[i]=0", E_BADARGS); if (mixlen && !mixvars) - API_ERROR("mixvars==0 || mixvars[i]==0", E_BADARGS); + API_ERROR("mixvars=0 || mixvars[i]=0", E_BADARGS); } else if (!SILO_Globals.allowEmptyObjects) { /* this is an empty object but we don't know if it was intentional */ - API_ERROR("nels==0 || nvars==0", E_EMPTYOBJECT); - } - else - { - /* this is an intentionally empty object */ - nvars = 0; - nels = 0; - varnames = 0; - vars = 0; - mixvars = 0; - mixlen = 0; - datatype = DB_FLOAT; - centering = DB_NODECENT; + API_ERROR("nvars=0 || nels==0", E_EMPTYOBJECT); } if (centering != DB_NODECENT && centering != DB_ZONECENT && centering != DB_FACECENT && centering != DB_BNDCENT && @@ -9119,7 +9002,7 @@ if (!dbfile->pub.p_uv) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.p_uv) (dbfile, (char *)vname, (char *)mname, + retval = (dbfile->pub.p_uv) (dbfile, vname, mname, nvars, varnames, vars, nels, mixvars, mixlen, datatype, centering, optlist); db_FreeToc(dbfile); @@ -9148,22 +9031,22 @@ * The old table of contents is discarded if the directory changes. *-------------------------------------------------------------------------*/ PUBLIC int -DBPutUcdvar1(DBfile *dbfile, const char *vname, const char *mname, DB_DTPTR1 var, - int nels, DB_DTPTR1 mixvar, int mixlen, int datatype, int centering, - DBoptlist *optlist) -{ - DB_DTPTR *vars[1], *mixvars[1]; - char *varnames[1]; +DBPutUcdvar1(DBfile *dbfile, const char *vname, const char *mname, void const *var, + int nels, void const *mixvar, int mixlen, int datatype, int centering, + DBoptlist const *optlist) +{ + void const *vars[1] = {var}; + void const *mixvars[1] = {mixvar}; + char const *varnames[1]; int retval; API_BEGIN2("DBPutUcdvar1", int, -1, vname) { - varnames[0] = (char *)vname; + varnames[0] = vname; vars[0] = var; mixvars[0] = mixvar; - retval = DBPutUcdvar(dbfile, (char *)vname, (char *)mname, var?1:0, varnames, - vars, nels, mixvars, mixlen, datatype, centering, - optlist); + retval = DBPutUcdvar(dbfile, vname, mname, 1, varnames, vars, + nels, mixvars, mixlen, datatype, centering, optlist); db_FreeToc(dbfile); API_RETURN(retval); } @@ -9199,8 +9082,8 @@ *-------------------------------------------------------------------------*/ PUBLIC int DBPutZonelist(DBfile *dbfile, const char *name, int nzones, int ndims, - int nodelist[], int lnodelist, int origin, int shapesize[], - int shapecnt[], int nshapes) + int const *nodelist, int lnodelist, int origin, int const *shapesize, + int const *shapecnt, int nshapes) { int retval; @@ -9211,31 +9094,43 @@ API_ERROR("DBPutZonelist", E_GRABBED) ; if (!name || !*name) API_ERROR("zonelist name", E_BADARGS); - if (db_VariableNameValid((char *)name) == 0) + if (db_VariableNameValid(name) == 0) API_ERROR("zonelist name", E_INVALIDNAME); if (!SILO_Globals.allowOverwrites && DBInqVarExists(dbfile, name)) API_ERROR("overwrite not allowed", E_NOOVERWRITE); if (nzones < 0) API_ERROR("nzones", E_BADARGS); - if (ndims < 0) - API_ERROR("ndims", E_BADARGS); - if (lnodelist <= 0) - API_ERROR("lnodelist", E_BADARGS); - if (!nodelist && lnodelist) - API_ERROR("nodelist", E_BADARGS); - if (0 != origin && 1 != origin) - API_ERROR("origin", E_BADARGS); - if (nshapes < 0) - API_ERROR("nshapes", E_BADARGS); - if (!shapesize && nshapes) - API_ERROR("shape size", E_BADARGS); - if (!shapecnt && nshapes) - API_ERROR("shape count", E_BADARGS); + if (nzones) + { + if (ndims <= 0) + API_ERROR("ndims<=0", E_BADARGS); + if (lnodelist <= 0) + API_ERROR("lnodelist<=", E_BADARGS); + if (!nodelist) + API_ERROR("nodelist=0", E_BADARGS); + if (0 != origin && 1 != origin) + API_ERROR("origin!=0||1", E_BADARGS); + if (nshapes <= 0) + API_ERROR("nshapes<=0", E_BADARGS); + if (!shapesize) + API_ERROR("shapesize=0", E_BADARGS); + if (!shapecnt) + API_ERROR("shapecnt=0", E_BADARGS); + } + else if (!SILO_Globals.allowEmptyObjects) + { + /* this is an empty object but we don't know if it was intentional */ + API_ERROR("nzones=0", E_EMPTYOBJECT); + } + else + { + lnodelist = 0; + nshapes = 0; + } if (!dbfile->pub.p_zl) API_ERROR(dbfile->pub.name, E_NOTIMP); - - retval = (dbfile->pub.p_zl) (dbfile, (char *)name, nzones, ndims, + retval = (dbfile->pub.p_zl) (dbfile, name, nzones, ndims, nodelist, lnodelist, origin, shapesize, shapecnt, nshapes); db_FreeToc(dbfile); @@ -9273,9 +9168,9 @@ *-------------------------------------------------------------------------*/ PUBLIC int DBPutZonelist2(DBfile *dbfile, const char *name, int nzones, int ndims, - int *nodelist, int lnodelist, int origin, int lo_offset, - int hi_offset, int *shapetype, int *shapesize, int *shapecnt, - int nshapes, DBoptlist *optlist) + int const *nodelist, int lnodelist, int origin, int lo_offset, + int hi_offset, int const *shapetype, int const *shapesize, int const *shapecnt, + int nshapes, DBoptlist const *optlist) { int retval; @@ -9286,58 +9181,51 @@ API_ERROR("DBPutZonelist2", E_GRABBED) ; if (!name || !*name) API_ERROR("zonelist name", E_BADARGS); - if (db_VariableNameValid((char *)name) == 0) + if (db_VariableNameValid(name) == 0) API_ERROR("zonelist name", E_INVALIDNAME); if (!SILO_Globals.allowOverwrites && DBInqVarExists(dbfile, name)) API_ERROR("overwrite not allowed", E_NOOVERWRITE); if (nzones < 0) API_ERROR("nzones", E_BADARGS); - if (ndims < 0) - API_ERROR("ndims", E_BADARGS); - if (lnodelist < 0) - API_ERROR("lnodelist", E_BADARGS); - if (nshapes < 0) - API_ERROR("nshapes", E_BADARGS); - if (nzones && ndims && lnodelist && nshapes) + if (nzones) { + if (ndims <= 0) + API_ERROR("ndims<=0", E_BADARGS); + if (lnodelist <= 0) + API_ERROR("lnodelist<=0", E_BADARGS); + if (nshapes <= 0) + API_ERROR("nshapes<=0", E_BADARGS); if (!nodelist) - API_ERROR("nodelist", E_BADARGS); + API_ERROR("nodelist=0", E_BADARGS); if (!shapetype) - API_ERROR("shape type", E_BADARGS); + API_ERROR("shapetype=0", E_BADARGS); if (!shapesize) - API_ERROR("shape size", E_BADARGS); + API_ERROR("shapesize=0", E_BADARGS); if (!shapecnt) - API_ERROR("shape count", E_BADARGS); + API_ERROR("shapecnt=0", E_BADARGS); + if (0 != origin && 1 != origin) + API_ERROR("origin!=0||1", E_BADARGS); + if (lo_offset < 0) + API_ERROR("lo_offset<0", E_BADARGS); + if (hi_offset < 0) + API_ERROR("hi_offset<0", E_BADARGS); +#ifndef _MSC_VER +#warning HI AND LO OFFSET NOT VALID IN PRESENCE OF EXPLICIT GHOST LABELS +#endif } else if (!SILO_Globals.allowEmptyObjects) { /* this is an empty object but we don't know if it was intentional */ - API_ERROR("nzones==0 || ndims==0 || lnodelist==0 || nshapes==0", E_EMPTYOBJECT); + API_ERROR("nzones=0", E_EMPTYOBJECT); } else { - /* this is an intentionally empty object */ - nzones = 0; - ndims = 0; - nodelist = 0; lnodelist = 0; - origin = 0; /* something has to be non-zero for HDF5 driver to be 'ok' */ - lo_offset = 0; - hi_offset = 0; - shapetype = 0; - shapesize = 0; - shapecnt = 0; nshapes = 0; } - if (0 != origin && 1 != origin) - API_ERROR("origin", E_BADARGS); - if (lo_offset < 0) - API_ERROR("lo_offset", E_BADARGS); - if (hi_offset < 0) - API_ERROR("hi_offset", E_BADARGS); if (!dbfile->pub.p_zl2) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.p_zl2) (dbfile, (char *)name, nzones, ndims, + retval = (dbfile->pub.p_zl2) (dbfile, name, nzones, ndims, nodelist, lnodelist, origin, lo_offset, hi_offset, shapetype, shapesize, shapecnt, nshapes, optlist); @@ -9365,10 +9253,10 @@ *-------------------------------------------------------------------------*/ PUBLIC int DBPutPHZonelist(DBfile *dbfile, const char *name, - int nfaces, int *nodecnt, int lnodelist, int *nodelist, - const char *extface, int nzones, int *facecnt, int lfacelist, - int *facelist, int origin, int lo_offset, int hi_offset, - DBoptlist *optlist) + int nfaces, int const *nodecnt, int lnodelist, int const *nodelist, + const char *extface, int nzones, int const *facecnt, int lfacelist, + int const *facelist, int origin, int lo_offset, int hi_offset, + DBoptlist const *optlist) { int retval; @@ -9380,56 +9268,50 @@ API_ERROR("DBPutPHZonelist", E_GRABBED) ; if (!name || !*name) API_ERROR("zonelist name", E_BADARGS); - if (db_VariableNameValid((char *)name) == 0) + if (db_VariableNameValid(name) == 0) API_ERROR("zonelist name", E_INVALIDNAME); if (!SILO_Globals.allowOverwrites && DBInqVarExists(dbfile, name)) API_ERROR("overwrite not allowed", E_NOOVERWRITE); if (nfaces < 0) - API_ERROR("nfaces", E_BADARGS); - if (!nodecnt && nfaces) - API_ERROR("nodecnt", E_BADARGS); - if (lnodelist < 0) - API_ERROR("lnodelist", E_BADARGS); - if (nfaces && lnodelist) + API_ERROR("nfaces<0", E_BADARGS); + if (nfaces) { + if (0 != origin && 1 != origin) + API_ERROR("origin", E_BADARGS); + if (!nodecnt) + API_ERROR("nodecnt==0", E_BADARGS); + if (!lnodelist) + API_ERROR("lnodelist==0", E_BADARGS); if (!nodelist) - API_ERROR("nodelist", E_BADARGS); + API_ERROR("nodelist==0", E_BADARGS); + if (nzones < 0) + API_ERROR("nzones<0", E_BADARGS); + if (nzones) + { + if ((lo_offset < 0) || (lo_offset >= nzones)) + API_ERROR("lo_offset", E_BADARGS); + if ((hi_offset < 0) || (hi_offset >= nzones)) + API_ERROR("hi_offset", E_BADARGS); + if (lo_offset > hi_offset) + API_ERROR("hi_offset", E_BADARGS); + if (!facecnt) + API_ERROR("facecnt==0", E_BADARGS); + if (!lfacelist) + API_ERROR("lfacelist==0", E_BADARGS); + if (!facelist) + API_ERROR("facelist==0", E_BADARGS); + } } else if (!SILO_Globals.allowEmptyObjects) { /* this is an empty object but we don't know if it was intentional */ - API_ERROR("nfaces==0 || lodelist==0", E_EMPTYOBJECT); + API_ERROR("nfaces==0", E_EMPTYOBJECT); } - else - { - /* this is an intentionally empty object */ - nfaces = 0; - nodecnt = 0; - lnodelist = 0; - nodelist = 0; - extface = 0; - nzones = 0; - facecnt = 0; - lfacelist = 0; - facelist = 0; - origin = 0; /* HDF5 driver needs something non-zero */ - lo_offset = 0; - hi_offset = 0; - } - if (0 != origin && 1 != origin) - API_ERROR("origin", E_BADARGS); - if (nzones>0 && ((lo_offset < 0) || (lo_offset >= nzones))) - API_ERROR("lo_offset", E_BADARGS); - if (nzones>0 && ((hi_offset < 0) || (hi_offset >= nzones))) - API_ERROR("hi_offset", E_BADARGS); - if (lo_offset > hi_offset) - API_ERROR("hi_offset", E_BADARGS); - if (!dbfile->pub.p_phzl) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.p_phzl) (dbfile, (char *)name, nfaces, nodecnt, - lnodelist, nodelist, (char *)extface, + retval = (dbfile->pub.p_phzl) (dbfile, name, nfaces, nodecnt, + lnodelist, nodelist, extface, nzones, facecnt, lfacelist, facelist, origin, lo_offset, hi_offset, optlist); @@ -9458,7 +9340,7 @@ int nbounds, const int *typeflags, const int *bndids/*optional*/, const void *coeffs, int lcoeffs, int datatype, - const double *extents, const char *zonel_name, DBoptlist *optlist) + const double *extents, const char *zonel_name, DBoptlist const *optlist) { int retval; @@ -9469,48 +9351,35 @@ API_ERROR("DBPutCsgmesh", E_GRABBED) ; if (!name || !*name) API_ERROR("CSGmesh name", E_BADARGS); - if (db_VariableNameValid((char *)name) == 0) + if (db_VariableNameValid(name) == 0) API_ERROR("CSGmesh name", E_INVALIDNAME); if (!SILO_Globals.allowOverwrites && DBInqVarExists(dbfile, name)) API_ERROR("overwrite not allowed", E_NOOVERWRITE); if (nbounds < 0) API_ERROR("nbounds<0", E_BADARGS); - if (ndims < 0) - API_ERROR("ndims<0", E_BADARGS); - if (lcoeffs < 0) - API_ERROR("lcoeffs<0", E_BADARGS); - if (ndims && nbounds && lcoeffs) + if (nbounds) { + if (ndims < 0) + API_ERROR("ndims<0", E_BADARGS); + if (lcoeffs < 0) + API_ERROR("lcoeffs<0", E_BADARGS); if (!(ndims == 2 || ndims == 3)) API_ERROR("ndims must be either 2 or 3", E_BADARGS); if (!typeflags) API_ERROR("typeflags==0", E_BADARGS); if (!coeffs) API_ERROR("coeffs==0", E_BADARGS); if (!extents) API_ERROR("extents==0", E_BADARGS); if (!zonel_name || !*zonel_name) API_ERROR("zonel_name", E_BADARGS); - if (db_VariableNameValid((char *)zonel_name) == 0) + if (db_VariableNameValid(zonel_name) == 0) API_ERROR("zonelist name", E_INVALIDNAME); } else if (!SILO_Globals.allowEmptyObjects) { API_ERROR("nbounds==0 || ndims==0 || lcoeffs==0", E_EMPTYOBJECT); } - else - { - /* this is an intentionally empty object */ - ndims = 0; - nbounds = 0; - typeflags = 0; - bndids = 0; - coeffs = 0; - lcoeffs = 0; - datatype = DB_FLOAT; - extents = 0; - zonel_name = 0; - } if (!dbfile->pub.p_csgm) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.p_csgm) (dbfile, (char *)name, ndims, + retval = (dbfile->pub.p_csgm) (dbfile, name, ndims, nbounds, typeflags, bndids, coeffs, lcoeffs, datatype, extents, zonel_name, optlist); @@ -9579,7 +9448,7 @@ const int *typeflags, const int *leftids, const int *rightids, const void *xforms, int lxforms, int datatype, - int nzones, const int *zonelist, DBoptlist *optlist) + int nzones, const int *zonelist, DBoptlist const *optlist) { int retval; @@ -9590,16 +9459,16 @@ API_ERROR("DBPutCSGZonelist", E_GRABBED) ; if (!name || !*name) API_ERROR("zonelist name", E_BADARGS); - if (db_VariableNameValid((char *)name) == 0) + if (db_VariableNameValid(name) == 0) API_ERROR("zonelist name", E_INVALIDNAME); if (!SILO_Globals.allowOverwrites && DBInqVarExists(dbfile, name)) API_ERROR("overwrite not allowed", E_NOOVERWRITE); - if (nregs < 0) - API_ERROR("nregs", E_BADARGS); - if (nzones < 0) - API_ERROR("nzones", E_BADARGS); - if (nregs && nzones) + if (nzones) { + if (nregs < 0) + API_ERROR("nregs", E_BADARGS); + if (nzones < 0) + API_ERROR("nzones", E_BADARGS); if (!typeflags) API_ERROR("typeflags", E_BADARGS); if (!leftids) @@ -9614,26 +9483,13 @@ else if (!SILO_Globals.allowEmptyObjects) { /* this is an empty object but we don't know if it was intentional */ - API_ERROR("ndims==0 || nnodes==0 || nzones==0", E_EMPTYOBJECT); - } - else - { - /* this is an intentionally empty object */ - nregs = 0; - typeflags = 0; - leftids = 0; - rightids = 0; - xforms = 0; - lxforms = 0; - datatype = DB_FLOAT; - nzones = 0; - zonelist = 0; + API_ERROR("nregs==0 || nzones==0", E_EMPTYOBJECT); } if (!dbfile->pub.p_csgzl) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.p_csgzl) (dbfile, (char *)name, nregs, + retval = (dbfile->pub.p_csgzl) (dbfile, name, nregs, typeflags, leftids, rightids, xforms, lxforms, datatype, nzones, zonelist, optlist); @@ -9696,10 +9552,11 @@ *-------------------------------------------------------------------------*/ PUBLIC int DBPutCsgvar(DBfile *dbfile, const char *vname, const char *meshname, - int nvars, char *varnames[], void *vars[], - int nvals, int datatype, int centering, DBoptlist *optlist) + int nvars, char const * const *varnames, DBVCP2_t _vars, + int nvals, int datatype, int centering, DBoptlist const *optlist) { int retval; + void const * const *vars = (void const * const *) _vars; API_BEGIN2("DBPutCsgvar", int, -1, vname) { if (!dbfile) @@ -9708,44 +9565,34 @@ API_ERROR("DBPutCsgvar", E_GRABBED) ; if (!vname || !*vname) API_ERROR("CSGvar name", E_BADARGS); - if (db_VariableNameValid((char *)vname) == 0) + if (db_VariableNameValid(vname) == 0) API_ERROR("CSGvar name", E_INVALIDNAME); if (!SILO_Globals.allowOverwrites && DBInqVarExists(dbfile, vname)) API_ERROR("overwrite not allowed", E_NOOVERWRITE); - if (!meshname || !*meshname) - API_ERROR("CSGmesh name", E_BADARGS); - if (db_VariableNameValid((char *)meshname) == 0) - API_ERROR("CSGmesh name", E_INVALIDNAME); - if (nvars < 0) - API_ERROR("nvars<0", E_BADARGS); if (nvals < 0) API_ERROR("nvals<0", E_BADARGS); - if (nvars && nvals) + if (nvals) { int i; + if (!meshname || !*meshname) + API_ERROR("CSGmesh name", E_BADARGS); + if (nvars <= 0) + API_ERROR("nvars<0", E_BADARGS); + if (db_VariableNameValid(meshname) == 0) + API_ERROR("CSGmesh name", E_INVALIDNAME); for (i = 0; i < nvars && vars; i++) if (!vars[i]) vars = 0; for (i = 0; i < nvars && varnames; i++) if (!varnames[i] && !*varnames[i]) varnames = 0; if (!vars) API_ERROR("vars==0 || vars[i]==0", E_BADARGS); if (!varnames) API_ERROR("varnames==0 || varnames[i]==0", E_BADARGS); + if (!(centering == DB_ZONECENT || centering == DB_BNDCENT)) + API_ERROR("centering", E_BADARGS); } else if (!SILO_Globals.allowEmptyObjects) { - API_ERROR("nvals==0 || nvars==0", E_EMPTYOBJECT); - } - else - { - /* this is an intentionally empty object */ - nvars = 0; - varnames = 0; - vars = 0; - nvals = 0; - datatype = DB_FLOAT; - centering = DB_ZONECENT; + API_ERROR("nvars=0 || nvals=0", E_EMPTYOBJECT); } - if (!(centering == DB_ZONECENT || centering == DB_BNDCENT)) - API_ERROR("centering", E_BADARGS); if (!dbfile->pub.p_csgv) API_ERROR(dbfile->pub.name, E_NOTIMP); @@ -10224,17 +10071,27 @@ * double. *--------------------------------------------------------------------*/ INTERNAL int -_DBQMCalcExtents(DB_DTPTR2 _coord_arrays, int datatype, int *min_index, - int *max_index, int *dims, int ndims, int coordtype, +_DBQMCalcExtents(DBVCP2_t coord_arrays, int datatype, int const *min_index, + int const *max_index, int const *dims, int ndims, int coordtype, void *min_extents, void *max_extents) { float *x = NULL, *y = NULL, *z = NULL; double *dx = NULL, *dy = NULL, *dz = NULL; double *dmin_extents = NULL, *dmax_extents = NULL; float *fmin_extents = NULL, *fmax_extents = NULL; - int i; + int i, is_empty = 1; char *me = "_DBQMCalcExtents"; - DB_DTPTR** coord_arrays = (DB_DTPTR**) _coord_arrays; + + for (i = 0; i < ndims; i++) + { + if (dims[i] > 0) + { + is_empty = 0; + break; + } + } + + if (is_empty) return 0; if (datatype == DB_FLOAT) { @@ -10261,13 +10118,13 @@ /* Read default coordinate variables. */ switch (ndims) { case 3: - z = coord_arrays[2]; + z = ((float**)coord_arrays)[2]; /* Fall through */ case 2: - y = coord_arrays[1]; + y = ((float**)coord_arrays)[1]; /* Fall through */ case 1: - x = coord_arrays[0]; + x = ((float**)coord_arrays)[0]; break; default: break; @@ -10434,7 +10291,7 @@ * I removed the unused argument ny. *--------------------------------------------------------------------------*/ INTERNAL int -_DBSubsetMinMax2(DB_DTPTR1 arr, int datatype, float *amin, float *amax, int nx, +_DBSubsetMinMax2(void const *arr, int datatype, float *amin, float *amax, int nx, int ixmin, int ixmax, int iymin, int iymax) { int k, j, index; @@ -10504,7 +10361,7 @@ * passed in as void* variables. *--------------------------------------------------------------------*/ INTERNAL int -UM_CalcExtents(DB_DTPTR2 coord_arrays, int datatype, int ndims, int nnodes, +UM_CalcExtents(DBVCP2_t coord_arrays, int datatype, int ndims, int nnodes, void *min_extents, void *max_extents) { int i, j; @@ -10513,6 +10370,8 @@ float *fmin_extents = NULL, *fmax_extents = NULL; float **fcoord_arrays = NULL; + if (nnodes <= 0) return 0; + if (datatype == DB_DOUBLE) { dmin_extents = (double *)min_extents; @@ -10649,7 +10508,7 @@ * Added support for nameschemes options on multi-block objects. *-------------------------------------------------------------------------*/ INTERNAL int -db_ProcessOptlist(int objtype, const DBoptlist *const optlist) +db_ProcessOptlist(int objtype, DBoptlist const * const optlist) { int i, j, *ip = NULL, unused = 0; char *me = "db_ProcessOptlist"; @@ -10733,7 +10592,7 @@ break; case DBOPT_BNDNAMES: - _csgm._bndnames = optlist->values[i]; + _csgm._bndnames = (char **)optlist->values[i]; break; case DBOPT_HIDE_FROM_GUI: @@ -10764,6 +10623,14 @@ _csgm._extensive = DEREF(int, optlist->values[i]); break; + case DBOPT_MISSING_VALUE: + _csgm._missing_value = DEREF(double, optlist->values[i]); + break; + + case DBOPT_ALT_NODENUM_VARS: + _csgm._alt_nodenum_vars = (char **) optlist->values[i]; + break; + default: unused++; break; @@ -10940,6 +10807,18 @@ _pm._extensive = DEREF(int, optlist->values[i]); break; + case DBOPT_MISSING_VALUE: + _pm._missing_value = DEREF(double, optlist->values[i]); + break; + + case DBOPT_GHOST_NODE_LABELS: + _pm._ghost_node_labels = (char *)optlist->values[i]; + break; + + case DBOPT_ALT_NODENUM_VARS: + _pm._alt_nodenum_vars = (char **) optlist->values[i]; + break; + default: unused++; break; @@ -10968,7 +10847,7 @@ break; case DBOPT_COORDSYS: - _qm._coordsys = DEREF(int, optlist->values[i]); + _qm._coord_sys = DEREF(int, optlist->values[i]); break; case DBOPT_FACETYPE: @@ -11080,6 +10959,26 @@ _qm._extensive = DEREF(int, optlist->values[i]); break; + case DBOPT_MISSING_VALUE: + _qm._missing_value = DEREF(double, optlist->values[i]); + break; + + case DBOPT_GHOST_NODE_LABELS: + _qm._ghost_node_labels = (char *)optlist->values[i]; + break; + + case DBOPT_GHOST_ZONE_LABELS: + _qm._ghost_zone_labels = (char *)optlist->values[i]; + break; + + case DBOPT_ALT_NODENUM_VARS: + _qm._alt_nodenum_vars = (char **) optlist->values[i]; + break; + + case DBOPT_ALT_ZONENUM_VARS: + _qm._alt_zonenum_vars = (char **) optlist->values[i]; + break; + default: unused++; break; @@ -11108,7 +11007,7 @@ break; case DBOPT_COORDSYS: - _um._coordsys = DEREF(int, optlist->values[i]); + _um._coord_sys = DEREF(int, optlist->values[i]); break; case DBOPT_TOPO_DIM: @@ -11227,6 +11126,18 @@ _um._extensive = DEREF(int, optlist->values[i]); break; + case DBOPT_MISSING_VALUE: + _um._missing_value = DEREF(double, optlist->values[i]); + break; + + case DBOPT_GHOST_NODE_LABELS: + _um._ghost_node_labels = (char *)optlist->values[i]; + break; + + case DBOPT_ALT_NODENUM_VARS: + _um._alt_nodenum_vars = (char **) optlist->values[i]; + break; + default: unused++; break; @@ -11247,6 +11158,14 @@ _uzl._llong_gzoneno = DEREF(int, optlist->values[i]); break; + case DBOPT_GHOST_ZONE_LABELS: + _uzl._ghost_zone_labels = (char *)optlist->values[i]; + break; + + case DBOPT_ALT_ZONENUM_VARS: + _uzl._alt_zonenum_vars = (char **) optlist->values[i]; + break; + default: unused++; break; @@ -11267,6 +11186,14 @@ _phzl._llong_gzoneno = DEREF(int, optlist->values[i]); break; + case DBOPT_GHOST_ZONE_LABELS: + _phzl._ghost_zone_labels = (char *)optlist->values[i]; + break; + + case DBOPT_ALT_ZONENUM_VARS: + _phzl._alt_zonenum_vars = (char **) optlist->values[i]; + break; + default: unused++; break; @@ -11287,6 +11214,10 @@ _csgzl._zonenames = (char **) optlist->values[i]; break; + case DBOPT_ALT_ZONENUM_VARS: + _csgzl._alt_zonenum_vars = (char **) optlist->values[i]; + break; + default: unused++; break; @@ -11480,6 +11411,18 @@ _mm._repr_block_idx = DEREF(int,optlist->values[i])+1; break; + case DBOPT_MISSING_VALUE: + _mm._missing_value = DEREF(double, optlist->values[i]); + break; + + case DBOPT_ALT_NODENUM_VARS: + _mm._alt_nodenum_vars = (char**) optlist->values[i]; + break; + + case DBOPT_ALT_ZONENUM_VARS: + _mm._alt_zonenum_vars = (char**) optlist->values[i]; + break; + default: unused++; break; @@ -11528,6 +11471,14 @@ _cu._reference = (char *)optlist->values[i]; break; + case DBOPT_COORDSYS: + _cu._coord_sys = DEREF(int, optlist->values[i]); + break; + + case DBOPT_MISSING_VALUE: + _cu._missing_value = DEREF(double, optlist->values[i]); + break; + default: unused++; break; @@ -11637,7 +11588,7 @@ if (!dbfile->pub.g_ca) API_ERROR(dbfile->pub.name, E_NOTIMP); - ca = DBGetCompoundarray(dbfile, (char *)array_name); + ca = DBGetCompoundarray(dbfile, array_name); if (!ca) API_ERROR("DBGetCompoundarray", E_CALLFAIL); @@ -11704,7 +11655,7 @@ if (!objname || !*objname) API_ERROR("object name", E_BADARGS); - retval = (dbfile->pub.g_compnames) (dbfile, (char *)objname, + retval = (dbfile->pub.g_compnames) (dbfile, objname, comp_names, file_names); API_RETURN(retval); } @@ -11779,6 +11730,7 @@ { splits[0] = max_index + 1; splits[1] = nzones; + splits[2] = 0; } isplit = 0; @@ -11878,6 +11830,7 @@ memset(&_csgm, 0, sizeof(_csgm)); _csgm._use_specmf = DB_OFF; _csgm._group_no = -1; + _csgm._missing_value = DB_MISSING_VALUE_NOT_SET; return 0; } @@ -11919,6 +11872,7 @@ _pm._ndims = ndims; _pm._nspace = ndims; _pm._group_no = -1; + _pm._missing_value = DB_MISSING_VALUE_NOT_SET; return 0; } @@ -11968,13 +11922,14 @@ FREE(_qm._meshname); memset(&_qm, 0, sizeof(_qm)); - _qm._coordsys = DB_OTHER; + _qm._coord_sys = DB_OTHER; _qm._facetype = DB_RECTILINEAR; _qm._ndims = ndims; _qm._nspace = ndims; _qm._planar = DB_AREA; _qm._use_specmf = DB_OFF; _qm._group_no = -1; + _qm._missing_value = DB_MISSING_VALUE_NOT_SET; return 0; } @@ -12000,6 +11955,7 @@ db_ResetGlobalData_Curve (void) { memset (&_cu, 0, sizeof(_cu)) ; + _cu._missing_value = DB_MISSING_VALUE_NOT_SET; } /*---------------------------------------------------------------------- @@ -12052,7 +12008,7 @@ db_ResetGlobalData_Ucdmesh (int ndims, int nnodes, int nzones) { memset(&_um, 0, sizeof(_um)); - _um._coordsys = DB_OTHER; + _um._coord_sys = DB_OTHER; _um._facetype = DB_RECTILINEAR; _um._ndims = ndims; _um._nnodes = nnodes; @@ -12060,6 +12016,7 @@ _um._planar = DB_OTHER; _um._use_specmf = DB_OFF; _um._group_no = -1; + _um._missing_value = DB_MISSING_VALUE_NOT_SET; return 0; } @@ -12135,6 +12092,7 @@ _mm._nmat = -1; _mm._blockorigin = 1; _mm._grouporigin = 1; + _mm._missing_value = DB_MISSING_VALUE_NOT_SET; return 0; } @@ -12204,8 +12162,12 @@ * Made this function public, replacing 'db_' with 'DB' in name. *--------------------------------------------------------------------*/ PUBLIC void -DBStringArrayToStringList(char **strArray, int n, - char **strList, int *m) +DBStringArrayToStringList( + char const * const *strArray, + int n, + char **strList, + int *m +) { int i, len; char *s = NULL; @@ -12229,7 +12191,7 @@ else len += 2; } - s = malloc(len+1); + s = (char*)malloc(len+1); for (i=len=0; iname); FREE(tree->src_mesh_name); if (tree->mrgvar_onames) @@ -13260,7 +13269,7 @@ } static void -DBWalkMrgtree_r(DBmrgtnode *node, int *walk_order, DBmrgwalkcb wcb, void *wdata, +DBWalkMrgtree_r(DBmrgtnode const *node, int *walk_order, DBmrgwalkcb wcb, void *wdata, int traversal_flags) { if (node == 0) @@ -13298,7 +13307,7 @@ } void -DBWalkMrgtree(DBmrgtree *tree, DBmrgwalkcb cb, void *wdata, int traversal_flags) +DBWalkMrgtree(DBmrgtree const *tree, DBmrgwalkcb cb, void *wdata, int traversal_flags) { int walk_order = 0; DBmrgtnode *start = tree->root; @@ -13331,13 +13340,19 @@ API_ERROR("type_info_bits", E_BADARGS); if (max_root_descendents <= 0) API_ERROR("max_root_descendents", E_BADARGS); - if (NULL == (tree = ALLOC(DBmrgtree))) - API_ERROR(NULL, E_NOMEM); + tree = ALLOC(DBmrgtree); + if (!tree) API_ERROR(NULL, E_NOMEM); memset(tree, 0, sizeof(DBmrgtree)); - if (NULL == (root = ALLOC(DBmrgtnode))) + root = ALLOC(DBmrgtnode); + if (!root) { + FREE(tree); API_ERROR(NULL, E_NOMEM); + } memset(root, 0, sizeof(DBmrgtnode)); - if (NULL == (root->children = ALLOC_N(DBmrgtnode*, max_root_descendents))) { + root->children = ALLOC_N(DBmrgtnode*, max_root_descendents); + if (!root->children) { + FREE(root); + FREE(tree); API_ERROR(NULL, E_NOMEM); } @@ -13377,8 +13392,8 @@ PUBLIC int DBAddRegion(DBmrgtree *tree, const char *region_name, int type_info_bits, int max_descendents, - const char *maps_name, int nsegs, int *seg_ids, - int *seg_lens, int *seg_types, DBoptlist *opts) + const char *maps_name, int nsegs, int const *seg_ids, + int const *seg_lens, int const *seg_types, DBoptlist const *opts) { DBmrgtnode *tnode = NULL; @@ -13395,13 +13410,6 @@ if (tree->cwr->num_children >= tree->cwr->max_children) { API_ERROR("exceeded max_descendents", E_BADARGS); } - if (NULL == (tnode = ALLOC(DBmrgtnode))) - API_ERROR(NULL, E_NOMEM); - memset(tnode, 0, sizeof(DBmrgtnode)); - if (NULL == (tnode->children = ALLOC_N(DBmrgtnode*, max_descendents)) && - max_descendents) { - API_ERROR(NULL, E_NOMEM); - } if (nsegs > 0) { if (seg_ids == 0) @@ -13411,6 +13419,14 @@ if (seg_types == 0) API_ERROR("seg_types", E_BADARGS); } + if (NULL == (tnode = ALLOC(DBmrgtnode))) + API_ERROR(NULL, E_NOMEM); + memset(tnode, 0, sizeof(DBmrgtnode)); + if (NULL == (tnode->children = ALLOC_N(DBmrgtnode*, max_descendents)) && + max_descendents) { + FREE(tnode); + API_ERROR(NULL, E_NOMEM); + } /* update internal node info */ tnode->walk_order = -1; @@ -13429,13 +13445,19 @@ { int i; - if (NULL == (tnode->seg_ids = ALLOC_N(int, nsegs))) { - API_ERROR(NULL, E_NOMEM); - } - if (NULL == (tnode->seg_lens = ALLOC_N(int, nsegs))) { - API_ERROR(NULL, E_NOMEM); - } - if (NULL == (tnode->seg_types = ALLOC_N(int, nsegs))) { + tnode->seg_ids = ALLOC_N(int, nsegs); + tnode->seg_lens = ALLOC_N(int, nsegs); + tnode->seg_types = ALLOC_N(int, nsegs); + + if (!tnode->seg_ids || !tnode->seg_lens || !tnode->seg_types) + { + FREE(tnode->seg_types); + FREE(tnode->seg_lens); + FREE(tnode->seg_ids); + FREE(tnode->maps_name); + FREE(tnode->name); + FREE(tnode->children); + FREE(tnode); API_ERROR(NULL, E_NOMEM); } @@ -13467,9 +13489,9 @@ PUBLIC int DBAddRegionArray(DBmrgtree *tree, int nregns, - char **regn_names, int type_info_bits, - const char *maps_name, int nsegs, int *seg_ids, - int *seg_lens, int *seg_types, DBoptlist *opts) + char const * const *regn_names, int type_info_bits, + char const *maps_name, int nsegs, int const *seg_ids, + int const *seg_lens, int const *seg_types, DBoptlist const *opts) { DBmrgtnode *tnode = NULL; int i; @@ -13506,6 +13528,7 @@ if (strchr(regn_names[0], '%') != 0) { if (NULL == (tnode->names = ALLOC_N(char*, 1))) { + FREE(tnode); API_ERROR(NULL, E_NOMEM); } tnode->names[0] = STRDUP(regn_names[0]); @@ -13513,6 +13536,7 @@ else { if (NULL == (tnode->names = ALLOC_N(char*, nregns))) { + FREE(tnode); API_ERROR(NULL, E_NOMEM); } for (i = 0; i < nregns; i++) @@ -13526,14 +13550,23 @@ tnode->nsegs = nsegs; if (nsegs > 0) { - - if (NULL == (tnode->seg_ids = ALLOC_N(int, nsegs*nregns))) { - API_ERROR(NULL, E_NOMEM); - } - if (NULL == (tnode->seg_lens = ALLOC_N(int, nsegs*nregns))) { - API_ERROR(NULL, E_NOMEM); - } - if (NULL == (tnode->seg_types = ALLOC_N(int, nsegs*nregns))) { + tnode->seg_ids = ALLOC_N(int, nsegs*nregns); + tnode->seg_lens = ALLOC_N(int, nsegs*nregns); + tnode->seg_types = ALLOC_N(int, nsegs*nregns); + + if (!tnode->seg_ids || !tnode->seg_lens || !tnode->seg_types) { + FREE(tnode->seg_types); + FREE(tnode->seg_lens); + FREE(tnode->seg_ids); + if (strchr(regn_names[0], '%') != 0) { + FREE(tnode->names[0]); + FREE(tnode->names); + } else { + for (i = 0; i < nregns; i++) + FREE(tnode->names[i]); + FREE(tnode->names); + } + FREE(tnode); API_ERROR(NULL, E_NOMEM); } @@ -13563,7 +13596,7 @@ } PUBLIC int -DBSetCwr(DBmrgtree *tree, const char *path) +DBSetCwr(DBmrgtree *tree, char const *path) { int retval = -1; @@ -13603,7 +13636,7 @@ API_END_NOPOP; /* BEWARE: If API_RETURN above is removed use API_END */ } -PUBLIC const char * +PUBLIC char const * DBGetCwr(DBmrgtree *tree) { const char *retval = NULL; @@ -13620,8 +13653,8 @@ } PUBLIC int -DBPutMrgtree(DBfile *dbfile, const char *name, const char *mesh_name, - DBmrgtree *tree, DBoptlist *opts) +DBPutMrgtree(DBfile *dbfile, char const *name, char const *mesh_name, + DBmrgtree const *tree, DBoptlist const *opts) { int retval; @@ -13633,18 +13666,18 @@ API_ERROR("DBPutMrgtree", E_GRABBED) ; if (!name || !*name) API_ERROR("mrgtree name", E_BADARGS); - if (db_VariableNameValid((char *)name) == 0) + if (db_VariableNameValid(name) == 0) API_ERROR("mrgtree name", E_INVALIDNAME); if (!mesh_name || !*mesh_name) API_ERROR("mesh_name", E_BADARGS); - if (db_VariableNameValid((char *)mesh_name) == 0) + if (db_VariableNameValid(mesh_name) == 0) API_ERROR("mesh_name", E_INVALIDNAME); if (!SILO_Globals.allowOverwrites && DBInqVarExists(dbfile, name)) API_ERROR("overwrite not allowed", E_NOOVERWRITE); if (NULL == dbfile->pub.p_mrgt) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.p_mrgt) (dbfile, (char *)name, (char *)mesh_name, + retval = (dbfile->pub.p_mrgt) (dbfile, name, mesh_name, tree, opts); db_FreeToc(dbfile); @@ -13668,7 +13701,7 @@ if (!dbfile->pub.g_mrgt) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.g_mrgt) (dbfile, (char *)name); + retval = (dbfile->pub.g_mrgt) (dbfile, name); API_RETURN(retval); } API_END_NOPOP; /*BEWARE: If API_RETURN above is removed use API_END */ @@ -13676,9 +13709,9 @@ PUBLIC int DBPutGroupelmap(DBfile *dbfile, const char *name, - int num_segments, int *groupel_types, int *segment_lengths, - int *segment_ids, int **segment_data, void **segment_fracs, - int fracs_data_type, DBoptlist *opts) + int num_segments, int const *groupel_types, int const *segment_lengths, + int const *segment_ids, int const * const *segment_data, DBVCP2_t segment_fracs, + int fracs_data_type, DBoptlist const *opts) { int retval; @@ -13689,7 +13722,7 @@ API_ERROR("DBPutGroupelmap", E_GRABBED) ; if (!name || !*name) API_ERROR("groupel map name", E_BADARGS); - if (db_VariableNameValid((char *)name) == 0) + if (db_VariableNameValid(name) == 0) API_ERROR("groupel map name", E_INVALIDNAME); if (!SILO_Globals.allowOverwrites && DBInqVarExists(dbfile, name)) API_ERROR("overwrite not allowed", E_NOOVERWRITE); @@ -13704,7 +13737,7 @@ if (!dbfile->pub.p_grplm) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.p_grplm) (dbfile, (char *)name, + retval = (dbfile->pub.p_grplm) (dbfile, name, num_segments, groupel_types, segment_lengths, segment_ids, segment_data, segment_fracs, fracs_data_type, opts); @@ -13729,7 +13762,7 @@ if (!dbfile->pub.g_grplm) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.g_grplm) (dbfile, (char *)name); + retval = (dbfile->pub.g_grplm) (dbfile, name); API_RETURN(retval); } API_END_NOPOP; /*BEWARE: If API_RETURN above is removed use API_END */ @@ -13737,8 +13770,8 @@ PUBLIC int DBPutMrgvar(DBfile *dbfile, const char *name, const char *mrgt_name, - int ncomps, char **compnames, int nregns, char **reg_pnames, - int datatype, void **data, DBoptlist *opts) + int ncomps, char const * const *compnames, int nregns, char const * const *reg_pnames, + int datatype, DBVCP2_t data, DBoptlist const *opts) { int retval; @@ -13749,11 +13782,11 @@ API_ERROR("DBPutMrgvar", E_GRABBED) ; if (!name || !*name) API_ERROR("mrgvar name", E_BADARGS); - if (db_VariableNameValid((char *)name) == 0) + if (db_VariableNameValid(name) == 0) API_ERROR("mrgvar name", E_INVALIDNAME); if (!mrgt_name || !*mrgt_name) API_ERROR("mrgt_name", E_BADARGS); - if (db_VariableNameValid((char *)mrgt_name) == 0) + if (db_VariableNameValid(mrgt_name) == 0) API_ERROR("mrgt_name", E_INVALIDNAME); if (!SILO_Globals.allowOverwrites && DBInqVarExists(dbfile, name)) API_ERROR("overwrite not allowed", E_NOOVERWRITE); @@ -13792,7 +13825,7 @@ if (!dbfile->pub.g_mrgv) API_ERROR(dbfile->pub.name, E_NOTIMP); - retval = (dbfile->pub.g_mrgv) (dbfile, (char *)name); + retval = (dbfile->pub.g_mrgv) (dbfile, name); API_RETURN(retval); } API_END_NOPOP; /*BEWARE: If API_RETURN above is removed use API_END */ @@ -13829,16 +13862,201 @@ * ***********************************************************************/ char * -safe_strdup(const char *s) +_db_safe_strdup(const char *s) { char *retval = NULL; + int n; if (!s) return NULL; - retval = (char*)malloc(sizeof(char)*(strlen(s)+1)); - strcpy(retval,s); - retval[strlen(s)] = '\0'; - + n = strlen(s); + retval = (char*)malloc(sizeof(char)*(n+1)); + memcpy(retval, s, n); + retval[n] = '\0'; + return(retval); } + +/*------------------------------------------------------------------------- + * Function: different + * + * Purpose: Determines if A and B are same or different based on an + * absolute tolerance and relative tolerance. A and B differ + * if and only if + * + * | A-B | > ABSTOL + * + * or + * + * 2 | A-B | + * --------- > RELTOL + * | A+B | + * + * If ABSTOL or RELTOL is negative then the corresponding + * test is not performed. If both are negative then this + * function degenerates to a `!=' operator. + * + * Return: Success: 0 if same, 1 if different. + * + * Failure: never fails + * + * Programmer: Robb Matzke + * matzke@viper.llnl.gov + * Feb 6 1997 + * + * Modifications: + * + * Mark C. Miller, Wed Nov 11 22:18:17 PST 2009 + * Added suppot for alternate relative diff option. + * + * Mark C. Miller, Tue Feb 7 15:18:38 PST 2012 + * Made reltol_eps diff mutually exclusive with abstol || reltol diff. + *------------------------------------------------------------------------- + */ +int DBIsDifferentDouble(double a, double b, double abstol, double reltol, double reltol_eps) +{ + double num, den; + + /* + * First, see if we should use the alternate diff. + * check |A-B|/(|A|+|B|+EPS) in a way that won't overflow. + */ + if (reltol_eps >= 0 && reltol > 0) + { + if ((a<0 && b>0) || (b<0 && a>0)) { + num = fabs (a/2 - b/2); + den = fabs (a/2) + fabs(b/2) + reltol_eps/2; + reltol /= 2; + } else { + num = fabs (a - b); + den = fabs (a) + fabs(b) + reltol_eps; + } + if (0.0==den && num) return 1; + if (num/den > reltol) return 1; + return 0; + } + else /* use the old Abs|Rel difference test */ + { + /* + * Now the |A-B| but make sure it doesn't overflow which can only + * happen if one is negative and the other is positive. + */ + if (abstol>0) { + if ((a<0 && b>0) || (b<0 && a>0)) { + if (fabs (a/2 - b/2) > abstol/2) return 1; + } else { + if (fabs(a-b) > abstol) return 1; + } + } + + /* + * Now check 2|A-B|/|A+B| in a way that won't overflow. + */ + if (reltol>0) { + if ((a<0 && b>0) || (b<0 && a>0)) { + num = fabs (a/2 - b/2); + den = fabs (a/2 + b/2); + reltol /= 2; + } else { + num = fabs (a - b); + den = fabs (a/2 + b/2); + } + if (0.0==den && num) return 1; + if (num/den > reltol) return 1; + } + + if (abstol>0 || reltol>0) return 0; + } + + /* + * Otherwise do a normal exact comparison. + */ + return a!=b; +} + +/*------------------------------------------------------------------------- + * Function: differentll + * + * Purpose: Implement above difference function for long long type. + * + * Programmer: Mark C. Miller, Mon Dec 7 07:05:39 PST 2009 + * + * Modifications: + * Mark C. Miller, Mon Dec 7 09:50:19 PST 2009 + * Change conditional compilation logic to compile this routine + * whenever a double is NOT sufficient to hold full precision of long + * or long long. + * + * Mark C. Miller, Mon Jan 11 16:20:16 PST 2010 + * Made it compiled UNconditionally. + *------------------------------------------------------------------------- + */ +#define FABS(A) ((A)<0?-(A):(A)) +int DBIsDifferentLongLong(long long a, long long b, double abstol, double reltol, double reltol_eps) +{ + + long long num, den; + + /* + * First, see if we should use the alternate diff. + * check |A-B|/(|A|+|B|+EPS) in a way that won't overflow. + */ + if (reltol_eps >= 0 && reltol > 0) + { + if ((a<0 && b>0) || (b<0 && a>0)) { + num = FABS (a/2 - b/2); + den = FABS (a/2) + FABS(b/2) + reltol_eps/2; + reltol /= 2; + } else { + num = FABS (a - b); + den = FABS (a) + FABS(b) + reltol_eps; + } + if (0.0==den && num) return 1; + if (num/den > reltol) return 1; + return 0; + } + else + { + /* + * Now the |A-B| but make sure it doesn't overflow which can only + * happen if one is negative and the other is positive. + */ + if (abstol>0) { + if ((a<0 && b>0) || (b<0 && a>0)) { + if (FABS(a/2 - b/2) > abstol/2) return 1; + } else { + if (FABS(a-b) > abstol) return 1; + } + } + + /* + * Now check 2|A-B|/|A+B| in a way that won't overflow. + */ + if (reltol>0) { + if ((a<0 && b>0) || (b<0 && a>0)) { + num = FABS (a/2 - b/2); + den = FABS (a/2 + b/2); + reltol /= 2; + } else { + num = FABS (a - b); + den = FABS (a/2 + b/2); + } + if (0.0==den && num) return 1; + if (num/den > reltol) return 1; + + if (abstol>0 || reltol>0) return 0; + } + } + + /* + * Otherwise do a normal exact comparison. + */ + return a!=b; +} + +PUBLIC char * +DBGetDatatypeString(int dt) +{ + return db_GetDatatypeString(dt); +} diff -Nru silo-llnl-4.10.2/src/silo/silo_drivers.h silo-llnl-4.10.2.real/src/silo/silo_drivers.h --- silo-llnl-4.10.2/src/silo/silo_drivers.h 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/src/silo/silo_drivers.h 2018-02-15 17:25:43.000000000 +0000 @@ -128,7 +128,7 @@ #define DB_NETCDF_CREATE NULL #define DB_NETCDF_FSINGLE db_cdf_ForceSingle -extern DBfile *db_cdf_Open(char *, int, int); +extern DBfile *db_cdf_Open(char const *, int, int); extern int db_cdf_ForceSingle(int); #else @@ -145,8 +145,8 @@ #define DB_PDBP_CREATE db_pdbp_Create #define DB_PDBP_FSINGLE db_pdbp_ForceSingle -extern DBfile *db_pdbp_Open(char *, int, int); -extern DBfile *db_pdbp_Create(char *, int, int, int, char *); +extern DBfile *db_pdbp_Open(char const *, int, int); +extern DBfile *db_pdbp_Create(char const *, int, int, int, char const *); extern int db_pdbp_ForceSingle(int); #else @@ -163,8 +163,8 @@ #define DB_PDB_CREATE db_pdb_Create #define DB_PDB_FSINGLE db_pdb_ForceSingle -extern DBfile *db_pdb_Open(char *, int, int); -extern DBfile *db_pdb_Create(char *, int, int, int, char *); +extern DBfile *db_pdb_Open(char const *, int, int); +extern DBfile *db_pdb_Create(char const *, int, int, int, char const *); extern int db_pdb_ForceSingle(int); #else @@ -180,7 +180,7 @@ #define DB_TAURUS_CREATE NULL #define DB_TAURUS_FSINGLE NULL -extern DBfile *db_taur_Open(char *, int, int); +extern DBfile *db_taur_Open(char const *, int, int); #else #define DB_TAURUS_OPEN NULL @@ -195,7 +195,7 @@ #define DB_UNKNOWN_CREATE NULL #define DB_UNKNOWN_FSINGLE NULL -extern DBfile *db_unk_Open(char *, int, int); +extern DBfile *db_unk_Open(char const *, int, int); #else #define DB_UNKNOWN_OPEN NULL @@ -210,8 +210,8 @@ #define DB_DEBUG_CREATE db_debug_create #define DB_DEBUG_FSINGLE NULL -extern DBfile *db_debug_open(char *, int, int); -extern DBfile *db_debug_create(char *, int, int, int, char *); +extern DBfile *db_debug_open(char const *, int, int); +extern DBfile *db_debug_create(char const *, int, int, int, char const *); #else #define DB_DEBUG_OPEN NULL @@ -226,8 +226,8 @@ #define DB_HDF5_CREATE db_hdf5_Create #define DB_HDF5_FSINGLE db_hdf5_ForceSingle -extern DBfile *db_hdf5_Open(char*, int, int); -extern DBfile *db_hdf5_Create(char*, int, int, int, char*); +extern DBfile *db_hdf5_Open(char const *, int, int); +extern DBfile *db_hdf5_Create(char const *, int, int, int, char const *); extern int db_hdf5_ForceSingle(int); #else @@ -284,8 +284,8 @@ NULL, /*unused*/\ NULL} /*unused*/ -DBfile *(*DBOpenCB[DB_NFORMATS]) (char *, int, int) = DBOPENCB; -DBfile *(*DBCreateCB[DB_NFORMATS]) (char *, int, int, int, char *) = DBCREATECB; +DBfile *(*DBOpenCB[DB_NFORMATS]) (char const *, int, int) = DBOPENCB; +DBfile *(*DBCreateCB[DB_NFORMATS]) (char const *, int, int, int, char const *) = DBCREATECB; int (*DBFSingleCB[DB_NFORMATS]) (int) = DBFSINGLECB; #endif /* DB_MAIN */ diff -Nru silo-llnl-4.10.2/src/silo/silo_exports.h silo-llnl-4.10.2.real/src/silo/silo_exports.h --- silo-llnl-4.10.2/src/silo/silo_exports.h 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/silo/silo_exports.h 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,20 @@ +#ifndef SILO_EXPORTS_H +#define SILO_EXPORTS_H + +#ifndef SILO_API + #ifdef _WIN32 + #ifdef SILO_STATIC_LIBRARY + #define SILO_API + #else + #ifdef SILO_EXPORTS + #define SILO_API __declspec(dllexport) + #else + #define SILO_API __declspec(dllimport) + #endif + #endif + #else + #define SILO_API + #endif +#endif + +#endif diff -Nru silo-llnl-4.10.2/src/silo/silo_f77.inc silo-llnl-4.10.2.real/src/silo/silo_f77.inc --- silo-llnl-4.10.2/src/silo/silo_f77.inc 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/silo/silo_f77.inc 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,842 @@ +Ccccccccccccccccccccccccccccccccccccccccccccccccccccccccc -*- fortran -*- +C +C SILO include file for Fortan applications. +C +C Programmer: miller86 Mon Sep 29 07:01:26 PDT 2014 +C +C WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING +C This file is generated automatically from C header files in the +C SILO distribution. Do not make changes to this file manually, +C as those changes will disappear. +C WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING +C +C This file was generated by the following commands... +C mv silo.inc silo.inc~ +C cat silo.h silo_f.h | mkinc > silo.inc +C +C cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc + + +C...Functions. + EXTERNAL DBADDCAOPT + EXTERNAL DBADDCCMP + EXTERNAL DBADDCOPT + EXTERNAL DBADDDOPT + EXTERNAL DBADDIAOPT + EXTERNAL DBADDICMP + EXTERNAL DBADDIOPT + EXTERNAL DBADDRCMP + EXTERNAL DBADDREGION + EXTERNAL DBADDREGIONA + EXTERNAL DBADDROPT + EXTERNAL DBCALCFL + EXTERNAL DBCLOSE + EXTERNAL DBCREATE + EXTERNAL DBERRNO + EXTERNAL DBFGETCA + EXTERNAL DBFREEMRGTREE + EXTERNAL DBFREEOBJECT + EXTERNAL DBFREEOPTLIST + EXTERNAL DBGET2DSTRLEN + EXTERNAL DBGETCA + EXTERNAL DBGETCKSUMS + EXTERNAL DBGETCOMPRESS + EXTERNAL DBGETCURVE + EXTERNAL DBGETDEPWARN + EXTERNAL DBGETEMPTYOK + EXTERNAL DBGETHDFNMS + EXTERNAL DBGETOVRWRT + EXTERNAL DBGETQV1 + EXTERNAL DBINQCA + EXTERNAL DBINQFILE + EXTERNAL DBINQLEN + EXTERNAL DBMKDIR + EXTERNAL DBMKMRGTREE + EXTERNAL DBMKOBJECT + EXTERNAL DBMKOPTLIST + EXTERNAL DBMKPTR + EXTERNAL DBOPEN + EXTERNAL DBPMRGV + EXTERNAL DBPUTCA + EXTERNAL DBPUTCSGM + EXTERNAL DBPUTCSGV + EXTERNAL DBPUTCSGZL + EXTERNAL DBPUTCURVE + EXTERNAL DBPUTDEFVARS + EXTERNAL DBPUTFL + EXTERNAL DBPUTGRPLMAP + EXTERNAL DBPUTMAT + EXTERNAL DBPUTMMAT + EXTERNAL DBPUTMMESH + EXTERNAL DBPUTMRGTREE + EXTERNAL DBPUTMSP + EXTERNAL DBPUTMVAR + EXTERNAL DBPUTPM + EXTERNAL DBPUTPV1 + EXTERNAL DBPUTQM + EXTERNAL DBPUTQV + EXTERNAL DBPUTQV1 + EXTERNAL DBPUTUM + EXTERNAL DBPUTUV1 + EXTERNAL DBPUTZL + EXTERNAL DBPUTZL2 + EXTERNAL DBRDVAR + EXTERNAL DBRDVARSLICE + EXTERNAL DBREGFOPTS + EXTERNAL DBRMPTR + EXTERNAL DBSET2DSTRLEN + EXTERNAL DBSETCKSUMS + EXTERNAL DBSETCOMPRESS + EXTERNAL DBSETCWR + EXTERNAL DBSETDEPWARN + EXTERNAL DBSETDIR + EXTERNAL DBSETEMPTYOK + EXTERNAL DBSETHDFNMS + EXTERNAL DBSETOVRWRT + EXTERNAL DBSHOWERRORS + EXTERNAL DBUNREGAFOPTS + EXTERNAL DBUNREGFOPTS + EXTERNAL DBWRITE + EXTERNAL DBWRITESLICE + EXTERNAL DBWRTFL + + INTEGER DBADDCAOPT + INTEGER DBADDCCMP + INTEGER DBADDCOPT + INTEGER DBADDDOPT + INTEGER DBADDIAOPT + INTEGER DBADDICMP + INTEGER DBADDIOPT + INTEGER DBADDRCMP + INTEGER DBADDREGION + INTEGER DBADDREGIONA + INTEGER DBADDROPT + INTEGER DBCALCFL + INTEGER DBCLOSE + INTEGER DBCREATE + INTEGER DBERRNO + INTEGER DBFGETCA + INTEGER DBFREEMRGTREE + INTEGER DBFREEOBJECT + INTEGER DBFREEOPTLIST + INTEGER DBGET2DSTRLEN + INTEGER DBGETCA + INTEGER DBGETCKSUMS + INTEGER DBGETCOMPRESS + INTEGER DBGETCURVE + INTEGER DBGETDEPWARN + INTEGER DBGETEMPTYOK + INTEGER DBGETHDFNMS + INTEGER DBGETOVRWRT + INTEGER DBGETQV1 + INTEGER DBINQCA + INTEGER DBINQFILE + INTEGER DBINQLEN + INTEGER DBMKDIR + INTEGER DBMKMRGTREE + INTEGER DBMKOBJECT + INTEGER DBMKOPTLIST + INTEGER DBMKPTR + INTEGER DBOPEN + INTEGER DBPMRGV + INTEGER DBPUTCA + INTEGER DBPUTCSGM + INTEGER DBPUTCSGV + INTEGER DBPUTCSGZL + INTEGER DBPUTCURVE + INTEGER DBPUTDEFVARS + INTEGER DBPUTFL + INTEGER DBPUTGRPLMAP + INTEGER DBPUTMAT + INTEGER DBPUTMMAT + INTEGER DBPUTMMESH + INTEGER DBPUTMRGTREE + INTEGER DBPUTMSP + INTEGER DBPUTMVAR + INTEGER DBPUTPM + INTEGER DBPUTPV1 + INTEGER DBPUTQM + INTEGER DBPUTQV + INTEGER DBPUTQV1 + INTEGER DBPUTUM + INTEGER DBPUTUV1 + INTEGER DBPUTZL + INTEGER DBPUTZL2 + INTEGER DBRDVAR + INTEGER DBRDVARSLICE + INTEGER DBREGFOPTS + INTEGER DBRMPTR + INTEGER DBSET2DSTRLEN + INTEGER DBSETCKSUMS + INTEGER DBSETCOMPRESS + INTEGER DBSETCWR + INTEGER DBSETDEPWARN + INTEGER DBSETDIR + INTEGER DBSETEMPTYOK + INTEGER DBSETHDFNMS + INTEGER DBSETOVRWRT + INTEGER DBSHOWERRORS + INTEGER DBUNREGAFOPTS + INTEGER DBUNREGFOPTS + INTEGER DBWRITE + INTEGER DBWRITESLICE + INTEGER DBWRTFL + + +C...Parameters. + INTEGER DBCSG_ANGLE_PNLA + INTEGER DBCSG_ANGLE_PPA + INTEGER DBCSG_BOX_XYXY + INTEGER DBCSG_BOX_XYZXYZ + INTEGER DBCSG_CIRCLE_PR + INTEGER DBCSG_COMPLIMENT + INTEGER DBCSG_CONE_PNLA + INTEGER DBCSG_CONE_PPA + INTEGER DBCSG_CYLINDER_PNLR + INTEGER DBCSG_CYLINDER_PPR + INTEGER DBCSG_DIFF + INTEGER DBCSG_ELLIPSE_PRR + INTEGER DBCSG_ELLIPSOID_PRRR + INTEGER DBCSG_HEX_6F + INTEGER DBCSG_INNER + INTEGER DBCSG_INTERSECT + INTEGER DBCSG_LINE_G + INTEGER DBCSG_LINE_PN + INTEGER DBCSG_LINE_PP + INTEGER DBCSG_LINE_X + INTEGER DBCSG_LINE_Y + INTEGER DBCSG_ON + INTEGER DBCSG_OUTER + INTEGER DBCSG_PLANE_G + INTEGER DBCSG_PLANE_PN + INTEGER DBCSG_PLANE_PPP + INTEGER DBCSG_PLANE_X + INTEGER DBCSG_PLANE_Y + INTEGER DBCSG_PLANE_Z + INTEGER DBCSG_POLYGON_KP + INTEGER DBCSG_POLYHEDRON_KF + INTEGER DBCSG_PRISM_5F + INTEGER DBCSG_PYRAMID_5F + INTEGER DBCSG_QUADRATIC_G + INTEGER DBCSG_QUADRIC_G + INTEGER DBCSG_QUAD_4P + INTEGER DBCSG_SPHERE_PR + INTEGER DBCSG_SWEEP + INTEGER DBCSG_TET_4F + INTEGER DBCSG_TRI_3P + INTEGER DBCSG_UNION + INTEGER DBCSG_XFORM + INTEGER DBOPT_ALIGN + INTEGER DBOPT_ALLOWMAT0 + INTEGER DBOPT_ALT_NODENUM_VARS + INTEGER DBOPT_ALT_ZONENUM_VARS + INTEGER DBOPT_ASCII_LABEL + INTEGER DBOPT_BASEINDEX + INTEGER DBOPT_BLOCKORIGIN + INTEGER DBOPT_BNDNAMES + INTEGER DBOPT_CONSERVED + INTEGER DBOPT_COORDSYS + INTEGER DBOPT_CYCLE + INTEGER DBOPT_DISJOINT_MODE + INTEGER DBOPT_DTIME + INTEGER DBOPT_EXTENSIVE + INTEGER DBOPT_EXTENTS + INTEGER DBOPT_EXTENTS_SIZE + INTEGER DBOPT_FACETYPE + INTEGER DBOPT_FIRST + INTEGER DBOPT_GHOST_NODE_LABELS + INTEGER DBOPT_GHOST_ZONE_LABELS + INTEGER DBOPT_GROUPINGNAMES + INTEGER DBOPT_GROUPINGS + INTEGER DBOPT_GROUPINGS_SIZE + INTEGER DBOPT_GROUPNUM + INTEGER DBOPT_GROUPORIGIN + INTEGER DBOPT_H5_ALIGN_MIN + INTEGER DBOPT_H5_ALIGN_VAL + INTEGER DBOPT_H5_CACHE_NBYTES + INTEGER DBOPT_H5_CACHE_NELMTS + INTEGER DBOPT_H5_CACHE_POLICY + INTEGER DBOPT_H5_CORE_ALLOC_INC + INTEGER DBOPT_H5_CORE_NO_BACK_STORE + INTEGER DBOPT_H5_DIRECT_BLOCK_SIZE + INTEGER DBOPT_H5_DIRECT_BUF_SIZE + INTEGER DBOPT_H5_DIRECT_MEM_ALIGN + INTEGER DBOPT_H5_FAM_FILE_OPTS + INTEGER DBOPT_H5_FAM_SIZE + INTEGER DBOPT_H5_FIC_BUF + INTEGER DBOPT_H5_FIC_SIZE + INTEGER DBOPT_H5_FIRST + INTEGER DBOPT_H5_LAST + INTEGER DBOPT_H5_LOG_BUF_SIZE + INTEGER DBOPT_H5_LOG_NAME + INTEGER DBOPT_H5_META_BLOCK_SIZE + INTEGER DBOPT_H5_META_EXTENSION + INTEGER DBOPT_H5_META_FILE_OPTS + INTEGER DBOPT_H5_MPIO_COMM + INTEGER DBOPT_H5_MPIO_INFO + INTEGER DBOPT_H5_MPIP_NO_GPFS_HINTS + INTEGER DBOPT_H5_RAW_EXTENSION + INTEGER DBOPT_H5_RAW_FILE_OPTS + INTEGER DBOPT_H5_SIEVE_BUF_SIZE + INTEGER DBOPT_H5_SILO_BLOCK_COUNT + INTEGER DBOPT_H5_SILO_BLOCK_SIZE + INTEGER DBOPT_H5_SILO_LOG_STATS + INTEGER DBOPT_H5_SILO_USE_DIRECT + INTEGER DBOPT_H5_SMALL_RAW_SIZE + INTEGER DBOPT_H5_USER_DRIVER_ID + INTEGER DBOPT_H5_USER_DRIVER_INFO + INTEGER DBOPT_H5_VFD + INTEGER DBOPT_HAS_EXTERNAL_ZONES + INTEGER DBOPT_HIDE_FROM_GUI + INTEGER DBOPT_HI_OFFSET + INTEGER DBOPT_LABEL + INTEGER DBOPT_LAST + INTEGER DBOPT_LLONGNZNUM + INTEGER DBOPT_LO_OFFSET + INTEGER DBOPT_MAJORORDER + INTEGER DBOPT_MATCOLORS + INTEGER DBOPT_MATCOUNTS + INTEGER DBOPT_MATLISTS + INTEGER DBOPT_MATNAME + INTEGER DBOPT_MATNAMES + INTEGER DBOPT_MATNOS + INTEGER DBOPT_MB_BLOCK_NS + INTEGER DBOPT_MB_BLOCK_TYPE + INTEGER DBOPT_MB_EMPTY_COUNT + INTEGER DBOPT_MB_EMPTY_LIST + INTEGER DBOPT_MB_FILE_NS + INTEGER DBOPT_MB_REPR_BLOCK_IDX + INTEGER DBOPT_MISSING_VALUE + INTEGER DBOPT_MIXLENS + INTEGER DBOPT_MMESH_NAME + INTEGER DBOPT_MRGTREE_NAME + INTEGER DBOPT_MRGV_ONAMES + INTEGER DBOPT_MRGV_RNAMES + INTEGER DBOPT_NGROUPS + INTEGER DBOPT_NMAT + INTEGER DBOPT_NMATNOS + INTEGER DBOPT_NMATSPEC + INTEGER DBOPT_NODENUM + INTEGER DBOPT_NSPACE + INTEGER DBOPT_ORIGIN + INTEGER DBOPT_PHZONELIST + INTEGER DBOPT_PLANAR + INTEGER DBOPT_REFERENCE + INTEGER DBOPT_REGION_PNAMES + INTEGER DBOPT_REGNAMES + INTEGER DBOPT_SPECCOLORS + INTEGER DBOPT_SPECNAMES + INTEGER DBOPT_TENSOR_RANK + INTEGER DBOPT_TIME + INTEGER DBOPT_TOPO_DIM + INTEGER DBOPT_TV_CONNECTIVITY + INTEGER DBOPT_UNITS + INTEGER DBOPT_USESPECMF + INTEGER DBOPT_XLABEL + INTEGER DBOPT_XUNITS + INTEGER DBOPT_XVARNAME + INTEGER DBOPT_YLABEL + INTEGER DBOPT_YUNITS + INTEGER DBOPT_YVARNAME + INTEGER DBOPT_ZLABEL + INTEGER DBOPT_ZONECOUNTS + INTEGER DBOPT_ZONENAMES + INTEGER DBOPT_ZONENUM + INTEGER DBOPT_ZUNITS + INTEGER DBOPT_ZVARNAME + INTEGER DB_ABORT + INTEGER DB_ABUTTING + INTEGER DB_ALL + INTEGER DB_ALL_AND_DRVR + INTEGER DB_APPEND + INTEGER DB_AREA + INTEGER DB_ARRAY + INTEGER DB_BLOCKCENT + INTEGER DB_BNDCENT + INTEGER DB_CARTESIAN + INTEGER DB_CHAR + INTEGER DB_CLOBBER + INTEGER DB_COLLINEAR + INTEGER DB_COLMAJOR + INTEGER DB_CRAY + INTEGER DB_CSGMESH + INTEGER DB_CSGVAR + INTEGER DB_CSGZONELIST + INTEGER DB_CURVE + INTEGER DB_CURVILINEAR + INTEGER DB_CYLINDRICAL + INTEGER DB_DEBUG + INTEGER DB_DEFVARS + INTEGER DB_DIR + INTEGER DB_DOUBLE + INTEGER DB_EDGECENT + INTEGER DB_EDGELIST + INTEGER DB_F77NULL + INTEGER DB_FACECENT + INTEGER DB_FACELIST + INTEGER DB_FILE_OPTS_H5_DEFAULT_CORE + INTEGER DB_FILE_OPTS_H5_DEFAULT_DEFAULT + INTEGER DB_FILE_OPTS_H5_DEFAULT_DIRECT + INTEGER DB_FILE_OPTS_H5_DEFAULT_FAMILY + INTEGER DB_FILE_OPTS_H5_DEFAULT_LOG + INTEGER DB_FILE_OPTS_H5_DEFAULT_MPIO + INTEGER DB_FILE_OPTS_H5_DEFAULT_MPIP + INTEGER DB_FILE_OPTS_H5_DEFAULT_SEC2 + INTEGER DB_FILE_OPTS_H5_DEFAULT_SILO + INTEGER DB_FILE_OPTS_H5_DEFAULT_SPLIT + INTEGER DB_FILE_OPTS_H5_DEFAULT_STDIO + INTEGER DB_FILE_OPTS_LAST + INTEGER DB_FLOAT + INTEGER DB_FLOATING + INTEGER DB_FROMCWR + INTEGER DB_GHOSTTYPE_INTDUP + INTEGER DB_GHOSTTYPE_NOGHOST + INTEGER DB_GROUPELMAP + INTEGER DB_H5VFD_CORE + INTEGER DB_H5VFD_DEFAULT + INTEGER DB_H5VFD_DIRECT + INTEGER DB_H5VFD_FAMILY + INTEGER DB_H5VFD_FIC + INTEGER DB_H5VFD_LOG + INTEGER DB_H5VFD_MPIO + INTEGER DB_H5VFD_MPIP + INTEGER DB_H5VFD_SEC2 + INTEGER DB_H5VFD_SILO + INTEGER DB_H5VFD_SPLIT + INTEGER DB_H5VFD_STDIO + INTEGER DB_HDF5 + INTEGER DB_HDF5X + INTEGER DB_HDF5_CORE + INTEGER DB_HDF5_CORE_OBSOLETE + INTEGER DB_HDF5_DIRECT + INTEGER DB_HDF5_FAMILY + INTEGER DB_HDF5_LOG + INTEGER DB_HDF5_MPIO + INTEGER DB_HDF5_MPIOP + INTEGER DB_HDF5_MPIOP_OBSOLETE + INTEGER DB_HDF5_MPIO_OBSOLETE + INTEGER DB_HDF5_MPIP + INTEGER DB_HDF5_SEC2 + INTEGER DB_HDF5_SEC2_OBSOLETE + INTEGER DB_HDF5_SILO + INTEGER DB_HDF5_SPLIT + INTEGER DB_HDF5_STDIO + INTEGER DB_HDF5_STDIO_OBSOLETE + INTEGER DB_INT + INTEGER DB_INTEL + INTEGER DB_INVALID_OBJECT + INTEGER DB_LOCAL + INTEGER DB_LONG + INTEGER DB_LONG_LONG + INTEGER DB_MATERIAL + INTEGER DB_MATSPECIES + INTEGER DB_MAX_H5_OBJ_VALS + DOUBLE PRECISION DB_MISSING_VALUE_NOT_SET + INTEGER DB_MRGTREE + INTEGER DB_MRGVAR + INTEGER DB_MULTIBLOCKMESH + INTEGER DB_MULTIBLOCKVAR + INTEGER DB_MULTIMAT + INTEGER DB_MULTIMATSPECIES + INTEGER DB_MULTIMESH + INTEGER DB_MULTIMESHADJ + INTEGER DB_MULTIVAR + INTEGER DB_NETCDF + INTEGER DB_NFILES + INTEGER DB_NFILTERS + INTEGER DB_NOCLOBBER + INTEGER DB_NODECENT + INTEGER DB_NONCOLLINEAR + INTEGER DB_NONE + INTEGER DB_NOTCENT + INTEGER DB_NOTYPE + INTEGER DB_NUMERICAL + INTEGER DB_OFF + INTEGER DB_ON + INTEGER DB_OTHER + INTEGER DB_PDB + INTEGER DB_PDBP + INTEGER DB_PHZONELIST + INTEGER DB_POINTMESH + INTEGER DB_POINTVAR + INTEGER DB_POSTORDER + INTEGER DB_PREORDER + INTEGER DB_QUADCURV + INTEGER DB_QUADMESH + INTEGER DB_QUADRECT + INTEGER DB_QUADVAR + INTEGER DB_QUAD_CURV + INTEGER DB_QUAD_RECT + INTEGER DB_READ + INTEGER DB_RECTILINEAR + INTEGER DB_RESUME + INTEGER DB_ROWMAJOR + INTEGER DB_RS6000 + INTEGER DB_SGI + INTEGER DB_SHORT + INTEGER DB_SPHERICAL + INTEGER DB_SUN3 + INTEGER DB_SUN4 + INTEGER DB_SUSPEND + INTEGER DB_TAURUS + INTEGER DB_TOP + INTEGER DB_UCDMESH + INTEGER DB_UCDVAR + INTEGER DB_UNKNOWN + INTEGER DB_USERDEF + INTEGER DB_VARIABLE + INTEGER DB_VARTYPE_ARRAY + INTEGER DB_VARTYPE_LABEL + INTEGER DB_VARTYPE_MATERIAL + INTEGER DB_VARTYPE_SCALAR + INTEGER DB_VARTYPE_SPECIES + INTEGER DB_VARTYPE_SYMTENSOR + INTEGER DB_VARTYPE_TENSOR + INTEGER DB_VARTYPE_VECTOR + INTEGER DB_VOLUME + INTEGER DB_ZONECENT + INTEGER DB_ZONELIST + INTEGER DB_ZONETYPE_BEAM + INTEGER DB_ZONETYPE_HEX + INTEGER DB_ZONETYPE_POLYGON + INTEGER DB_ZONETYPE_POLYHEDRON + INTEGER DB_ZONETYPE_PRISM + INTEGER DB_ZONETYPE_PYRAMID + INTEGER DB_ZONETYPE_QUAD + INTEGER DB_ZONETYPE_TET + INTEGER DB_ZONETYPE_TRIANGLE + INTEGER SILO_VERS_MAJ + INTEGER SILO_VERS_MIN + INTEGER SILO_VERS_PAT + INTEGER SILO_VERS_PRE + CHARACTER*10 DB_F77NULLSTRING + + PARAMETER (SILO_VERS_MAJ=4) + PARAMETER (SILO_VERS_MIN=10) + PARAMETER (SILO_VERS_PAT=0) + PARAMETER (SILO_VERS_PRE=0) + PARAMETER (DB_NETCDF=0) + PARAMETER (DB_PDB=2) + PARAMETER (DB_TAURUS=3) + PARAMETER (DB_UNKNOWN=5) + PARAMETER (DB_DEBUG=6) + PARAMETER (DB_HDF5X=7) + PARAMETER (DB_PDBP=1) + PARAMETER (DB_HDF5_SEC2_OBSOLETE=256) + PARAMETER (DB_HDF5_STDIO_OBSOLETE=512) + PARAMETER (DB_HDF5_CORE_OBSOLETE=768) + PARAMETER (DB_HDF5_MPIO_OBSOLETE=1024) + PARAMETER (DB_HDF5_MPIOP_OBSOLETE=1280) + PARAMETER (DB_H5VFD_DEFAULT=0) + PARAMETER (DB_H5VFD_SEC2=1) + PARAMETER (DB_H5VFD_STDIO=2) + PARAMETER (DB_H5VFD_CORE=3) + PARAMETER (DB_H5VFD_LOG=4) + PARAMETER (DB_H5VFD_SPLIT=5) + PARAMETER (DB_H5VFD_DIRECT=6) + PARAMETER (DB_H5VFD_FAMILY=7) + PARAMETER (DB_H5VFD_MPIO=8) + PARAMETER (DB_H5VFD_MPIP=9) + PARAMETER (DB_H5VFD_SILO=10) + PARAMETER (DB_H5VFD_FIC=11) + PARAMETER (DB_FILE_OPTS_H5_DEFAULT_DEFAULT=0) + PARAMETER (DB_FILE_OPTS_H5_DEFAULT_SEC2=1) + PARAMETER (DB_FILE_OPTS_H5_DEFAULT_STDIO=2) + PARAMETER (DB_FILE_OPTS_H5_DEFAULT_CORE=3) + PARAMETER (DB_FILE_OPTS_H5_DEFAULT_LOG=4) + PARAMETER (DB_FILE_OPTS_H5_DEFAULT_SPLIT=5) + PARAMETER (DB_FILE_OPTS_H5_DEFAULT_DIRECT=6) + PARAMETER (DB_FILE_OPTS_H5_DEFAULT_FAMILY=7) + PARAMETER (DB_FILE_OPTS_H5_DEFAULT_MPIO=8) + PARAMETER (DB_FILE_OPTS_H5_DEFAULT_MPIP=9) + PARAMETER (DB_FILE_OPTS_H5_DEFAULT_SILO=10) + PARAMETER (DB_FILE_OPTS_LAST=10) + PARAMETER (DB_HDF5=7) + PARAMETER (DB_HDF5_SEC2=2055) + PARAMETER (DB_HDF5_STDIO=4103) + PARAMETER (DB_HDF5_CORE=6151) + PARAMETER (DB_HDF5_LOG=8199) + PARAMETER (DB_HDF5_SPLIT=10247) + PARAMETER (DB_HDF5_DIRECT=12295) + PARAMETER (DB_HDF5_FAMILY=14343) + PARAMETER (DB_HDF5_MPIO=16391) + PARAMETER (DB_HDF5_MPIOP=18439) + PARAMETER (DB_HDF5_MPIP=18439) + PARAMETER (DB_HDF5_SILO=20487) + PARAMETER (DB_NFILES=256) + PARAMETER (DB_NFILTERS=32) + PARAMETER (DB_COLLINEAR=130) + PARAMETER (DB_NONCOLLINEAR=131) + PARAMETER (DB_QUAD_RECT=130) + PARAMETER (DB_QUAD_CURV=131) + PARAMETER (DB_INVALID_OBJECT=-1) + PARAMETER (DB_QUADRECT=130) + PARAMETER (DB_QUADCURV=131) + PARAMETER (DB_QUADMESH=500) + PARAMETER (DB_QUADVAR=501) + PARAMETER (DB_UCDMESH=510) + PARAMETER (DB_UCDVAR=511) + PARAMETER (DB_MULTIMESH=520) + PARAMETER (DB_MULTIVAR=521) + PARAMETER (DB_MULTIMAT=522) + PARAMETER (DB_MULTIMATSPECIES=523) + PARAMETER (DB_MULTIBLOCKMESH=520) + PARAMETER (DB_MULTIBLOCKVAR=521) + PARAMETER (DB_MULTIMESHADJ=524) + PARAMETER (DB_MATERIAL=530) + PARAMETER (DB_MATSPECIES=531) + PARAMETER (DB_FACELIST=550) + PARAMETER (DB_ZONELIST=551) + PARAMETER (DB_EDGELIST=552) + PARAMETER (DB_PHZONELIST=553) + PARAMETER (DB_CSGZONELIST=554) + PARAMETER (DB_CSGMESH=555) + PARAMETER (DB_CSGVAR=556) + PARAMETER (DB_CURVE=560) + PARAMETER (DB_DEFVARS=565) + PARAMETER (DB_POINTMESH=570) + PARAMETER (DB_POINTVAR=571) + PARAMETER (DB_ARRAY=580) + PARAMETER (DB_DIR=600) + PARAMETER (DB_VARIABLE=610) + PARAMETER (DB_MRGTREE=611) + PARAMETER (DB_GROUPELMAP=612) + PARAMETER (DB_MRGVAR=613) + PARAMETER (DB_USERDEF=700) + PARAMETER (DB_INT=16) + PARAMETER (DB_SHORT=17) + PARAMETER (DB_LONG=18) + PARAMETER (DB_FLOAT=19) + PARAMETER (DB_DOUBLE=20) + PARAMETER (DB_CHAR=21) + PARAMETER (DB_LONG_LONG=22) + PARAMETER (DB_NOTYPE=25) + PARAMETER (DB_CLOBBER=0) + PARAMETER (DB_NOCLOBBER=1) + PARAMETER (DB_READ=1) + PARAMETER (DB_APPEND=2) + PARAMETER (DB_LOCAL=0) + PARAMETER (DB_SUN3=10) + PARAMETER (DB_SUN4=11) + PARAMETER (DB_SGI=12) + PARAMETER (DB_RS6000=13) + PARAMETER (DB_CRAY=14) + PARAMETER (DB_INTEL=15) + PARAMETER (DBOPT_FIRST=260) + PARAMETER (DBOPT_ALIGN=260) + PARAMETER (DBOPT_COORDSYS=262) + PARAMETER (DBOPT_CYCLE=263) + PARAMETER (DBOPT_FACETYPE=264) + PARAMETER (DBOPT_HI_OFFSET=265) + PARAMETER (DBOPT_LO_OFFSET=266) + PARAMETER (DBOPT_LABEL=267) + PARAMETER (DBOPT_XLABEL=268) + PARAMETER (DBOPT_YLABEL=269) + PARAMETER (DBOPT_ZLABEL=270) + PARAMETER (DBOPT_MAJORORDER=271) + PARAMETER (DBOPT_NSPACE=272) + PARAMETER (DBOPT_ORIGIN=273) + PARAMETER (DBOPT_PLANAR=274) + PARAMETER (DBOPT_TIME=275) + PARAMETER (DBOPT_UNITS=276) + PARAMETER (DBOPT_XUNITS=277) + PARAMETER (DBOPT_YUNITS=278) + PARAMETER (DBOPT_ZUNITS=279) + PARAMETER (DBOPT_DTIME=280) + PARAMETER (DBOPT_USESPECMF=281) + PARAMETER (DBOPT_XVARNAME=282) + PARAMETER (DBOPT_YVARNAME=283) + PARAMETER (DBOPT_ZVARNAME=284) + PARAMETER (DBOPT_ASCII_LABEL=285) + PARAMETER (DBOPT_MATNOS=286) + PARAMETER (DBOPT_NMATNOS=287) + PARAMETER (DBOPT_MATNAME=288) + PARAMETER (DBOPT_NMAT=289) + PARAMETER (DBOPT_NMATSPEC=290) + PARAMETER (DBOPT_BASEINDEX=291) + PARAMETER (DBOPT_ZONENUM=292) + PARAMETER (DBOPT_NODENUM=293) + PARAMETER (DBOPT_BLOCKORIGIN=294) + PARAMETER (DBOPT_GROUPNUM=295) + PARAMETER (DBOPT_GROUPORIGIN=296) + PARAMETER (DBOPT_NGROUPS=297) + PARAMETER (DBOPT_MATNAMES=298) + PARAMETER (DBOPT_EXTENTS_SIZE=299) + PARAMETER (DBOPT_EXTENTS=300) + PARAMETER (DBOPT_MATCOUNTS=301) + PARAMETER (DBOPT_MATLISTS=302) + PARAMETER (DBOPT_MIXLENS=303) + PARAMETER (DBOPT_ZONECOUNTS=304) + PARAMETER (DBOPT_HAS_EXTERNAL_ZONES=305) + PARAMETER (DBOPT_PHZONELIST=306) + PARAMETER (DBOPT_MATCOLORS=307) + PARAMETER (DBOPT_BNDNAMES=308) + PARAMETER (DBOPT_REGNAMES=309) + PARAMETER (DBOPT_ZONENAMES=310) + PARAMETER (DBOPT_HIDE_FROM_GUI=311) + PARAMETER (DBOPT_TOPO_DIM=312) + PARAMETER (DBOPT_REFERENCE=313) + PARAMETER (DBOPT_GROUPINGS_SIZE=314) + PARAMETER (DBOPT_GROUPINGS=315) + PARAMETER (DBOPT_GROUPINGNAMES=316) + PARAMETER (DBOPT_ALLOWMAT0=317) + PARAMETER (DBOPT_MRGTREE_NAME=318) + PARAMETER (DBOPT_REGION_PNAMES=319) + PARAMETER (DBOPT_TENSOR_RANK=320) + PARAMETER (DBOPT_MMESH_NAME=321) + PARAMETER (DBOPT_TV_CONNECTIVITY=322) + PARAMETER (DBOPT_DISJOINT_MODE=323) + PARAMETER (DBOPT_MRGV_ONAMES=324) + PARAMETER (DBOPT_MRGV_RNAMES=325) + PARAMETER (DBOPT_SPECNAMES=326) + PARAMETER (DBOPT_SPECCOLORS=327) + PARAMETER (DBOPT_LLONGNZNUM=328) + PARAMETER (DBOPT_CONSERVED=329) + PARAMETER (DBOPT_EXTENSIVE=330) + PARAMETER (DBOPT_MB_FILE_NS=331) + PARAMETER (DBOPT_MB_BLOCK_NS=332) + PARAMETER (DBOPT_MB_BLOCK_TYPE=333) + PARAMETER (DBOPT_MB_EMPTY_LIST=334) + PARAMETER (DBOPT_MB_EMPTY_COUNT=335) + PARAMETER (DBOPT_MB_REPR_BLOCK_IDX=336) + PARAMETER (DBOPT_MISSING_VALUE=337) + PARAMETER (DBOPT_ALT_ZONENUM_VARS=338) + PARAMETER (DBOPT_ALT_NODENUM_VARS=339) + PARAMETER (DBOPT_GHOST_NODE_LABELS=340) + PARAMETER (DBOPT_GHOST_ZONE_LABELS=341) + PARAMETER (DBOPT_LAST=499) + PARAMETER (DBOPT_H5_FIRST=500) + PARAMETER (DBOPT_H5_VFD=500) + PARAMETER (DBOPT_H5_RAW_FILE_OPTS=501) + PARAMETER (DBOPT_H5_RAW_EXTENSION=502) + PARAMETER (DBOPT_H5_META_FILE_OPTS=503) + PARAMETER (DBOPT_H5_META_EXTENSION=504) + PARAMETER (DBOPT_H5_CORE_ALLOC_INC=505) + PARAMETER (DBOPT_H5_CORE_NO_BACK_STORE=506) + PARAMETER (DBOPT_H5_META_BLOCK_SIZE=507) + PARAMETER (DBOPT_H5_SMALL_RAW_SIZE=508) + PARAMETER (DBOPT_H5_ALIGN_MIN=509) + PARAMETER (DBOPT_H5_ALIGN_VAL=510) + PARAMETER (DBOPT_H5_DIRECT_MEM_ALIGN=511) + PARAMETER (DBOPT_H5_DIRECT_BLOCK_SIZE=512) + PARAMETER (DBOPT_H5_DIRECT_BUF_SIZE=513) + PARAMETER (DBOPT_H5_LOG_NAME=514) + PARAMETER (DBOPT_H5_LOG_BUF_SIZE=515) + PARAMETER (DBOPT_H5_MPIO_COMM=516) + PARAMETER (DBOPT_H5_MPIO_INFO=517) + PARAMETER (DBOPT_H5_MPIP_NO_GPFS_HINTS=518) + PARAMETER (DBOPT_H5_SIEVE_BUF_SIZE=519) + PARAMETER (DBOPT_H5_CACHE_NELMTS=520) + PARAMETER (DBOPT_H5_CACHE_NBYTES=521) + PARAMETER (DBOPT_H5_CACHE_POLICY=522) + PARAMETER (DBOPT_H5_FAM_SIZE=523) + PARAMETER (DBOPT_H5_FAM_FILE_OPTS=524) + PARAMETER (DBOPT_H5_USER_DRIVER_ID=525) + PARAMETER (DBOPT_H5_USER_DRIVER_INFO=526) + PARAMETER (DBOPT_H5_SILO_BLOCK_SIZE=527) + PARAMETER (DBOPT_H5_SILO_BLOCK_COUNT=528) + PARAMETER (DBOPT_H5_SILO_LOG_STATS=529) + PARAMETER (DBOPT_H5_SILO_USE_DIRECT=530) + PARAMETER (DBOPT_H5_FIC_SIZE=531) + PARAMETER (DBOPT_H5_FIC_BUF=532) + PARAMETER (DBOPT_H5_LAST=599) + PARAMETER (DB_TOP=0) + PARAMETER (DB_NONE=1) + PARAMETER (DB_ALL=2) + PARAMETER (DB_ABORT=3) + PARAMETER (DB_SUSPEND=4) + PARAMETER (DB_RESUME=5) + PARAMETER (DB_ALL_AND_DRVR=6) + PARAMETER (DB_ROWMAJOR=0) + PARAMETER (DB_COLMAJOR=1) + PARAMETER (DB_NOTCENT=0) + PARAMETER (DB_NODECENT=110) + PARAMETER (DB_ZONECENT=111) + PARAMETER (DB_FACECENT=112) + PARAMETER (DB_BNDCENT=113) + PARAMETER (DB_EDGECENT=114) + PARAMETER (DB_BLOCKCENT=115) + PARAMETER (DB_CARTESIAN=120) + PARAMETER (DB_CYLINDRICAL=121) + PARAMETER (DB_SPHERICAL=122) + PARAMETER (DB_NUMERICAL=123) + PARAMETER (DB_OTHER=124) + PARAMETER (DB_RECTILINEAR=100) + PARAMETER (DB_CURVILINEAR=101) + PARAMETER (DB_AREA=140) + PARAMETER (DB_VOLUME=141) + PARAMETER (DB_ON=1000) + PARAMETER (DB_OFF=-1000) + PARAMETER (DB_ABUTTING=142) + PARAMETER (DB_FLOATING=143) + PARAMETER (DB_VARTYPE_SCALAR=200) + PARAMETER (DB_VARTYPE_VECTOR=201) + PARAMETER (DB_VARTYPE_TENSOR=202) + PARAMETER (DB_VARTYPE_SYMTENSOR=203) + PARAMETER (DB_VARTYPE_ARRAY=204) + PARAMETER (DB_VARTYPE_MATERIAL=205) + PARAMETER (DB_VARTYPE_SPECIES=206) + PARAMETER (DB_VARTYPE_LABEL=207) + PARAMETER (DB_GHOSTTYPE_NOGHOST=0) + PARAMETER (DB_GHOSTTYPE_INTDUP=1) + PARAMETER (DBCSG_QUADRIC_G=16777216) + PARAMETER (DBCSG_SPHERE_PR=33619968) + PARAMETER (DBCSG_ELLIPSOID_PRRR=33685504) + PARAMETER (DBCSG_PLANE_G=50331648) + PARAMETER (DBCSG_PLANE_X=50397184) + PARAMETER (DBCSG_PLANE_Y=50462720) + PARAMETER (DBCSG_PLANE_Z=50528256) + PARAMETER (DBCSG_PLANE_PN=50593792) + PARAMETER (DBCSG_PLANE_PPP=50659328) + PARAMETER (DBCSG_CYLINDER_PNLR=67108864) + PARAMETER (DBCSG_CYLINDER_PPR=67174400) + PARAMETER (DBCSG_BOX_XYZXYZ=83886080) + PARAMETER (DBCSG_CONE_PNLA=100663296) + PARAMETER (DBCSG_CONE_PPA=100728832) + PARAMETER (DBCSG_POLYHEDRON_KF=117440512) + PARAMETER (DBCSG_HEX_6F=117506048) + PARAMETER (DBCSG_TET_4F=117571584) + PARAMETER (DBCSG_PYRAMID_5F=117637120) + PARAMETER (DBCSG_PRISM_5F=117702656) + PARAMETER (DBCSG_QUADRATIC_G=134217728) + PARAMETER (DBCSG_CIRCLE_PR=150994944) + PARAMETER (DBCSG_ELLIPSE_PRR=151060480) + PARAMETER (DBCSG_LINE_G=167772160) + PARAMETER (DBCSG_LINE_X=167837696) + PARAMETER (DBCSG_LINE_Y=167903232) + PARAMETER (DBCSG_LINE_PN=167968768) + PARAMETER (DBCSG_LINE_PP=168034304) + PARAMETER (DBCSG_BOX_XYXY=184549376) + PARAMETER (DBCSG_ANGLE_PNLA=201326592) + PARAMETER (DBCSG_ANGLE_PPA=201392128) + PARAMETER (DBCSG_POLYGON_KP=218103808) + PARAMETER (DBCSG_TRI_3P=218169344) + PARAMETER (DBCSG_QUAD_4P=218234880) + PARAMETER (DBCSG_INNER=2130706432) + PARAMETER (DBCSG_OUTER=2130771968) + PARAMETER (DBCSG_ON=2130837504) + PARAMETER (DBCSG_UNION=2130903040) + PARAMETER (DBCSG_INTERSECT=2130968576) + PARAMETER (DBCSG_DIFF=2131034112) + PARAMETER (DBCSG_COMPLIMENT=2131099648) + PARAMETER (DBCSG_XFORM=2131165184) + PARAMETER (DBCSG_SWEEP=2131230720) + PARAMETER (DB_PREORDER=1) + PARAMETER (DB_POSTORDER=2) + PARAMETER (DB_FROMCWR=4) + PARAMETER (DB_F77NULL=(-99)) + PARAMETER (DB_MISSING_VALUE_NOT_SET=1.0D+308) + PARAMETER (DB_ZONETYPE_BEAM=10) + PARAMETER (DB_ZONETYPE_POLYGON=20) + PARAMETER (DB_ZONETYPE_TRIANGLE=23) + PARAMETER (DB_ZONETYPE_QUAD=24) + PARAMETER (DB_ZONETYPE_POLYHEDRON=30) + PARAMETER (DB_ZONETYPE_TET=34) + PARAMETER (DB_ZONETYPE_PYRAMID=35) + PARAMETER (DB_ZONETYPE_PRISM=36) + PARAMETER (DB_ZONETYPE_HEX=38) + PARAMETER (DB_MAX_H5_OBJ_VALS=64) + PARAMETER (DB_F77NULLSTRING="NULLSTRING") + + +C End. diff -Nru silo-llnl-4.10.2/src/silo/silo_f9x.inc silo-llnl-4.10.2.real/src/silo/silo_f9x.inc --- silo-llnl-4.10.2/src/silo/silo_f9x.inc 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/silo/silo_f9x.inc 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,433 @@ +!cccccccccccccccccccccccccccccccccccccccccccccccccccccccc -*- fortran -*- +! +! SILO include file for Fortan applications. +! +! Programmer: miller86 Mon Sep 29 07:01:26 PDT 2014 +! +! WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING +! This file is generated automatically from C header files in the +! SILO distribution. Do not make changes to this file manually, +! as those changes will disappear. +! WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING +! +! This file was generated by the following commands... +! mv silo.inc silo.inc~ +! cat silo.h silo_f.h | mkinc --f90 > silo.inc +! +! cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc + + +!...Functions. + integer, external :: dbaddcaopt + integer, external :: dbaddccmp + integer, external :: dbaddcopt + integer, external :: dbadddopt + integer, external :: dbaddiaopt + integer, external :: dbaddicmp + integer, external :: dbaddiopt + integer, external :: dbaddrcmp + integer, external :: dbaddregion + integer, external :: dbaddregiona + integer, external :: dbaddropt + integer, external :: dbcalcfl + integer, external :: dbclose + integer, external :: dbcreate + integer, external :: dberrno + integer, external :: dbfgetca + integer, external :: dbfreemrgtree + integer, external :: dbfreeobject + integer, external :: dbfreeoptlist + integer, external :: dbget2dstrlen + integer, external :: dbgetca + integer, external :: dbgetcksums + integer, external :: dbgetcompress + integer, external :: dbgetcurve + integer, external :: dbgetdepwarn + integer, external :: dbgetemptyok + integer, external :: dbgethdfnms + integer, external :: dbgetovrwrt + integer, external :: dbgetqv1 + integer, external :: dbinqca + integer, external :: dbinqfile + integer, external :: dbinqlen + integer, external :: dbmkdir + integer, external :: dbmkmrgtree + integer, external :: dbmkobject + integer, external :: dbmkoptlist + integer, external :: dbmkptr + integer, external :: dbopen + integer, external :: dbpmrgv + integer, external :: dbputca + integer, external :: dbputcsgm + integer, external :: dbputcsgv + integer, external :: dbputcsgzl + integer, external :: dbputcurve + integer, external :: dbputdefvars + integer, external :: dbputfl + integer, external :: dbputgrplmap + integer, external :: dbputmat + integer, external :: dbputmmat + integer, external :: dbputmmesh + integer, external :: dbputmrgtree + integer, external :: dbputmsp + integer, external :: dbputmvar + integer, external :: dbputpm + integer, external :: dbputpv1 + integer, external :: dbputqm + integer, external :: dbputqv + integer, external :: dbputqv1 + integer, external :: dbputum + integer, external :: dbputuv1 + integer, external :: dbputzl + integer, external :: dbputzl2 + integer, external :: dbrdvar + integer, external :: dbrdvarslice + integer, external :: dbregfopts + integer, external :: dbrmptr + integer, external :: dbset2dstrlen + integer, external :: dbsetcksums + integer, external :: dbsetcompress + integer, external :: dbsetcwr + integer, external :: dbsetdepwarn + integer, external :: dbsetdir + integer, external :: dbsetemptyok + integer, external :: dbsethdfnms + integer, external :: dbsetovrwrt + integer, external :: dbshowerrors + integer, external :: dbunregafopts + integer, external :: dbunregfopts + integer, external :: dbwrite + integer, external :: dbwriteslice + integer, external :: dbwrtfl + + +!...Parameters. + integer, parameter :: SILO_VERS_MAJ = 4 + integer, parameter :: SILO_VERS_MIN = 10 + integer, parameter :: SILO_VERS_PAT = 0 + integer, parameter :: SILO_VERS_PRE = 0 + integer, parameter :: DB_NETCDF = 0 + integer, parameter :: DB_PDB = 2 + integer, parameter :: DB_TAURUS = 3 + integer, parameter :: DB_UNKNOWN = 5 + integer, parameter :: DB_DEBUG = 6 + integer, parameter :: DB_HDF5X = 7 + integer, parameter :: DB_PDBP = 1 + integer, parameter :: DB_HDF5_SEC2_OBSOLETE = 256 + integer, parameter :: DB_HDF5_STDIO_OBSOLETE = 512 + integer, parameter :: DB_HDF5_CORE_OBSOLETE = 768 + integer, parameter :: DB_HDF5_MPIO_OBSOLETE = 1024 + integer, parameter :: DB_HDF5_MPIOP_OBSOLETE = 1280 + integer, parameter :: DB_H5VFD_DEFAULT = 0 + integer, parameter :: DB_H5VFD_SEC2 = 1 + integer, parameter :: DB_H5VFD_STDIO = 2 + integer, parameter :: DB_H5VFD_CORE = 3 + integer, parameter :: DB_H5VFD_LOG = 4 + integer, parameter :: DB_H5VFD_SPLIT = 5 + integer, parameter :: DB_H5VFD_DIRECT = 6 + integer, parameter :: DB_H5VFD_FAMILY = 7 + integer, parameter :: DB_H5VFD_MPIO = 8 + integer, parameter :: DB_H5VFD_MPIP = 9 + integer, parameter :: DB_H5VFD_SILO = 10 + integer, parameter :: DB_H5VFD_FIC = 11 + integer, parameter :: DB_FILE_OPTS_H5_DEFAULT_DEFAULT = 0 + integer, parameter :: DB_FILE_OPTS_H5_DEFAULT_SEC2 = 1 + integer, parameter :: DB_FILE_OPTS_H5_DEFAULT_STDIO = 2 + integer, parameter :: DB_FILE_OPTS_H5_DEFAULT_CORE = 3 + integer, parameter :: DB_FILE_OPTS_H5_DEFAULT_LOG = 4 + integer, parameter :: DB_FILE_OPTS_H5_DEFAULT_SPLIT = 5 + integer, parameter :: DB_FILE_OPTS_H5_DEFAULT_DIRECT = 6 + integer, parameter :: DB_FILE_OPTS_H5_DEFAULT_FAMILY = 7 + integer, parameter :: DB_FILE_OPTS_H5_DEFAULT_MPIO = 8 + integer, parameter :: DB_FILE_OPTS_H5_DEFAULT_MPIP = 9 + integer, parameter :: DB_FILE_OPTS_H5_DEFAULT_SILO = 10 + integer, parameter :: DB_FILE_OPTS_LAST = 10 + integer, parameter :: DB_HDF5 = 7 + integer, parameter :: DB_HDF5_SEC2 = 2055 + integer, parameter :: DB_HDF5_STDIO = 4103 + integer, parameter :: DB_HDF5_CORE = 6151 + integer, parameter :: DB_HDF5_LOG = 8199 + integer, parameter :: DB_HDF5_SPLIT = 10247 + integer, parameter :: DB_HDF5_DIRECT = 12295 + integer, parameter :: DB_HDF5_FAMILY = 14343 + integer, parameter :: DB_HDF5_MPIO = 16391 + integer, parameter :: DB_HDF5_MPIOP = 18439 + integer, parameter :: DB_HDF5_MPIP = 18439 + integer, parameter :: DB_HDF5_SILO = 20487 + integer, parameter :: DB_NFILES = 256 + integer, parameter :: DB_NFILTERS = 32 + integer, parameter :: DB_COLLINEAR = 130 + integer, parameter :: DB_NONCOLLINEAR = 131 + integer, parameter :: DB_QUAD_RECT = 130 + integer, parameter :: DB_QUAD_CURV = 131 + integer, parameter :: DB_INVALID_OBJECT = -1 + integer, parameter :: DB_QUADRECT = 130 + integer, parameter :: DB_QUADCURV = 131 + integer, parameter :: DB_QUADMESH = 500 + integer, parameter :: DB_QUADVAR = 501 + integer, parameter :: DB_UCDMESH = 510 + integer, parameter :: DB_UCDVAR = 511 + integer, parameter :: DB_MULTIMESH = 520 + integer, parameter :: DB_MULTIVAR = 521 + integer, parameter :: DB_MULTIMAT = 522 + integer, parameter :: DB_MULTIMATSPECIES = 523 + integer, parameter :: DB_MULTIBLOCKMESH = 520 + integer, parameter :: DB_MULTIBLOCKVAR = 521 + integer, parameter :: DB_MULTIMESHADJ = 524 + integer, parameter :: DB_MATERIAL = 530 + integer, parameter :: DB_MATSPECIES = 531 + integer, parameter :: DB_FACELIST = 550 + integer, parameter :: DB_ZONELIST = 551 + integer, parameter :: DB_EDGELIST = 552 + integer, parameter :: DB_PHZONELIST = 553 + integer, parameter :: DB_CSGZONELIST = 554 + integer, parameter :: DB_CSGMESH = 555 + integer, parameter :: DB_CSGVAR = 556 + integer, parameter :: DB_CURVE = 560 + integer, parameter :: DB_DEFVARS = 565 + integer, parameter :: DB_POINTMESH = 570 + integer, parameter :: DB_POINTVAR = 571 + integer, parameter :: DB_ARRAY = 580 + integer, parameter :: DB_DIR = 600 + integer, parameter :: DB_VARIABLE = 610 + integer, parameter :: DB_MRGTREE = 611 + integer, parameter :: DB_GROUPELMAP = 612 + integer, parameter :: DB_MRGVAR = 613 + integer, parameter :: DB_USERDEF = 700 + integer, parameter :: DB_INT = 16 + integer, parameter :: DB_SHORT = 17 + integer, parameter :: DB_LONG = 18 + integer, parameter :: DB_FLOAT = 19 + integer, parameter :: DB_DOUBLE = 20 + integer, parameter :: DB_CHAR = 21 + integer, parameter :: DB_LONG_LONG = 22 + integer, parameter :: DB_NOTYPE = 25 + integer, parameter :: DB_CLOBBER = 0 + integer, parameter :: DB_NOCLOBBER = 1 + integer, parameter :: DB_READ = 1 + integer, parameter :: DB_APPEND = 2 + integer, parameter :: DB_LOCAL = 0 + integer, parameter :: DB_SUN3 = 10 + integer, parameter :: DB_SUN4 = 11 + integer, parameter :: DB_SGI = 12 + integer, parameter :: DB_RS6000 = 13 + integer, parameter :: DB_CRAY = 14 + integer, parameter :: DB_INTEL = 15 + integer, parameter :: DBOPT_FIRST = 260 + integer, parameter :: DBOPT_ALIGN = 260 + integer, parameter :: DBOPT_COORDSYS = 262 + integer, parameter :: DBOPT_CYCLE = 263 + integer, parameter :: DBOPT_FACETYPE = 264 + integer, parameter :: DBOPT_HI_OFFSET = 265 + integer, parameter :: DBOPT_LO_OFFSET = 266 + integer, parameter :: DBOPT_LABEL = 267 + integer, parameter :: DBOPT_XLABEL = 268 + integer, parameter :: DBOPT_YLABEL = 269 + integer, parameter :: DBOPT_ZLABEL = 270 + integer, parameter :: DBOPT_MAJORORDER = 271 + integer, parameter :: DBOPT_NSPACE = 272 + integer, parameter :: DBOPT_ORIGIN = 273 + integer, parameter :: DBOPT_PLANAR = 274 + integer, parameter :: DBOPT_TIME = 275 + integer, parameter :: DBOPT_UNITS = 276 + integer, parameter :: DBOPT_XUNITS = 277 + integer, parameter :: DBOPT_YUNITS = 278 + integer, parameter :: DBOPT_ZUNITS = 279 + integer, parameter :: DBOPT_DTIME = 280 + integer, parameter :: DBOPT_USESPECMF = 281 + integer, parameter :: DBOPT_XVARNAME = 282 + integer, parameter :: DBOPT_YVARNAME = 283 + integer, parameter :: DBOPT_ZVARNAME = 284 + integer, parameter :: DBOPT_ASCII_LABEL = 285 + integer, parameter :: DBOPT_MATNOS = 286 + integer, parameter :: DBOPT_NMATNOS = 287 + integer, parameter :: DBOPT_MATNAME = 288 + integer, parameter :: DBOPT_NMAT = 289 + integer, parameter :: DBOPT_NMATSPEC = 290 + integer, parameter :: DBOPT_BASEINDEX = 291 + integer, parameter :: DBOPT_ZONENUM = 292 + integer, parameter :: DBOPT_NODENUM = 293 + integer, parameter :: DBOPT_BLOCKORIGIN = 294 + integer, parameter :: DBOPT_GROUPNUM = 295 + integer, parameter :: DBOPT_GROUPORIGIN = 296 + integer, parameter :: DBOPT_NGROUPS = 297 + integer, parameter :: DBOPT_MATNAMES = 298 + integer, parameter :: DBOPT_EXTENTS_SIZE = 299 + integer, parameter :: DBOPT_EXTENTS = 300 + integer, parameter :: DBOPT_MATCOUNTS = 301 + integer, parameter :: DBOPT_MATLISTS = 302 + integer, parameter :: DBOPT_MIXLENS = 303 + integer, parameter :: DBOPT_ZONECOUNTS = 304 + integer, parameter :: DBOPT_HAS_EXTERNAL_ZONES = 305 + integer, parameter :: DBOPT_PHZONELIST = 306 + integer, parameter :: DBOPT_MATCOLORS = 307 + integer, parameter :: DBOPT_BNDNAMES = 308 + integer, parameter :: DBOPT_REGNAMES = 309 + integer, parameter :: DBOPT_ZONENAMES = 310 + integer, parameter :: DBOPT_HIDE_FROM_GUI = 311 + integer, parameter :: DBOPT_TOPO_DIM = 312 + integer, parameter :: DBOPT_REFERENCE = 313 + integer, parameter :: DBOPT_GROUPINGS_SIZE = 314 + integer, parameter :: DBOPT_GROUPINGS = 315 + integer, parameter :: DBOPT_GROUPINGNAMES = 316 + integer, parameter :: DBOPT_ALLOWMAT0 = 317 + integer, parameter :: DBOPT_MRGTREE_NAME = 318 + integer, parameter :: DBOPT_REGION_PNAMES = 319 + integer, parameter :: DBOPT_TENSOR_RANK = 320 + integer, parameter :: DBOPT_MMESH_NAME = 321 + integer, parameter :: DBOPT_TV_CONNECTIVITY = 322 + integer, parameter :: DBOPT_DISJOINT_MODE = 323 + integer, parameter :: DBOPT_MRGV_ONAMES = 324 + integer, parameter :: DBOPT_MRGV_RNAMES = 325 + integer, parameter :: DBOPT_SPECNAMES = 326 + integer, parameter :: DBOPT_SPECCOLORS = 327 + integer, parameter :: DBOPT_LLONGNZNUM = 328 + integer, parameter :: DBOPT_CONSERVED = 329 + integer, parameter :: DBOPT_EXTENSIVE = 330 + integer, parameter :: DBOPT_MB_FILE_NS = 331 + integer, parameter :: DBOPT_MB_BLOCK_NS = 332 + integer, parameter :: DBOPT_MB_BLOCK_TYPE = 333 + integer, parameter :: DBOPT_MB_EMPTY_LIST = 334 + integer, parameter :: DBOPT_MB_EMPTY_COUNT = 335 + integer, parameter :: DBOPT_MB_REPR_BLOCK_IDX = 336 + integer, parameter :: DBOPT_MISSING_VALUE = 337 + integer, parameter :: DBOPT_ALT_ZONENUM_VARS = 338 + integer, parameter :: DBOPT_ALT_NODENUM_VARS = 339 + integer, parameter :: DBOPT_GHOST_NODE_LABELS = 340 + integer, parameter :: DBOPT_GHOST_ZONE_LABELS = 341 + integer, parameter :: DBOPT_LAST = 499 + integer, parameter :: DBOPT_H5_FIRST = 500 + integer, parameter :: DBOPT_H5_VFD = 500 + integer, parameter :: DBOPT_H5_RAW_FILE_OPTS = 501 + integer, parameter :: DBOPT_H5_RAW_EXTENSION = 502 + integer, parameter :: DBOPT_H5_META_FILE_OPTS = 503 + integer, parameter :: DBOPT_H5_META_EXTENSION = 504 + integer, parameter :: DBOPT_H5_CORE_ALLOC_INC = 505 + integer, parameter :: DBOPT_H5_CORE_NO_BACK_STORE = 506 + integer, parameter :: DBOPT_H5_META_BLOCK_SIZE = 507 + integer, parameter :: DBOPT_H5_SMALL_RAW_SIZE = 508 + integer, parameter :: DBOPT_H5_ALIGN_MIN = 509 + integer, parameter :: DBOPT_H5_ALIGN_VAL = 510 + integer, parameter :: DBOPT_H5_DIRECT_MEM_ALIGN = 511 + integer, parameter :: DBOPT_H5_DIRECT_BLOCK_SIZE = 512 + integer, parameter :: DBOPT_H5_DIRECT_BUF_SIZE = 513 + integer, parameter :: DBOPT_H5_LOG_NAME = 514 + integer, parameter :: DBOPT_H5_LOG_BUF_SIZE = 515 + integer, parameter :: DBOPT_H5_MPIO_COMM = 516 + integer, parameter :: DBOPT_H5_MPIO_INFO = 517 + integer, parameter :: DBOPT_H5_MPIP_NO_GPFS_HINTS = 518 + integer, parameter :: DBOPT_H5_SIEVE_BUF_SIZE = 519 + integer, parameter :: DBOPT_H5_CACHE_NELMTS = 520 + integer, parameter :: DBOPT_H5_CACHE_NBYTES = 521 + integer, parameter :: DBOPT_H5_CACHE_POLICY = 522 + integer, parameter :: DBOPT_H5_FAM_SIZE = 523 + integer, parameter :: DBOPT_H5_FAM_FILE_OPTS = 524 + integer, parameter :: DBOPT_H5_USER_DRIVER_ID = 525 + integer, parameter :: DBOPT_H5_USER_DRIVER_INFO = 526 + integer, parameter :: DBOPT_H5_SILO_BLOCK_SIZE = 527 + integer, parameter :: DBOPT_H5_SILO_BLOCK_COUNT = 528 + integer, parameter :: DBOPT_H5_SILO_LOG_STATS = 529 + integer, parameter :: DBOPT_H5_SILO_USE_DIRECT = 530 + integer, parameter :: DBOPT_H5_FIC_SIZE = 531 + integer, parameter :: DBOPT_H5_FIC_BUF = 532 + integer, parameter :: DBOPT_H5_LAST = 599 + integer, parameter :: DB_TOP = 0 + integer, parameter :: DB_NONE = 1 + integer, parameter :: DB_ALL = 2 + integer, parameter :: DB_ABORT = 3 + integer, parameter :: DB_SUSPEND = 4 + integer, parameter :: DB_RESUME = 5 + integer, parameter :: DB_ALL_AND_DRVR = 6 + integer, parameter :: DB_ROWMAJOR = 0 + integer, parameter :: DB_COLMAJOR = 1 + integer, parameter :: DB_NOTCENT = 0 + integer, parameter :: DB_NODECENT = 110 + integer, parameter :: DB_ZONECENT = 111 + integer, parameter :: DB_FACECENT = 112 + integer, parameter :: DB_BNDCENT = 113 + integer, parameter :: DB_EDGECENT = 114 + integer, parameter :: DB_BLOCKCENT = 115 + integer, parameter :: DB_CARTESIAN = 120 + integer, parameter :: DB_CYLINDRICAL = 121 + integer, parameter :: DB_SPHERICAL = 122 + integer, parameter :: DB_NUMERICAL = 123 + integer, parameter :: DB_OTHER = 124 + integer, parameter :: DB_RECTILINEAR = 100 + integer, parameter :: DB_CURVILINEAR = 101 + integer, parameter :: DB_AREA = 140 + integer, parameter :: DB_VOLUME = 141 + integer, parameter :: DB_ON = 1000 + integer, parameter :: DB_OFF = -1000 + integer, parameter :: DB_ABUTTING = 142 + integer, parameter :: DB_FLOATING = 143 + integer, parameter :: DB_VARTYPE_SCALAR = 200 + integer, parameter :: DB_VARTYPE_VECTOR = 201 + integer, parameter :: DB_VARTYPE_TENSOR = 202 + integer, parameter :: DB_VARTYPE_SYMTENSOR = 203 + integer, parameter :: DB_VARTYPE_ARRAY = 204 + integer, parameter :: DB_VARTYPE_MATERIAL = 205 + integer, parameter :: DB_VARTYPE_SPECIES = 206 + integer, parameter :: DB_VARTYPE_LABEL = 207 + integer, parameter :: DB_GHOSTTYPE_NOGHOST = 0 + integer, parameter :: DB_GHOSTTYPE_INTDUP = 1 + integer, parameter :: DBCSG_QUADRIC_G = 16777216 + integer, parameter :: DBCSG_SPHERE_PR = 33619968 + integer, parameter :: DBCSG_ELLIPSOID_PRRR = 33685504 + integer, parameter :: DBCSG_PLANE_G = 50331648 + integer, parameter :: DBCSG_PLANE_X = 50397184 + integer, parameter :: DBCSG_PLANE_Y = 50462720 + integer, parameter :: DBCSG_PLANE_Z = 50528256 + integer, parameter :: DBCSG_PLANE_PN = 50593792 + integer, parameter :: DBCSG_PLANE_PPP = 50659328 + integer, parameter :: DBCSG_CYLINDER_PNLR = 67108864 + integer, parameter :: DBCSG_CYLINDER_PPR = 67174400 + integer, parameter :: DBCSG_BOX_XYZXYZ = 83886080 + integer, parameter :: DBCSG_CONE_PNLA = 100663296 + integer, parameter :: DBCSG_CONE_PPA = 100728832 + integer, parameter :: DBCSG_POLYHEDRON_KF = 117440512 + integer, parameter :: DBCSG_HEX_6F = 117506048 + integer, parameter :: DBCSG_TET_4F = 117571584 + integer, parameter :: DBCSG_PYRAMID_5F = 117637120 + integer, parameter :: DBCSG_PRISM_5F = 117702656 + integer, parameter :: DBCSG_QUADRATIC_G = 134217728 + integer, parameter :: DBCSG_CIRCLE_PR = 150994944 + integer, parameter :: DBCSG_ELLIPSE_PRR = 151060480 + integer, parameter :: DBCSG_LINE_G = 167772160 + integer, parameter :: DBCSG_LINE_X = 167837696 + integer, parameter :: DBCSG_LINE_Y = 167903232 + integer, parameter :: DBCSG_LINE_PN = 167968768 + integer, parameter :: DBCSG_LINE_PP = 168034304 + integer, parameter :: DBCSG_BOX_XYXY = 184549376 + integer, parameter :: DBCSG_ANGLE_PNLA = 201326592 + integer, parameter :: DBCSG_ANGLE_PPA = 201392128 + integer, parameter :: DBCSG_POLYGON_KP = 218103808 + integer, parameter :: DBCSG_TRI_3P = 218169344 + integer, parameter :: DBCSG_QUAD_4P = 218234880 + integer, parameter :: DBCSG_INNER = 2130706432 + integer, parameter :: DBCSG_OUTER = 2130771968 + integer, parameter :: DBCSG_ON = 2130837504 + integer, parameter :: DBCSG_UNION = 2130903040 + integer, parameter :: DBCSG_INTERSECT = 2130968576 + integer, parameter :: DBCSG_DIFF = 2131034112 + integer, parameter :: DBCSG_COMPLIMENT = 2131099648 + integer, parameter :: DBCSG_XFORM = 2131165184 + integer, parameter :: DBCSG_SWEEP = 2131230720 + integer, parameter :: DB_PREORDER = 1 + integer, parameter :: DB_POSTORDER = 2 + integer, parameter :: DB_FROMCWR = 4 + integer, parameter :: DB_F77NULL = (-99) + real (kind=8), parameter :: DB_MISSING_VALUE_NOT_SET = 1.0D+308 + integer, parameter :: DB_ZONETYPE_BEAM = 10 + integer, parameter :: DB_ZONETYPE_POLYGON = 20 + integer, parameter :: DB_ZONETYPE_TRIANGLE = 23 + integer, parameter :: DB_ZONETYPE_QUAD = 24 + integer, parameter :: DB_ZONETYPE_POLYHEDRON = 30 + integer, parameter :: DB_ZONETYPE_TET = 34 + integer, parameter :: DB_ZONETYPE_PYRAMID = 35 + integer, parameter :: DB_ZONETYPE_PRISM = 36 + integer, parameter :: DB_ZONETYPE_HEX = 38 + integer, parameter :: DB_MAX_H5_OBJ_VALS = 64 + character (len=10), parameter :: DB_F77NULLSTRING = "NULLSTRING" + + +! End. diff -Nru silo-llnl-4.10.2/src/silo/silo_f.c silo-llnl-4.10.2.real/src/silo/silo_f.c --- silo-llnl-4.10.2/src/silo/silo_f.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/src/silo/silo_f.c 2018-02-15 17:25:43.000000000 +0000 @@ -688,7 +688,7 @@ DBPUTMAT_FC (int *dbid, FCD_DB name, int *lname, FCD_DB meshname, int *lmeshname, int *nmat, int *matnos, int *matlist, int *dims, int *ndims, - int *mix_next, int *mix_mat, int *mix_zone, DB_DTPTR1 mix_vf, + int *mix_next, int *mix_mat, int *mix_zone, void const *mix_vf, int *mixlen, int *datatype, int *optlist_id, int *status) { int *mixz = NULL; @@ -777,7 +777,7 @@ SILO_API FORTRAN DBPUTMSP_FC (int *dbid, FCD_DB name, int *lname, FCD_DB matname, int *lmatname, int *nmat, int *nmatspec, int *speclist, int *dims, int *ndims, - int *nspecies_mf, DB_DTPTR1 species_mf, int *mix_speclist, int *mixlen, + int *nspecies_mf, void const *species_mf, int *mix_speclist, int *mixlen, int *datatype, int *optlist_id, int *status) { char *nm = NULL, *mnm = NULL; @@ -1453,7 +1453,7 @@ int *lmeshnames, int *meshtypes, int *optlist_id, int *status) { DBfile *dbfile = NULL; - char const * *meshnms = NULL; + char **meshnms = NULL; char *nm = NULL; char *realmeshnames = NULL; int i, indx; @@ -1495,12 +1495,12 @@ if (*nmesh <= 0) API_ERROR("nmesh", E_BADARGS); - meshnms = ALLOC_N(char const *, *nmesh); + meshnms = ALLOC_N(char *, *nmesh); for (indx = 0, i = 0; i < *nmesh; i++) { if (lmeshnames[i] < 0) API_ERROR("lmeshnames", E_BADARGS); - meshnms[i] = (char const *) SW_strndup(&realmeshnames[indx], lmeshnames[i]); + meshnms[i] = (char *) SW_strndup(&realmeshnames[indx], lmeshnames[i]); if (fortran2DStrLen > 0) indx += fortran2DStrLen; else @@ -1510,8 +1510,8 @@ /*---------------------------------------- * Invoke the C function to do the work. *---------------------------------------*/ - *status = DBPutMultimesh(dbfile, nm, *nmesh, meshnms, - meshtypes, optlist); + *status = DBPutMultimesh(dbfile, nm, *nmesh, + (char const * const *) meshnms, meshtypes, optlist); for (i = 0; i < *nmesh; i++) FREE(meshnms[i]); @@ -1635,8 +1635,9 @@ /*---------------------------------------- * Invoke the C function to do the work. *---------------------------------------*/ - *status = DBPutDefvars(dbfile, nm, *ndefs, nms, types, defs, - optlists); + *status = DBPutDefvars(dbfile, nm, *ndefs, (char const * const *) nms, + types, (char const * const *) defs, + (DBoptlist const * const *) optlists); for (i = 0; i < *ndefs; i++) { @@ -1751,8 +1752,8 @@ } /* Invoke the C function to do the work. */ - *status = DBPutMultivar(dbfile, nm, *nvar, varnms, vartypes, - optlist); + *status = DBPutMultivar(dbfile, nm, *nvar, (char const * const *) varnms, + vartypes, optlist); for(i=0;i<*nvar;i++) FREE(varnms[i]); @@ -1852,7 +1853,7 @@ /*---------------------------------------- * Invoke the C function to do the work. *---------------------------------------*/ - *status = DBPutMultimat(dbfile, nm, *nmat, matnms, optlist); + *status = DBPutMultimat(dbfile, nm, *nmat, (char const * const *) matnms, optlist); for (i = 0; i < *nmat; i++) FREE(matnms[i]); @@ -1900,12 +1901,12 @@ * *-------------------------------------------------------------------------*/ SILO_API FORTRAN -DBPUTPM_FC (int *dbid, FCD_DB name, int *lname, int *ndims, DB_DTPTR1 x, DB_DTPTR1 y, - DB_DTPTR1 z, int *nels, int *datatype, int *optlist_id, int *status) +DBPUTPM_FC (int *dbid, FCD_DB name, int *lname, int *ndims, void const *x, void const *y, + void const *z, int *nels, int *datatype, int *optlist_id, int *status) { DBfile *dbfile = NULL; char *nm = NULL; - DB_DTPTR *coords[3]; + void const *coords[3]; DBoptlist *optlist = NULL; API_BEGIN("dbputpm", int, -1) { @@ -1978,7 +1979,7 @@ SILO_API FORTRAN DBPUTPV1_FC (int *dbid, FCD_DB name, int *lname, FCD_DB meshname, int *lmeshname, - DB_DTPTR1 var, int *nels, int *datatype, int *optlist_id, int *status) + void const *var, int *nels, int *datatype, int *optlist_id, int *status) { char *nm = NULL, *mnm = NULL; DBfile *dbfile = NULL; @@ -2071,13 +2072,13 @@ *-------------------------------------------------------------------------*/ SILO_API FORTRAN DBPUTQM_FC (int *dbid, FCD_DB name, int *lname, FCD_DB xname, int *lxname, - FCD_DB yname, int *lyname, FCD_DB zname, int *lzname, DB_DTPTR1 x, - DB_DTPTR1 y, DB_DTPTR1 z, int *dims, int *ndims, int *datatype, + FCD_DB yname, int *lyname, FCD_DB zname, int *lzname, void const *x, + void const *y, void const *z, int *dims, int *ndims, int *datatype, int *coordtype, int *optlist_id, int *status) { DBfile *dbfile = NULL; int i; - DB_DTPTR *coords[3]; + void const *coords[3]; char *coordnames[3], *nm = NULL; DBoptlist *optlist = NULL; @@ -2160,8 +2161,8 @@ dbfile = (DBfile *) DBFortranAccessPointer(*dbid); - *status = DBPutQuadmesh(dbfile, nm, coordnames, coords, dims, *ndims, - *datatype, *coordtype, optlist); + *status = DBPutQuadmesh(dbfile, nm, (char const * const *) coordnames, + coords, dims, *ndims, *datatype, *coordtype, optlist); FREE(nm); FREE(coordnames[0]); @@ -2211,7 +2212,7 @@ SILO_API FORTRAN DBPUTQV1_FC (int *dbid, FCD_DB name, int *lname, FCD_DB meshname, int *lmeshname, - DB_DTPTR1 var, int *dims, int *ndims, DB_DTPTR1 mixvar, int *mixlen, + void const *var, int *dims, int *ndims, void const *mixvar, int *mixlen, int *datatype, int *centering, int *optlist_id, int *status) { DBfile *dbfile = NULL; @@ -2286,7 +2287,7 @@ SILO_API FORTRAN DBPUTQV_FC (int *dbid, FCD_DB vname, int *lvname, FCD_DB mname, int *lmname, int *nvars, FCD_DB varnames, int* lvarnames, - DB_DTPTR1 vars, int *dims, int *ndims, DB_DTPTR1 mixvar, int *mixlen, + void const *vars, int *dims, int *ndims, void const *mixvar, int *mixlen, int *datatype, int *centering, int *optlist_id, int *status) { DBfile *dbfile = NULL; @@ -2295,8 +2296,8 @@ char **cvarnames = NULL; char *names = NULL; int indx, i, j; - float **cvars = NULL ; - float **cmixvar = NULL ; + void **cvars = NULL ; + void **cmixvar = NULL ; API_BEGIN("dbputqv", int, -1) { optlist = (DBoptlist *) DBFortranAccessPointer(*optlist_id); @@ -2359,44 +2360,40 @@ } /*------------------------------ - * Create the float pointers addresses: + * Create the variable data pointers addresses: *-----------------------------*/ - /* Compute the size of the array */ + /* Compute the size of the arrays in bytes */ indx = dims[0] ; for (j=1; j<*ndims; j++ ) { indx *= dims[j] ; } - if (*datatype == DB_DOUBLE) { - /* Doubles use twice as much storage as floats */ - indx*= 2 ; - } + indx *= db_GetMachDataSize(*datatype); /* Now convert the Fortran data arrays into C arrays of data */ if ((*(int *)vars) != DB_F77NULL) { - cvars = malloc(sizeof(float*) * (*nvars)); + cvars = (void **)malloc(sizeof(void*) * (*nvars)); /* Make pointers to Fortran address in vars array */ for (i=0;i<*nvars;i++) { - cvars[i] = (float*)vars + i*indx ; + cvars[i] = (void*)((char*) vars + i*indx); } } else { API_ERROR("vars", E_BADARGS); } if ((*(int *)mixvar) != DB_F77NULL) { /* Now convert the Fortran data array into a C array of data */ - cmixvar = malloc(sizeof(float*) * (*nvars)); + cmixvar = (void **)malloc(sizeof(void*) * (*nvars)); /* Make pointers to Fortran address in vars array */ for (i=0;i<*nvars;i++) { - cmixvar[i] = (float*)mixvar + i*indx ; + cmixvar[i] = (void*)((char*) mixvar + i*indx); } } dbfile = (DBfile *) DBFortranAccessPointer(*dbid); *status = DBPutQuadvar(dbfile, cvname, cmname, *nvars, - cvarnames, cvars, dims, *ndims, - cmixvar, *mixlen, *datatype, *centering, - optlist); + (char const * const *) cvarnames, cvars, dims, *ndims, + cmixvar, *mixlen, *datatype, *centering, optlist); /* Remove pointers to pointers arrays */ if (cmixvar != NULL) @@ -2452,14 +2449,14 @@ * *-------------------------------------------------------------------------*/ SILO_API FORTRAN -DBPUTUM_FC (int *dbid, FCD_DB name, int *lname, int *ndims, DB_DTPTR1 x, DB_DTPTR1 y, - DB_DTPTR1 z, FCD_DB xname, int *lxname, FCD_DB yname, int *lyname, +DBPUTUM_FC (int *dbid, FCD_DB name, int *lname, int *ndims, void const *x, void const *y, + void const *z, FCD_DB xname, int *lxname, FCD_DB yname, int *lyname, FCD_DB zname, int *lzname, int *datatype, int *nnodes, int *nzones, FCD_DB zlname, int *lzlname, FCD_DB flname, int *lflname, int *optlist_id, int *status) { char *nm = NULL, *zlnm = NULL, *flnm = NULL, *coordnames[3]; - DB_DTPTR *coords[3]; + void const *coords[3]; DBfile *dbfile = NULL; DBoptlist *optlist = NULL; @@ -2570,7 +2567,7 @@ dbfile = (DBfile *) DBFortranAccessPointer(*dbid); - *status = DBPutUcdmesh(dbfile, nm, *ndims, coordnames, + *status = DBPutUcdmesh(dbfile, nm, *ndims, (char const * const *) coordnames, coords, *nnodes, *nzones, zlnm, flnm, *datatype, optlist); @@ -2624,7 +2621,7 @@ SILO_API FORTRAN DBPUTUV1_FC (int *dbid, FCD_DB name, int *lname, FCD_DB meshname, int *lmeshname, - DB_DTPTR1 var, int *nels, DB_DTPTR1 mixvar, int *mixlen, int *datatype, + void const *var, int *nels, void const *mixvar, int *mixlen, int *datatype, int *centering, int *optlist_id, int *status) { char *nm = NULL, *mnm = NULL; @@ -3101,49 +3098,6 @@ } /*------------------------------------------------------------------------- - * Routine DBSETDIRID_FC - * - * Purpose - * Set the current directory by ID within the database. - * - * Notes - * This function was built to be called from Fortran. - * - * Returns - * Returns 0 on success, -1 on failure. - * - * Programmer - * robb@cloud - * Mon Nov 28 14:28:41 EST 1994 - * - * Modifications - * Eric Brugger, Tue Feb 7 08:09:26 PST 1995 - * I replaced API_END with API_END_NOPOP. - * - * Sean Ahern, Mon Apr 10 20:04:23 PDT 1995 - * Added a DBfile lookup in a global array using - * DBFortranAccessPointer. - * - * Thomas R. Treadway, Thu Oct 11 15:21:03 PDT 2007 - * Using AC_FC_WRAPPERS for name-mangling - * - * Kathleen Bonnell, Wed Sep 2 15:31:26 PDT 2009 - * Added SILO_API so symbols are correctly exported on windows. - * - *-------------------------------------------------------------------------*/ -SILO_API FORTRAN -DBSETDIRID_FC (int *dbid, int *dirid) -{ - DBfile *dbfile = NULL; - - API_BEGIN("dbsetdirid", int, -1) { - dbfile = (DBfile *) DBFortranAccessPointer(*dbid); - API_RETURN(DBSetDirID(dbfile, *dirid)); - } - API_END_NOPOP; /*BEWARE: If API_RETURN above is removed use API_END */ -} - -/*------------------------------------------------------------------------- * Routine DBSHOWERRORS_FC * * Purpose @@ -3294,7 +3248,7 @@ *-------------------------------------------------------------------------*/ SILO_API FORTRAN DBPUTCA_FC (int *dbid, FCD_DB _name, int *lname, FCD_DB enames, int *width, - int *elengths, int *nelems, DB_DTPTR1 values, int *datatype, + int *elengths, int *nelems, void *values, int *datatype, int *optlist_id, int *status) { DBfile *dbfile = NULL; @@ -3343,9 +3297,8 @@ dbfile = (DBfile *) DBFortranAccessPointer(*dbid); - *status = DBPutCompoundarray(dbfile, array_name, elemnames, - elengths, *nelems, (void *)values, - nvalues, *datatype, optlist); + *status = DBPutCompoundarray(dbfile, array_name, (char const * const *) elemnames, + elengths, *nelems, values, nvalues, *datatype, optlist); /* * Free all temporary memory. @@ -3405,7 +3358,7 @@ *-------------------------------------------------------------------------*/ SILO_API FORTRAN DBGETCA_FC (int *dbid, FCD_DB _name, int *lname, int *width, FCD_DB enames, - int *elengths, int *nelems, DB_DTPTR1 values, int *nvalues, + int *elengths, int *nelems, void *values, int *nvalues, int *datatype) { DBfile *dbfile = NULL; @@ -3516,7 +3469,7 @@ * *-------------------------------------------------------------------------*/ SILO_API FORTRAN -DBFGETCA_FC (int *dbid, FCD_DB _name, int *lname, DB_DTPTR1 values, int *nvalues) +DBFGETCA_FC (int *dbid, FCD_DB _name, int *lname, void *values, int *nvalues) { API_BEGIN("dbfgetca", int, -1) { #if CRAY @@ -3559,7 +3512,7 @@ * *------------------------------------------------------------------------- */ SILO_API FORTRAN -DBPUTCURVE_FC (int *dbid, FCD_DB _name, int *lname, DB_DTPTR1 xvals, DB_DTPTR1 yvals, +DBPUTCURVE_FC (int *dbid, FCD_DB _name, int *lname, void const *xvals, void const *yvals, int *datatype, int *npts, int *optlist_id, int *status) { @@ -3622,8 +3575,8 @@ * *------------------------------------------------------------------------ */ SILO_API FORTRAN -DBGETCURVE_FC (int *dbid, FCD_DB _name, int *lname, int *maxpts, DB_DTPTR1 xvals, - DB_DTPTR1 yvals, int *datatype, int *npts) +DBGETCURVE_FC (int *dbid, FCD_DB _name, int *lname, int *maxpts, void *xvals, + void *yvals, int *datatype, int *npts) { DBfile *dbfile ; @@ -4364,7 +4317,7 @@ char *cval = NULL; DBoptlist *optlist = NULL; - API_BEGIN("dbsetcompression", int, -1) { + API_BEGIN("dbsetcompress", int, -1) { if (strcmp(cvalue, DB_F77NULLSTRING) < 0 && *lcvalue > 0) cval = SW_strndup(cvalue, *lcvalue); @@ -4409,7 +4362,7 @@ SILO_API FORTRAN DBGETCOMPRESS_FC (FCD_DB cvalue, int *lcvalue) { - char *cval = NULL; + char const *cval = NULL; API_BEGIN("dbgetcompression", int, -1) { if (*lcvalue <= 0) @@ -4565,6 +4518,24 @@ } SILO_API FORTRAN +DBSETEMPTYOK_FC(int *ok) +{ + API_BEGIN("dbsetemptyok", int, -1) { + API_RETURN(DBSetAllowEmptyObjects(*ok)); + } + API_END_NOPOP; /*BEWARE: If API_RETURN above is removed use API_END */ +} + +SILO_API FORTRAN +DBGETEMPTYOK_FC() +{ + API_BEGIN("dbgetemptyok", int, -1) { + API_RETURN(DBGetAllowEmptyObjects()); + } + API_END_NOPOP; /*BEWARE: If API_RETURN above is removed use API_END */ +} + +SILO_API FORTRAN DBUNREGAFOPTS_FC () { API_BEGIN("dbunregafopts", int, -1) { @@ -4817,7 +4788,7 @@ indx += lregn_names[i] ; } - *status = DBAddRegionArray(tree, *nregn, regn_nms, + *status = DBAddRegionArray(tree, *nregn, (char const * const *) regn_nms, *type_info_bits, maps_nm, *nsegs, seg_ids, seg_sizes, seg_types, optlist); @@ -5029,7 +5000,7 @@ /* convert array of segment data ids to their pointers */ segment_data = (int**) malloc(*num_segments * sizeof(int*)); for (i = 0; i < *num_segments; i++) - segment_data[i] = DBFortranAccessPointer(segment_data_ids[i]); + segment_data[i] = (int *)DBFortranAccessPointer(segment_data_ids[i]); /* convert array of segment fracs ids to their pointers */ if (*segment_fracs_ids) @@ -5040,8 +5011,9 @@ } *status = DBPutGroupelmap(dbfile, map_nm, *num_segments, - groupel_types, segment_lengths, segment_ids, segment_data, - segment_fracs, *fracs_data_type, optlist); + groupel_types, segment_lengths, segment_ids, + (int const * const *) segment_data, (void const * const *) segment_fracs, + *fracs_data_type, optlist); FREE(segment_data); FREE(segment_fracs); @@ -5196,8 +5168,8 @@ for (i = 0; i < *nvals; i++) data[i] = DBFortranAccessPointer(data_ids[i]); - *status = DBPutCsgvar(dbfile, nm, m_nm, 1, &nm, - data, *nvals, *datatype, *centering, optlist); + *status = DBPutCsgvar(dbfile, nm, m_nm, 1, (char const * const *) &nm, + (void const * const *) data, *nvals, *datatype, *centering, optlist); FREE(nm); FREE(m_nm); @@ -5395,8 +5367,8 @@ /*---------------------------------------- * Invoke the C function to do the work. *---------------------------------------*/ - *status = DBPutMrgvar(dbfile, nm, tnm, *ncomps, compnms, - *nregns, regnnms, *datatype, data, optlist); + *status = DBPutMrgvar(dbfile, nm, tnm, *ncomps, (char const * const *) compnms, + *nregns, (char const * const *) regnnms, *datatype, (void const * const *) data, optlist); for (i = 0; i < *ncomps; i++) FREE(compnms[i]); diff -Nru silo-llnl-4.10.2/src/silo/silo_f.h silo-llnl-4.10.2.real/src/silo/silo_f.h --- silo-llnl-4.10.2/src/silo/silo_f.h 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/src/silo/silo_f.h 2018-02-15 17:25:43.000000000 +0000 @@ -104,7 +104,6 @@ #define DBRDVARSLICE_FC FC_FUNC (dbrdvarslice,DBRDVARSLICE) #define DBWRITESLICE_FC FC_FUNC (dbwriteslice,DBWRITESLICE) #define DBSETDIR_FC FC_FUNC (dbsetdir,DBSETDIR) -#define DBSETDIRID_FC FC_FUNC (dbsetdirid,DBSETDIRID) #define DBSHOWERRORS_FC FC_FUNC (dbshowerrors,DBSHOWERRORS) #define DBWRITE_FC FC_FUNC (dbwrite,DBWRITE) #define DBPUTCA_FC FC_FUNC (dbputca,DBPUTCA) @@ -149,6 +148,8 @@ #define DBREGFOPTS_FC FC_FUNC (dbregfopts, DBREGFOPTS) #define DBUNREGFOPTS_FC FC_FUNC (dbunregfopts, DBUNREGFOPTS) #define DBUNREGAFOPTS_FC FC_FUNC (dbunregafopts, DBUNREGAFOPTS) +#define DBSETEMPTYOK_FC FC_FUNC (dbsetemptyok, DBSETEMPTYOK) +#define DBGETEMPTYOK_FC FC_FUNC (dbgetemptyok, DBGETEMPTYOK) void *DBFortranAccessPointer(int value); diff -Nru silo-llnl-4.10.2/src/silo/silo.h.in silo-llnl-4.10.2.real/src/silo/silo.h.in --- silo-llnl-4.10.2/src/silo/silo.h.in 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/src/silo/silo.h.in 2018-02-15 17:25:43.000000000 +0000 @@ -72,81 +72,44 @@ #include /* for FILE* datatype for filters */ -/* - * SILO exports for WIN32 - */ -#ifndef SILO_API - #ifdef _WIN32 - #ifdef SILO_STATIC_LIBRARY - #define SILO_API - #else - #ifdef SILO_EXPORTS - #define SILO_API __declspec(dllexport) - #else - #define SILO_API __declspec(dllimport) - #endif - #endif - #else - #define SILO_API - #endif -#endif +#include -/* Set the base type for datatype'd pointers (that is pointers whose - ultimate type is deteremined by an additional 'int datatype' function - argument or struct member) as float (legacy) and void (modern). The - DB_DTPTR is the base type. The '1' and '2' variants are for singley - subscripted and doubley subscripted arrays, respectively. If the - definitions of DB_DTPTR below reference 'float', then this silo.h - header file was configured with --enable-legacy-datatyped-pointers - and it represents the legacy (float) pointers that the silo - library has always had since its original writing. If, instead, - you see 'void' (the default configuration), then this silo.h header - file is using the modern (void) pointers. In that case, note also - that because C compiler's often do not handle correctly nor - distinguish between a void* and a void**, both the singley and - doubley subscripted variants will have only a single star. Rest - assured they are still treated as doubley subscripted in the - implementation. */ -#define DB_DTPTR @SILO_DTYPPTR@ /* NO_FORTRAN_DEFINE */ -#define DB_DTPTR1 @SILO_DTYPPTR1@ /* NO_FORTRAN_DEFINE */ -#define DB_DTPTR2 @SILO_DTYPPTR2@ /* NO_FORTRAN_DEFINE */ - -/* Permit client to explicitly require the legacy mode - for datatyped pointers */ -#ifdef DB_USE_LEGACY_DTPTR -#ifdef DB_USE_MODERN_DTPTR -#error cannot specify BOTH legacy and modern datatyped pointers -#endif -#undef DB_DTPTR /* NO_FORTRAN_DEFINE */ -#undef DB_DTPTR1 /* NO_FORTRAN_DEFINE */ -#undef DB_DTPTR2 /* NO_FORTRAN_DEFINE */ -#define DB_DTPTR float /* NO_FORTRAN_DEFINE */ -#define DB_DTPTR1 float* /* NO_FORTRAN_DEFINE */ -#define DB_DTPTR2 float** /* NO_FORTRAN_DEFINE */ -#endif +/* Why these Void Const Pointer (VCP) typedefs? (see below)... */ +typedef void const * DBVCP1_t; /* single level array */ +typedef void const * DBVCP2_t; /* double level array */ +typedef void const * DBVCP3_t; /* triple level array */ + +/* And not these... +typedef void const * DBVCP1_t; single level array +typedef void const * const * DBVCP2_t; double level array +typedef void const * const * const * DBVCP3_t; triple level array + +Ideally, the later typedefs would be used in the Silo API wherever a caller +needs to pass a single, double or triple level array of arbitrary type. + +However, for multi-level arrays (e.g. more than a single star*), if the caller +doesn't explicitly cast a non-void pointer to the exact type including the +const qualifiers, the later definitions create obscure and non-intuitive compiler +warnings for C callers and outright errors for C++ callers. + +Basically, as counter-intuitive as it sounds neither C nor C++ compilers can handle +passing something like a 'double **' as an argument to a function expecting a +'void const * const *'. + +A good reference on this issue for C is http://c-faq.com/ansi/constmismatch.html +A good reference for C++ is +http://www.embedded.com/electronics-blogs/programming-pointers/4025641/Qualifiers-in-multilevel-pointers + +Therefore, we introduce the DBVCPX_t typedefs, where 'X' is 1, 2 or 3, to +indicate the number of levels in the array the Silo library is expecting the +caller to pass. Even though the typedef resolves to a 'void const *' for all +X, the underlying implementation will wind up treating it as a 'void const *' for +X=1 (e.g. DBVCP1_t), a 'void const * const *' for X=2 (e.g. DBVCP2_t), etc. -/* Permit client to explicitly require the modern mode - for datatyped pointers */ -#ifdef DB_USE_MODERN_DTPTR -#undef DB_DTPTR /* NO_FORTRAN_DEFINE */ -#undef DB_DTPTR1 /* NO_FORTRAN_DEFINE */ -#undef DB_DTPTR2 /* NO_FORTRAN_DEFINE */ -#define DB_DTPTR void /* NO_FORTRAN_DEFINE */ -#define DB_DTPTR1 void* /* NO_FORTRAN_DEFINE */ -#define DB_DTPTR2 void* /* NO_FORTRAN_DEFINE */ -#endif +*/ -/* Macros to get multiply subscripted array constness correct - with C++ and C compilers */ -#if defined(__cplusplus) || defined(USE_CONST_DB_CONSTARR) -#define DB_CONSTARR1 const * /* NO_FORTRAN_DEFINE */ -#define DB_CONSTARR2 const * const * /* NO_FORTRAN_DEFINE */ -#define DB_CONSTARR3 const * const * const * /* NO_FORTRAN_DEFINE */ -#else -#define DB_CONSTARR1 * /* NO_FORTRAN_DEFINE */ -#define DB_CONSTARR2 ** /* NO_FORTRAN_DEFINE */ -#define DB_CONSTARR3 *** /* NO_FORTRAN_DEFINE */ -#endif +/* For the char-specific case of a constant array of strings, to facilitate explicit casts */ +typedef char const * const * DBCAS_t; #ifndef FALSE #define FALSE 0 @@ -155,22 +118,37 @@ #define TRUE 1 #endif -/* In the definitions for different parts of the version number, below, - we use leading '0x0' to deal with possible blank minor and/or patch - version number but still allow base-10, numeric comparison in the GE - macro. */ - /* Major release number of silo library. */ +#define _SILO_VERS_MAJ_@SILO_VERS_MAJ@ +#ifdef _SILO_VERS_MAJ_ +#define SILO_VERS_MAJ 0 /* NO_FORTRAN_DEFINE */ +#else #define SILO_VERS_MAJ @SILO_VERS_MAJ@ +#endif /* Minor release number of silo library. Can be empty. */ -#define SILO_VERS_MIN 0x0@SILO_VERS_MIN@ +#define _SILO_VERS_MIN_@SILO_VERS_MIN@ +#ifdef _SILO_VERS_MIN_ +#define SILO_VERS_MIN 0 /* NO_FORTRAN_DEFINE */ +#else +#define SILO_VERS_MIN @SILO_VERS_MIN@ +#endif /* Patch release number of silo library. Can be empty. */ -#define SILO_VERS_PAT 0x0@SILO_VERS_PAT@ +#define _SILO_VERS_PAT_@SILO_VERS_PAT@ +#ifdef _SILO_VERS_PAT_ +#define SILO_VERS_PAT 0 /* NO_FORTRAN_DEFINE */ +#else +#define SILO_VERS_PAT @SILO_VERS_PAT@ +#endif /* Pre-release release number of silo library. Can be empty. */ +#define _SILO_VERS_PRE_@SILO_VERS_PRE@ +#ifdef _SILO_VERS_PRE_ +#define SILO_VERS_PRE 0 /* NO_FORTRAN_DEFINE */ +#else #define SILO_VERS_PRE @SILO_VERS_PRE@ +#endif /* The symbol Silo uses to enforce link-time header/object version compatibility */ @@ -178,8 +156,8 @@ /* Useful macro for comparing Silo versions (and DB_ alias) */ #define SILO_VERSION_GE(Maj,Min,Pat) \ - (((SILO_VERS_MAJ==Maj) && (SILO_VERS_MIN==0x0 ## Min) && (SILO_VERS_PAT>=0x0 ## Pat)) || \ - ((SILO_VERS_MAJ==Maj) && (SILO_VERS_MIN>0x0 ## Min)) || \ + (((SILO_VERS_MAJ==Maj) && (SILO_VERS_MIN==Min) && (SILO_VERS_PAT>=Pat)) || \ + ((SILO_VERS_MAJ==Maj) && (SILO_VERS_MIN>Min)) || \ (SILO_VERS_MAJ>Maj)) #define DB_VERSION_GE(Maj,Min,Pat) SILO_VERSION_GE(Maj,Min,Pat) @@ -216,6 +194,7 @@ #define DB_H5VFD_MPIO 8 #define DB_H5VFD_MPIP 9 #define DB_H5VFD_SILO 10 +#define DB_H5VFD_FIC 11 /* File Image in Core */ /* Macro for defining various HDF5 vfds as 'type' arg in create/open. The 11 bit shift is to avoid possible collision with older versions @@ -237,6 +216,7 @@ #define DB_FILE_OPTS_H5_DEFAULT_MPIP DB_H5VFD_MPIP #define DB_FILE_OPTS_H5_DEFAULT_SILO DB_H5VFD_SILO #define DB_FILE_OPTS_LAST DB_FILE_OPTS_H5_DEFAULT_SILO +/* note: no possible *default* settings for DB_H5VFD_FIC */ /* Various default HDF5 driver options. Users can define their own sets of options using DBRegisterFileOptionsSets(). */ @@ -276,36 +256,41 @@ * reason they DO NOT APPEAR there inspite of the fact that DO NOT HAVE the * 'NO_FORTRAN_DEFINE' text appearing on each line is that the mkinc script * requires an underscore in the symbol name for it to appear in silo.inc. */ -#define DBAll 0xffffffff -#define DBNone 0x00000000 -#define DBCalc 0x00000001 -#define DBMatMatnos 0x00000002 -#define DBMatMatlist 0x00000004 -#define DBMatMixList 0x00000008 -#define DBCurveArrays 0x00000010 -#define DBPMCoords 0x00000020 -#define DBPVData 0x00000040 -#define DBQMCoords 0x00000080 -#define DBQVData 0x00000100 -#define DBUMCoords 0x00000200 -#define DBUMFacelist 0x00000400 -#define DBUMZonelist 0x00000800 -#define DBUVData 0x00001000 -#define DBFacelistInfo 0x00002000 -#define DBZonelistInfo 0x00004000 -#define DBMatMatnames 0x00008000 -#define DBUMGlobNodeNo 0x00010000 -#define DBZonelistGlobZoneNo 0x00020000 -#define DBMatMatcolors 0x00040000 -#define DBCSGMBoundaryInfo 0x00080000 -#define DBCSGMZonelist 0x00100000 -#define DBCSGMBoundaryNames 0x00200000 -#define DBCSGVData 0x00400000 -#define DBCSGZonelistZoneNames 0x00800000 -#define DBCSGZonelistRegNames 0x01000000 -#define DBMMADJNodelists 0x02000000 -#define DBMMADJZonelists 0x04000000 -#define DBPMGlobNodeNo 0x08000000 +#define DBAll 0xffffffffffffffffULL +#define DBNone 0x0000000000000000ULL +#define DBCalc 0x0000000000000001ULL +#define DBMatMatnos 0x0000000000000002ULL +#define DBMatMatlist 0x0000000000000004ULL +#define DBMatMixList 0x0000000000000008ULL +#define DBCurveArrays 0x0000000000000010ULL +#define DBPMCoords 0x0000000000000020ULL +#define DBPVData 0x0000000000000040ULL +#define DBQMCoords 0x0000000000000080ULL +#define DBQVData 0x0000000000000100ULL +#define DBUMCoords 0x0000000000000200ULL +#define DBUMFacelist 0x0000000000000400ULL +#define DBUMZonelist 0x0000000000000800ULL +#define DBUVData 0x0000000000001000ULL +#define DBFacelistInfo 0x0000000000002000ULL +#define DBZonelistInfo 0x0000000000004000ULL +#define DBMatMatnames 0x0000000000008000ULL +#define DBUMGlobNodeNo 0x0000000000010000ULL +#define DBZonelistGlobZoneNo 0x0000000000020000ULL +#define DBMatMatcolors 0x0000000000040000ULL +#define DBCSGMBoundaryInfo 0x0000000000080000ULL +#define DBCSGMZonelist 0x0000000000100000ULL +#define DBCSGMBoundaryNames 0x0000000000200000ULL +#define DBCSGVData 0x0000000000400000ULL +#define DBCSGZonelistZoneNames 0x0000000000800000ULL +#define DBCSGZonelistRegNames 0x0000000001000000ULL +#define DBMMADJNodelists 0x0000000002000000ULL +#define DBMMADJZonelists 0x0000000004000000ULL +#define DBPMGlobNodeNo 0x0000000008000000ULL +#define DBPMGhostNodeLabels 0x0000000010000000ULL +#define DBQMGhostNodeLabels 0x0000000020000000ULL +#define DBQMGhostZoneLabels 0x0000000040000000ULL +#define DBUMGhostNodeLabels 0x0000000080000000ULL +#define DBZonelistGhostZoneLabels 0x0000000100000000ULL /* Definitions for COORD_TYPE */ /* Placed before DBObjectType enum because the @@ -468,6 +453,11 @@ #define DBOPT_MB_EMPTY_LIST 334 #define DBOPT_MB_EMPTY_COUNT 335 #define DBOPT_MB_REPR_BLOCK_IDX 336 +#define DBOPT_MISSING_VALUE 337 +#define DBOPT_ALT_ZONENUM_VARS 338 +#define DBOPT_ALT_NODENUM_VARS 339 +#define DBOPT_GHOST_NODE_LABELS 340 +#define DBOPT_GHOST_ZONE_LABELS 341 #define DBOPT_LAST 499 /* Options relating to virtual file drivers */ @@ -503,6 +493,8 @@ #define DBOPT_H5_SILO_BLOCK_COUNT 528 #define DBOPT_H5_SILO_LOG_STATS 529 #define DBOPT_H5_SILO_USE_DIRECT 530 +#define DBOPT_H5_FIC_SIZE 531 +#define DBOPT_H5_FIC_BUF 532 #define DBOPT_H5_LAST 599 /* Error trapping method */ @@ -549,6 +541,7 @@ #define E_MAXFILEOPTSETS 32 /*Too many file options sets */ #define E_NOHDF5 33 /*HDF5 driver not available */ #define E_EMPTYOBJECT 34 /*Empty object not currently permitted*/ +#define E_OBJBUFFULL 35 /*No more temp. buffer space for object */ #define E_NERRORS 50 /* Definitions for MAJOR_ORDER */ @@ -566,8 +559,8 @@ /* Definitions for COORD_SYSTEM */ #define DB_CARTESIAN 120 -#define DB_CYLINDRICAL 121 -#define DB_SPHERICAL 122 +#define DB_CYLINDRICAL 121 /* x,r; y,theta; z,height; 2D variant is eqiv. to poloar */ +#define DB_SPHERICAL 122 /* x,r; y,theta; z,phi; 2D variant is equiv. to polar */ #define DB_NUMERICAL 123 #define DB_OTHER 124 @@ -597,6 +590,10 @@ #define DB_VARTYPE_SPECIES 206 #define DB_VARTYPE_LABEL 207 +/* Definitions for ghost labels */ +#define DB_GHOSTTYPE_NOGHOST ((char)0x00) +#define DB_GHOSTTYPE_INTDUP ((char)0x01) + /* Definitions for CSG boundary types Designed so low-order 16 bits are unused. @@ -679,6 +676,19 @@ #define I3D(s,i,j,k) (k)*s[2]+(j)*s[1]+(i)*s[0] #define I2D(s,i,j) (j)*s[1]+(i)*s[0] +/* Note we should not use MAX_DOUBLE here as its definition could be different + from one machine to the next. We need something that is a constant across + all machines we will operate on. And, yes, it means this particular number + cannot be used for any real data values or for the missing data value. I + think the risk of problems is minimal. Also, we want a zero in the file + to represent the fact that a missing value is NOT SET. Nonetheless, we + want Silo clients to be able to specify that zero represents the missing + value. So, we adjust the interpretation of missing values on write and + on read to/from the file. On write, NOT_SET in mem gets mapped to zero in + the file and zero in mem gets mapped to NOT_SET in the file. On read, this + mapping is reversed. */ +#define DB_MISSING_VALUE_NOT_SET ((double)1.0e+308) + /*------------------------------------------------------------------------- * Structures (just the public parts). *------------------------------------------------------------------------- @@ -779,11 +789,13 @@ char *ylabel; /* Label for y-axis */ char *xunits; /* Units for domain */ char *yunits; /* Units for range */ - DB_DTPTR *x; /* Domain values for curve */ - DB_DTPTR *y; /* Range values for curve */ + void *x; /* Domain values for curve */ + void *y; /* Range values for curve */ int npts; /* Number of points in curve */ int guihide; /* Flag to hide from post-processor's GUI */ char *reference; /* Label to reference object */ + int coord_sys; /* To indicate other coordinate systems */ + double missing_value; /* Value to indicate var data is invalid/missing */ } DBcurve; typedef struct DBdefvars_ { @@ -806,7 +818,7 @@ char *labels[3]; /* Labels for each axis */ char *title; /* Title for curve */ - DB_DTPTR *coords[3]; /* Coordinate values */ + void *coords[3]; /* Coordinate values */ float time; /* Problem time */ double dtime; /* Problem time, double data type */ /* @@ -825,6 +837,8 @@ void *gnodeno; /* global node ids */ char *mrgtree_name; /* optional name of assoc. mrgtree object */ int gnznodtype; /* datatype for global node/zone ids */ + char *ghost_node_labels; + char **alt_nodenum_vars; } DBpointmesh; /*---------------------------------------------------------------------------- @@ -860,6 +874,9 @@ int *empty_list; /* list of empty block #'s (option for namescheme) */ int empty_cnt; /* size of empty list */ int repr_block_idx; /* index of a 'representative' block */ + char **alt_nodenum_vars; + char **alt_zonenum_vars; + char *meshnames_alloc; /* original alloc of meshnames as string list */ } DBmultimesh; /*---------------------------------------------------------------------------- @@ -915,6 +932,8 @@ int *empty_list; /* list of empty block #'s (option for namescheme) */ int empty_cnt; /* size of empty list */ int repr_block_idx; /* index of a 'representative' block */ + double missing_value; /* Value to indicate var data is invalid/missing */ + char *varnames_alloc; /* original alloc of varnames as string list */ } DBmultivar; /*------------------------------------------------------------------------- @@ -943,6 +962,7 @@ int *empty_list; /* list of empty block #'s (option for namescheme) */ int empty_cnt; /* size of empty list */ int repr_block_idx; /* index of a 'representative' block */ + char *matnames_alloc; /* original alloc of matnames as string list */ } DBmultimat; /*------------------------------------------------------------------------- @@ -966,6 +986,7 @@ int *empty_list; /* list of empty block #'s (option for namescheme) */ int empty_cnt; /* size of empty list */ int repr_block_idx; /* index of a 'representative' block */ + char *specnames_alloc; /* original alloc of matnames as string list */ } DBmultimatspecies; /*---------------------------------------------------------------------- @@ -1003,6 +1024,8 @@ int *zoneno; /* [nzones] zone number of each zone */ void *gzoneno; /* [nzones] global zone number of each zone */ int gnznodtype; /* datatype for global node/zone ids */ + char *ghost_zone_labels; + char **alt_zonenum_vars; } DBzonelist; typedef struct DBphzonelist_ { @@ -1023,6 +1046,8 @@ int *zoneno; /* [nzones] zone number of each zone */ void *gzoneno; /* [nzones] global zone number of each zone */ int gnznodtype; /* datatype for global node/zone ids */ + char *ghost_zone_labels; + char **alt_zonenum_vars; } DBphzonelist; typedef struct DBfacelist_ { @@ -1073,7 +1098,7 @@ int facetype; /* Zone face type: rect, curv */ int planar; /* Sentinel: zones represent area or volume? */ - DB_DTPTR *coords[3]; /* Mesh node coordinate ptrs [ndims] */ + void *coords[3]; /* Mesh node coordinate ptrs [ndims] */ int datatype; /* Type of coordinate arrays (double,float) */ float time; /* Problem time */ double dtime; /* Problem time, double data type */ @@ -1104,6 +1129,10 @@ * original mesh */ int guihide; /* Flag to hide from post-processor's GUI */ char *mrgtree_name; /* optional name of assoc. mrgtree object */ + char *ghost_node_labels; + char *ghost_zone_labels; + char **alt_nodenum_vars; + char **alt_zonenum_vars; } DBquadmesh; typedef struct DBucdmesh_ { @@ -1118,7 +1147,7 @@ char *units[3]; /* Units for variable, e.g, 'mm/ms' */ char *labels[3]; /* Label associated with each dimension */ - DB_DTPTR *coords[3]; /* Mesh node coordinates */ + void *coords[3]; /* Mesh node coordinates */ int datatype; /* Type of coordinate arrays (double,float) */ float time; /* Problem time */ double dtime; /* Problem time, double data type */ @@ -1153,6 +1182,8 @@ int tv_connectivity; int disjoint_mode; int gnznodtype; /* datatype for global node/zone ids */ + char *ghost_node_labels; + char **alt_nodenum_vars; } DBucdmesh; /*---------------------------------------------------------------------------- @@ -1168,7 +1199,7 @@ int cycle; /* Problem cycle number */ int meshid; /* Identifier for associated mesh (Deprecated Sep2005) */ - DB_DTPTR **vals; /* Array of pointers to data arrays */ + void **vals; /* Array of pointers to data arrays */ int datatype; /* Type of data pointed to by 'val' */ int nels; /* Number of elements in each array */ int nvals; /* Number of arrays pointed to by 'vals' */ @@ -1191,7 +1222,7 @@ */ float align[6]; /* Centering and alignment per dimension */ - DB_DTPTR **mixvals; /* nvals ptrs to data arrays for mixed zones */ + void **mixvals; /* nvals ptrs to data arrays for mixed zones */ int mixlen; /* Num of elmts in each mixed zone data * array */ @@ -1210,6 +1241,7 @@ physical property (as opposed to intensive) */ int centering; /* explicit centering knowledge; should agree with alignment. */ + double missing_value; /* Value to indicate var data is invalid/missing */ } DBquadvar; typedef struct DBucdvar_ { @@ -1223,7 +1255,7 @@ double dtime; /* Problem time, double data type */ int meshid; /* Identifier for associated mesh (Deprecated Sep2005) */ - DB_DTPTR **vals; /* Array of pointers to data arrays */ + void **vals; /* Array of pointers to data arrays */ int datatype; /* Type of data pointed to by 'vals' */ int nels; /* Number of elements in each array */ int nvals; /* Number of arrays pointed to by 'vals' */ @@ -1231,7 +1263,7 @@ int origin; /* '0' or '1' */ int centering; /* Centering within mesh (nodal or zonal) */ - DB_DTPTR **mixvals; /* nvals ptrs to data arrays for mixed zones */ + void **mixvals; /* nvals ptrs to data arrays for mixed zones */ int mixlen; /* Num of elmts in each mixed zone data * array */ @@ -1247,6 +1279,7 @@ under various operations such as interp. */ int extensive; /* indicates if the variable reprsents an extensiv physical property (as opposed to intensive) */ + double missing_value; /* Value to indicate var data is invalid/missing */ } DBucdvar; typedef struct DBmeshvar_ { @@ -1258,7 +1291,7 @@ int cycle; /* Problem cycle number */ int meshid; /* Identifier for associated mesh (Deprecated Sep2005) */ - DB_DTPTR **vals; /* Array of pointers to data arrays */ + void **vals; /* Array of pointers to data arrays */ int datatype; /* Type of data pointed to by 'val' */ int nels; /* Number of elements in each array */ int nvals; /* Number of arrays pointed to by 'vals' */ @@ -1301,6 +1334,7 @@ under various operations such as interp. */ int extensive; /* indicates if the variable reprsents an extensiv physical property (as opposed to intensive) */ + double missing_value; /* Value to indicate var data is invalid/missing */ } DBmeshvar; typedef DBmeshvar DBpointvar; /* better named alias for pointvar */ @@ -1320,7 +1354,7 @@ int *matlist; /* Array[nzone] w/ mat. number or mix index */ int mixlen; /* Length of mixed data arrays (mix_xxx) */ int datatype; /* Type of volume-fractions (double,float) */ - DB_DTPTR *mix_vf; /* Array [mixlen] of volume fractions */ + void *mix_vf; /* Array [mixlen] of volume fractions */ int *mix_next; /* Array [mixlen] of mixed data indeces */ int *mix_mat; /* Array [mixlen] of material numbers */ int *mix_zone; /* Array [mixlen] of back pointers to mesh */ @@ -1347,7 +1381,7 @@ int stride[3]; /* Offsts to adjacent elmts in 'speclist' */ int nspecies_mf; /* Total number of species mass fractions. */ - DB_DTPTR *species_mf; /* Array of length nspecies_mf of mass + void *species_mf; /* Array of length nspecies_mf of mass * frations of the material species. */ int *speclist; /* Zone array of dimensions described by ndims * and dims. Each element of the array is an @@ -1397,6 +1431,7 @@ /*--------- Optional zone attributes ---------*/ char **regnames; /* [nregs] names of each region */ char **zonenames; /* [nzones] names of each zone */ + char **alt_zonenum_vars; } DBcsgzonelist; typedef struct DBcsgmesh_ { @@ -1435,6 +1470,7 @@ char *mrgtree_name; /* optional name of assoc. mrgtree object */ int tv_connectivity; int disjoint_mode; + char **alt_nodenum_vars; } DBcsgmesh; typedef struct DBcsgvar_ { @@ -1465,6 +1501,7 @@ under various operations such as interp. */ int extensive; /* indicates if the variable reprsents an extensiv physical property (as opposed to intensive) */ + double missing_value; /* Value to indicate var data is invalid/missing */ } DBcsgvar; /*------------------------------------------------------------------------- @@ -1494,6 +1531,7 @@ } DBoptlist; +#define DB_MAX_H5_OBJ_VALS 64 typedef struct DBobject_ { char *name; @@ -1503,6 +1541,13 @@ int ncomponents; /* Number of components */ int maxcomponents; /* Max number of components */ + /* fields below are a hack for HDF5 driver to handle + customization of 'standard' objects */ + char h5_vals[DB_MAX_H5_OBJ_VALS*3*sizeof(double)]; + int h5_offs[DB_MAX_H5_OBJ_VALS]; + int h5_sizes[DB_MAX_H5_OBJ_VALS]; + int h5_types[DB_MAX_H5_OBJ_VALS]; + char *h5_names[DB_MAX_H5_OBJ_VALS]; } DBobject; typedef struct _DBmrgtnode { @@ -1524,7 +1569,7 @@ struct _DBmrgtnode *parent; } DBmrgtnode; -typedef void (*DBmrgwalkcb)(DBmrgtnode *tnode, int nat_node_num, void *data); +typedef void (*DBmrgwalkcb)(DBmrgtnode const *tnode, int nat_node_num, void *data); typedef struct _DBmrgtree { char *name; @@ -1572,8 +1617,8 @@ int fmtlen; /* len of first part of fmt */ int ncspecs; /* # of conversion specs in first part of fmt */ char delim; /* delimiter char used for parts of fmt */ - int nembed; /* number of last embedded string encountered */ - char *embedstrs[DB_MAX_EXPSTRS]; /* ptrs to copies of embedded strings */ + int nembed; /* number of last embedded string encountered (used in eval process) */ + char *embedstrs[DB_MAX_EXPSTRS]; /* ptrs to copies of embedded strings (used in eval process) */ int arralloc; /* flag indicating if Silo allocated the arrays or not */ int narrefs; /* number of array refs in conversion specs */ char **arrnames; /* array names used by array refs */ @@ -1604,8 +1649,6 @@ /* Public Methods */ int (*close)(struct DBfile *); int (*exist)(struct DBfile *, char const *); - int (*pause)(struct DBfile *); - int (*cont)(struct DBfile *); int (*newtoc)(struct DBfile *); DBObjectType (*inqvartype)(struct DBfile *, char const *); int (*uninstall)(struct DBfile *); @@ -1615,141 +1658,116 @@ void *(*g_comp)(struct DBfile *, char const *, char const *); int (*g_comptyp)(struct DBfile *, char const *, char const *); int (*w_comp)(struct DBfile *, DBobject *, char const *, char const *, - char const *, void const *, int, long const *); + char const *, void const *, int, long const *); int (*write) (struct DBfile *, char const *, void const *, int const *, int, int); - - - - - int (*writeslice)(struct DBfile *, char *, void *, int, - int[], int[], int[], int[], int); - void *(*g_attr)(struct DBfile *, char *, char *); + int (*writeslice)(struct DBfile *, char const *array_name, void const *data, + int datatype, int const *offsets, int const *lens, int const *stides, + int const *dims, int ndim); int (*g_dir)(struct DBfile *, char *); - int (*mkdir)(struct DBfile *, char *); - int (*cd)(struct DBfile *, char *); - int (*cdid)(struct DBfile *, int); - int (*r_att)(struct DBfile *, char *, char *, void *); - int (*r_var)(struct DBfile *, char *, void *); - int (*r_var1)(struct DBfile *, char *, int, void *); + int (*mkdir)(struct DBfile *, char const *); + int (*cd)(struct DBfile *, char const *); + int (*r_var)(struct DBfile *, char const *, void *); int (*module)(struct DBfile *, FILE *); - int (*r_varslice)(struct DBfile *, char *, int *, int *, int *, - int, void *); - int (*g_compnames)(struct DBfile *, char *, char ***, char ***); - DBcompoundarray *(*g_ca)(struct DBfile *, char *); - DBcurve *(*g_cu)(struct DBfile *, char *); + int (*r_varslice)(struct DBfile *, char const *, int const *, int const *, int const *, + int, void *); + int (*g_compnames)(struct DBfile *, char const *, char ***, char ***); + DBcompoundarray *(*g_ca)(struct DBfile *, char const *); + DBcurve *(*g_cu)(struct DBfile *, char const *); DBdefvars *(*g_defv)(struct DBfile *, char const *); - DBmaterial *(*g_ma)(struct DBfile *, char *); - DBmatspecies *(*g_ms)(struct DBfile *, char *); - DBmultimesh *(*g_mm)(struct DBfile *, char *); - DBmultivar *(*g_mv)(struct DBfile *, char *); - DBmultimat *(*g_mt)(struct DBfile *, char *); - DBmultimatspecies *(*g_mms)(struct DBfile *, char *); - DBpointmesh *(*g_pm)(struct DBfile *, char *); - DBmeshvar *(*g_pv)(struct DBfile *, char *); - DBquadmesh *(*g_qm)(struct DBfile *, char *); - DBquadvar *(*g_qv)(struct DBfile *, char *); - DBucdmesh *(*g_um)(struct DBfile *, char *); - DBucdvar *(*g_uv)(struct DBfile *, char *); - DBfacelist *(*g_fl)(struct DBfile *, char *); - DBzonelist *(*g_zl)(struct DBfile *, char *); - void *(*g_var)(struct DBfile *, char *); - int (*g_varbl)(struct DBfile *, char *); /*byte length */ - int (*g_varlen)(struct DBfile *, char *); /*nelems */ - int (*g_vardims)(struct DBfile*, char*, int, int*); /*dims*/ - int (*g_vartype)(struct DBfile *, char *); - int (*i_meshname)(struct DBfile *, char *, char *); - int (*i_meshtype)(struct DBfile *, char *); - int (*p_ca)(struct DBfile *, char *, char **, int *, int, - void *, int, int, DBoptlist *); - int (*p_cu)(struct DBfile *, char *, void *, void *, int, int, - DBoptlist *); - int (*p_defv)(struct DBfile *, char const *, int, - char **, int const *, char **, - DBoptlist **); - int (*p_fl)(struct DBfile *, char *, int, int, int *, int, int, - int *, int *, int *, int, int *, int *, int); - int (*p_ma)(struct DBfile *, char *, char *, int, int *, int *, - int *, int, int *, int *, int *, DB_DTPTR1, int, int, - DBoptlist *); - int (*p_ms)(struct DBfile *, char *, char *, int, int *, int *, - int *, int, int, DB_DTPTR1, int *, int, int, - DBoptlist *); - int (*p_mm)(struct DBfile *, char const*, int, char const *const *, int const *, - DBoptlist const *); - int (*p_mv)(struct DBfile *, char *, int, char **, int *, - DBoptlist *); - int (*p_mt)(struct DBfile *, char *, int, char **, DBoptlist *); - int (*p_mms)(struct DBfile *, char *, int, char **, DBoptlist *); - int (*p_pm)(struct DBfile *, char *, int, DB_DTPTR2, int, int, - DBoptlist *); - int (*p_pv)(struct DBfile *, char *, char *, int, DB_DTPTR2, int, - int, DBoptlist *); - int (*p_qm)(struct DBfile *, char *, char **, DB_DTPTR2, int *, - int, int, int, DBoptlist *); - int (*p_qv)(struct DBfile *, char *, char *, int, char **, - DB_DTPTR2, int *, int, DB_DTPTR2, int, int, int, - DBoptlist *); - int (*p_um)(struct DBfile *, char *, int, char **, DB_DTPTR2, - int, int, char *, char *, int, DBoptlist *); - int (*p_sm)(struct DBfile *, char *, char *, - int, char *, char *, DBoptlist *); - int (*p_uv)(struct DBfile *, char *, char *, int, char **, - DB_DTPTR2, int, DB_DTPTR2, int, int, int, - DBoptlist *); - int (*p_zl)(struct DBfile *, char *, int, int, int *, int, int, - int *, int *, int); - int (*p_zl2)(struct DBfile *, char *, int, int, int *, int, int, - int, int, int *, int *, int *, int, DBoptlist *); - /* MCM-27Jul04: We added these to the end to avert potential - link-time compatibility issues with older versions of the - library. Some user's of Silo circumvent its version check - which would ordinarily keep different versions from being - mixed by defining an appropriate global symbol. */ - DBphzonelist *(*g_phzl)(struct DBfile *, char *); - int (*p_phzl)(struct DBfile *, char *, - int, int *, int, int *, char *, - int, int *, int, int *, - int, int, int, - DBoptlist *); - int (*p_csgzl)(struct DBfile *, char const *, int, int const *, - int const *, int const *, void const *, int, int, - int, int const *, DBoptlist *); + DBmaterial *(*g_ma)(struct DBfile *, char const *); + DBmatspecies *(*g_ms)(struct DBfile *, char const *); + DBmultimesh *(*g_mm)(struct DBfile *, char const *); + DBmultivar *(*g_mv)(struct DBfile *, char const *); + DBmultimat *(*g_mt)(struct DBfile *, char const *); + DBmultimatspecies *(*g_mms)(struct DBfile *, char const *); + DBpointmesh *(*g_pm)(struct DBfile *, char const *); + DBmeshvar *(*g_pv)(struct DBfile *, char const *); + DBquadmesh *(*g_qm)(struct DBfile *, char const *); + DBquadvar *(*g_qv)(struct DBfile *, char const *); + DBucdmesh *(*g_um)(struct DBfile *, char const *); + DBucdvar *(*g_uv)(struct DBfile *, char const *); + DBfacelist *(*g_fl)(struct DBfile *, char const *); + DBzonelist *(*g_zl)(struct DBfile *, char const *); + void *(*g_var)(struct DBfile *, char const *); + int (*g_varbl)(struct DBfile *, char const *); /*byte length */ + int (*g_varlen)(struct DBfile *, char const *); /*nelems */ + int (*g_vardims)(struct DBfile*, char const *, int, int *); /*dims*/ + int (*g_vartype)(struct DBfile *, char const *); + int (*i_meshname)(struct DBfile *, char const *, char *); + int (*i_meshtype)(struct DBfile *, char const *); + int (*p_ca)(struct DBfile *dbfile, char const *name, char const * const *elemnames, + int const *elemlens, int nelems, void const *values, int nvalues, + int datatype, DBoptlist const *); + int (*p_cu)(struct DBfile *dbfile, char const *name, void const *xvals, + void const *yvals, int datatype, int npts, DBoptlist const *opts); + int (*p_defv)(struct DBfile *dbfile, char const *name, int ndefs, + char const * const *names, int const *types, char const * const *defns, + DBoptlist const * const *opts); + int (*p_fl)(struct DBfile *dbfile, char const *name, int nfaces, int ndims, + int const *nodelist, int lnodelist, int origin, int const *zoneno, + int const *shapesize, int const *shapecnt, int nshapes, int const *types, + int const *typelist, int ntypes); + int (*p_ma)(struct DBfile *dbfile, char const *name, char const *meshname, + int nmat, int const *matnos, int const *matlist, int const *dims, + int ndims, int const *mix_next, int const *mix_mat, int const *mix_zone, + DBVCP1_t mix_vf, int mixlen, int datatype, DBoptlist const *); + int (*p_ms)(struct DBfile *, char const *, char const *, int, int const *, int const *, + int const *, int, int, DBVCP1_t, int const *, int, int, DBoptlist const *); + int (*p_mm)(struct DBfile *, char const *, int, char const * const *, int const *, + DBoptlist const *); + int (*p_mv)(struct DBfile *, char const *, int, char const * const *, int const *, + DBoptlist const *); + int (*p_mt)(struct DBfile *, char const *, int, char const * const *, DBoptlist const *); + int (*p_mms)(struct DBfile *, char const *, int, char const * const *, DBoptlist const *); + int (*p_pm)(struct DBfile *, char const *, int, DBVCP2_t, int, int, DBoptlist const *); + int (*p_pv)(struct DBfile *, char const *, char const *, int, DBVCP2_t, int, + int, DBoptlist const *); + int (*p_qm)(struct DBfile *, char const *, char const * const *, DBVCP2_t, int const *, + int, int, int, DBoptlist const *); + int (*p_qv)(struct DBfile *, char const *, char const *, int, char const * const *, DBVCP2_t, + int const *, int, DBVCP2_t, int, int, int, DBoptlist const *); + int (*p_um)(struct DBfile *, char const *, int, char const * const *, DBVCP2_t, + int, int, char const *, char const *, int, DBoptlist const *); + int (*p_sm)(struct DBfile *, char const *, char const *, + int, char const *, char const *, DBoptlist const *); + int (*p_uv)(struct DBfile *, char const *, char const *, int, char const * const *, + DBVCP2_t, int, DBVCP2_t, int, int, int, DBoptlist const *); + int (*p_zl)(struct DBfile *, char const *, int, int, int const *, int, int, + int const *, int const *, int); + int (*p_zl2)(struct DBfile *, char const *, int, int, int const *, int, int, + int, int, int const *, int const *, int const *, int, DBoptlist const *); + DBphzonelist *(*g_phzl)(struct DBfile *, char const *); + int (*p_phzl)(struct DBfile *, char const *, int, int const *, int, int const *, + char const *, int, int const *, int, int const *, int, int, int, DBoptlist const *); + int (*p_csgzl)(struct DBfile *, char const *, int, int const *, int const *, + int const *, void const *, int, int, int, int const *, DBoptlist const *); DBcsgzonelist *(*g_csgzl)(struct DBfile *, char const *); - int (*p_csgm)(struct DBfile *, char const *, int, int, - int const *, int const *, - void const *, int, int, double const *, - char const *, DBoptlist *); + int (*p_csgm)(struct DBfile *, char const *, int, int, int const *, int const *, + void const *, int, int, double const *, char const *, DBoptlist const *); DBcsgmesh *(*g_csgm)(struct DBfile *, char const *); int (*p_csgv)(struct DBfile *, char const *, char const *, int, - char **, void **, int, int, int, - DBoptlist *); + char const * const *, void const * const *, int, int, int, DBoptlist const *); DBcsgvar *(*g_csgv)(struct DBfile *, char const *); DBmultimeshadj *(*g_mmadj)(struct DBfile *, char const *, int, int const *); - int (*p_mmadj)(struct DBfile *, char const *, int, int const *, - int const *, int const *, int const *, int const *, - int DB_CONSTARR2, int const *, int DB_CONSTARR2, - DBoptlist const *optlist); + int (*p_mmadj)(struct DBfile *, char const *, int, int const *, int const *, + int const *, int const *, int const *, int const * const *, int const *, + int const * const *, DBoptlist const *optlist); int (*p_mrgt)(struct DBfile *dbfile, char const *name, char const *mesh_name, - DBmrgtree *tree, DBoptlist *opts); + DBmrgtree const *tree, DBoptlist const *opts); DBmrgtree *(*g_mrgt)(struct DBfile *, char const *name); - int (*p_grplm)(struct DBfile *dbfile, char const *map_name, - int num_segments, int *groupel_types, - int *segment_lengths, int *segment_ids, - int **segment_data, void **segment_fracs, - int fracs_data_type, DBoptlist *opts); + int (*p_grplm)(struct DBfile *dbfile, char const *map_name, int num_segments, + int const *groupel_types, int const *segment_lengths, int const *segment_ids, + int const * const *segment_data, void const * const *segment_fracs, + int fracs_data_type, DBoptlist const *opts); DBgroupelmap *(*g_grplm)(struct DBfile *dbfile, char const *name); - int (*p_mrgv)(struct DBfile *dbfile, char const *name, - char const *mrgt_name, - int ncomps, char **compnames, - int nregns, char **reg_pnames, - int datatype, void **data, DBoptlist *opts); + int (*p_mrgv)(struct DBfile *dbfile, char const *name, char const *mrgt_name, + int ncomps, char const * const *compnames, int nregns, + char const * const *reg_pnames, int datatype, void const * const *data, + DBoptlist const *opts); DBmrgvar *(*g_mrgv)(struct DBfile *dbfile, char const *name); int (*free_z)(struct DBfile *, char const *); - int (*cpdir)(struct DBfile *, char const *, - struct DBfile *, char const *); - - int (*sort_obo)(struct DBfile *dbfile, int nobjs, - char const *const *obj_names, int *ranks); + int (*cpdir)(struct DBfile *, char const *, struct DBfile *, char const *); + int (*sort_obo)(struct DBfile *dbfile, int nobjs, char const *const *obj_names, int *ranks); } DBfile_pub; typedef struct DBfile { @@ -1757,361 +1775,7 @@ /*private part follows per device driver */ } DBfile; -typedef void (*DBErrFunc_t)(char*); - - -/* The first prototypes here are the functions by which client code first - * gets into Silo. They are separated out because they do a version number - * check for us. Client code doesn't actually use these functions. - * Instead, it uses macros like DBOpen, DBCreate, etc. - * - * If any functions are added that provide first-call access to Silo, they - * should be set up as macro/function pairs, just as these are. The way to - * determine if a function is a "first-call" function is to ask whether - * there are any Silo calls that must happen before it. If there are not, - * then the function is a "first-call" function and should have this - * macro/function pair. */ - -SILO_API extern DBfile *DBOpenReal(char const *, int, int); -SILO_API extern DBfile *DBCreateReal(char const *, int, int, char const *, int); -SILO_API extern int DBInqFileReal(char const *); - -#define SILO_VSTRING_NAME "_silolibinfo" -#define SILO_VSTRING PACKAGE_VERSION -SILO_API extern int SILO_VERS_TAG; -#define CheckVersion SILO_VERS_TAG = 1 - -#define DBOpen(name, target, mode) \ - (CheckVersion, DBOpenReal(name, target, mode)) - -#define DBCreate(name, mode, target, info, type) \ - (CheckVersion, DBCreateReal(name, mode, target, info, type)) - -#define DBInqFile(name) \ - (CheckVersion, DBInqFileReal(name)) - -/* Prototypes for regular API functions. */ -SILO_API extern DBcompoundarray *DBAllocCompoundarray(void); -SILO_API extern DBcurve *DBAllocCurve(void); -SILO_API extern DBdefvars *DBAllocDefvars(int); -SILO_API extern DBmultimesh *DBAllocMultimesh(int); -SILO_API extern DBmultimeshadj *DBAllocMultimeshadj(int); -SILO_API extern DBmultivar *DBAllocMultivar(int); -SILO_API extern DBmultimat *DBAllocMultimat(int); -SILO_API extern DBmultimatspecies *DBAllocMultimatspecies(int); -SILO_API extern DBcsgmesh *DBAllocCsgmesh(void); -SILO_API extern DBquadmesh *DBAllocQuadmesh(void); -SILO_API extern DBpointmesh *DBAllocPointmesh(void); -SILO_API extern DBmeshvar *DBAllocMeshvar(void); -SILO_API extern DBucdmesh *DBAllocUcdmesh(void); -SILO_API extern DBcsgvar *DBAllocCsgvar(void); -SILO_API extern DBquadvar *DBAllocQuadvar(void); -SILO_API extern DBucdvar *DBAllocUcdvar(void); -SILO_API extern DBzonelist *DBAllocZonelist(void); -SILO_API extern DBphzonelist *DBAllocPHZonelist(void); -SILO_API extern DBcsgzonelist *DBAllocCSGZonelist(void); -SILO_API extern DBedgelist *DBAllocEdgelist(void); -SILO_API extern DBfacelist *DBAllocFacelist(void); -SILO_API extern DBmaterial *DBAllocMaterial(void); -SILO_API extern DBmatspecies *DBAllocMatspecies(void); -SILO_API extern DBnamescheme *DBAllocNamescheme(void); -SILO_API extern DBgroupelmap *DBAllocGroupelmap(int, DBdatatype); - -SILO_API extern void DBFreeMatspecies(DBmatspecies *); -SILO_API extern void DBFreeMaterial(DBmaterial *); -SILO_API extern void DBFreeFacelist(DBfacelist *); -SILO_API extern void DBFreeEdgelist(DBedgelist *); -SILO_API extern void DBFreeZonelist(DBzonelist *); -SILO_API extern void DBFreePHZonelist(DBphzonelist *); -SILO_API extern void DBFreeCSGZonelist(DBcsgzonelist *); -SILO_API extern void DBResetUcdvar(DBucdvar *); -SILO_API extern void DBFreeUcdvar(DBucdvar *); -SILO_API extern void DBResetQuadvar(DBquadvar *); -SILO_API extern void DBFreeCsgvar(DBcsgvar *); -SILO_API extern void DBFreeQuadvar(DBquadvar *); -SILO_API extern void DBFreeUcdmesh(DBucdmesh *); -SILO_API extern void DBFreeMeshvar(DBmeshvar *); -SILO_API extern void DBFreePointvar(DBpointvar *); -SILO_API extern void DBFreePointmesh(DBpointmesh *); -SILO_API extern void DBFreeQuadmesh(DBquadmesh *); -SILO_API extern void DBFreeCsgmesh(DBcsgmesh *); -SILO_API extern void DBFreeDefvars(DBdefvars*); -SILO_API extern void DBFreeMultimesh(DBmultimesh *); -SILO_API extern void DBFreeMultimeshadj(DBmultimeshadj *); -SILO_API extern void DBFreeMultivar(DBmultivar *); -SILO_API extern void DBFreeMultimat(DBmultimat *); -SILO_API extern void DBFreeMultimatspecies(DBmultimatspecies *); -SILO_API extern void DBFreeCompoundarray(DBcompoundarray *); -SILO_API extern void DBFreeCurve(DBcurve *); -SILO_API extern void DBFreeNamescheme(DBnamescheme *); - -SILO_API extern int DBIsEmptyCurve(DBcurve const *curve); -SILO_API extern int DBIsEmptyPointmesh(DBpointmesh const *msh); -SILO_API extern int DBIsEmptyPointvar(DBpointvar const *var); -SILO_API extern int DBIsEmptyMeshvar(DBmeshvar const *var); -SILO_API extern int DBIsEmptyQuadmesh(DBquadmesh const *msh); -SILO_API extern int DBIsEmptyQuadvar(DBquadvar const *var); -SILO_API extern int DBIsEmptyUcdmesh(DBucdmesh const *msh); -SILO_API extern int DBIsEmptyFacelist(DBfacelist const *fl); -SILO_API extern int DBIsEmptyZonelist(DBzonelist const *zl); -SILO_API extern int DBIsEmptyPHZonelist(DBphzonelist const *zl); -SILO_API extern int DBIsEmptyUcdvar(DBucdvar const *var); -SILO_API extern int DBIsEmptyCsgmesh(DBcsgmesh const *msh); -SILO_API extern int DBIsEmptyCSGZonelist(DBcsgzonelist const *zl); -SILO_API extern int DBIsEmptyCsgvar(DBcsgvar const *var); -SILO_API extern int DBIsEmptyMaterial(DBmaterial const *mat); -SILO_API extern int DBIsEmptyMatspecies(DBmatspecies const *spec); - -SILO_API extern long DBSetDataReadMask(long); -SILO_API extern long DBGetDataReadMask(void); -SILO_API extern int DBSetAllowOverwrites(int allow); -SILO_API extern int DBGetAllowOverwrites(void); -SILO_API extern int DBSetAllowEmptyObjects(int allow); -SILO_API extern int DBGetAllowEmptyObjects(void); -SILO_API extern int DBSetEnableChecksums(int enable); -SILO_API extern int DBGetEnableChecksums(void); -SILO_API extern void DBSetCompression(char const *); -SILO_API extern char *DBGetCompression(void); -SILO_API extern int DBSetFriendlyHDF5Names(int enable); -SILO_API extern int DBGetFriendlyHDF5Names(void); -SILO_API extern int DBGuessHasFriendlyHDF5Names(DBfile *f); -SILO_API extern int DBSetDeprecateWarnings(int max); -SILO_API extern int DBGetDeprecateWarnings(); -SILO_API extern int *DBSetUnknownDriverPriorities(int const *); -SILO_API extern int *DBGetUnknownDriverPriorities(); -SILO_API extern int DBRegisterFileOptionsSet(DBoptlist const *opts); -SILO_API extern int DBUnregisterFileOptionsSet(int opts_set_id); -SILO_API extern void DBUnregisterAllFileOptionsSets(); -SILO_API extern void *DBGrabDriver(DBfile *); -SILO_API extern int DBUngrabDriver(DBfile *, void const *); -SILO_API extern int DBGetDriverType(DBfile const *); -SILO_API extern int DBGetDriverTypeFromPath(char const *); -SILO_API extern char *DBJoinPath(char const *, char const *); -SILO_API extern char *DBVersion(void); -SILO_API extern int DBVersionGE(int Maj, int Min, int Pat); -SILO_API extern char *DBFileVersion(DBfile const *dbfile); -SILO_API extern int DBFileVersionGE(DBfile const *dbfile, int Maj, int Min, int Pat); -SILO_API extern void DBShowErrors(int, DBErrFunc_t); -SILO_API extern char *DBErrString(void); -SILO_API extern char *DBErrFunc(void); -SILO_API extern char *DBErrFuncname(void); -SILO_API extern DBErrFunc_t DBErrfunc(void); -SILO_API extern int DBErrno(void); -SILO_API extern int DBErrlvl(void); -SILO_API extern int DBClose(DBfile *); -SILO_API extern int DBPause(DBfile *); -SILO_API extern int DBContinue(DBfile *); -SILO_API extern int DBInqVarExists(DBfile *, char const *); -SILO_API extern int DBForceSingle(int); -SILO_API extern int DBUninstall(DBfile *); -SILO_API extern DBoptlist *DBMakeOptlist(int); -SILO_API extern int DBClearOptlist(DBoptlist *); -SILO_API extern int DBFreeOptlist(DBoptlist *); -SILO_API extern int DBAddOption(DBoptlist *, int, void *); -SILO_API extern void *DBGetOption(DBoptlist const *, int); -SILO_API extern int DBClearOption(DBoptlist *, int); -SILO_API extern DBtoc *DBGetToc(DBfile *); -SILO_API extern int DBNewToc(DBfile *); -SILO_API extern int DBSortObjectsByOffset(DBfile *, int nobjs, - char const *const *obj_names, int *ranks); -SILO_API extern int DBFilters(DBfile *, FILE *); -SILO_API extern int DBFilterRegistration(char const *, int (*init) (DBfile *, char *), - int (*open) (DBfile *, char *)); -SILO_API extern void *DBGetAtt(DBfile *, char const *, char const *); -SILO_API extern DBobject *DBGetObject(DBfile *, char const *); -SILO_API extern int DBChangeObject(DBfile *, DBobject const *); -SILO_API extern int DBWriteObject(DBfile *, DBobject const *, int); -SILO_API extern void *DBGetComponent(DBfile *, char const *, char const *); -SILO_API extern int DBGetComponentType(DBfile *, char const *, char const *); -SILO_API extern int DBWriteComponent(DBfile *, DBobject *, char const *, char const *, char const *, - void const *, int, long const *); -SILO_API extern int DBWrite(DBfile *, char const *, void const *, int const *, int, int); -SILO_API extern int DBWriteSlice(DBfile *, char const *, void *, int, int[], int[], - int[], int[], int); -SILO_API extern DBfacelist *DBCalcExternalFacelist(int *, int, int, int *, int *, int, - int *, int); -SILO_API extern DBfacelist *DBCalcExternalFacelist2(int *, int, int, int, int, int *, - int *, int *, int, int *, int); -SILO_API extern int DBGetDir(DBfile *, char *); -SILO_API extern int DBSetDir(DBfile *, char const *); -SILO_API extern int DBSetDirID(DBfile *, int); -SILO_API extern int DBListDir(DBfile *, char **, int); -SILO_API extern int DBMkDir(DBfile *, char const *); -SILO_API extern int DBCpDir(DBfile *dbfile, char const *srcDir, - DBfile *dstFile, char const *dstDir); - -#define DBMkdir DBMkDir -SILO_API extern int DBReadAtt(DBfile *, char const *, char const *, void *); -SILO_API extern int DBRead(DBfile *, char const *, void *); -SILO_API extern int DBReadVar(DBfile *, char const *, void *); -SILO_API extern int DBReadVar1(DBfile *, char const *, int, void *); -SILO_API extern int DBReadVarSlice(DBfile *, char const *, int *, int *, int *, int, - void *); -SILO_API extern int DBGetObjtypeTag (char const *); -SILO_API extern DBobject *DBMakeObject(char const *, int, int); -SILO_API extern int DBFreeObject(DBobject *); -SILO_API extern int DBClearObject(DBobject *); -SILO_API extern int DBAddVarComponent(DBobject *, char const *, char const *); -SILO_API extern int DBAddIntComponent(DBobject *, char const *, int); -SILO_API extern int DBAddFltComponent(DBobject *, char const *, double); -SILO_API extern int DBAddDblComponent(DBobject *, char const *, double); -SILO_API extern int DBAddStrComponent(DBobject *, char const *, char const *); -SILO_API extern int DBGetComponentNames(DBfile *, char const *, char ***, char ***); - -SILO_API extern DBcompoundarray *DBGetCompoundarray(DBfile *, char const *); -SILO_API extern DBcurve *DBGetCurve(DBfile *, char const *); -SILO_API extern DBdefvars *DBGetDefvars(DBfile *, char const *); -SILO_API extern DBmaterial *DBGetMaterial(DBfile *, char const *); -SILO_API extern DBmatspecies *DBGetMatspecies(DBfile *, char const *); -SILO_API extern DBmultimesh *DBGetMultimesh(DBfile *, char const *); -SILO_API extern DBmultimeshadj *DBGetMultimeshadj(DBfile *, char const *, - int, const int *); -SILO_API extern DBmultivar *DBGetMultivar(DBfile *, char const *); -SILO_API extern DBmultimat *DBGetMultimat(DBfile *, char const *); -SILO_API extern DBmultimatspecies *DBGetMultimatspecies(DBfile *, char const *); -SILO_API extern DBpointmesh *DBGetPointmesh(DBfile *, char const *); -SILO_API extern DBmeshvar *DBGetPointvar(DBfile *, char const *); -SILO_API extern DBquadmesh *DBGetQuadmesh(DBfile *, char const *); -SILO_API extern DBquadvar *DBGetQuadvar(DBfile *, char const *); -SILO_API extern int DBGetQuadvar1(DBfile *, char const *, DB_DTPTR1, int *, int *, - DB_DTPTR1, int *, int *, int *); -SILO_API extern int DBAnnotateUcdmesh(DBucdmesh *); -SILO_API extern DBucdmesh *DBGetUcdmesh(DBfile *, char const *); -SILO_API extern DBucdvar *DBGetUcdvar(DBfile *, char const *); -SILO_API extern DBcsgmesh *DBGetCsgmesh(DBfile *, char const *); -SILO_API extern DBcsgvar *DBGetCsgvar(DBfile *, char const *); -SILO_API extern DBcsgzonelist *DBGetCSGZonelist(DBfile *, char const *); -SILO_API extern DBfacelist *DBGetFacelist(DBfile *, char const *); -SILO_API extern DBzonelist *DBGetZonelist(DBfile *, char const *); -SILO_API extern DBphzonelist *DBGetPHZonelist(DBfile *, char const *); -SILO_API extern void *DBGetVar(DBfile *, char const *); -SILO_API extern int DBGetVarByteLength(DBfile *, char const *); -SILO_API extern int DBGetVarLength(DBfile *, char const *); -SILO_API extern int DBGetVarDims(DBfile *, char const *, int, int *); -SILO_API extern int DBGetVarType(DBfile *, char const *); -SILO_API extern int DBInqFileHasObjects(DBfile *); -SILO_API extern int DBInqMeshname(DBfile *, char const *, char const *); -SILO_API extern int DBInqMeshtype(DBfile *, char const *); -SILO_API extern int DBInqCompoundarray(DBfile *, char const *, char ***, - int **, int *, int *, int *); -SILO_API extern DBObjectType DBInqVarType(DBfile *, char const *); - -SILO_API extern int DBPutCompoundarray(DBfile *, char const *, char **, int *, int, - void *, int, int, DBoptlist *); -SILO_API extern int DBPutCurve(DBfile *, char const *, void *, void *, int, int, - DBoptlist *); -SILO_API extern int DBPutDefvars (DBfile *, char const *, int, char **, - int const *, char **, DBoptlist **); -SILO_API extern int DBPutFacelist(DBfile *, char const *, int, int, int *, int, int, - int *, int *, int *, int, int *, int *, int); -SILO_API extern int DBPutMaterial(DBfile *, char const *, char const *, int, int *, int *, - int *, int, int *, int *, int *, DB_DTPTR1, int, - int, DBoptlist *); -SILO_API extern int DBPutMatspecies(struct DBfile *, char const *, char const *, int, int *, - int *, int *, int, int, DB_DTPTR1, int *, int, int, - DBoptlist *); -SILO_API extern int DBPutMultimesh(DBfile *, char DB_CONSTARR1, int, char DB_CONSTARR2, int DB_CONSTARR1, - DBoptlist const *); -SILO_API extern int DBPutMultimeshadj(DBfile *, char DB_CONSTARR1, int, int DB_CONSTARR1, - int DB_CONSTARR1, int DB_CONSTARR1, int DB_CONSTARR1, int DB_CONSTARR1, - int DB_CONSTARR2, int DB_CONSTARR1, int DB_CONSTARR2, DBoptlist const *optlist); -SILO_API extern int DBPutMultivar(DBfile *, char const *, int, char **, int *, - DBoptlist *); -SILO_API extern int DBPutMultimat(DBfile *, char const *, int, char **, DBoptlist *); -SILO_API extern int DBPutMultimatspecies(DBfile *, char const *, int, char **, - DBoptlist *); -SILO_API extern int DBPutPointmesh(DBfile *, char const *, int, DB_DTPTR2, int, int, - DBoptlist *); -SILO_API extern int DBPutPointvar(DBfile *, char const *, char const *, int, DB_DTPTR2, int, - int, DBoptlist *); -SILO_API extern int DBPutPointvar1(DBfile *, char const *, char const *, DB_DTPTR1, int, int, - DBoptlist *); -SILO_API extern int DBPutQuadmesh(DBfile *, char const *, char **, DB_DTPTR2, int *, int, - int, int, DBoptlist *); -SILO_API extern int DBPutQuadvar(DBfile *, char const *, char const *, int, char **, DB_DTPTR2, - int *, int, DB_DTPTR2, int, int, int, DBoptlist *); -SILO_API extern int DBPutQuadvar1(DBfile *, char const *, char const *, DB_DTPTR1, int *, int, - DB_DTPTR1, int, int, int, DBoptlist *); -SILO_API extern int DBPutUcdmesh(DBfile *, char const *, int, char **, DB_DTPTR2, int, - int, char const *, char const *, int, DBoptlist *); -SILO_API extern int DBPutUcdsubmesh(DBfile *, char const *, char const *, int, - char const *, char const *, DBoptlist *); -SILO_API extern int DBPutUcdvar(DBfile *, char const *, char const *, int, char **, DB_DTPTR2, - int, DB_DTPTR2, int, int, int, DBoptlist *); -SILO_API extern int DBPutUcdvar1(DBfile *, char const *, char const *, DB_DTPTR1, int, DB_DTPTR1, - int, int, int, DBoptlist *); -SILO_API extern int DBPutZonelist(DBfile *, char const *, int, int, int *, int, int, - int *, int *, int); -SILO_API extern int DBPutZonelist2(DBfile *, char const *, int, int, int *, int, int, - int, int, int *, int *, int *, int, DBoptlist*); -SILO_API extern int DBPutPHZonelist(DBfile *, char const *, int, int *, int, int *, char const *, - int, int *, int, int *, - int, int, int, DBoptlist *); -SILO_API extern int DBPutCsgmesh(DBfile *, char const *, int, int, int const *, int const *, - void const *, int, int, double const *, char const *, - DBoptlist *); -SILO_API extern int DBPutCSGZonelist(DBfile *, char const *, int, int const *, - int const *, int const *, void const *, int, int, - int, int const *, DBoptlist *); -SILO_API extern int DBPutCsgvar(DBfile *, char const *, char const *, int, char **, - void **, int, int, int, DBoptlist *); - -SILO_API extern void DBFreeMrgtree(DBmrgtree *tree); -SILO_API extern void DBPrintMrgtree(DBmrgtnode *tnode, int walk_order, void *data); -SILO_API extern void DBLinearizeMrgtree(DBmrgtnode *tnode, int walk_order, void *data); -SILO_API extern void DBWalkMrgtree(DBmrgtree *tree, DBmrgwalkcb cb, void *wdata, - int traversal_order); - -SILO_API extern DBmrgtree *DBMakeMrgtree(int source_mesh_type, int mrgtree_info, - int max_root_descendents, DBoptlist *opts); -SILO_API extern int DBAddRegion(DBmrgtree *tree, char const *region_name, - int type_info_bits, int max_descendents, - char const *maps_name, int nsegs, int *seg_ids, - int *seg_sizes, int *seg_types, DBoptlist *opts); - -SILO_API extern int DBAddRegionArray(DBmrgtree *tree, int nregn, - char **regn_names, int type_info_bits, - char const *maps_name, int nsegs, int *seg_ids, - int *seg_sizes, int *seg_types, DBoptlist *opts); - -SILO_API extern int DBSetCwr(DBmrgtree *tree, char const *path); -SILO_API extern char const *DBGetCwr(DBmrgtree *tree); - -SILO_API extern int DBPutMrgtree(DBfile *dbfile, char const *mrg_tree_name, - char const *mesh_name, DBmrgtree *tree, DBoptlist *opts); -SILO_API extern DBmrgtree *DBGetMrgtree(DBfile *dbfile, char const *mrg_tree_name); - -SILO_API extern int DBPutMrgvar(DBfile *dbfile, char const *name, - char const *mrgt_name, - int ncomps, char **compnames, - int nregns, char **reg_pnames, - int datatype, void **data, DBoptlist *opts); -SILO_API extern DBmrgvar *DBGetMrgvar(DBfile *dbfile, char const *name); -SILO_API extern void DBFreeMrgvar(DBmrgvar *mrgv); - -SILO_API extern int DBPutGroupelmap(DBfile *dbfile, char const *map_name, - int num_segments, int *groupel_types, int *segment_lengths, - int *segment_ids, int **segment_data, void **segment_fracs, - int fracs_data_type, DBoptlist *opts); -SILO_API extern DBgroupelmap *DBGetGroupelmap(DBfile *dbfile, char const *name); -SILO_API extern void DBFreeGroupelmap(DBgroupelmap *map); - -SILO_API extern void * DBFortranAccessPointer(int value); -SILO_API extern int DBFortranAllocPointer(void *pointer); -SILO_API extern void DBFortranRemovePointer(int value); - -SILO_API extern int DBVariableNameValid(char const *s); -SILO_API extern char *safe_strdup(char const *s); - -SILO_API extern int DBFreeCompressionResources(DBfile *dbfile, char const *meshname); - -SILO_API extern DBnamescheme *DBMakeNamescheme(char const *fmt, ...); -SILO_API char const *DBGetName(DBnamescheme *ns, int natnum); - -SILO_API extern void DBStringArrayToStringList(char **strArray, int n, - char **strList, int *m); -SILO_API char ** DBStringListToStringArray(char *strList, int *n, int handleSlashSwap, - int skipSemicolonAtIndexZero); +typedef void (*DBErrFunc_t)(char *); /*------------------------------------------------------------------------- * Public global variables. @@ -2127,8 +1791,350 @@ SILO_API extern int (*DBFSingleCB[])(int); #endif +#define SILO_VSTRING_NAME "_silolibinfo" +#define SILO_VSTRING PACKAGE_VERSION +SILO_API extern int SILO_VERS_TAG; +#define SiloCheckVersion SILO_VERS_TAG = 1 + +/* define versions of Silo this version is backward ABI compatible with */ +SILO_API extern int Silo_version_4_10; + +/* + * SILO API FUNCTIONS + */ + +/* Error handling and other global library behavior */ +SILO_API extern void DBShowErrors(int, DBErrFunc_t); +SILO_API extern char const * DBErrString(void); +SILO_API extern char const * DBErrFuncname(void); +SILO_API extern DBErrFunc_t DBErrfunc(void); +SILO_API extern int DBErrno(void); +SILO_API extern int DBErrlvl(void); +/* Designed to prevent accidental use of old interface by forcing a human readable compile time error */ +#define DBSetDataReadMask(A) ,DBSetDataReadMask_is_replaced_with_DBSetDataReadMask2_using_unsigned_long_long +#define DBGetDataReadMask() ,DBGetDataReadMask_is_replaced_with_DBGetDataReadMask2_using_unsigned_long_long +SILO_API extern unsigned long long DBSetDataReadMask2(unsigned long long); +SILO_API extern unsigned long long DBGetDataReadMask2(void); +SILO_API extern char * DBGetDatatypeString(int datatype); +SILO_API extern int DBSetAllowOverwrites(int allow); +SILO_API extern int DBGetAllowOverwrites(void); +SILO_API extern int DBSetAllowEmptyObjects(int allow); +SILO_API extern int DBGetAllowEmptyObjects(void); +SILO_API extern int DBSetEnableChecksums(int enable); +SILO_API extern int DBGetEnableChecksums(void); +SILO_API extern void DBSetCompression(char const *); +SILO_API extern char const * DBGetCompression(void); +SILO_API extern int DBSetFriendlyHDF5Names(int enable); +SILO_API extern int DBGetFriendlyHDF5Names(void); +SILO_API extern int DBSetDeprecateWarnings(int max); +SILO_API extern int DBGetDeprecateWarnings(); +SILO_API extern int const * DBSetUnknownDriverPriorities(int const *); +SILO_API extern int const * DBGetUnknownDriverPriorities(); +SILO_API extern int DBRegisterFileOptionsSet(DBoptlist const *opts); +SILO_API extern int DBUnregisterFileOptionsSet(int opts_set_id); +SILO_API extern void DBUnregisterAllFileOptionsSets(); +SILO_API extern char const * DBVersion(void); +SILO_API extern int DBVersionDigits(int *Maj, int *Min, int *Pat, int *Pre); +SILO_API extern int DBVersionGE(int Maj, int Min, int Pat); +SILO_API extern int DBVariableNameValid(char const *s); +SILO_API extern int DBForceSingle(int); + +/* Functions involving files, file structure and file inquiries */ +SILO_API extern DBfile * DBOpenReal(char const *name, int dbtype, int mode); +SILO_API extern DBfile * DBCreateReal(char const *name, int mode, int targ, char const *info, int dbtype); +SILO_API extern int DBInqFileReal(char const *name); +/* + * The above functions are the 'Real' implementations of their macro counterparts (below). + * These are the functions by which client code first gets into Silo. They are separated + * out because they do a link-time header/library version check for us. It works because + * we don't advertise the 'Real' functions and instead encourage clients to use the macro + * counterparts (below). The macros wind up creating a reference to the Silo vesion tag + * which is resolved only when the client is linked with a library that defines the + * associated version symbol. + */ +#define DBOpen(NM, DR, MD) (SiloCheckVersion, DBOpenReal(NM, DR, MD)) +#define DBCreate(NM, MD, TG, NF, DR) (SiloCheckVersion, DBCreateReal(NM, MD, TG, NF, DR)) +#define DBInqFile(NM) (SiloCheckVersion, DBInqFileReal(NM)) +SILO_API extern int DBClose(DBfile *); +SILO_API extern DBtoc * DBGetToc(DBfile *); +SILO_API extern int DBNewToc(DBfile *); +SILO_API extern void * DBGrabDriver(DBfile *); +SILO_API extern int DBUngrabDriver(DBfile *, void const *); +SILO_API extern int DBGetDriverType(DBfile const *); +SILO_API extern int DBGetDriverTypeFromPath(char const *); +SILO_API extern int DBVersionGEFileVersion(DBfile const *dbfile); +SILO_API extern char const * DBFileVersion(DBfile const *dbfile); +SILO_API extern int DBFileVersionDigits(DBfile const *dbfile, int *Maj, int *Min, int *Pat, int *Pre); +SILO_API extern int DBFileVersionGE(DBfile const *dbfile, int Maj, int Min, int Pat); +SILO_API extern int DBGetDir(DBfile *, char *); +SILO_API extern int DBSetDir(DBfile *, char const *); +#define DBMkdir DBMkDir +SILO_API extern int DBMkDir(DBfile *, char const *); +SILO_API extern int DBCpDir(DBfile *dbfile, char const *srcDir, + DBfile *dstFile, char const *dstDir); +SILO_API extern int DBGuessHasFriendlyHDF5Names(DBfile *f); +SILO_API extern int DBInqVarExists(DBfile *, char const *); +SILO_API extern int DBUninstall(DBfile *); +SILO_API extern int DBFreeCompressionResources(DBfile *dbfile, char const *meshname); +SILO_API extern int DBSortObjectsByOffset(DBfile *, int nobjs, char const * const *obj_names, int *ranks); +SILO_API extern int DBFilters(DBfile *, FILE *); +SILO_API extern int DBFilterRegistration(char const *, int (*init) (DBfile *, char *), + int (*open) (DBfile *, char *)); +SILO_API extern int DBInqFileHasObjects(DBfile *); + +/* Object Allocation, Free and IsEmpty functions */ +SILO_API extern DBcompoundarray * DBAllocCompoundarray(void); +SILO_API extern DBcurve * DBAllocCurve(void); +SILO_API extern DBdefvars * DBAllocDefvars(int); +SILO_API extern DBmultimesh * DBAllocMultimesh(int); +SILO_API extern DBmultimeshadj * DBAllocMultimeshadj(int); +SILO_API extern DBmultivar * DBAllocMultivar(int); +SILO_API extern DBmultimat * DBAllocMultimat(int); +SILO_API extern DBmultimatspecies * DBAllocMultimatspecies(int); +SILO_API extern DBcsgmesh * DBAllocCsgmesh(void); +SILO_API extern DBquadmesh * DBAllocQuadmesh(void); +SILO_API extern DBpointmesh * DBAllocPointmesh(void); +SILO_API extern DBmeshvar * DBAllocMeshvar(void); +SILO_API extern DBucdmesh * DBAllocUcdmesh(void); +SILO_API extern DBcsgvar * DBAllocCsgvar(void); +SILO_API extern DBquadvar * DBAllocQuadvar(void); +SILO_API extern DBucdvar * DBAllocUcdvar(void); +SILO_API extern DBzonelist * DBAllocZonelist(void); +SILO_API extern DBphzonelist * DBAllocPHZonelist(void); +SILO_API extern DBcsgzonelist * DBAllocCSGZonelist(void); +SILO_API extern DBedgelist * DBAllocEdgelist(void); +SILO_API extern DBfacelist * DBAllocFacelist(void); +SILO_API extern DBmaterial * DBAllocMaterial(void); +SILO_API extern DBmatspecies * DBAllocMatspecies(void); +SILO_API extern DBnamescheme * DBAllocNamescheme(void); +SILO_API extern DBgroupelmap * DBAllocGroupelmap(int, DBdatatype); + +SILO_API extern void DBFreeMatspecies(DBmatspecies *); +SILO_API extern void DBFreeMaterial(DBmaterial *); +SILO_API extern void DBFreeFacelist(DBfacelist *); +SILO_API extern void DBFreeEdgelist(DBedgelist *); +SILO_API extern void DBFreeZonelist(DBzonelist *); +SILO_API extern void DBFreePHZonelist(DBphzonelist *); +SILO_API extern void DBFreeCSGZonelist(DBcsgzonelist *); +SILO_API extern void DBResetUcdvar(DBucdvar *); +SILO_API extern void DBFreeUcdvar(DBucdvar *); +SILO_API extern void DBResetQuadvar(DBquadvar *); +SILO_API extern void DBFreeCsgvar(DBcsgvar *); +SILO_API extern void DBFreeQuadvar(DBquadvar *); +SILO_API extern void DBFreeUcdmesh(DBucdmesh *); +SILO_API extern void DBFreeMeshvar(DBmeshvar *); +SILO_API extern void DBFreePointvar(DBpointvar *); +SILO_API extern void DBFreePointmesh(DBpointmesh *); +SILO_API extern void DBFreeQuadmesh(DBquadmesh *); +SILO_API extern void DBFreeCsgmesh(DBcsgmesh *); +SILO_API extern void DBFreeDefvars(DBdefvars*); +SILO_API extern void DBFreeMultimesh(DBmultimesh *); +SILO_API extern void DBFreeMultimeshadj(DBmultimeshadj *); +SILO_API extern void DBFreeMultivar(DBmultivar *); +SILO_API extern void DBFreeMultimat(DBmultimat *); +SILO_API extern void DBFreeMultimatspecies(DBmultimatspecies *); +SILO_API extern void DBFreeCompoundarray(DBcompoundarray *); +SILO_API extern void DBFreeCurve(DBcurve *); +SILO_API extern void DBFreeNamescheme(DBnamescheme *); +SILO_API extern void DBFreeMrgvar(DBmrgvar *mrgv); +SILO_API extern void DBFreeMrgtree(DBmrgtree *tree); +SILO_API extern void DBFreeGroupelmap(DBgroupelmap *map); + +SILO_API extern int DBIsEmptyCurve(DBcurve const *curve); +SILO_API extern int DBIsEmptyPointmesh(DBpointmesh const *msh); +SILO_API extern int DBIsEmptyPointvar(DBpointvar const *var); +SILO_API extern int DBIsEmptyMeshvar(DBmeshvar const *var); +SILO_API extern int DBIsEmptyQuadmesh(DBquadmesh const *msh); +SILO_API extern int DBIsEmptyQuadvar(DBquadvar const *var); +SILO_API extern int DBIsEmptyUcdmesh(DBucdmesh const *msh); +SILO_API extern int DBIsEmptyFacelist(DBfacelist const *fl); +SILO_API extern int DBIsEmptyZonelist(DBzonelist const *zl); +SILO_API extern int DBIsEmptyPHZonelist(DBphzonelist const *zl); +SILO_API extern int DBIsEmptyUcdvar(DBucdvar const *var); +SILO_API extern int DBIsEmptyCsgmesh(DBcsgmesh const *msh); +SILO_API extern int DBIsEmptyCSGZonelist(DBcsgzonelist const *zl); +SILO_API extern int DBIsEmptyCsgvar(DBcsgvar const *var); +SILO_API extern int DBIsEmptyMaterial(DBmaterial const *mat); +SILO_API extern int DBIsEmptyMatspecies(DBmatspecies const *spec); + +/* User-defined (generic) Data and Object functions */ +SILO_API extern int DBGetObjtypeTag(char const *); +SILO_API extern DBobject * DBMakeObject(char const *, int, int); +SILO_API extern int DBFreeObject(DBobject *); +SILO_API extern int DBClearObject(DBobject *); +SILO_API extern int DBAddVarComponent(DBobject *, char const *, char const *); +SILO_API extern int DBAddIntComponent(DBobject *, char const *, int); +SILO_API extern int DBAddFltComponent(DBobject *, char const *, double); +SILO_API extern int DBAddDblComponent(DBobject *, char const *, double); +SILO_API extern int DBAddStrComponent(DBobject *, char const *, char const *); +SILO_API extern int DBGetComponentNames(DBfile *, char const *, char ***, char ***); +SILO_API extern DBobject * DBGetObject(DBfile *, char const *); +SILO_API extern int DBChangeObject(DBfile *, DBobject const *); +SILO_API extern int DBWriteObject(DBfile *, DBobject const *, int); +SILO_API extern void * DBGetComponent(DBfile *, char const *, char const *); +SILO_API extern int DBGetComponentType(DBfile *, char const *, char const *); +SILO_API extern int DBWriteComponent(DBfile *, DBobject *, char const *, char const *, char const *, + void const *, int, long const *); +SILO_API extern int DBWrite(DBfile *, char const *, void const *, int const *, int, int); +SILO_API extern int DBWriteSlice(DBfile *dbfile, char const *array_name, + void const * data, int datatype, int const *offsets, + int const *lengths, int const *strides, int const *dims, + int ndims); +SILO_API extern int DBRead(DBfile *, char const *, void *); +SILO_API extern int DBReadVar(DBfile *, char const *, void *); +SILO_API extern int DBReadVarSlice(DBfile *, char const *, int const *, int const *, int const *, int, void *); +SILO_API extern DBcompoundarray * DBGetCompoundarray(DBfile *, char const *); +SILO_API extern int DBInqCompoundarray(DBfile *, char const *, char ***, int **, int *, int *, int *); +SILO_API extern void * DBGetVar(DBfile *, char const *); +SILO_API extern int DBGetVarByteLength(DBfile *, char const *); +SILO_API extern int DBGetVarLength(DBfile *, char const *); +SILO_API extern int DBGetVarDims(DBfile *, char const *, int, int *); +SILO_API extern int DBGetVarType(DBfile *, char const *); +SILO_API extern DBObjectType DBInqVarType(DBfile *, char const *); + +/* Curve, Mesh, Variable and Material functions */ +SILO_API extern DBcurve * DBGetCurve(DBfile *, char const *); +SILO_API extern DBdefvars * DBGetDefvars(DBfile *, char const *); +SILO_API extern DBmaterial * DBGetMaterial(DBfile *, char const *); +SILO_API extern DBmatspecies * DBGetMatspecies(DBfile *, char const *); +SILO_API extern DBpointmesh * DBGetPointmesh(DBfile *, char const *); +SILO_API extern DBmeshvar * DBGetPointvar(DBfile *, char const *); +SILO_API extern DBquadmesh * DBGetQuadmesh(DBfile *, char const *); +SILO_API extern DBquadvar * DBGetQuadvar(DBfile *, char const *); +SILO_API extern DBucdmesh * DBGetUcdmesh(DBfile *, char const *); +SILO_API extern DBucdvar * DBGetUcdvar(DBfile *, char const *); +SILO_API extern DBcsgmesh * DBGetCsgmesh(DBfile *, char const *); +SILO_API extern DBcsgvar * DBGetCsgvar(DBfile *, char const *); +SILO_API extern DBcsgzonelist * DBGetCSGZonelist(DBfile *, char const *); +SILO_API extern DBfacelist * DBGetFacelist(DBfile *, char const *); +SILO_API extern DBzonelist * DBGetZonelist(DBfile *, char const *); +SILO_API extern DBphzonelist * DBGetPHZonelist(DBfile *, char const *); +SILO_API extern int DBInqMeshname(DBfile *, char const *, char *); +SILO_API extern int DBInqMeshtype(DBfile *, char const *); +SILO_API extern int DBPutCompoundarray(DBfile *dbfile, char const *name, char const * const *elemnames, + int const *elemlens, int nelems, void const *values, int nvalues, int datatype, + DBoptlist const *); +SILO_API extern int DBPutCurve(DBfile *dbfile, char const * name, void const * xvals, + void const * yvals, int datatype, int npts, DBoptlist const * opts); +SILO_API extern int DBPutDefvars(DBfile *dbfile, char const *name, int, char const * const *names, + int const *types, char const * const *defns, DBoptlist const * const *opts); +SILO_API extern int DBPutFacelist(DBfile *dbfile, char const *, int nfaces, int ndims, int const *nodelist, + int lnodelist, int origin, int const *zoneno, int const *shapesize, + int const *shapecnt, int nshapes, int const *types, int const *typelist, int ntypes); +SILO_API extern int DBPutMaterial(DBfile *dbfile, char const *name, char const *meshname, int nmat, + int const *matnos, int const *matlist, int const *dims, int ndims, + int const *mix_next, int const *mix_mat, int const *mix_zone, DBVCP1_t mix_vf, + int mixlen, int datatype, DBoptlist const *opts); +SILO_API extern int DBPutMatspecies(struct DBfile *dbfile, char const *name, char const *matnam, + int nmat, int const *nmatspec, int const *speclist, int const *dims, + int ndims, int nspecies_mf, DBVCP1_t species_mf, int const *mix_speclist, + int mixlen, int datatype, DBoptlist const *optlist); +SILO_API extern int DBPutPointmesh(DBfile *, char const *, int, DBVCP2_t, int, int, DBoptlist const *); +SILO_API extern int DBPutPointvar(DBfile *, char const *, char const *, int, DBVCP2_t, int, int, + DBoptlist const *); +SILO_API extern int DBPutPointvar1(DBfile *, char const *, char const *, DBVCP1_t, int, int, + DBoptlist const *); +SILO_API extern int DBPutQuadmesh(DBfile *, char const *, char const * const *, DBVCP2_t, int const *, int, + int, int, DBoptlist const *); +SILO_API extern int DBPutQuadvar(DBfile *, char const *, char const *, int, char const * const *, DBVCP2_t, + int const *, int, DBVCP2_t, int, int, int, DBoptlist const *); +SILO_API extern int DBPutQuadvar1(DBfile *, char const *, char const *, DBVCP1_t, int const *, int, + DBVCP1_t, int, int, int, DBoptlist const *); +SILO_API extern int DBPutUcdmesh(DBfile *, char const *, int, char const * const *, DBVCP2_t, int, + int, char const *, char const *, int, DBoptlist const *); +SILO_API extern int DBPutUcdsubmesh(DBfile *, char const *, char const *, int, + char const *, char const *, DBoptlist const *); +SILO_API extern int DBPutUcdvar(DBfile *, char const *, char const *, int, char const * const *, DBVCP2_t, + int, DBVCP2_t, int, int, int, DBoptlist const *); +SILO_API extern int DBPutUcdvar1(DBfile *, char const *, char const *, DBVCP1_t, int, DBVCP1_t, + int, int, int, DBoptlist const *); +SILO_API extern int DBPutZonelist(DBfile *, char const *, int, int, int const *, int, int, + int const *, int const *, int); +SILO_API extern int DBPutZonelist2(DBfile *, char const *, int, int, int const *, int, int, + int, int, int const *, int const *, int const *, int, DBoptlist const *); +SILO_API extern int DBPutPHZonelist(DBfile *, char const *, int, int const *, int, int const *, char const *, + int, int const *, int, int const *, int, int, int, DBoptlist const *); +SILO_API extern int DBPutCsgmesh(DBfile *, char const *, int, int, int const *, int const *, + void const *, int, int, double const *, char const *, DBoptlist const *); +SILO_API extern int DBPutCSGZonelist(DBfile *, char const *, int, int const *, + int const *, int const *, void const *, int, int, int, int const *, + DBoptlist const *); +SILO_API extern int DBPutCsgvar(DBfile *, char const *, char const *, int, char const * const *, + DBVCP2_t, int, int, int, DBoptlist const *); + +/* Part Assemblies, AMR, Slide Surfaces, Nodesets and Other Arbitrary Mesh Subsets */ +SILO_API extern void DBPrintMrgtree(DBmrgtnode *tnode, int walk_order, void *data); +SILO_API extern void DBLinearizeMrgtree(DBmrgtnode *tnode, int walk_order, void *data); +SILO_API extern void DBWalkMrgtree(DBmrgtree const *tree, DBmrgwalkcb cb, void *wdata, int traversal_order); +SILO_API extern DBmrgtree * DBMakeMrgtree(int source_mesh_type, int mrgtree_info, int max_root_descendents, + DBoptlist *opts); +SILO_API extern int DBAddRegion(DBmrgtree *tree, char const *region_name, int type_info_bits, + int max_descendents, char const *maps_name, int nsegs, int const *seg_ids, + int const *seg_sizes, int const *seg_types, DBoptlist const *opts); +SILO_API extern int DBAddRegionArray(DBmrgtree *tree, int nregn, char const * const *regn_names, + int type_info_bits, char const *maps_name, int nsegs, int const *seg_ids, + int const *seg_sizes, int const *seg_types, DBoptlist const *opts); +SILO_API extern int DBSetCwr(DBmrgtree *tree, char const *path); +SILO_API extern char const * DBGetCwr(DBmrgtree *tree); +SILO_API extern int DBPutMrgtree(DBfile *dbfile, char const *mrg_tree_name, char const *mesh_name, + DBmrgtree const *tree, DBoptlist const *opts); +SILO_API extern int DBPutMrgvar(DBfile *dbfile, char const *name, char const *mrgt_name, + int ncomps, char const * const *compnames, int nregns, + char const * const *reg_pnames, int datatype, DBVCP2_t data, + DBoptlist const *opts); +SILO_API extern int DBPutGroupelmap(DBfile *dbfile, char const *map_name, int num_segments, + int const *groupel_types, int const *segment_lengths, int const *segment_ids, + int const * const *segment_data, DBVCP2_t segment_fracs, + int fracs_data_type, DBoptlist const *opts); +SILO_API extern DBmrgtree * DBGetMrgtree(DBfile *dbfile, char const *mrg_tree_name); +SILO_API extern DBgroupelmap * DBGetGroupelmap(DBfile *dbfile, char const *name); +SILO_API extern DBmrgvar * DBGetMrgvar(DBfile *dbfile, char const *name); +SILO_API extern DBnamescheme * DBMakeNamescheme(char const *fmt, ...); +SILO_API extern char const * DBGetName(DBnamescheme const *ns, int natnum); + +/* Multi-block objects and parallel I/O */ +SILO_API extern DBmultimesh * DBGetMultimesh(DBfile *, char const *); +SILO_API extern DBmultimeshadj * DBGetMultimeshadj(DBfile *, char const *, int, int const *); +SILO_API extern DBmultivar * DBGetMultivar(DBfile *, char const *); +SILO_API extern DBmultimat * DBGetMultimat(DBfile *, char const *); +SILO_API extern DBmultimatspecies * DBGetMultimatspecies(DBfile *, char const *); +SILO_API extern int DBPutMultimesh(DBfile *, char const *, int, char const * const *, int const *, + DBoptlist const *); +SILO_API extern int DBPutMultimeshadj(DBfile *, char const *, int, int const *, int const *, + int const *, int const *, int const *, int const * const *, int const *, + int const * const *, DBoptlist const *optlist); +SILO_API extern int DBPutMultivar(DBfile *, char const *, int, char const * const *, int const *, + DBoptlist const *); +SILO_API extern int DBPutMultimat(DBfile *, char const *, int, char const * const *, DBoptlist const *); +SILO_API extern int DBPutMultimatspecies(DBfile *, char const *, int, char const * const *, DBoptlist const *); + +/* Option lists */ +SILO_API extern DBoptlist * DBMakeOptlist(int); +SILO_API extern int DBClearOptlist(DBoptlist *); +SILO_API extern int DBFreeOptlist(DBoptlist *); +SILO_API extern int DBAddOption(DBoptlist *, int, void *); +SILO_API extern void * DBGetOption(DBoptlist const *, int); +SILO_API extern int DBClearOption(DBoptlist *, int); + +/* Calculational and Utility methods */ +SILO_API extern int DBAnnotateUcdmesh(DBucdmesh *); +SILO_API extern DBfacelist * DBCalcExternalFacelist(int *, int, int, int *, int *, int, int *, int); +SILO_API extern DBfacelist * DBCalcExternalFacelist2(int *, int, int, int, int, int *, int *, int *, int, int *, int); +SILO_API extern char * DBJoinPath(char const *, char const *); +SILO_API extern void DBStringArrayToStringList(char const * const *strArray, int n, char **strList, int *m); +SILO_API extern char ** DBStringListToStringArray(char const *strList, int *n, int skipSemicolonAtIndexZero); +SILO_API extern int DBIsDifferentDouble(double a, double b, double abstol, double reltol, double reltol_eps); +SILO_API extern int DBIsDifferentLongLong(long long a, long long b, double abstol, double reltol, double reltol_eps); + +/* Fortran interface functions */ +SILO_API extern void * DBFortranAccessPointer(int value); +SILO_API extern int DBFortranAllocPointer(void *pointer); +SILO_API extern void DBFortranRemovePointer(int value); +SILO_API extern char * _db_safe_strdup(const char *); + #ifdef __cplusplus } #endif + #undef NO_FORTRAN_DEFINE #endif /* !SILO_H */ diff -Nru silo-llnl-4.10.2/src/silo/silo.inc silo-llnl-4.10.2.real/src/silo/silo.inc --- silo-llnl-4.10.2/src/silo/silo.inc 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/src/silo/silo.inc 2018-02-15 17:25:43.000000000 +0000 @@ -1,484 +1,842 @@ -!cccccccccccccccccccccccccccccccccccccccccccccccccccccccc -*- fortran -*- -! -! SILO include file for Fortan applications. -! -! Programmer: miller86 Wed Sep 21 09:25:31 PDT 2011 -! -! WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING -! This file is generated automatically from C header files in the -! SILO distribution. Do not make changes to this file manually, -! as those changes will disappear. -! WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING -! -! This file was generated by the following commands... -! mv silo.inc silo.inc~ -! cat silo.h silo_f.h | mkinc > silo.inc -! -!cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc +Ccccccccccccccccccccccccccccccccccccccccccccccccccccccccc -*- fortran -*- +C +C SILO include file for Fortan applications. +C +C Programmer: miller86 Mon Sep 29 07:01:26 PDT 2014 +C +C WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING +C This file is generated automatically from C header files in the +C SILO distribution. Do not make changes to this file manually, +C as those changes will disappear. +C WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING +C +C This file was generated by the following commands... +C mv silo.inc silo.inc~ +C cat silo.h silo_f.h | mkinc > silo.inc +C +C cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc -!...Functions. - external dbaddcaopt, dbaddccmp, dbaddcopt, dbadddopt, dbaddiaopt - external dbaddicmp, dbaddiopt, dbaddrcmp, dbaddregion - external dbaddregiona, dbaddropt, dbcalcfl, dbclose, dbcreate - external dberrno, dbfgetca, dbfreemrgtree, dbfreeobject - external dbfreeoptlist, dbget2dstrlen, dbgetca, dbgetcksums - external dbgetcompress, dbgetcurve, dbgetdepwarn, dbgethdfnms - external dbgetovrwrt, dbgetqv1, dbinqca, dbinqfile, dbinqlen - external dbmkdir, dbmkmrgtree, dbmkobject, dbmkoptlist, dbmkptr - external dbopen, dbpmrgv, dbputca, dbputcsgm, dbputcsgv - external dbputcsgzl, dbputcurve, dbputdefvars, dbputfl - external dbputgrplmap, dbputmat, dbputmmat, dbputmmesh - external dbputmrgtree, dbputmsp, dbputmvar, dbputpm, dbputpv1 - external dbputqm, dbputqv, dbputqv1, dbputum, dbputuv1, dbputzl - external dbputzl2, dbrdvar, dbrdvarslice, dbregfopts, dbrmptr - external dbset2dstrlen, dbsetcksums, dbsetcompress, dbsetcwr - external dbsetdepwarn, dbsetdir, dbsetdirid, dbsethdfnms - external dbsetovrwrt, dbshowerrors, dbunregafopts, dbunregfopts - external dbwrite, dbwriteslice, dbwrtfl +C...Functions. + EXTERNAL DBADDCAOPT + EXTERNAL DBADDCCMP + EXTERNAL DBADDCOPT + EXTERNAL DBADDDOPT + EXTERNAL DBADDIAOPT + EXTERNAL DBADDICMP + EXTERNAL DBADDIOPT + EXTERNAL DBADDRCMP + EXTERNAL DBADDREGION + EXTERNAL DBADDREGIONA + EXTERNAL DBADDROPT + EXTERNAL DBCALCFL + EXTERNAL DBCLOSE + EXTERNAL DBCREATE + EXTERNAL DBERRNO + EXTERNAL DBFGETCA + EXTERNAL DBFREEMRGTREE + EXTERNAL DBFREEOBJECT + EXTERNAL DBFREEOPTLIST + EXTERNAL DBGET2DSTRLEN + EXTERNAL DBGETCA + EXTERNAL DBGETCKSUMS + EXTERNAL DBGETCOMPRESS + EXTERNAL DBGETCURVE + EXTERNAL DBGETDEPWARN + EXTERNAL DBGETEMPTYOK + EXTERNAL DBGETHDFNMS + EXTERNAL DBGETOVRWRT + EXTERNAL DBGETQV1 + EXTERNAL DBINQCA + EXTERNAL DBINQFILE + EXTERNAL DBINQLEN + EXTERNAL DBMKDIR + EXTERNAL DBMKMRGTREE + EXTERNAL DBMKOBJECT + EXTERNAL DBMKOPTLIST + EXTERNAL DBMKPTR + EXTERNAL DBOPEN + EXTERNAL DBPMRGV + EXTERNAL DBPUTCA + EXTERNAL DBPUTCSGM + EXTERNAL DBPUTCSGV + EXTERNAL DBPUTCSGZL + EXTERNAL DBPUTCURVE + EXTERNAL DBPUTDEFVARS + EXTERNAL DBPUTFL + EXTERNAL DBPUTGRPLMAP + EXTERNAL DBPUTMAT + EXTERNAL DBPUTMMAT + EXTERNAL DBPUTMMESH + EXTERNAL DBPUTMRGTREE + EXTERNAL DBPUTMSP + EXTERNAL DBPUTMVAR + EXTERNAL DBPUTPM + EXTERNAL DBPUTPV1 + EXTERNAL DBPUTQM + EXTERNAL DBPUTQV + EXTERNAL DBPUTQV1 + EXTERNAL DBPUTUM + EXTERNAL DBPUTUV1 + EXTERNAL DBPUTZL + EXTERNAL DBPUTZL2 + EXTERNAL DBRDVAR + EXTERNAL DBRDVARSLICE + EXTERNAL DBREGFOPTS + EXTERNAL DBRMPTR + EXTERNAL DBSET2DSTRLEN + EXTERNAL DBSETCKSUMS + EXTERNAL DBSETCOMPRESS + EXTERNAL DBSETCWR + EXTERNAL DBSETDEPWARN + EXTERNAL DBSETDIR + EXTERNAL DBSETEMPTYOK + EXTERNAL DBSETHDFNMS + EXTERNAL DBSETOVRWRT + EXTERNAL DBSHOWERRORS + EXTERNAL DBUNREGAFOPTS + EXTERNAL DBUNREGFOPTS + EXTERNAL DBWRITE + EXTERNAL DBWRITESLICE + EXTERNAL DBWRTFL - integer dbaddcaopt, dbaddccmp, dbaddcopt, dbadddopt, dbaddiaopt - integer dbaddicmp, dbaddiopt, dbaddrcmp, dbaddregion - integer dbaddregiona, dbaddropt, dbcalcfl, dbclose, dbcreate - integer dberrno, dbfgetca, dbfreemrgtree, dbfreeobject - integer dbfreeoptlist, dbget2dstrlen, dbgetca, dbgetcksums - integer dbgetcompress, dbgetcurve, dbgetdepwarn, dbgethdfnms - integer dbgetovrwrt, dbgetqv1, dbinqca, dbinqfile, dbinqlen - integer dbmkdir, dbmkmrgtree, dbmkobject, dbmkoptlist, dbmkptr - integer dbopen, dbpmrgv, dbputca, dbputcsgm, dbputcsgv - integer dbputcsgzl, dbputcurve, dbputdefvars, dbputfl - integer dbputgrplmap, dbputmat, dbputmmat, dbputmmesh - integer dbputmrgtree, dbputmsp, dbputmvar, dbputpm, dbputpv1 - integer dbputqm, dbputqv, dbputqv1, dbputum, dbputuv1, dbputzl - integer dbputzl2, dbrdvar, dbrdvarslice, dbregfopts, dbrmptr - integer dbset2dstrlen, dbsetcksums, dbsetcompress, dbsetcwr - integer dbsetdepwarn, dbsetdir, dbsetdirid, dbsethdfnms - integer dbsetovrwrt, dbshowerrors, dbunregafopts, dbunregfopts - integer dbwrite, dbwriteslice, dbwrtfl + INTEGER DBADDCAOPT + INTEGER DBADDCCMP + INTEGER DBADDCOPT + INTEGER DBADDDOPT + INTEGER DBADDIAOPT + INTEGER DBADDICMP + INTEGER DBADDIOPT + INTEGER DBADDRCMP + INTEGER DBADDREGION + INTEGER DBADDREGIONA + INTEGER DBADDROPT + INTEGER DBCALCFL + INTEGER DBCLOSE + INTEGER DBCREATE + INTEGER DBERRNO + INTEGER DBFGETCA + INTEGER DBFREEMRGTREE + INTEGER DBFREEOBJECT + INTEGER DBFREEOPTLIST + INTEGER DBGET2DSTRLEN + INTEGER DBGETCA + INTEGER DBGETCKSUMS + INTEGER DBGETCOMPRESS + INTEGER DBGETCURVE + INTEGER DBGETDEPWARN + INTEGER DBGETEMPTYOK + INTEGER DBGETHDFNMS + INTEGER DBGETOVRWRT + INTEGER DBGETQV1 + INTEGER DBINQCA + INTEGER DBINQFILE + INTEGER DBINQLEN + INTEGER DBMKDIR + INTEGER DBMKMRGTREE + INTEGER DBMKOBJECT + INTEGER DBMKOPTLIST + INTEGER DBMKPTR + INTEGER DBOPEN + INTEGER DBPMRGV + INTEGER DBPUTCA + INTEGER DBPUTCSGM + INTEGER DBPUTCSGV + INTEGER DBPUTCSGZL + INTEGER DBPUTCURVE + INTEGER DBPUTDEFVARS + INTEGER DBPUTFL + INTEGER DBPUTGRPLMAP + INTEGER DBPUTMAT + INTEGER DBPUTMMAT + INTEGER DBPUTMMESH + INTEGER DBPUTMRGTREE + INTEGER DBPUTMSP + INTEGER DBPUTMVAR + INTEGER DBPUTPM + INTEGER DBPUTPV1 + INTEGER DBPUTQM + INTEGER DBPUTQV + INTEGER DBPUTQV1 + INTEGER DBPUTUM + INTEGER DBPUTUV1 + INTEGER DBPUTZL + INTEGER DBPUTZL2 + INTEGER DBRDVAR + INTEGER DBRDVARSLICE + INTEGER DBREGFOPTS + INTEGER DBRMPTR + INTEGER DBSET2DSTRLEN + INTEGER DBSETCKSUMS + INTEGER DBSETCOMPRESS + INTEGER DBSETCWR + INTEGER DBSETDEPWARN + INTEGER DBSETDIR + INTEGER DBSETEMPTYOK + INTEGER DBSETHDFNMS + INTEGER DBSETOVRWRT + INTEGER DBSHOWERRORS + INTEGER DBUNREGAFOPTS + INTEGER DBUNREGFOPTS + INTEGER DBWRITE + INTEGER DBWRITESLICE + INTEGER DBWRTFL -!...Parameters. - integer DBCSG_ANGLE_PNLA, DBCSG_ANGLE_PPA, DBCSG_BOX_XYXY - integer DBCSG_BOX_XYZXYZ, DBCSG_CIRCLE_PR, DBCSG_COMPLIMENT - integer DBCSG_CONE_PNLA, DBCSG_CONE_PPA, DBCSG_CYLINDER_PNLR - integer DBCSG_CYLINDER_PPR, DBCSG_DIFF, DBCSG_ELLIPSE_PRR - integer DBCSG_ELLIPSOID_PRRR, DBCSG_HEX_6F, DBCSG_INNER - integer DBCSG_INTERSECT, DBCSG_LINE_G, DBCSG_LINE_PN - integer DBCSG_LINE_PP, DBCSG_LINE_X, DBCSG_LINE_Y, DBCSG_ON - integer DBCSG_OUTER, DBCSG_PLANE_G, DBCSG_PLANE_PN - integer DBCSG_PLANE_PPP, DBCSG_PLANE_X, DBCSG_PLANE_Y - integer DBCSG_PLANE_Z, DBCSG_POLYGON_KP, DBCSG_POLYHEDRON_KF - integer DBCSG_PRISM_5F, DBCSG_PYRAMID_5F, DBCSG_QUADRATIC_G - integer DBCSG_QUADRIC_G, DBCSG_QUAD_4P, DBCSG_SPHERE_PR - integer DBCSG_SWEEP, DBCSG_TET_4F, DBCSG_TRI_3P, DBCSG_UNION - integer DBCSG_XFORM, DBOPT_ALIGN, DBOPT_ALLOWMAT0 - integer DBOPT_ASCII_LABEL, DBOPT_BASEINDEX, DBOPT_BLOCKORIGIN - integer DBOPT_BNDNAMES, DBOPT_CONSERVED, DBOPT_COORDSYS - integer DBOPT_CYCLE, DBOPT_DISJOINT_MODE, DBOPT_DTIME - integer DBOPT_EXTENSIVE, DBOPT_EXTENTS, DBOPT_EXTENTS_SIZE - integer DBOPT_FACETYPE, DBOPT_FIRST, DBOPT_GROUPINGNAMES - integer DBOPT_GROUPINGS, DBOPT_GROUPINGS_SIZE, DBOPT_GROUPNUM - integer DBOPT_GROUPORIGIN, DBOPT_H5_ALIGN_MIN, DBOPT_H5_ALIGN_VAL - integer DBOPT_H5_CACHE_NBYTES, DBOPT_H5_CACHE_NELMTS - integer DBOPT_H5_CACHE_POLICY, DBOPT_H5_CORE_ALLOC_INC - integer DBOPT_H5_CORE_NO_BACK_STORE, DBOPT_H5_DIRECT_BLOCK_SIZE - integer DBOPT_H5_DIRECT_BUF_SIZE, DBOPT_H5_DIRECT_MEM_ALIGN - integer DBOPT_H5_FAM_FILE_OPTS, DBOPT_H5_FAM_SIZE, DBOPT_H5_FIRST - integer DBOPT_H5_LAST, DBOPT_H5_LOG_BUF_SIZE, DBOPT_H5_LOG_NAME - integer DBOPT_H5_META_BLOCK_SIZE, DBOPT_H5_META_EXTENSION - integer DBOPT_H5_META_FILE_OPTS, DBOPT_H5_MPIO_COMM - integer DBOPT_H5_MPIO_INFO, DBOPT_H5_MPIP_NO_GPFS_HINTS - integer DBOPT_H5_RAW_EXTENSION, DBOPT_H5_RAW_FILE_OPTS - integer DBOPT_H5_SIEVE_BUF_SIZE, DBOPT_H5_SILO_BLOCK_COUNT - integer DBOPT_H5_SILO_BLOCK_SIZE, DBOPT_H5_SILO_LOG_STATS - integer DBOPT_H5_SILO_USE_DIRECT, DBOPT_H5_SMALL_RAW_SIZE - integer DBOPT_H5_USER_DRIVER_ID, DBOPT_H5_USER_DRIVER_INFO - integer DBOPT_H5_VFD, DBOPT_HAS_EXTERNAL_ZONES - integer DBOPT_HIDE_FROM_GUI, DBOPT_HI_OFFSET, DBOPT_LABEL - integer DBOPT_LAST, DBOPT_LLONGNZNUM, DBOPT_LO_OFFSET - integer DBOPT_MAJORORDER, DBOPT_MATCOLORS, DBOPT_MATCOUNTS - integer DBOPT_MATLISTS, DBOPT_MATNAME, DBOPT_MATNAMES - integer DBOPT_MATNOS, DBOPT_MB_BLOCK_NS, DBOPT_MB_BLOCK_TYPE - integer DBOPT_MB_EMPTY_COUNT, DBOPT_MB_EMPTY_LIST - integer DBOPT_MB_FILE_NS, DBOPT_MIXLENS, DBOPT_MMESH_NAME - integer DBOPT_MRGTREE_NAME, DBOPT_MRGV_ONAMES, DBOPT_MRGV_RNAMES - integer DBOPT_NGROUPS, DBOPT_NMAT, DBOPT_NMATNOS, DBOPT_NMATSPEC - integer DBOPT_NODENUM, DBOPT_NSPACE, DBOPT_ORIGIN - integer DBOPT_PHZONELIST, DBOPT_PLANAR, DBOPT_REFERENCE - integer DBOPT_REGION_PNAMES, DBOPT_REGNAMES, DBOPT_SPECCOLORS - integer DBOPT_SPECNAMES, DBOPT_TENSOR_RANK, DBOPT_TIME - integer DBOPT_TOPO_DIM, DBOPT_TV_CONNECTIVITY, DBOPT_UNITS - integer DBOPT_USESPECMF, DBOPT_XLABEL, DBOPT_XUNITS - integer DBOPT_XVARNAME, DBOPT_YLABEL, DBOPT_YUNITS - integer DBOPT_YVARNAME, DBOPT_ZLABEL, DBOPT_ZONECOUNTS - integer DBOPT_ZONENAMES, DBOPT_ZONENUM, DBOPT_ZUNITS - integer DBOPT_ZVARNAME, DB_ABORT, DB_ABUTTING, DB_ALL - integer DB_ALL_AND_DRVR, DB_APPEND, DB_AREA, DB_ARRAY - integer DB_BLOCKCENT, DB_BNDCENT, DB_CARTESIAN, DB_CHAR - integer DB_CLOBBER, DB_COLLINEAR, DB_COLMAJOR, DB_CRAY - integer DB_CSGMESH, DB_CSGVAR, DB_CSGZONELIST, DB_CURVE - integer DB_CURVILINEAR, DB_CYLINDRICAL, DB_DEBUG, DB_DEFVARS - integer DB_DIR, DB_DOUBLE, DB_EDGECENT, DB_EDGELIST, DB_F77NULL - integer DB_FACECENT, DB_FACELIST, DB_FILE_OPTS_H5_DEFAULT_CORE - integer DB_FILE_OPTS_H5_DEFAULT_DEFAULT - integer DB_FILE_OPTS_H5_DEFAULT_DIRECT - integer DB_FILE_OPTS_H5_DEFAULT_FAMILY - integer DB_FILE_OPTS_H5_DEFAULT_LOG, DB_FILE_OPTS_H5_DEFAULT_MPIO - integer DB_FILE_OPTS_H5_DEFAULT_MPIP - integer DB_FILE_OPTS_H5_DEFAULT_SEC2 - integer DB_FILE_OPTS_H5_DEFAULT_SILO - integer DB_FILE_OPTS_H5_DEFAULT_SPLIT - integer DB_FILE_OPTS_H5_DEFAULT_STDIO, DB_FILE_OPTS_LAST - integer DB_FLOAT, DB_FLOATING, DB_FROMCWR, DB_GROUPELMAP - integer DB_H5VFD_CORE, DB_H5VFD_DEFAULT, DB_H5VFD_DIRECT - integer DB_H5VFD_FAMILY, DB_H5VFD_LOG, DB_H5VFD_MPIO - integer DB_H5VFD_MPIP, DB_H5VFD_SEC2, DB_H5VFD_SILO - integer DB_H5VFD_SPLIT, DB_H5VFD_STDIO, DB_HDF5, DB_HDF5X - integer DB_HDF5_CORE, DB_HDF5_CORE_OBSOLETE, DB_HDF5_DIRECT - integer DB_HDF5_FAMILY, DB_HDF5_LOG, DB_HDF5_MPIO, DB_HDF5_MPIOP - integer DB_HDF5_MPIOP_OBSOLETE, DB_HDF5_MPIO_OBSOLETE - integer DB_HDF5_MPIP, DB_HDF5_SEC2, DB_HDF5_SEC2_OBSOLETE - integer DB_HDF5_SILO, DB_HDF5_SPLIT, DB_HDF5_STDIO - integer DB_HDF5_STDIO_OBSOLETE, DB_INT, DB_INTEL - integer DB_INVALID_OBJECT, DB_LOCAL, DB_LONG, DB_LONG_LONG - integer DB_MATERIAL, DB_MATSPECIES, DB_MRGTREE, DB_MRGVAR - integer DB_MULTIBLOCKMESH, DB_MULTIBLOCKVAR, DB_MULTIMAT - integer DB_MULTIMATSPECIES, DB_MULTIMESH, DB_MULTIMESHADJ - integer DB_MULTIVAR, DB_NETCDF, DB_NFILES, DB_NFILTERS - integer DB_NOCLOBBER, DB_NODECENT, DB_NONCOLLINEAR, DB_NONE - integer DB_NOTCENT, DB_NOTYPE, DB_NUMERICAL, DB_OFF, DB_ON - integer DB_OTHER, DB_PDB, DB_PDBP, DB_PHZONELIST, DB_POINTMESH - integer DB_POINTVAR, DB_POSTORDER, DB_PREORDER, DB_QUADCURV - integer DB_QUADMESH, DB_QUADRECT, DB_QUADVAR, DB_QUAD_CURV - integer DB_QUAD_RECT, DB_READ, DB_RECTILINEAR, DB_RESUME - integer DB_ROWMAJOR, DB_RS6000, DB_SGI, DB_SHORT, DB_SPHERICAL - integer DB_SUN3, DB_SUN4, DB_SUSPEND, DB_TAURUS, DB_TOP - integer DB_UCDMESH, DB_UCDVAR, DB_UNKNOWN, DB_USERDEF - integer DB_VARIABLE, DB_VARTYPE_ARRAY, DB_VARTYPE_LABEL - integer DB_VARTYPE_MATERIAL, DB_VARTYPE_SCALAR - integer DB_VARTYPE_SPECIES, DB_VARTYPE_SYMTENSOR - integer DB_VARTYPE_TENSOR, DB_VARTYPE_VECTOR, DB_VOLUME - integer DB_ZONECENT, DB_ZONELIST, DB_ZONETYPE_BEAM - integer DB_ZONETYPE_HEX, DB_ZONETYPE_POLYGON - integer DB_ZONETYPE_POLYHEDRON, DB_ZONETYPE_PRISM - integer DB_ZONETYPE_PYRAMID, DB_ZONETYPE_QUAD, DB_ZONETYPE_TET - integer DB_ZONETYPE_TRIANGLE, SILO_VERS_MAJ, SILO_VERS_MIN - integer SILO_VERS_PAT, SILO_VERS_PRE - character*12 DB_F77NULLSTRING +C...Parameters. + INTEGER DBCSG_ANGLE_PNLA + INTEGER DBCSG_ANGLE_PPA + INTEGER DBCSG_BOX_XYXY + INTEGER DBCSG_BOX_XYZXYZ + INTEGER DBCSG_CIRCLE_PR + INTEGER DBCSG_COMPLIMENT + INTEGER DBCSG_CONE_PNLA + INTEGER DBCSG_CONE_PPA + INTEGER DBCSG_CYLINDER_PNLR + INTEGER DBCSG_CYLINDER_PPR + INTEGER DBCSG_DIFF + INTEGER DBCSG_ELLIPSE_PRR + INTEGER DBCSG_ELLIPSOID_PRRR + INTEGER DBCSG_HEX_6F + INTEGER DBCSG_INNER + INTEGER DBCSG_INTERSECT + INTEGER DBCSG_LINE_G + INTEGER DBCSG_LINE_PN + INTEGER DBCSG_LINE_PP + INTEGER DBCSG_LINE_X + INTEGER DBCSG_LINE_Y + INTEGER DBCSG_ON + INTEGER DBCSG_OUTER + INTEGER DBCSG_PLANE_G + INTEGER DBCSG_PLANE_PN + INTEGER DBCSG_PLANE_PPP + INTEGER DBCSG_PLANE_X + INTEGER DBCSG_PLANE_Y + INTEGER DBCSG_PLANE_Z + INTEGER DBCSG_POLYGON_KP + INTEGER DBCSG_POLYHEDRON_KF + INTEGER DBCSG_PRISM_5F + INTEGER DBCSG_PYRAMID_5F + INTEGER DBCSG_QUADRATIC_G + INTEGER DBCSG_QUADRIC_G + INTEGER DBCSG_QUAD_4P + INTEGER DBCSG_SPHERE_PR + INTEGER DBCSG_SWEEP + INTEGER DBCSG_TET_4F + INTEGER DBCSG_TRI_3P + INTEGER DBCSG_UNION + INTEGER DBCSG_XFORM + INTEGER DBOPT_ALIGN + INTEGER DBOPT_ALLOWMAT0 + INTEGER DBOPT_ALT_NODENUM_VARS + INTEGER DBOPT_ALT_ZONENUM_VARS + INTEGER DBOPT_ASCII_LABEL + INTEGER DBOPT_BASEINDEX + INTEGER DBOPT_BLOCKORIGIN + INTEGER DBOPT_BNDNAMES + INTEGER DBOPT_CONSERVED + INTEGER DBOPT_COORDSYS + INTEGER DBOPT_CYCLE + INTEGER DBOPT_DISJOINT_MODE + INTEGER DBOPT_DTIME + INTEGER DBOPT_EXTENSIVE + INTEGER DBOPT_EXTENTS + INTEGER DBOPT_EXTENTS_SIZE + INTEGER DBOPT_FACETYPE + INTEGER DBOPT_FIRST + INTEGER DBOPT_GHOST_NODE_LABELS + INTEGER DBOPT_GHOST_ZONE_LABELS + INTEGER DBOPT_GROUPINGNAMES + INTEGER DBOPT_GROUPINGS + INTEGER DBOPT_GROUPINGS_SIZE + INTEGER DBOPT_GROUPNUM + INTEGER DBOPT_GROUPORIGIN + INTEGER DBOPT_H5_ALIGN_MIN + INTEGER DBOPT_H5_ALIGN_VAL + INTEGER DBOPT_H5_CACHE_NBYTES + INTEGER DBOPT_H5_CACHE_NELMTS + INTEGER DBOPT_H5_CACHE_POLICY + INTEGER DBOPT_H5_CORE_ALLOC_INC + INTEGER DBOPT_H5_CORE_NO_BACK_STORE + INTEGER DBOPT_H5_DIRECT_BLOCK_SIZE + INTEGER DBOPT_H5_DIRECT_BUF_SIZE + INTEGER DBOPT_H5_DIRECT_MEM_ALIGN + INTEGER DBOPT_H5_FAM_FILE_OPTS + INTEGER DBOPT_H5_FAM_SIZE + INTEGER DBOPT_H5_FIC_BUF + INTEGER DBOPT_H5_FIC_SIZE + INTEGER DBOPT_H5_FIRST + INTEGER DBOPT_H5_LAST + INTEGER DBOPT_H5_LOG_BUF_SIZE + INTEGER DBOPT_H5_LOG_NAME + INTEGER DBOPT_H5_META_BLOCK_SIZE + INTEGER DBOPT_H5_META_EXTENSION + INTEGER DBOPT_H5_META_FILE_OPTS + INTEGER DBOPT_H5_MPIO_COMM + INTEGER DBOPT_H5_MPIO_INFO + INTEGER DBOPT_H5_MPIP_NO_GPFS_HINTS + INTEGER DBOPT_H5_RAW_EXTENSION + INTEGER DBOPT_H5_RAW_FILE_OPTS + INTEGER DBOPT_H5_SIEVE_BUF_SIZE + INTEGER DBOPT_H5_SILO_BLOCK_COUNT + INTEGER DBOPT_H5_SILO_BLOCK_SIZE + INTEGER DBOPT_H5_SILO_LOG_STATS + INTEGER DBOPT_H5_SILO_USE_DIRECT + INTEGER DBOPT_H5_SMALL_RAW_SIZE + INTEGER DBOPT_H5_USER_DRIVER_ID + INTEGER DBOPT_H5_USER_DRIVER_INFO + INTEGER DBOPT_H5_VFD + INTEGER DBOPT_HAS_EXTERNAL_ZONES + INTEGER DBOPT_HIDE_FROM_GUI + INTEGER DBOPT_HI_OFFSET + INTEGER DBOPT_LABEL + INTEGER DBOPT_LAST + INTEGER DBOPT_LLONGNZNUM + INTEGER DBOPT_LO_OFFSET + INTEGER DBOPT_MAJORORDER + INTEGER DBOPT_MATCOLORS + INTEGER DBOPT_MATCOUNTS + INTEGER DBOPT_MATLISTS + INTEGER DBOPT_MATNAME + INTEGER DBOPT_MATNAMES + INTEGER DBOPT_MATNOS + INTEGER DBOPT_MB_BLOCK_NS + INTEGER DBOPT_MB_BLOCK_TYPE + INTEGER DBOPT_MB_EMPTY_COUNT + INTEGER DBOPT_MB_EMPTY_LIST + INTEGER DBOPT_MB_FILE_NS + INTEGER DBOPT_MB_REPR_BLOCK_IDX + INTEGER DBOPT_MISSING_VALUE + INTEGER DBOPT_MIXLENS + INTEGER DBOPT_MMESH_NAME + INTEGER DBOPT_MRGTREE_NAME + INTEGER DBOPT_MRGV_ONAMES + INTEGER DBOPT_MRGV_RNAMES + INTEGER DBOPT_NGROUPS + INTEGER DBOPT_NMAT + INTEGER DBOPT_NMATNOS + INTEGER DBOPT_NMATSPEC + INTEGER DBOPT_NODENUM + INTEGER DBOPT_NSPACE + INTEGER DBOPT_ORIGIN + INTEGER DBOPT_PHZONELIST + INTEGER DBOPT_PLANAR + INTEGER DBOPT_REFERENCE + INTEGER DBOPT_REGION_PNAMES + INTEGER DBOPT_REGNAMES + INTEGER DBOPT_SPECCOLORS + INTEGER DBOPT_SPECNAMES + INTEGER DBOPT_TENSOR_RANK + INTEGER DBOPT_TIME + INTEGER DBOPT_TOPO_DIM + INTEGER DBOPT_TV_CONNECTIVITY + INTEGER DBOPT_UNITS + INTEGER DBOPT_USESPECMF + INTEGER DBOPT_XLABEL + INTEGER DBOPT_XUNITS + INTEGER DBOPT_XVARNAME + INTEGER DBOPT_YLABEL + INTEGER DBOPT_YUNITS + INTEGER DBOPT_YVARNAME + INTEGER DBOPT_ZLABEL + INTEGER DBOPT_ZONECOUNTS + INTEGER DBOPT_ZONENAMES + INTEGER DBOPT_ZONENUM + INTEGER DBOPT_ZUNITS + INTEGER DBOPT_ZVARNAME + INTEGER DB_ABORT + INTEGER DB_ABUTTING + INTEGER DB_ALL + INTEGER DB_ALL_AND_DRVR + INTEGER DB_APPEND + INTEGER DB_AREA + INTEGER DB_ARRAY + INTEGER DB_BLOCKCENT + INTEGER DB_BNDCENT + INTEGER DB_CARTESIAN + INTEGER DB_CHAR + INTEGER DB_CLOBBER + INTEGER DB_COLLINEAR + INTEGER DB_COLMAJOR + INTEGER DB_CRAY + INTEGER DB_CSGMESH + INTEGER DB_CSGVAR + INTEGER DB_CSGZONELIST + INTEGER DB_CURVE + INTEGER DB_CURVILINEAR + INTEGER DB_CYLINDRICAL + INTEGER DB_DEBUG + INTEGER DB_DEFVARS + INTEGER DB_DIR + INTEGER DB_DOUBLE + INTEGER DB_EDGECENT + INTEGER DB_EDGELIST + INTEGER DB_F77NULL + INTEGER DB_FACECENT + INTEGER DB_FACELIST + INTEGER DB_FILE_OPTS_H5_DEFAULT_CORE + INTEGER DB_FILE_OPTS_H5_DEFAULT_DEFAULT + INTEGER DB_FILE_OPTS_H5_DEFAULT_DIRECT + INTEGER DB_FILE_OPTS_H5_DEFAULT_FAMILY + INTEGER DB_FILE_OPTS_H5_DEFAULT_LOG + INTEGER DB_FILE_OPTS_H5_DEFAULT_MPIO + INTEGER DB_FILE_OPTS_H5_DEFAULT_MPIP + INTEGER DB_FILE_OPTS_H5_DEFAULT_SEC2 + INTEGER DB_FILE_OPTS_H5_DEFAULT_SILO + INTEGER DB_FILE_OPTS_H5_DEFAULT_SPLIT + INTEGER DB_FILE_OPTS_H5_DEFAULT_STDIO + INTEGER DB_FILE_OPTS_LAST + INTEGER DB_FLOAT + INTEGER DB_FLOATING + INTEGER DB_FROMCWR + INTEGER DB_GHOSTTYPE_INTDUP + INTEGER DB_GHOSTTYPE_NOGHOST + INTEGER DB_GROUPELMAP + INTEGER DB_H5VFD_CORE + INTEGER DB_H5VFD_DEFAULT + INTEGER DB_H5VFD_DIRECT + INTEGER DB_H5VFD_FAMILY + INTEGER DB_H5VFD_FIC + INTEGER DB_H5VFD_LOG + INTEGER DB_H5VFD_MPIO + INTEGER DB_H5VFD_MPIP + INTEGER DB_H5VFD_SEC2 + INTEGER DB_H5VFD_SILO + INTEGER DB_H5VFD_SPLIT + INTEGER DB_H5VFD_STDIO + INTEGER DB_HDF5 + INTEGER DB_HDF5X + INTEGER DB_HDF5_CORE + INTEGER DB_HDF5_CORE_OBSOLETE + INTEGER DB_HDF5_DIRECT + INTEGER DB_HDF5_FAMILY + INTEGER DB_HDF5_LOG + INTEGER DB_HDF5_MPIO + INTEGER DB_HDF5_MPIOP + INTEGER DB_HDF5_MPIOP_OBSOLETE + INTEGER DB_HDF5_MPIO_OBSOLETE + INTEGER DB_HDF5_MPIP + INTEGER DB_HDF5_SEC2 + INTEGER DB_HDF5_SEC2_OBSOLETE + INTEGER DB_HDF5_SILO + INTEGER DB_HDF5_SPLIT + INTEGER DB_HDF5_STDIO + INTEGER DB_HDF5_STDIO_OBSOLETE + INTEGER DB_INT + INTEGER DB_INTEL + INTEGER DB_INVALID_OBJECT + INTEGER DB_LOCAL + INTEGER DB_LONG + INTEGER DB_LONG_LONG + INTEGER DB_MATERIAL + INTEGER DB_MATSPECIES + INTEGER DB_MAX_H5_OBJ_VALS + DOUBLE PRECISION DB_MISSING_VALUE_NOT_SET + INTEGER DB_MRGTREE + INTEGER DB_MRGVAR + INTEGER DB_MULTIBLOCKMESH + INTEGER DB_MULTIBLOCKVAR + INTEGER DB_MULTIMAT + INTEGER DB_MULTIMATSPECIES + INTEGER DB_MULTIMESH + INTEGER DB_MULTIMESHADJ + INTEGER DB_MULTIVAR + INTEGER DB_NETCDF + INTEGER DB_NFILES + INTEGER DB_NFILTERS + INTEGER DB_NOCLOBBER + INTEGER DB_NODECENT + INTEGER DB_NONCOLLINEAR + INTEGER DB_NONE + INTEGER DB_NOTCENT + INTEGER DB_NOTYPE + INTEGER DB_NUMERICAL + INTEGER DB_OFF + INTEGER DB_ON + INTEGER DB_OTHER + INTEGER DB_PDB + INTEGER DB_PDBP + INTEGER DB_PHZONELIST + INTEGER DB_POINTMESH + INTEGER DB_POINTVAR + INTEGER DB_POSTORDER + INTEGER DB_PREORDER + INTEGER DB_QUADCURV + INTEGER DB_QUADMESH + INTEGER DB_QUADRECT + INTEGER DB_QUADVAR + INTEGER DB_QUAD_CURV + INTEGER DB_QUAD_RECT + INTEGER DB_READ + INTEGER DB_RECTILINEAR + INTEGER DB_RESUME + INTEGER DB_ROWMAJOR + INTEGER DB_RS6000 + INTEGER DB_SGI + INTEGER DB_SHORT + INTEGER DB_SPHERICAL + INTEGER DB_SUN3 + INTEGER DB_SUN4 + INTEGER DB_SUSPEND + INTEGER DB_TAURUS + INTEGER DB_TOP + INTEGER DB_UCDMESH + INTEGER DB_UCDVAR + INTEGER DB_UNKNOWN + INTEGER DB_USERDEF + INTEGER DB_VARIABLE + INTEGER DB_VARTYPE_ARRAY + INTEGER DB_VARTYPE_LABEL + INTEGER DB_VARTYPE_MATERIAL + INTEGER DB_VARTYPE_SCALAR + INTEGER DB_VARTYPE_SPECIES + INTEGER DB_VARTYPE_SYMTENSOR + INTEGER DB_VARTYPE_TENSOR + INTEGER DB_VARTYPE_VECTOR + INTEGER DB_VOLUME + INTEGER DB_ZONECENT + INTEGER DB_ZONELIST + INTEGER DB_ZONETYPE_BEAM + INTEGER DB_ZONETYPE_HEX + INTEGER DB_ZONETYPE_POLYGON + INTEGER DB_ZONETYPE_POLYHEDRON + INTEGER DB_ZONETYPE_PRISM + INTEGER DB_ZONETYPE_PYRAMID + INTEGER DB_ZONETYPE_QUAD + INTEGER DB_ZONETYPE_TET + INTEGER DB_ZONETYPE_TRIANGLE + INTEGER SILO_VERS_MAJ + INTEGER SILO_VERS_MIN + INTEGER SILO_VERS_PAT + INTEGER SILO_VERS_PRE + CHARACTER*10 DB_F77NULLSTRING - parameter(SILO_VERS_MAJ=4) - parameter(SILO_VERS_MIN=8) - parameter(SILO_VERS_PAT=0) - parameter(SILO_VERS_PRE=0) - parameter(DB_NETCDF=0) - parameter(DB_PDB=2) - parameter(DB_TAURUS=3) - parameter(DB_UNKNOWN=5) - parameter(DB_DEBUG=6) - parameter(DB_HDF5X=7) - parameter(DB_PDBP=1) - parameter(DB_HDF5_SEC2_OBSOLETE=256) - parameter(DB_HDF5_STDIO_OBSOLETE=512) - parameter(DB_HDF5_CORE_OBSOLETE=768) - parameter(DB_HDF5_MPIO_OBSOLETE=1024) - parameter(DB_HDF5_MPIOP_OBSOLETE=1280) - parameter(DB_H5VFD_DEFAULT=0) - parameter(DB_H5VFD_SEC2=1) - parameter(DB_H5VFD_STDIO=2) - parameter(DB_H5VFD_CORE=3) - parameter(DB_H5VFD_LOG=4) - parameter(DB_H5VFD_SPLIT=5) - parameter(DB_H5VFD_DIRECT=6) - parameter(DB_H5VFD_FAMILY=7) - parameter(DB_H5VFD_MPIO=8) - parameter(DB_H5VFD_MPIP=9) - parameter(DB_H5VFD_SILO=10) - parameter(DB_FILE_OPTS_H5_DEFAULT_DEFAULT=0) - parameter(DB_FILE_OPTS_H5_DEFAULT_SEC2=1) - parameter(DB_FILE_OPTS_H5_DEFAULT_STDIO=2) - parameter(DB_FILE_OPTS_H5_DEFAULT_CORE=3) - parameter(DB_FILE_OPTS_H5_DEFAULT_LOG=4) - parameter(DB_FILE_OPTS_H5_DEFAULT_SPLIT=5) - parameter(DB_FILE_OPTS_H5_DEFAULT_DIRECT=6) - parameter(DB_FILE_OPTS_H5_DEFAULT_FAMILY=7) - parameter(DB_FILE_OPTS_H5_DEFAULT_MPIO=8) - parameter(DB_FILE_OPTS_H5_DEFAULT_MPIP=9) - parameter(DB_FILE_OPTS_H5_DEFAULT_SILO=10) - parameter(DB_FILE_OPTS_LAST=10) - parameter(DB_HDF5=7) - parameter(DB_HDF5_SEC2=2055) - parameter(DB_HDF5_STDIO=4103) - parameter(DB_HDF5_CORE=6151) - parameter(DB_HDF5_LOG=8199) - parameter(DB_HDF5_SPLIT=10247) - parameter(DB_HDF5_DIRECT=12295) - parameter(DB_HDF5_FAMILY=14343) - parameter(DB_HDF5_MPIO=16391) - parameter(DB_HDF5_MPIOP=18439) - parameter(DB_HDF5_MPIP=18439) - parameter(DB_HDF5_SILO=20487) - parameter(DB_NFILES=256) - parameter(DB_NFILTERS=32) - parameter(DB_COLLINEAR=130) - parameter(DB_NONCOLLINEAR=131) - parameter(DB_QUAD_RECT=130) - parameter(DB_QUAD_CURV=131) - parameter(DB_INVALID_OBJECT=-1) - parameter(DB_QUADRECT=130) - parameter(DB_QUADCURV=131) - parameter(DB_QUADMESH=500) - parameter(DB_QUADVAR=501) - parameter(DB_UCDMESH=510) - parameter(DB_UCDVAR=511) - parameter(DB_MULTIMESH=520) - parameter(DB_MULTIVAR=521) - parameter(DB_MULTIMAT=522) - parameter(DB_MULTIMATSPECIES=523) - parameter(DB_MULTIBLOCKMESH=520) - parameter(DB_MULTIBLOCKVAR=521) - parameter(DB_MULTIMESHADJ=524) - parameter(DB_MATERIAL=530) - parameter(DB_MATSPECIES=531) - parameter(DB_FACELIST=550) - parameter(DB_ZONELIST=551) - parameter(DB_EDGELIST=552) - parameter(DB_PHZONELIST=553) - parameter(DB_CSGZONELIST=554) - parameter(DB_CSGMESH=555) - parameter(DB_CSGVAR=556) - parameter(DB_CURVE=560) - parameter(DB_DEFVARS=565) - parameter(DB_POINTMESH=570) - parameter(DB_POINTVAR=571) - parameter(DB_ARRAY=580) - parameter(DB_DIR=600) - parameter(DB_VARIABLE=610) - parameter(DB_MRGTREE=611) - parameter(DB_GROUPELMAP=612) - parameter(DB_MRGVAR=613) - parameter(DB_USERDEF=700) - parameter(DB_INT=16) - parameter(DB_SHORT=17) - parameter(DB_LONG=18) - parameter(DB_FLOAT=19) - parameter(DB_DOUBLE=20) - parameter(DB_CHAR=21) - parameter(DB_LONG_LONG=22) - parameter(DB_NOTYPE=25) - parameter(DB_CLOBBER=0) - parameter(DB_NOCLOBBER=1) - parameter(DB_READ=1) - parameter(DB_APPEND=2) - parameter(DB_LOCAL=0) - parameter(DB_SUN3=10) - parameter(DB_SUN4=11) - parameter(DB_SGI=12) - parameter(DB_RS6000=13) - parameter(DB_CRAY=14) - parameter(DB_INTEL=15) - parameter(DBOPT_FIRST=260) - parameter(DBOPT_ALIGN=260) - parameter(DBOPT_COORDSYS=262) - parameter(DBOPT_CYCLE=263) - parameter(DBOPT_FACETYPE=264) - parameter(DBOPT_HI_OFFSET=265) - parameter(DBOPT_LO_OFFSET=266) - parameter(DBOPT_LABEL=267) - parameter(DBOPT_XLABEL=268) - parameter(DBOPT_YLABEL=269) - parameter(DBOPT_ZLABEL=270) - parameter(DBOPT_MAJORORDER=271) - parameter(DBOPT_NSPACE=272) - parameter(DBOPT_ORIGIN=273) - parameter(DBOPT_PLANAR=274) - parameter(DBOPT_TIME=275) - parameter(DBOPT_UNITS=276) - parameter(DBOPT_XUNITS=277) - parameter(DBOPT_YUNITS=278) - parameter(DBOPT_ZUNITS=279) - parameter(DBOPT_DTIME=280) - parameter(DBOPT_USESPECMF=281) - parameter(DBOPT_XVARNAME=282) - parameter(DBOPT_YVARNAME=283) - parameter(DBOPT_ZVARNAME=284) - parameter(DBOPT_ASCII_LABEL=285) - parameter(DBOPT_MATNOS=286) - parameter(DBOPT_NMATNOS=287) - parameter(DBOPT_MATNAME=288) - parameter(DBOPT_NMAT=289) - parameter(DBOPT_NMATSPEC=290) - parameter(DBOPT_BASEINDEX=291) - parameter(DBOPT_ZONENUM=292) - parameter(DBOPT_NODENUM=293) - parameter(DBOPT_BLOCKORIGIN=294) - parameter(DBOPT_GROUPNUM=295) - parameter(DBOPT_GROUPORIGIN=296) - parameter(DBOPT_NGROUPS=297) - parameter(DBOPT_MATNAMES=298) - parameter(DBOPT_EXTENTS_SIZE=299) - parameter(DBOPT_EXTENTS=300) - parameter(DBOPT_MATCOUNTS=301) - parameter(DBOPT_MATLISTS=302) - parameter(DBOPT_MIXLENS=303) - parameter(DBOPT_ZONECOUNTS=304) - parameter(DBOPT_HAS_EXTERNAL_ZONES=305) - parameter(DBOPT_PHZONELIST=306) - parameter(DBOPT_MATCOLORS=307) - parameter(DBOPT_BNDNAMES=308) - parameter(DBOPT_REGNAMES=309) - parameter(DBOPT_ZONENAMES=310) - parameter(DBOPT_HIDE_FROM_GUI=311) - parameter(DBOPT_TOPO_DIM=312) - parameter(DBOPT_REFERENCE=313) - parameter(DBOPT_GROUPINGS_SIZE=314) - parameter(DBOPT_GROUPINGS=315) - parameter(DBOPT_GROUPINGNAMES=316) - parameter(DBOPT_ALLOWMAT0=317) - parameter(DBOPT_MRGTREE_NAME=318) - parameter(DBOPT_REGION_PNAMES=319) - parameter(DBOPT_TENSOR_RANK=320) - parameter(DBOPT_MMESH_NAME=321) - parameter(DBOPT_TV_CONNECTIVITY=322) - parameter(DBOPT_DISJOINT_MODE=323) - parameter(DBOPT_MRGV_ONAMES=324) - parameter(DBOPT_MRGV_RNAMES=325) - parameter(DBOPT_SPECNAMES=326) - parameter(DBOPT_SPECCOLORS=327) - parameter(DBOPT_LLONGNZNUM=328) - parameter(DBOPT_CONSERVED=329) - parameter(DBOPT_EXTENSIVE=330) - parameter(DBOPT_MB_FILE_NS=331) - parameter(DBOPT_MB_BLOCK_NS=332) - parameter(DBOPT_MB_BLOCK_TYPE=333) - parameter(DBOPT_MB_EMPTY_LIST=334) - parameter(DBOPT_MB_EMPTY_COUNT=335) - parameter(DBOPT_LAST=499) - parameter(DBOPT_H5_FIRST=500) - parameter(DBOPT_H5_VFD=500) - parameter(DBOPT_H5_RAW_FILE_OPTS=501) - parameter(DBOPT_H5_RAW_EXTENSION=502) - parameter(DBOPT_H5_META_FILE_OPTS=503) - parameter(DBOPT_H5_META_EXTENSION=504) - parameter(DBOPT_H5_CORE_ALLOC_INC=505) - parameter(DBOPT_H5_CORE_NO_BACK_STORE=506) - parameter(DBOPT_H5_META_BLOCK_SIZE=507) - parameter(DBOPT_H5_SMALL_RAW_SIZE=508) - parameter(DBOPT_H5_ALIGN_MIN=509) - parameter(DBOPT_H5_ALIGN_VAL=510) - parameter(DBOPT_H5_DIRECT_MEM_ALIGN=511) - parameter(DBOPT_H5_DIRECT_BLOCK_SIZE=512) - parameter(DBOPT_H5_DIRECT_BUF_SIZE=513) - parameter(DBOPT_H5_LOG_NAME=514) - parameter(DBOPT_H5_LOG_BUF_SIZE=515) - parameter(DBOPT_H5_MPIO_COMM=516) - parameter(DBOPT_H5_MPIO_INFO=517) - parameter(DBOPT_H5_MPIP_NO_GPFS_HINTS=518) - parameter(DBOPT_H5_SIEVE_BUF_SIZE=519) - parameter(DBOPT_H5_CACHE_NELMTS=520) - parameter(DBOPT_H5_CACHE_NBYTES=521) - parameter(DBOPT_H5_CACHE_POLICY=522) - parameter(DBOPT_H5_FAM_SIZE=523) - parameter(DBOPT_H5_FAM_FILE_OPTS=524) - parameter(DBOPT_H5_USER_DRIVER_ID=525) - parameter(DBOPT_H5_USER_DRIVER_INFO=526) - parameter(DBOPT_H5_SILO_BLOCK_SIZE=527) - parameter(DBOPT_H5_SILO_BLOCK_COUNT=528) - parameter(DBOPT_H5_SILO_LOG_STATS=529) - parameter(DBOPT_H5_SILO_USE_DIRECT=530) - parameter(DBOPT_H5_LAST=599) - parameter(DB_TOP=0) - parameter(DB_NONE=1) - parameter(DB_ALL=2) - parameter(DB_ABORT=3) - parameter(DB_SUSPEND=4) - parameter(DB_RESUME=5) - parameter(DB_ALL_AND_DRVR=6) - parameter(DB_ROWMAJOR=0) - parameter(DB_COLMAJOR=1) - parameter(DB_NOTCENT=0) - parameter(DB_NODECENT=110) - parameter(DB_ZONECENT=111) - parameter(DB_FACECENT=112) - parameter(DB_BNDCENT=113) - parameter(DB_EDGECENT=114) - parameter(DB_BLOCKCENT=115) - parameter(DB_CARTESIAN=120) - parameter(DB_CYLINDRICAL=121) - parameter(DB_SPHERICAL=122) - parameter(DB_NUMERICAL=123) - parameter(DB_OTHER=124) - parameter(DB_RECTILINEAR=100) - parameter(DB_CURVILINEAR=101) - parameter(DB_AREA=140) - parameter(DB_VOLUME=141) - parameter(DB_ON=1000) - parameter(DB_OFF=-1000) - parameter(DB_ABUTTING=142) - parameter(DB_FLOATING=143) - parameter(DB_VARTYPE_SCALAR=200) - parameter(DB_VARTYPE_VECTOR=201) - parameter(DB_VARTYPE_TENSOR=202) - parameter(DB_VARTYPE_SYMTENSOR=203) - parameter(DB_VARTYPE_ARRAY=204) - parameter(DB_VARTYPE_MATERIAL=205) - parameter(DB_VARTYPE_SPECIES=206) - parameter(DB_VARTYPE_LABEL=207) - parameter(DBCSG_QUADRIC_G=16777216) - parameter(DBCSG_SPHERE_PR=33619968) - parameter(DBCSG_ELLIPSOID_PRRR=33685504) - parameter(DBCSG_PLANE_G=50331648) - parameter(DBCSG_PLANE_X=50397184) - parameter(DBCSG_PLANE_Y=50462720) - parameter(DBCSG_PLANE_Z=50528256) - parameter(DBCSG_PLANE_PN=50593792) - parameter(DBCSG_PLANE_PPP=50659328) - parameter(DBCSG_CYLINDER_PNLR=67108864) - parameter(DBCSG_CYLINDER_PPR=67174400) - parameter(DBCSG_BOX_XYZXYZ=83886080) - parameter(DBCSG_CONE_PNLA=100663296) - parameter(DBCSG_CONE_PPA=100728832) - parameter(DBCSG_POLYHEDRON_KF=117440512) - parameter(DBCSG_HEX_6F=117506048) - parameter(DBCSG_TET_4F=117571584) - parameter(DBCSG_PYRAMID_5F=117637120) - parameter(DBCSG_PRISM_5F=117702656) - parameter(DBCSG_QUADRATIC_G=134217728) - parameter(DBCSG_CIRCLE_PR=150994944) - parameter(DBCSG_ELLIPSE_PRR=151060480) - parameter(DBCSG_LINE_G=167772160) - parameter(DBCSG_LINE_X=167837696) - parameter(DBCSG_LINE_Y=167903232) - parameter(DBCSG_LINE_PN=167968768) - parameter(DBCSG_LINE_PP=168034304) - parameter(DBCSG_BOX_XYXY=184549376) - parameter(DBCSG_ANGLE_PNLA=201326592) - parameter(DBCSG_ANGLE_PPA=201392128) - parameter(DBCSG_POLYGON_KP=218103808) - parameter(DBCSG_TRI_3P=218169344) - parameter(DBCSG_QUAD_4P=218234880) - parameter(DBCSG_INNER=2130706432) - parameter(DBCSG_OUTER=2130771968) - parameter(DBCSG_ON=2130837504) - parameter(DBCSG_UNION=2130903040) - parameter(DBCSG_INTERSECT=2130968576) - parameter(DBCSG_DIFF=2131034112) - parameter(DBCSG_COMPLIMENT=2131099648) - parameter(DBCSG_XFORM=2131165184) - parameter(DBCSG_SWEEP=2131230720) - parameter(DB_PREORDER=1) - parameter(DB_POSTORDER=2) - parameter(DB_FROMCWR=4) - parameter(DB_F77NULL=(-99)) - parameter(DB_ZONETYPE_BEAM=10) - parameter(DB_ZONETYPE_POLYGON=20) - parameter(DB_ZONETYPE_TRIANGLE=23) - parameter(DB_ZONETYPE_QUAD=24) - parameter(DB_ZONETYPE_POLYHEDRON=30) - parameter(DB_ZONETYPE_TET=34) - parameter(DB_ZONETYPE_PYRAMID=35) - parameter(DB_ZONETYPE_PRISM=36) - parameter(DB_ZONETYPE_HEX=38) - parameter(DB_F77NULLSTRING="NULLSTRING") + PARAMETER (SILO_VERS_MAJ=4) + PARAMETER (SILO_VERS_MIN=10) + PARAMETER (SILO_VERS_PAT=0) + PARAMETER (SILO_VERS_PRE=0) + PARAMETER (DB_NETCDF=0) + PARAMETER (DB_PDB=2) + PARAMETER (DB_TAURUS=3) + PARAMETER (DB_UNKNOWN=5) + PARAMETER (DB_DEBUG=6) + PARAMETER (DB_HDF5X=7) + PARAMETER (DB_PDBP=1) + PARAMETER (DB_HDF5_SEC2_OBSOLETE=256) + PARAMETER (DB_HDF5_STDIO_OBSOLETE=512) + PARAMETER (DB_HDF5_CORE_OBSOLETE=768) + PARAMETER (DB_HDF5_MPIO_OBSOLETE=1024) + PARAMETER (DB_HDF5_MPIOP_OBSOLETE=1280) + PARAMETER (DB_H5VFD_DEFAULT=0) + PARAMETER (DB_H5VFD_SEC2=1) + PARAMETER (DB_H5VFD_STDIO=2) + PARAMETER (DB_H5VFD_CORE=3) + PARAMETER (DB_H5VFD_LOG=4) + PARAMETER (DB_H5VFD_SPLIT=5) + PARAMETER (DB_H5VFD_DIRECT=6) + PARAMETER (DB_H5VFD_FAMILY=7) + PARAMETER (DB_H5VFD_MPIO=8) + PARAMETER (DB_H5VFD_MPIP=9) + PARAMETER (DB_H5VFD_SILO=10) + PARAMETER (DB_H5VFD_FIC=11) + PARAMETER (DB_FILE_OPTS_H5_DEFAULT_DEFAULT=0) + PARAMETER (DB_FILE_OPTS_H5_DEFAULT_SEC2=1) + PARAMETER (DB_FILE_OPTS_H5_DEFAULT_STDIO=2) + PARAMETER (DB_FILE_OPTS_H5_DEFAULT_CORE=3) + PARAMETER (DB_FILE_OPTS_H5_DEFAULT_LOG=4) + PARAMETER (DB_FILE_OPTS_H5_DEFAULT_SPLIT=5) + PARAMETER (DB_FILE_OPTS_H5_DEFAULT_DIRECT=6) + PARAMETER (DB_FILE_OPTS_H5_DEFAULT_FAMILY=7) + PARAMETER (DB_FILE_OPTS_H5_DEFAULT_MPIO=8) + PARAMETER (DB_FILE_OPTS_H5_DEFAULT_MPIP=9) + PARAMETER (DB_FILE_OPTS_H5_DEFAULT_SILO=10) + PARAMETER (DB_FILE_OPTS_LAST=10) + PARAMETER (DB_HDF5=7) + PARAMETER (DB_HDF5_SEC2=2055) + PARAMETER (DB_HDF5_STDIO=4103) + PARAMETER (DB_HDF5_CORE=6151) + PARAMETER (DB_HDF5_LOG=8199) + PARAMETER (DB_HDF5_SPLIT=10247) + PARAMETER (DB_HDF5_DIRECT=12295) + PARAMETER (DB_HDF5_FAMILY=14343) + PARAMETER (DB_HDF5_MPIO=16391) + PARAMETER (DB_HDF5_MPIOP=18439) + PARAMETER (DB_HDF5_MPIP=18439) + PARAMETER (DB_HDF5_SILO=20487) + PARAMETER (DB_NFILES=256) + PARAMETER (DB_NFILTERS=32) + PARAMETER (DB_COLLINEAR=130) + PARAMETER (DB_NONCOLLINEAR=131) + PARAMETER (DB_QUAD_RECT=130) + PARAMETER (DB_QUAD_CURV=131) + PARAMETER (DB_INVALID_OBJECT=-1) + PARAMETER (DB_QUADRECT=130) + PARAMETER (DB_QUADCURV=131) + PARAMETER (DB_QUADMESH=500) + PARAMETER (DB_QUADVAR=501) + PARAMETER (DB_UCDMESH=510) + PARAMETER (DB_UCDVAR=511) + PARAMETER (DB_MULTIMESH=520) + PARAMETER (DB_MULTIVAR=521) + PARAMETER (DB_MULTIMAT=522) + PARAMETER (DB_MULTIMATSPECIES=523) + PARAMETER (DB_MULTIBLOCKMESH=520) + PARAMETER (DB_MULTIBLOCKVAR=521) + PARAMETER (DB_MULTIMESHADJ=524) + PARAMETER (DB_MATERIAL=530) + PARAMETER (DB_MATSPECIES=531) + PARAMETER (DB_FACELIST=550) + PARAMETER (DB_ZONELIST=551) + PARAMETER (DB_EDGELIST=552) + PARAMETER (DB_PHZONELIST=553) + PARAMETER (DB_CSGZONELIST=554) + PARAMETER (DB_CSGMESH=555) + PARAMETER (DB_CSGVAR=556) + PARAMETER (DB_CURVE=560) + PARAMETER (DB_DEFVARS=565) + PARAMETER (DB_POINTMESH=570) + PARAMETER (DB_POINTVAR=571) + PARAMETER (DB_ARRAY=580) + PARAMETER (DB_DIR=600) + PARAMETER (DB_VARIABLE=610) + PARAMETER (DB_MRGTREE=611) + PARAMETER (DB_GROUPELMAP=612) + PARAMETER (DB_MRGVAR=613) + PARAMETER (DB_USERDEF=700) + PARAMETER (DB_INT=16) + PARAMETER (DB_SHORT=17) + PARAMETER (DB_LONG=18) + PARAMETER (DB_FLOAT=19) + PARAMETER (DB_DOUBLE=20) + PARAMETER (DB_CHAR=21) + PARAMETER (DB_LONG_LONG=22) + PARAMETER (DB_NOTYPE=25) + PARAMETER (DB_CLOBBER=0) + PARAMETER (DB_NOCLOBBER=1) + PARAMETER (DB_READ=1) + PARAMETER (DB_APPEND=2) + PARAMETER (DB_LOCAL=0) + PARAMETER (DB_SUN3=10) + PARAMETER (DB_SUN4=11) + PARAMETER (DB_SGI=12) + PARAMETER (DB_RS6000=13) + PARAMETER (DB_CRAY=14) + PARAMETER (DB_INTEL=15) + PARAMETER (DBOPT_FIRST=260) + PARAMETER (DBOPT_ALIGN=260) + PARAMETER (DBOPT_COORDSYS=262) + PARAMETER (DBOPT_CYCLE=263) + PARAMETER (DBOPT_FACETYPE=264) + PARAMETER (DBOPT_HI_OFFSET=265) + PARAMETER (DBOPT_LO_OFFSET=266) + PARAMETER (DBOPT_LABEL=267) + PARAMETER (DBOPT_XLABEL=268) + PARAMETER (DBOPT_YLABEL=269) + PARAMETER (DBOPT_ZLABEL=270) + PARAMETER (DBOPT_MAJORORDER=271) + PARAMETER (DBOPT_NSPACE=272) + PARAMETER (DBOPT_ORIGIN=273) + PARAMETER (DBOPT_PLANAR=274) + PARAMETER (DBOPT_TIME=275) + PARAMETER (DBOPT_UNITS=276) + PARAMETER (DBOPT_XUNITS=277) + PARAMETER (DBOPT_YUNITS=278) + PARAMETER (DBOPT_ZUNITS=279) + PARAMETER (DBOPT_DTIME=280) + PARAMETER (DBOPT_USESPECMF=281) + PARAMETER (DBOPT_XVARNAME=282) + PARAMETER (DBOPT_YVARNAME=283) + PARAMETER (DBOPT_ZVARNAME=284) + PARAMETER (DBOPT_ASCII_LABEL=285) + PARAMETER (DBOPT_MATNOS=286) + PARAMETER (DBOPT_NMATNOS=287) + PARAMETER (DBOPT_MATNAME=288) + PARAMETER (DBOPT_NMAT=289) + PARAMETER (DBOPT_NMATSPEC=290) + PARAMETER (DBOPT_BASEINDEX=291) + PARAMETER (DBOPT_ZONENUM=292) + PARAMETER (DBOPT_NODENUM=293) + PARAMETER (DBOPT_BLOCKORIGIN=294) + PARAMETER (DBOPT_GROUPNUM=295) + PARAMETER (DBOPT_GROUPORIGIN=296) + PARAMETER (DBOPT_NGROUPS=297) + PARAMETER (DBOPT_MATNAMES=298) + PARAMETER (DBOPT_EXTENTS_SIZE=299) + PARAMETER (DBOPT_EXTENTS=300) + PARAMETER (DBOPT_MATCOUNTS=301) + PARAMETER (DBOPT_MATLISTS=302) + PARAMETER (DBOPT_MIXLENS=303) + PARAMETER (DBOPT_ZONECOUNTS=304) + PARAMETER (DBOPT_HAS_EXTERNAL_ZONES=305) + PARAMETER (DBOPT_PHZONELIST=306) + PARAMETER (DBOPT_MATCOLORS=307) + PARAMETER (DBOPT_BNDNAMES=308) + PARAMETER (DBOPT_REGNAMES=309) + PARAMETER (DBOPT_ZONENAMES=310) + PARAMETER (DBOPT_HIDE_FROM_GUI=311) + PARAMETER (DBOPT_TOPO_DIM=312) + PARAMETER (DBOPT_REFERENCE=313) + PARAMETER (DBOPT_GROUPINGS_SIZE=314) + PARAMETER (DBOPT_GROUPINGS=315) + PARAMETER (DBOPT_GROUPINGNAMES=316) + PARAMETER (DBOPT_ALLOWMAT0=317) + PARAMETER (DBOPT_MRGTREE_NAME=318) + PARAMETER (DBOPT_REGION_PNAMES=319) + PARAMETER (DBOPT_TENSOR_RANK=320) + PARAMETER (DBOPT_MMESH_NAME=321) + PARAMETER (DBOPT_TV_CONNECTIVITY=322) + PARAMETER (DBOPT_DISJOINT_MODE=323) + PARAMETER (DBOPT_MRGV_ONAMES=324) + PARAMETER (DBOPT_MRGV_RNAMES=325) + PARAMETER (DBOPT_SPECNAMES=326) + PARAMETER (DBOPT_SPECCOLORS=327) + PARAMETER (DBOPT_LLONGNZNUM=328) + PARAMETER (DBOPT_CONSERVED=329) + PARAMETER (DBOPT_EXTENSIVE=330) + PARAMETER (DBOPT_MB_FILE_NS=331) + PARAMETER (DBOPT_MB_BLOCK_NS=332) + PARAMETER (DBOPT_MB_BLOCK_TYPE=333) + PARAMETER (DBOPT_MB_EMPTY_LIST=334) + PARAMETER (DBOPT_MB_EMPTY_COUNT=335) + PARAMETER (DBOPT_MB_REPR_BLOCK_IDX=336) + PARAMETER (DBOPT_MISSING_VALUE=337) + PARAMETER (DBOPT_ALT_ZONENUM_VARS=338) + PARAMETER (DBOPT_ALT_NODENUM_VARS=339) + PARAMETER (DBOPT_GHOST_NODE_LABELS=340) + PARAMETER (DBOPT_GHOST_ZONE_LABELS=341) + PARAMETER (DBOPT_LAST=499) + PARAMETER (DBOPT_H5_FIRST=500) + PARAMETER (DBOPT_H5_VFD=500) + PARAMETER (DBOPT_H5_RAW_FILE_OPTS=501) + PARAMETER (DBOPT_H5_RAW_EXTENSION=502) + PARAMETER (DBOPT_H5_META_FILE_OPTS=503) + PARAMETER (DBOPT_H5_META_EXTENSION=504) + PARAMETER (DBOPT_H5_CORE_ALLOC_INC=505) + PARAMETER (DBOPT_H5_CORE_NO_BACK_STORE=506) + PARAMETER (DBOPT_H5_META_BLOCK_SIZE=507) + PARAMETER (DBOPT_H5_SMALL_RAW_SIZE=508) + PARAMETER (DBOPT_H5_ALIGN_MIN=509) + PARAMETER (DBOPT_H5_ALIGN_VAL=510) + PARAMETER (DBOPT_H5_DIRECT_MEM_ALIGN=511) + PARAMETER (DBOPT_H5_DIRECT_BLOCK_SIZE=512) + PARAMETER (DBOPT_H5_DIRECT_BUF_SIZE=513) + PARAMETER (DBOPT_H5_LOG_NAME=514) + PARAMETER (DBOPT_H5_LOG_BUF_SIZE=515) + PARAMETER (DBOPT_H5_MPIO_COMM=516) + PARAMETER (DBOPT_H5_MPIO_INFO=517) + PARAMETER (DBOPT_H5_MPIP_NO_GPFS_HINTS=518) + PARAMETER (DBOPT_H5_SIEVE_BUF_SIZE=519) + PARAMETER (DBOPT_H5_CACHE_NELMTS=520) + PARAMETER (DBOPT_H5_CACHE_NBYTES=521) + PARAMETER (DBOPT_H5_CACHE_POLICY=522) + PARAMETER (DBOPT_H5_FAM_SIZE=523) + PARAMETER (DBOPT_H5_FAM_FILE_OPTS=524) + PARAMETER (DBOPT_H5_USER_DRIVER_ID=525) + PARAMETER (DBOPT_H5_USER_DRIVER_INFO=526) + PARAMETER (DBOPT_H5_SILO_BLOCK_SIZE=527) + PARAMETER (DBOPT_H5_SILO_BLOCK_COUNT=528) + PARAMETER (DBOPT_H5_SILO_LOG_STATS=529) + PARAMETER (DBOPT_H5_SILO_USE_DIRECT=530) + PARAMETER (DBOPT_H5_FIC_SIZE=531) + PARAMETER (DBOPT_H5_FIC_BUF=532) + PARAMETER (DBOPT_H5_LAST=599) + PARAMETER (DB_TOP=0) + PARAMETER (DB_NONE=1) + PARAMETER (DB_ALL=2) + PARAMETER (DB_ABORT=3) + PARAMETER (DB_SUSPEND=4) + PARAMETER (DB_RESUME=5) + PARAMETER (DB_ALL_AND_DRVR=6) + PARAMETER (DB_ROWMAJOR=0) + PARAMETER (DB_COLMAJOR=1) + PARAMETER (DB_NOTCENT=0) + PARAMETER (DB_NODECENT=110) + PARAMETER (DB_ZONECENT=111) + PARAMETER (DB_FACECENT=112) + PARAMETER (DB_BNDCENT=113) + PARAMETER (DB_EDGECENT=114) + PARAMETER (DB_BLOCKCENT=115) + PARAMETER (DB_CARTESIAN=120) + PARAMETER (DB_CYLINDRICAL=121) + PARAMETER (DB_SPHERICAL=122) + PARAMETER (DB_NUMERICAL=123) + PARAMETER (DB_OTHER=124) + PARAMETER (DB_RECTILINEAR=100) + PARAMETER (DB_CURVILINEAR=101) + PARAMETER (DB_AREA=140) + PARAMETER (DB_VOLUME=141) + PARAMETER (DB_ON=1000) + PARAMETER (DB_OFF=-1000) + PARAMETER (DB_ABUTTING=142) + PARAMETER (DB_FLOATING=143) + PARAMETER (DB_VARTYPE_SCALAR=200) + PARAMETER (DB_VARTYPE_VECTOR=201) + PARAMETER (DB_VARTYPE_TENSOR=202) + PARAMETER (DB_VARTYPE_SYMTENSOR=203) + PARAMETER (DB_VARTYPE_ARRAY=204) + PARAMETER (DB_VARTYPE_MATERIAL=205) + PARAMETER (DB_VARTYPE_SPECIES=206) + PARAMETER (DB_VARTYPE_LABEL=207) + PARAMETER (DB_GHOSTTYPE_NOGHOST=0) + PARAMETER (DB_GHOSTTYPE_INTDUP=1) + PARAMETER (DBCSG_QUADRIC_G=16777216) + PARAMETER (DBCSG_SPHERE_PR=33619968) + PARAMETER (DBCSG_ELLIPSOID_PRRR=33685504) + PARAMETER (DBCSG_PLANE_G=50331648) + PARAMETER (DBCSG_PLANE_X=50397184) + PARAMETER (DBCSG_PLANE_Y=50462720) + PARAMETER (DBCSG_PLANE_Z=50528256) + PARAMETER (DBCSG_PLANE_PN=50593792) + PARAMETER (DBCSG_PLANE_PPP=50659328) + PARAMETER (DBCSG_CYLINDER_PNLR=67108864) + PARAMETER (DBCSG_CYLINDER_PPR=67174400) + PARAMETER (DBCSG_BOX_XYZXYZ=83886080) + PARAMETER (DBCSG_CONE_PNLA=100663296) + PARAMETER (DBCSG_CONE_PPA=100728832) + PARAMETER (DBCSG_POLYHEDRON_KF=117440512) + PARAMETER (DBCSG_HEX_6F=117506048) + PARAMETER (DBCSG_TET_4F=117571584) + PARAMETER (DBCSG_PYRAMID_5F=117637120) + PARAMETER (DBCSG_PRISM_5F=117702656) + PARAMETER (DBCSG_QUADRATIC_G=134217728) + PARAMETER (DBCSG_CIRCLE_PR=150994944) + PARAMETER (DBCSG_ELLIPSE_PRR=151060480) + PARAMETER (DBCSG_LINE_G=167772160) + PARAMETER (DBCSG_LINE_X=167837696) + PARAMETER (DBCSG_LINE_Y=167903232) + PARAMETER (DBCSG_LINE_PN=167968768) + PARAMETER (DBCSG_LINE_PP=168034304) + PARAMETER (DBCSG_BOX_XYXY=184549376) + PARAMETER (DBCSG_ANGLE_PNLA=201326592) + PARAMETER (DBCSG_ANGLE_PPA=201392128) + PARAMETER (DBCSG_POLYGON_KP=218103808) + PARAMETER (DBCSG_TRI_3P=218169344) + PARAMETER (DBCSG_QUAD_4P=218234880) + PARAMETER (DBCSG_INNER=2130706432) + PARAMETER (DBCSG_OUTER=2130771968) + PARAMETER (DBCSG_ON=2130837504) + PARAMETER (DBCSG_UNION=2130903040) + PARAMETER (DBCSG_INTERSECT=2130968576) + PARAMETER (DBCSG_DIFF=2131034112) + PARAMETER (DBCSG_COMPLIMENT=2131099648) + PARAMETER (DBCSG_XFORM=2131165184) + PARAMETER (DBCSG_SWEEP=2131230720) + PARAMETER (DB_PREORDER=1) + PARAMETER (DB_POSTORDER=2) + PARAMETER (DB_FROMCWR=4) + PARAMETER (DB_F77NULL=(-99)) + PARAMETER (DB_MISSING_VALUE_NOT_SET=1.0D+308) + PARAMETER (DB_ZONETYPE_BEAM=10) + PARAMETER (DB_ZONETYPE_POLYGON=20) + PARAMETER (DB_ZONETYPE_TRIANGLE=23) + PARAMETER (DB_ZONETYPE_QUAD=24) + PARAMETER (DB_ZONETYPE_POLYHEDRON=30) + PARAMETER (DB_ZONETYPE_TET=34) + PARAMETER (DB_ZONETYPE_PYRAMID=35) + PARAMETER (DB_ZONETYPE_PRISM=36) + PARAMETER (DB_ZONETYPE_HEX=38) + PARAMETER (DB_MAX_H5_OBJ_VALS=64) + PARAMETER (DB_F77NULLSTRING="NULLSTRING") -! End. +C End. diff -Nru silo-llnl-4.10.2/src/silo/silo_json.c silo-llnl-4.10.2.real/src/silo/silo_json.c --- silo-llnl-4.10.2/src/silo/silo_json.c 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/silo/silo_json.c 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,1794 @@ +/* +Copyright (c) 1994 - 2010, Lawrence Livermore National Security, LLC. +LLNL-CODE-425250. +All rights reserved. + +This file is part of Silo. For details, see silo.llnl.gov. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the disclaimer below. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the disclaimer (as noted + below) in the documentation and/or other materials provided with + the distribution. + * Neither the name of the LLNS/LLNL nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL LAWRENCE +LIVERMORE NATIONAL SECURITY, LLC, THE U.S. DEPARTMENT OF ENERGY OR +CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +This work was produced at Lawrence Livermore National Laboratory under +Contract No. DE-AC52-07NA27344 with the DOE. + +Neither the United States Government nor Lawrence Livermore National +Security, LLC nor any of their employees, makes any warranty, express +or implied, or assumes any liability or responsibility for the +accuracy, completeness, or usefulness of any information, apparatus, +product, or process disclosed, or represents that its use would not +infringe privately-owned rights. + +Any reference herein to any specific commercial products, process, or +services by trade name, trademark, manufacturer or otherwise does not +necessarily constitute or imply its endorsement, recommendation, or +favoring by the United States Government or Lawrence Livermore +National Security, LLC. The views and opinions of authors expressed +herein do not necessarily state or reflect those of the United States +Government or Lawrence Livermore National Security, LLC, and shall not +be used for advertising or product endorsement purposes. +*/ +#include +#include +#include +#include +#include +#include +#include + +#include + +#include +#include +#include +#include + +#define EXTPTR_HDRSTR "\":{\"ptr\":\"0x" + +static void indent(struct printbuf *pb, int level, int flags) +{ + if (flags & JSON_C_TO_STRING_PRETTY) + { + printbuf_memset(pb, -1, ' ', level * 2); + } +} + +static int json_object_object_length(struct json_object *o) +{ + struct lh_table *t = json_object_get_object(o); + return t->count; +} + +static int json_object_object_get_member_count(struct json_object *o) +{ + int n = 0; + struct json_object_iter jiter; + json_object_object_foreachC(o, jiter) + { + n++; + } + return n; +} + +static void json_object_set_serializer(json_object *jso, + json_object_to_json_string_fn to_string_func, + void * userdata, json_object_delete_fn * user_delete) +{ + jso->_to_json_string = to_string_func; +} + +static void json_object_set_deleter(json_object *jso, + json_object_delete_fn delete_func) +{ + jso->_delete = delete_func; +} + +void +json_object_extptr_delete(struct json_object *jso) +{ + void *extptr = json_object_get_extptr_ptr(jso); + if (extptr) free(extptr); + json_object_put(jso); +} + +static int +json_object_extptr_to_json_string(struct json_object* jso, + struct printbuf *pb, int level, int flags) +{ + int had_children = 0; + int ii; + char *p; + int datatype, nvals, ndims, dims[32]; + struct json_object *darr, *subobj; + int retval; + + sprintbuf(pb, "{\"ptr\":%s", json_object_to_json_string(json_object_object_get(jso, "ptr"))); + sprintbuf(pb, ",\"datatype\":%s", json_object_to_json_string(json_object_object_get(jso, "datatype"))); + sprintbuf(pb, ",\"ndims\":%s", json_object_to_json_string(json_object_object_get(jso, "ndims"))); + sprintbuf(pb, ",\"dims\":%s", json_object_to_json_string(json_object_object_get(jso, "dims"))); + + p = (char*) json_object_get_strptr(json_object_object_get(jso, "ptr")); + datatype = json_object_get_int(json_object_object_get(jso, "datatype")); + ndims = json_object_get_int(json_object_object_get(jso, "ndims")); + darr = json_object_object_get(jso, "dims"); + nvals = 1; + for (ii = 0; ii < ndims; ii++) + { + dims[ii] = json_object_get_int(json_object_array_get_idx(darr, ii)); + nvals *= dims[ii]; + } + + if (flags & JSON_C_TO_STRING_EXTPTR_AS_BINARY) + { + sprintbuf(pb, ",\"nvals\":%d", nvals); + sprintbuf(pb, ",\"data\":["); + printbuf_memappend(pb, p, nvals*db_GetMachDataSize(datatype)); + } + else if (flags & JSON_C_TO_STRING_EXTPTR_SKIP) + { + return sprintbuf(pb, "}"); + } + else + { + + sprintbuf(pb, ",\"data\":["); + if (flags & JSON_C_TO_STRING_PRETTY) + sprintbuf(pb, "\n"); + + for(ii=0; ii < nvals; ii++) + { + struct json_object *val; + if (had_children) + { + sprintbuf(pb, ","); + if (flags & JSON_C_TO_STRING_PRETTY) + sprintbuf(pb, "\n"); + } + had_children = 1; + if (flags & JSON_C_TO_STRING_SPACED) + sprintbuf(pb, " "); + indent(pb, level + 1, flags); + + switch (datatype) + { + case DB_CHAR: + { + sprintbuf(pb, "%c", *((char*)p)); + p += sizeof(char); + break; + } + case DB_SHORT: + { + sprintbuf(pb, "%hd", *((short*)p)); + p += sizeof(short); + break; + } + case DB_INT: + { + sprintbuf(pb, "%d", *((int*)p)); + p += sizeof(int); + break; + } + case DB_LONG: + { + sprintbuf(pb, "%ld", *((long*)p)); + p += sizeof(long); + break; + } + case DB_LONG_LONG: + { + sprintbuf(pb, "%lld", *((long long*)p)); + p += sizeof(long long); + break; + } + case DB_FLOAT: + { + sprintbuf(pb, "%f", *((float*)p)); + p += sizeof(float); + break; + } + case DB_DOUBLE: + { + sprintbuf(pb, "%f", *((double*)p)); + p += sizeof(double); + break; + } + } + } + } + if (flags & JSON_C_TO_STRING_PRETTY) + { + if (had_children) + sprintbuf(pb, "\n"); + indent(pb,level,flags); + } + + if (flags & JSON_C_TO_STRING_SPACED) + retval = sprintbuf(pb, " ]}"); + else + retval = sprintbuf(pb, "]}"); + + return retval; +} + +struct json_object * +json_object_new_strptr(void *p) +{ + static char tmp[32]; + if (sizeof(p) == sizeof(unsigned)) + snprintf(tmp, sizeof(tmp), "0x%016x", (unsigned) p); + else if (sizeof(p) == sizeof(unsigned long)) + snprintf(tmp, sizeof(tmp), "0x%016lx", (unsigned long) p); + else if (sizeof(p) == sizeof(unsigned long long)) + snprintf(tmp, sizeof(tmp), "0x%016llx", (unsigned long long) p); + + return json_object_new_string(tmp); +} + +void * +json_object_get_strptr(struct json_object *o) +{ + void *p; + char const *strptr = json_object_get_string(o); + if (sscanf(strptr, "%p", &p) == 1) + return p; + else + return 0; +} + +struct json_object * +json_object_new_extptr(void *p, int ndims, int const *dims, int datatype) +{ + int i; + struct json_object *jobj = json_object_new_object(); + struct json_object *jarr = json_object_new_array(); + + json_object_set_serializer(jobj, json_object_extptr_to_json_string, 0, 0); + json_object_set_deleter(jobj, json_object_extptr_delete); + + for (i = 0; i < ndims; i++) + json_object_array_add(jarr, json_object_new_int(dims[i])); + + json_object_object_add(jobj, "ptr", json_object_new_strptr(p)); + json_object_object_add(jobj, "datatype", json_object_new_int(datatype)); + json_object_object_add(jobj, "ndims", json_object_new_int(ndims)); + json_object_object_add(jobj, "dims", jarr); + + return jobj; +} + +int +json_object_is_extptr(struct json_object *obj) +{ + if (json_object_object_get_ex(obj, "ptr", 0) && + json_object_object_get_ex(obj, "datatype", 0) && + json_object_object_get_ex(obj, "ndims", 0) && + json_object_object_get_ex(obj, "dims", 0)) + return 1; + return 0; +} + +int +json_object_get_extptr_ndims(struct json_object *obj) +{ + struct json_object *sobj = 0; + if (json_object_object_get_ex(obj, "ptr", 0) && + json_object_object_get_ex(obj, "datatype", 0) && + json_object_object_get_ex(obj, "ndims", &sobj) && + json_object_object_get_ex(obj, "dims", 0) && sobj) + return json_object_get_int(sobj); + return -1; +} + +int +json_object_get_extptr_datatype(struct json_object *obj) +{ + struct json_object *sobj = 0; + if (json_object_object_get_ex(obj, "ptr", 0) && + json_object_object_get_ex(obj, "datatype", &sobj) && + json_object_object_get_ex(obj, "ndims", 0) && + json_object_object_get_ex(obj, "dims", 0) && sobj) + return json_object_get_int(sobj); + return -1; +} + +int +json_object_get_extptr_dims_idx(struct json_object *obj, int idx) +{ + struct json_object *sobj = 0; + if (json_object_object_get_ex(obj, "ptr", 0) && + json_object_object_get_ex(obj, "datatype", 0) && + json_object_object_get_ex(obj, "ndims", 0) && + json_object_object_get_ex(obj, "dims", &sobj) && sobj) + return json_object_get_int(json_object_array_get_idx(sobj, idx)); + return 0; +} + +void * +json_object_get_extptr_ptr(struct json_object *obj) +{ + struct json_object *sobj = 0; + if (json_object_object_get_ex(obj, "ptr", &sobj) && + json_object_object_get_ex(obj, "datatype", 0) && + json_object_object_get_ex(obj, "ndims", 0) && + json_object_object_get_ex(obj, "dims", 0) && sobj) + return json_object_get_strptr(sobj); + return 0; +} + +int +json_object_to_binary_buf(struct json_object *obj, int flags, void **buf, int *len) +{ + char const *pjhdr; + struct printbuf *pb = printbuf_new(); + + /* first, stringify the json object as normal but skipping extptr data */ + char const *jhdr = json_object_to_json_string_ext(obj, flags|JSON_C_TO_STRING_EXTPTR_SKIP); + sprintbuf(pb, "%s", jhdr); + sprintbuf(pb, "%c", '\0'); /* so header is null-terminated */ + + /* now, handle all extptr objects by appending their binary data onto the end, + and over-writing the "ptr" value with offset within the buffer */ + pjhdr = jhdr; + while (*pjhdr) + { + if (!strncmp(pjhdr, EXTPTR_HDRSTR, sizeof(EXTPTR_HDRSTR)-1)) + { + char tmp[64]; + int pblen; + struct json_object *extptr_obj = json_tokener_parse(pjhdr+2); /* walk past '":' */ + void *p = json_object_get_strptr(json_object_object_get(extptr_obj, "ptr")); + int datatype = json_object_get_int(json_object_object_get(extptr_obj, "datatype")); + int ndims = json_object_get_int(json_object_object_get(extptr_obj, "ndims")); + struct json_object *darr = json_object_object_get(extptr_obj, "dims"); + int ii, nvals = 1; + for (ii = 0; ii < ndims; ii++) + nvals *= json_object_get_int(json_object_array_get_idx(darr, ii)); + pblen = printbuf_length(pb); + printbuf_memappend_fast(pb, p, nvals*db_GetMachDataSize(datatype)); + /* Use of a hexadecimal value works ok here because a scanf can read it */ + sprintf(tmp,"%-.16x",pblen); /* overwrite ptr value w/buffer-offset */ + memcpy(pb->buf + (pjhdr+12-jhdr),tmp,strlen(tmp)); /* overwrite ptr value w/buffer-offset */ + pjhdr += sizeof(EXTPTR_HDRSTR); + json_object_put(extptr_obj); + } + pjhdr++; + } + if (len) *len = printbuf_length(pb); + if (buf) *buf = pb->buf; + free(pb); + return 0; +} + +static void +json_object_from_binary_buf_recurse(struct json_object *jso, void *buf) +{ + /* first, reconstitute the header */ + struct json_object_iter iter; + + json_object_object_foreachC(jso, iter) + { + json_type jtype = json_object_get_type(iter.val); + if (jtype == json_type_object) + { + if (json_object_object_get_ex(iter.val, "ptr", 0) && + json_object_object_get_ex(iter.val, "datatype", 0) && + json_object_object_get_ex(iter.val, "ndims", 0) && + json_object_object_get_ex(iter.val, "dims", 0)) + { + char strptr[128]; + void *p; + int i, offset, nvals=1; + char const *offstr = json_object_get_string(json_object_object_get(iter.val, "ptr")); + int datatype = json_object_get_int(json_object_object_get(iter.val, "datatype")); + int ndims = json_object_get_int(json_object_object_get(iter.val, "ndims")); + struct json_object *darr = json_object_object_get(iter.val, "dims"); + for (i = 0; i < ndims; i++) + nvals *= json_object_get_int(json_object_array_get_idx(darr, i)); + sscanf(offstr, "%x", &offset); + p = malloc(nvals*db_GetMachDataSize(datatype)); + memcpy(p, buf+offset, nvals*db_GetMachDataSize(datatype)); + json_object_object_del(iter.val,"ptr"); + snprintf(strptr, sizeof(strptr), "%p", p); + json_object_object_add(iter.val, "ptr", json_object_new_string(strptr)); + } + else + { + json_object_from_binary_buf_recurse(iter.val, buf); + } + } + } +} + +struct json_object * +json_object_from_binary_buf(void *buf, int len) +{ + struct json_object *retval = json_tokener_parse((char*)buf); + json_object_from_binary_buf_recurse(retval, buf); + return retval; +} + +struct json_object * +json_object_from_binary_file(char const *filename) +{ + struct json_object *retval; + void *buf; + int fd; + +#ifndef SIZEOF_OFF64_T +#error missing definition for SIZEOF_OFF64_T in silo_private.h +#else +#if SIZEOF_OFF64_T > 4 + struct stat64 s; +#else + struct stat s; +#endif +#endif + + errno = 0; + memset(&s, 0, sizeof(s)); + +#if SIZEOF_OFF64_T > 4 + if (stat64(filename, &s) != 0 || errno != 0) + return 0; +#else + if (stat(filename, &s) != 0 || errno != 0) + return 0; +#endif + + fd = open(filename, O_RDONLY); + if (fd < 0) + return 0; + buf = malloc(s.st_size); + if (read(fd, buf, (size_t) s.st_size) != (ssize_t) s.st_size) + { + free(buf); + return 0; + } + close(fd); + retval = json_object_from_binary_buf(buf, (int) s.st_size); + free(buf); + + return retval; +} + +int +json_object_to_binary_file(char const *filename, struct json_object *obj) +{ + void *buf; int len; int fd; + + json_object_to_binary_buf(obj, 0, &buf, &len); + fd = open(filename, O_CREAT|O_TRUNC|O_WRONLY, S_IRUSR|S_IWUSR); + write(fd, buf, len); + close(fd); + free(buf); + return 0; +} + +int +json_object_reconstitute_extptrs(struct json_object *obj) +{ + struct json_object_iter jiter; + struct json_object *parent_jobjs_with_extptr_members[1000]; + char const *extptr_member_keys[1000]; + int k, num_to_remove = 0; + + json_object_object_foreachC(obj, jiter) + { + struct json_object *ptr_obj, *datatype_obj, *ndims_obj, *dims_obj, *data_obj; + + struct json_object *mobj = jiter.val; + char const *mname = jiter.key; + + if (json_object_get_type(mobj) != json_type_object) + continue; + + if (!(json_object_object_get_ex(mobj, "ptr", &ptr_obj ) && + json_object_object_get_ex(mobj, "datatype", &datatype_obj) && + json_object_object_get_ex(mobj, "ndims", &ndims_obj) && + json_object_object_get_ex(mobj, "dims", &dims_obj) && + json_object_object_get_ex(mobj, "data", &data_obj))) + { + json_object_reconstitute_extptrs(mobj); + continue; + } + + if (!(json_object_get_type(ptr_obj) == json_type_string && + json_object_get_type(datatype_obj) == json_type_int && + json_object_get_type(ndims_obj) == json_type_int && + json_object_get_type(dims_obj) == json_type_array && + json_object_get_type(data_obj) == json_type_array)) + { + json_object_reconstitute_extptrs(mobj); + continue; + } + + if (json_object_object_get_member_count(mobj) != 5) + continue; + + extptr_member_keys[num_to_remove] = mname; + parent_jobjs_with_extptr_members[num_to_remove] = obj; + num_to_remove++; + } + + for (k = 0; k < num_to_remove; k++) + { + struct json_object *ptr_obj, *datatype_obj, *ndims_obj, *dims_obj, *data_obj; + char *mname = strdup(extptr_member_keys[k]); + struct json_object *pobj = parent_jobjs_with_extptr_members[k]; + struct json_object *extptr_obj; + + json_object_object_get_ex(pobj, mname, &extptr_obj); + json_object_object_get_ex(extptr_obj, "ptr", &ptr_obj ); + json_object_object_get_ex(extptr_obj, "datatype", &datatype_obj); + json_object_object_get_ex(extptr_obj, "ndims", &ndims_obj); + json_object_object_get_ex(extptr_obj, "dims", &dims_obj); + json_object_object_get_ex(extptr_obj, "data", &data_obj); + + /* We're at an extptr object that was serialized to a 'standard' json string. + * So, lets reconstitute it. */ + { + int i, n = 1; + int datatype = json_object_get_int(datatype_obj); + int ndims = json_object_get_int(ndims_obj); + int *dims = (int *) malloc(ndims * sizeof(int)); + int jdtype = json_object_get_type(json_object_array_get_idx(data_obj, 0)); + char *p; + void *pdata; + + /* get the array dimension sizes */ + for (i = 0; i < ndims; i++) + { + dims[i] = json_object_get_int(json_object_array_get_idx(dims_obj, i)); + n *= dims[i]; + } + + /* get the array data */ + pdata = (void *) malloc(n * db_GetMachDataSize(datatype)); + for (i = 0, p = pdata; i < n; i++, p += db_GetMachDataSize(datatype)) + { + switch (jdtype) + { + case json_type_int: + { + int ival = json_object_get_int(json_object_array_get_idx(data_obj, i)); + if (datatype == DB_CHAR) + *((char*)p) = (unsigned char) ival; + else if (datatype == DB_SHORT) + *((short*)p) = (short) ival; + else if (datatype == DB_INT) + *((int*)p) = ival; + else if (datatype == DB_LONG) + *((long*)p) = (long) ival; + break; + } + case json_type_double: + { + double dval = json_object_get_double(json_object_array_get_idx(data_obj, i)); + if (datatype == DB_DOUBLE) + *((double*)p) = dval; + else + *((float*)p) = (float) dval; + break; + } + } + } + + /* delete the old object */ + json_object_object_del(pobj, mname); + + /* Add the reconstituted extptr object */ + json_object_object_add(pobj, mname, + json_object_new_extptr(pdata, ndims, dims, datatype)); + + free(mname); + } + } + + return 0; +} + +#if 0 +/* Difference methods + * + * Easiest thing to develop is a thing to test equality. Given two objects, they + * are equal if all their sub-components are equal. But, that isn't the same as + * computing the difference itself. + * + * Given two json objects, what is the difference object? + * If both objects contain a member in common (e.g. same key/idx and value-type), diff that member + * If their difference is "zero", return json_type_null + * If their difference is non-zero, return a new json_object holding the difference + * If there is an object in one but not the other, + * Ignore it or copy it to the difference object + * + * If caller wants just to 'print' the differences, then caller passes a stream + * or a printbuf into which the difference details are sprint'd + * + * If caller simply wants to know if the objects are different or not + * + * Options + * * just return if the objecs are equal or not (e.g. check if diff is zero) + * * ignoring exclusive members + * * Compute a difference object + * * ignoring exclusive members + * * compute a 'total' difference or only map + * * print the differences + * * ignore exclusive members + * * compute a total difference + * + * Consider the following example cases + * Diffing an array of integer values (or extptr thingy) + * 1. stop on first diff, return false then, otherwise true + * 2. create a new array with zeros (json_type_null or special zero object) where diffstol and their indx's + * Diffing an object with same name/type members + * 1. stop on first diff, return false then, otherwise true + * 2. create a new object with zeros (json_type_null or special zero object) where diffsint->double->string + * ^ ^ + * string(int)-->| | + * string(real)------>| + * Always promote to highest and diff there + * Diffing arbitrary objects + * What constitutes a diff? + * tolerances + * ignore exclusive members (structure) + * match idx/key but not type + * How is diff returned? + * as a bool + * as an object + * modifications (e.g. map) or toleranced diffs (e.g. total), insertions, deletions + * as a printbuf + * modifications (e.g. map) or toleranced diffs (e.g. total), insertions, deletions + * + * + * String output might look like... + * left { foo:5, bar:123.5, gorfo:{a:5, b:0.002567, c:"abc"}, q="mark", p=0} + * right { foo:5, bar:123.6, gorfo:{a:5, s:41.1, b:0.002573, c:"abq"}, q="Mark", p=0} + * + * left right diff name/type + * -------------------------------------------------------- + * 5 5 0 foo::int + * 123.5 123.6 0.1 bar::float + * gorfo::{ + * 5 5 0 a::int + * 41.1 s::float + * 0.002567 0.002573 0.000006 b::float + * "abc" "abq" "==!" c::string + * } + * "mark" "Mark" "!===" q::string + * 0 0 0 p::int + * + * As an object... holds only the difference 'values' + * {foo:0, bar:0.1, gorfo:{a:0, b:0.0006, c:"==!", additions:{s:41.1}}, q:"!===", p:0} + * + * + * null boolean int double string extpr array object + * + * null ok REV REV REV REV REV REV REV + + * boolean ok ok REV REV REV REV REV REV + + * int ok non-zero ok REV REV REV REV REV + + * double ok non-zero cast ok REV REV REV REV + + * string ok non-empty strtol strtod ok REV REV REV + + * extpr trunc non-empty size=1 size=1 chars ok REV REV + + * array trunc non-empty size=1 size=1 chars diff ok REV + + * object trunc non-empty size=1 size=1 ??? diff diff MAIN + * + * There is a 2D array of function pointers, diff_matrix_funcs, which holds pointers + * to all functions. The REV functions are just calls to the symmetric method with + * left/right reversed and a flag to indicate a reversal was made. + * + * The object/object method is main entry point for caller. The object/array and object/ + * object methods are also called recursively. Extptr is not a recursive call. Note that + * things like object names, depth of recursion, reversal flag, etc. need to get passed + * recusively. This stuff is not appropriate for caller to worry about so need some kind + * of wrapper method for caller that turns around and calls the main recursive entry + * here. + * + * An object/non-object method is a clear diff. If diff-only is desired return value, then + * execution is complete at that point. If inclusive only, the execution is complete then + * too. Otherwise, it would descend recursively on the object and null on the other. + * + * When does recursion complete? When both objects' precedence <= 4; + * + * Need to know when diffs are strict or not (is a boolean 1 same as an int 1, depends + * on strictness)? + * + * Naming of functions in the matrix + * + * json_diff__(); + * + * json_diff_null_null() + * json_diff_null_bool(), e.g. json_diff_bool_null is a REV-wrapper to json_diff_null_bool() + * json_diff_null_int() + * json_diff_null_double() + * json_diff_null_string() + * json_diff_null_extptr() + * json_diff_null_array() will have to recurse on array members + * json_diff_null_object() will have to recurse on object members but so too for int_object + * and double_object, etc. Thats a lot of duplicated code. We need to punt here. + * + * More involved methods + * + * json_diff_extptr_extptr() /* non-recursive but like an int/int or double/double or maybe int/double */ + * json_diff_extptr_array() /* left is a 'datatype'd number; right is a json object which might be a number */ + * json_diff_extptr_object() + * json_diff_array_array() /* recurses on both left and right */ + * json_diff_array_object() /* recurses on both left and right */ + * json_diff_object_object() /* recurses on both left and right */ + + * + * Args these methods need to take... + * left object, right object, left-name, right-name, + * depth, mode, flags (incl rev), tolerances, retval + * + * Caller's call to wrapper turns around and uses "LEFT-OBJECT" "RIGHT-OBJECT" names. + * depth=0, mode, flags and tolerances determined by caller. + * + * Need a way to set/push return 'value' (int 0/1, printbuf-str, object). Might be + * best as macro'd code. At the point where you know you have a diff of some kind + * you then 'handle-diff' which may be an early return, printing to a buffer or + * constructing 'additions'/'deletions' of an object. Macro'd code allows for + * logic handling early return to be written only once. + * + * + */ + +#define HANDLE_DIFF() +{ \ + int *ret_intp = (int *) retval; + struct printbuf *ret_pbuf = (struct printbuf *) retval; + struct json_object *ret_obj = (struct json_object *) retval; + + if (mode == json_diff_bool) + { + *ret_intp = is_diff; + } + else if (mode == json_diff_string) + { + if (is_diff || (flags & JSON_C_DIFF_TOTAL)) + { + if (flags & JSON_C_DIFF_REVERSE_LR) + { + } + else + { + if (flags & JSON_C_DIFF_RADIX_DECIMAL) + sprintbuf(ret_pbuf, "%s%-20s int %20d%20d%20d\n", indent[depth], name, lval, rval, dval); + else if (flags & JSON_C_DIFF_RADIX_BINARY) + } + } + } + else if (mode == json_diff_object) + { + if (is_diff || (flags & JSON_C_DIFF_TOTAL)) + { + if (flags & JSON_C_DIFF_REVERS_LR) + { + } + else + { + if (json_object_get_type(lobj) == json_type_null && + json_object_get_type(robj) != json_type_null) + { + struct json_object *adds_obj; + if (!json_object_object_get_ex(ret_obj, "additions", &adds_obj)) + { + adds_obj = json_object_new_object(); + json_object_object_add(ret_obj, "additions", adds_obj); + } + + /* add robj to additions */ + json_object_object_add(adds_obj, rkey, robj); + } + else if (json_object_get_type(lobj) != json_type_null && + json_object_get_type(robj) == json_type_null) + { + struct json_object *dels_obj; + if (!json_object_object_get_ex(ret_obj, "deletions", &dels_obj)) + { + dels_obj = json_object_new_object(); + json_object_object_add(ret_obj, "deletions", dels_obj); + } + + /* add lobj deletions */ + json_object_object_add(dels_obj, lkey, lobj); + } + else + { + /* add normal */ + json_object_object_add(ret_obj, lkey, diff_obj); + } + } + } + } +} + +void json_diff_null_null( + struct json_object const *lobj, char const *lkey, + struct json_object const *robj, char const *rkey, + int depth, enum json_diff_mode dmode, int flags, + double const tols[3], void *retval) +{ + HANDLE_DIFF(); +} + +void json_diff_int_int( + struct json_object const *lobj, char const *ltag, + struct json_object const *robj, char const *rtag, + int depth, enum json_diff_mode dmode, int flags, + double const tols[3], void *retval) +{ + int lval = json_object_get_int(lobj); + int rval = json_object_get_int(robj); + int dval = lval - rval; + + if (flags & JSON_C_DIFF_REVERSE_LR) dval = -dval; + + is_diff = DBIsDifferentLongLong(lval, rval, tols[0], tols[1], tols[2]); + + HANDLE_DIFF(); +} + + + + + +void json_object_int_diff( + int depth, char const *tag, + struct json_object *lobj, struct json_object *robj, + enum json_diff_mode mode, int flags, double const tols[3], + void *retthing) +{ + int *ret_intp = (int *) retthing; + struct printbuf *ret_pbufp = (struct printbuf *) retthing; + struct json_object *ret_objp = (struct json_object *) retthing; + int lval, rval; + double abstol, reltol, reltol_eps; + + if (retthing == 0) return; + + if (flags & JSON_C_DIFF_ZERO_TOLS) + tols[0] = tols[1] = tols[2] = 0; + + abstol = tols[0]; + reltol = tols[1]; + retol_eps = tols[2]; + + lval = json_object_get_int(lobj); + rval = json_object_get_int(robj); + dval = lval - rval; + + is_diff = DBIsDifferentDouble(lval, rval, abstol, reltol, reltol_eps); + + switch (mode) + { + case json_diff_bool: + *ret_intp = is_diff; + return; + case json_diff_string: + if (is_diff || (flags & JSON_C_DIFF_TOTAL)) + sprintbuf(*ret_pbp, "%s%-20s int %20d%20d%20d\n", indent[depth], name, lval, rval, dval); + return; + case json_diff_object: + if (is_diff || (flags & JSON_C_DIFF_TOTAL)) + json_object_object_add(ret_objp, name, json_object_new_int(dval)); + return; + } +} + +/* Return type precedence of json object according to generality of type */ +int json_object_type_precedence(struct json_object *obj) +{ + switch (json_object_get_type(obj)) + { + case json_type_null: return 0; /* primitive */ + case json_type_boolean: return 1; /* primitive */ + case json_type_int: return 2; /* primitive */ + case json_type_double: return 3; /* primitive */ + case json_type_string: return 4; /* primitive */ + case json_type_array: return 6; /* recursive */ + case json_type_object: + { + if (json_object_is_extptr(obj)) return 5; /* primitive */ + return 7; /* recursive */ + } + } + return -1; +} + +void json_object_diff(struct json_object *lobj, struct json_object *robj, + enum json_diff_mode dmode, int flags, double const tols[3], + void *retval) +{ + if (retval == 0) return; + + /* zero the tolerances if we need to */ + if (flags & JSON_C_DIFF_ZERO_TOLS) + tols[0] = tols[1] = tols[2] = 0; + + lprec = json_type_precedence(lobj); + rprec = json_type_precedence(robj); + + /* Call correct json_object differencing function */ + (*diff_matrix_func)(lobj, robj, + + + + +} + +void json_object_diff( + int depth, + struct json_object *lobj, char const *lnm, + struct json_object *robj, char const *rnm, + enum json_diff_mode mode, int flags, double const tols[3], + void *retthing) +{ + int *ret_intp = (int *) retthing; + struct printbuf *ret_pbufp = (struct printbuf *) retthing; + struct json_object *ret_objp = (struct json_object *) retthing; + + if (json_object_is_type(lobj, json_type_object)) + { + if (json_object_is_type(robj, json_type_object)) + { + struct json_object_iterator liter, lend; + struct json_object_iterator riter, rend; + + /* First, iterate over lobj members */ + liter = json_object_iter_begin(lobj); + lend = json_object_iter_end(lobj); + while (!json_object_iter_equal(&liter, &lend)) + { + char const *lsubnm = json_object_iter_peek_name(&liter); + struct json_object *lsubobj = json_object_iter_peek_value(&liter); + struct json_object *rsubobj; + + if (json_object_object_get_ex(robj, lsubnm, &rsubojb)) + { + /* Recurse on the two object's members */ + json_object_diff(depth+1,lsubobj,lsubnm,rsubobj,lsubnm,mode,flags,tols,retting); + if (mode == json_diff_bool && *ret_intp != 0) return; + } + else if (!(flags&JSON_DIFF_EXCLUSIVE_ONLY)) + { + if (mode == json_diff_bool) + { + *ret_intp = 1; + return; + } + json_object_diff(depth+1,lsubobj,lsubnm,0,"***DEL***",mode,flags,tols,retting); + } + } + + /* At this point, we've examined robj only for those names in lobj. + * So, now, iterate over robj members we haven't already visited. + * Anything we encounter at this point is treated as an 'addition.' */ + if (!(flags&JSON_DIFF_EXCLUSIVE_ONLY)) + { + riter = json_object_iter_begin(robj); + rend = json_object_iter_end(robj); + while (!json_object_iter_equal(&riter, &rend)) + { + char const *rsubnm = json_object_iter_peek_name(&riter); + if (json_object_object_get_ex(lobj, rsubnm, 0)) continue; + + if (mode == json_diff_bool) + { + *ret_intp = 1; + return; + } + json_object_diff(depth+1,0,"***ADD***",rsubobj,rsubnm,mode,flags,tols,retting); + } + } + } + else if (!(flags&JSON_DIFF_MIXED_TYPE)) + { + if (mode == json_diff_bool) + { + *ret_intp = 1; + return; + } + else if (mode == json_diff_string) + { + } + else + { + } + } + else if (json_object_is_type(robj, json_type_array)) + { + } + else + { + } + } + else if (json_object_is_type(lobj, json_type_array)) + { + if (json_object_is_type(robj, json_type_array)) + { + int llen = json_object_array_length(lobj); + int rlen = json_object_array_length(robj); + int done = 0, i = 0; + while (!done) + { + struct json_object *lsubobj = json_object_array_get_idx(lobj, i); + struct json_object *rsubobj = json_object_array_get_idx(robj, i); + if (i < llen && i < rlen) + { + char subnm[32]; + snprintf(subnm, sizeof(subnm), "[%03d]", i); + + /* Recurse on the two object's members */ + json_object_diff(depth+1,lsubobj,subnm,rsubobj,subnm,mode,flags,tols,retting); + if (mode == json_diff_bool && *ret_intp != 0) return; + } + else if (i < llen && !(flags&JSON_DIFF_EXCLUSIVE_ONLY)) /* We're off the end of robj array */ + { + if (mode == json_diff_bool) + { + *ret_intp = 1; + return; + } + json_object_diff(depth+1,lsubobj,subnm,0,"***DEL***",mode,flags,tols,retting); + } + else if (!(flags&JSON_DIFF_EXCLUSIV_ONLY))/* We're off the end of lobj array */ + { + if (mode == json_diff_bool) + { + *ret_intp = 1; + return; + } + json_object_diff(depth+1,0,"***ADD***",rsubobj,subnm,mode,flags,tols,retting); + } + } + } + else + { + } + } + else if (json_object_is_type(robj, json_type_array)) + { + } +} + +void json_object_object_diff( + int depth, + struct json_object *left, char const *lnm, + struct json_object *right, char const *rnm, + enum json_diff_mode mode, int flags, double const tols[3], + void *retthing) +{ + + int *ret_intp = (int *) retthing; + struct printbuf *ret_pbufp = (struct printbuf *) retthing; + struct json_object *ret_objp = (struct json_object *) retthing; + + if (retthing == 0) return; + + if (flags & JSON_C_DIFF_ZERO_TOLS) + tols[0] = tols[1] = tols[2] = 0; + + if (json_object_get_type(left) == json_object_get_type(right)) + { + /* Diffing two objects of the same, primitive type is easy */ + switch (json_object_get_type(left)) + { + case json_type_null: + { + switch (mode) + { + case json_diff_bool: + *ret_intp = 0; + return; + case json_diff_string: + if (flags & JSON_C_DIFF_TOTAL) + sprintbuf(*ret_pbp, "%s%-20s null %20d%20d%20d\n", indent[depth], lnm, 0, 0, 0); + return; + case json_diff_object: + if (flags & JSON_C_DIFF_TOTAL) + json_object_object_add(ret_objp, lnm, json_object_new_int(0)); + return; + } + } + case json_type_bool: + { + switch (mode) + { + int is_diff = json_object_is_boolean_diff(left, right); + case json_diff_bool: + *ret_intp = is_diff; + return; + case json_diff_string: + if (is_diff || (flags & JSON_C_DIFF_TOTAL)) + sprintbuf(*ret_pbp, "%s%-20s bool %20d%20d%20d\n", indent[depth], + lnm, json_object_get_boolean(left), json_object_get_boolean(right), + json_object_get_boolean_diff_string(left, right)); + return; + case json_diff_object: + if (is_diff || (flags & JSON_C_DIFF_TOTAL)) + json_object_object_add(ret_objp, lnm, json_object_get_boolean_diff_object(left, right)); + return; + } + } + case json_type_int: + { + int is_diff = json_object_is_int_diff(left, right, tols[0], tols[1], tols[2]); + switch (mode) + { + case json_diff_bool: + *ret_intp = is_diff; + return; + case json_diff_string: + if (is_diff || (flags & JSON_C_DIFF_TOTAL)) + sprintbuf(*ret_pbp, "%s%-20s int %20d%20d%20d\n", indent[depth], + lnm, json_object_get_int(left), json_object_get_int(right), + json_object_get_int_diff_string(left, right, tols[0], tols[1], tols[2])); + case json_diff_object: + if (is_diff || (flags & JSON_C_DIFF_TOTAL)) + json_object_object_add(ret_objp, lnm, json_object_get_int_diff_object(left, right, tols[0], tols[1], tols[2])); + } + } + case json_type_double: + { + int is_diff = json_object_is_double_diff(left, right, tols[0], tols[1], tols[2]); + switch (mode) + { + case json_diff_bool: + *ret_intp = is_diff; + return; + case json_diff_string: + if (is_diff || (flags & JSON_C_DIFF_TOTAL)) + sprintbuf(*ret_pbp, "%s%-20s double %16g%16g%16g\n", indent[depth], + lnm, json_object_get_double(left), json_object_get_double(right), + json_object_get_double_diff_string(left, right, tols[0], tols[1], tols[2])); + return; + case json_diff_object: + if (is_diff || (flags & JSON_C_DIFF_TOTAL)) + json_object_object_add(ret_objp, lnm, json_object_get_double_diff_object(left, right, tols[0], tols[1], tols[2])); + return; + } + } + case json_type_string: + { + } + case json_type_array: + { + int is_diff = json_object_is_array_diff(left, right, tols[0], tols[1], tols[2]); + switch (mode) + { + case json_diff_bool: + *ret_intp = is_diff; + return; + case json_diff_string: + if (is_diff || (flags & JSON_C_DIFF_TOTAL)) + { + int leftcnt = json_object_array_length(left); + int rightcnt = json_object_array_length(right); + int mincnt = leftcnt < rightcnt ? leftcnt : rightcnt; + int maxcnt = leftcnt < rightcnt ? rightcnt : leftcnt; + sprintbuf(*ret_pbp, "%s%-20s array\n", indent[depth], lnm); + for (i = 0 i < mincnt; i++) + { + char const subnm[32]; + json_object struct *subleft = json_object_array_get_idx(left, i); + json_object struct *subright = json_object_array_get_idx(right, i); + sprintf(subnm, "%s[%03d]", lnm, i); + json_object_object_diff(depth+1, subleft, subright, subnm, subnm, mode, flags, tols, retthing); + } + if (!(flags & JSON_C_DIFF_INCLUSIVE)) + { + for (i = mincnt; i < maxcnt; i++) + { + char const subnm[32]; + json_object struct *subleft = json_object_array_get_idx(left, i); + json_object struct *subright = json_object_array_get_idx(right, i); + sprintf(subnm, "%s[%03d]", lnm, i); + json_object_object_diff(depth+1, subleft, subright, subnm, subnm, mode, flags, tols, retthing); + } + } + } + return; + case json_diff_object: + if (is_diff || (flags & JSON_C_DIFF_TOTAL)) + { + } + return; + } + } + case json_type_object: + { + } + } + } + else if (flags & JSON_C_DIFF_MIX_PRIM_TYPE) + { + + + + + + + } + else + { + } + + + + + + + struct printbuf *pb_retval = printbuf_new(); /* prepare for pb return */ + struct json_object *jso_retval = json_object_new(); /* prepare for obj return */ +} + +int json_object_get_boolean_diff(struct json_object *left, struct json_object *right) +{ + json_bool leftval, rightval; + + if (!json_object_is_type(left, json_type_boolean) || + !json_object_is_type(right, json_type_boolean)) + return -2; /* invalid diff */ + + leftval = json_object_get_boolean(left); + rightval = json_object_get_boolean(right); + + return (int) leftval - (int) rightval; +} + +int json_object_get_int_diff(struct json_object *left, struct json_object *right, + double abstol, double reltol, double reltol_eps) +{ + int leftval, rightval, diff; + + if (!json_object_is_type(left, json_type_int) || + !json_object_is_type(right, json_type_int)) + return -INT_MAX; /* invalid diff */ + + leftval = json_object_get_int(left); + rightval = json_object_get_int(right); + diff = leftval - rightval; + if (DBIsDifferentDouble(leftval, rightval, abstol, reltol, reltol_eps)) + return diff; + return 0; +} + +double json_object_get_double_diff(struct json_object *left, struct json_object *right, + double abstol, double reltol, double reltol_eps) +{ + double leftval, rightval, diff; + + if (!json_object_is_type(left, json_type_double) || + !json_object_is_type(right, json_type_double)) + return -DBL_MAX; /* invalid diff */ + + leftval = json_object_get_double(left); + rightval = json_object_get_double(right); + diff = leftval - rightval; + if (DBIsDifferentDouble(leftval, rightval, abstol, reltol, reltol_eps)) + return diff; + return 0; +} + +char const *json_object_get_string_diff(struct json_object *left, struct json_object *right) +{ + if (!json_object_is_type(left, json_type_string) || + !json_object_is_type(right, json_type_string)) + return 0; /* invalid diff */ + + /* MAJOR HACK. To be consistent with rest of json-c interface, we would like to return + * a garbage collected string here. But, we're not going to create any new json + * objects here. So, our solution is to use the left operand's printbuf to hold + * the returned string. This is 'ok' because any future attempt to to_json_string() + * on the left operand will reset the left opeand's printbuf before stringifying the + * left operand json object. */ + printbuf_reset(left->_pb); + + { + char const *leftval = json_object_get_string(left); + int leftlen = json_object_get_string_len(left); + char const *rightval = json_object_get_string(right); + int rightlen = json_object_get_string_len(right); + int i, hasdiffs = 0, hasextras = 0, maxlen; + + maxlen = leftlen < rightlen ? rightlen : leftlen; + + for (i = 0; i < maxlen; i++) + { + char leftc = i < leftlen ? leftval[i] : '<'; + char rightc = i < rightlen ? rightval[i] : '>'; + + if (i < leftlen && i < rightlen) + { + if (leftc == rightc) + { + sprintfbuf(left->_pb, "="); + } + else + { + hasdiffs = 1; + sprintfbuf(left->_pb, "!"); + } + } + else + { + if (hasextras == 0) + hasextras = i; + if (i < leftlen) + sprintfbuf(left->_pb, "%c", hasdiffs ? '<' : leftc); + else + sprintfbuf(left->_pb, "%c", hasdiffs ? '>' : rightc); + } + } + + if (!hasdiffs && !hasextras) + { + printbuf_reset(left->_pb); + return ""; + } + + return left->_pb->buf; + } +} + +struct json_object *json_object_array_get_idx_diff( + struct json_object *left, struct json_object *right, int idx, + double abstol, double reltol, double reltol_eps) +{ + struct json_object *leftidx, *rightidx; + + if (!json_object_is_type(left, json_type_array) || + !json_object_is_type(right, json_type_array)) + return json_type_null; /* invalid diff */ + + if (idx >= json_object_array_length(left) || + idx >= json_object_array_length(right)) + return json_type_null; /* invalid diff */ + + leftidx = json_object_array_get_idx(left, idx); + rightidx = json_object_array_get_idx(right, idx); + + return json_object_object_get_diff(leftidx, rightidx); +} + +int json_object_is_boolean_diff(struct json_object *left, struct json_object *right) +{ + return json_object_get_boolean_diff(left, right) == 0; +} + +int json_object_is_int_diff(struct json_object *left, struct json_object *right, + double abstol, double reltol, double reltol_eps) +{ + return json_object_get_int_diff(left, right, abstol, reltol, reltol_eps) == 0; +} + +int json_object_is_double_diff(struct json_object *left, struct json_object *right, + double abstol, double reltol, double reltol_eps) +{ + return json_object_get_double_diff(left, right, abstol, reltol, reltol_eps) == 0; +} + +int json_object_is_string_diff(struct json_object *left, struct json_object *right) +{ + char const *diffval = json_object_get_string_diff(left, right); + if (!diffval) return 1; + if (strlen(diffval) == 0) return 0; + return 1; +} + +char const * +json_object_get_boolean_diff_string(struct json_object *left, struct json_object *right) +{ + int diffval = json_object_get_boolean_diff(left, right); + /* MAJOR HACK. To be consistent with rest of json-c interface, we would like to return + * a garbage collected string here. But, we're not going to create any new json + * objects here. So, our solution is to use the left operand's printbuf to hold + * the returned string. This is 'ok' because any future attempt to to_json_string() + * on the left operand will reset the left opeand's printbuf before stringifying the + * left operand json object. */ + printbuf_reset(left->_pb); + if (diffval == -2) + sprintbuf(left->_pb, "incompatible objects"); + else if (diffval != 0) + sprintbuf(left->_pb, "%d", diffval); + else + sprintbuf(left->_pb, ""); + return left->_pb->buf; +} + +char const * +json_object_get_int_diff_string(struct json_object *left, struct json_object *right, + double abstol, double reltol, double reltol_eps) +{ + int diffval = json_object_get_int_diff(left, right, abstol, reltol, reltol_eps); + /* MAJOR HACK. To be consistent with rest of json-c interface, we would like to return + * a garbage collected string here. But, we're not going to create any new json + * objects here. So, our solution is to use the left operand's printbuf to hold + * the returned string. This is 'ok' because any future attempt to to_json_string() + * on the left operand will reset the left opeand's printbuf before stringifying the + * left operand json object. */ + printbuf_reset(left->_pb); + if (diffval == -INT_MAX) + sprintbuf(left->_pb, "incompatible objects"); + else if (diffval != 0) + sprintbuf(left->_pb, "%d", diffval); + else + sprintbuf(left->_pb, ""); + return left->_pb->buf; +} + +char const * +json_object_get_double_diff_string(struct json_object *left, struct json_object *right, + double abstol, double reltol, double reltol_eps) +{ + double diffval = json_object_get_double_diff(left, right, abstol, reltol, reltol_eps); + /* MAJOR HACK. To be consistent with rest of json-c interface, we would like to return + * a garbage collected string here. But, we're not going to create any new json + * objects here. So, our solution is to use the left operand's printbuf to hold + * the returned string. This is 'ok' because any future attempt to to_json_string() + * on the left operand will reset the left opeand's printbuf before stringifying the + * left operand json object. */ + printbuf_reset(left->_pb); + if (diffval == -DBL_MAX) + sprintbuf(left->_pb, "incompatible objects"); + else if (diffval != 0) + sprintbuf(left->_pb, "%16g", diffval); + else + sprintbuf(left->_pb, ""); + return left->_pb->buf; +} + +char const * +json_object_get_string_diff_string(struct json_object *left, struct json_object *right) +{ + return json_object_get_string_diff(left, right); +} + + + + +struct json_object * +json_object_get_boolean_diff_object(struct json_object *left, struct json_object *right) +{ + return json_object_new_boolean(json_object_get_boolean_diff(left, right)); +} + +struct json_object * +json_object_get_int_diff_object(struct json_object *left, struct json_object *right, + double abstol, double reltol, double reltol_eps) +{ + return json_object_new_int(json_object_get_int_diff(left, right, abstol, reltol, reltol_eps)); +} + +struct json_object * +json_object_get_double_diff_object(struct json_object *left, struct json_object *right, + double abstol, double reltol, double reltol_eps) +{ + return json_object_new_double(json_object_get_double_diff(left, right, abstol, reltol, reltol_eps)); +} + +struct json_object * +json_object_get_string_diff_object(struct json_object *left, struct json_object *right) +{ + return json_object_new_string(json_object_get_string_diff(left, right)); +} + +struct json_object *json_object_get_array_diff(struct json_object *left, struct json_object *right, + double abstol, double reltol, double reltol_eps) +{ + if (!json_object_is_type(left, json_type_array) || + !json_object_is_type(right, json_type_array)) + return json_object_invalid; /* invalid diff */ + + leftlen = json_object_get_array_length(left); + rightlen = json_object_get_array_length(right); + if (leftlen > rightlen) + { + maxlen = leftlen; + minlen = rightlen; + } + else + { + maxlen = rightlen; + minlen = leftlen; + } + + retval = json_object_new_array(); + + for (i = 0; i < minlen; i++) + { + json_object_array_add(retval, json_object_object_get_diff()); + } + +} + +struct json_object *json_object_object_get_diff(struct json_object *left, struct json_object *right, + double abstol, double reltol, double reltol_eps) +{ + if (json_object_get_type(left) != json_object_get_type(right)) + return json_object_invalid; /* invalid diff */ + + switch (json_object_get_type(left)) + { + case json_type_null: + { + return json_type_null; + } + case json_type_boolean: + { + return json_object_get_boolean_diff_object(left, right); + } + case json_type_int: + { + return json_object_get_int_diff_object(left, right, abstol, reltol, reltol_eps); + } + case json_type_double: + { + return json_object_get_double_diff_object(left, right, abstol, reltol, reltol_eps); + } + case json_type_string: + { + return json_object_get_string_diff_object(left, right); + } + case json_type_array: + { + return json_object_get_array_diff_object(left, right, abstol, reltol, reltol_eps); + } + case json_type_object: + { + /* check for extptr case here */ + } + } +} + + +int json_object_diff_object(struct json_object *objL, struct json_object *objR) +{ + struct json_object_iterator jiter, jend; + + jiter = json_object_iter_begin(objL); + jend = json_object_iter_end(objL); + while (!json_object_iter_equal(&jiter, &jend)) + { + char const *mnameL = json_object_iter_peek_name(&jiter); + struct json_object *subobjL = json_object_iter_peek_value(&jiter); + struct json_object *subobjR; + + if (!json_object_object_get_ex(objR, mnameL, &subobjR)) + + } +} +#endif + +/* Return a Silo object as a Json Object. Bulk data passed using funky exptr */ +PUBLIC struct json_object * +DBGetJsonObject(DBfile *dbfile, char const *objname) +{ + int i; + struct json_object *jobj = json_object_new_object(); + DBobject *sobj = DBGetObject(dbfile, objname); + if (!sobj) return jobj; + + json_object_object_add(jobj, "silo_name", json_object_new_string(sobj->name)); + json_object_object_add(jobj, "silo_type", json_object_new_int(DBGetObjtypeTag(sobj->type))); + + for (i = 0; i < sobj->ncomponents; i++) + { + char cat_comp_name[1024]; + snprintf(cat_comp_name, sizeof(cat_comp_name), "%s_%s", objname, sobj->comp_names[i]); + if (!strncmp(sobj->pdb_names[i], "'", 4)) + { + json_object_object_add(jobj, sobj->comp_names[i], + json_object_new_int(strtol(sobj->pdb_names[i]+4, NULL, 0))); + } + else if (!strncmp(sobj->pdb_names[i], "'", 4)) + { + json_object_object_add(jobj, sobj->comp_names[i], + json_object_new_double(strtod(sobj->pdb_names[i]+4, NULL))); + } + else if (!strncmp(sobj->pdb_names[i], "'", 4)) + { + json_object_object_add(jobj, sobj->comp_names[i], + json_object_new_double(strtod(sobj->pdb_names[i]+4, NULL))); + } + else if (!strncmp(sobj->pdb_names[i], "'", 4)) + { + char tmp[256]; + size_t len = strlen(sobj->pdb_names[i])-5; + memset(tmp, 0, sizeof(tmp)); + strncpy(tmp, sobj->pdb_names[i]+4, len); + if (DBInqVarExists(dbfile, tmp)) + { + if (DBInqVarType(dbfile, tmp) == DB_VARIABLE) + { + void *p; + int ndims, dims[32]; + int dtype = DBGetVarType(dbfile, tmp); + ndims = DBGetVarDims(dbfile, tmp, sizeof(dims)/sizeof(dims[0]), dims); + p = DBGetVar(dbfile, tmp); + json_object_object_add(jobj, sobj->comp_names[i], + json_object_new_extptr(p, ndims, dims, dtype)); + } + else + { + json_object_object_add(jobj, sobj->comp_names[i], + DBGetJsonObject(dbfile, tmp)); + } + } + else + { + json_object_object_add(jobj, sobj->comp_names[i], + json_object_new_string(tmp)); + } + } + else if (DBInqVarType(dbfile, cat_comp_name) == DB_VARIABLE) + { + void *p; + int ndims, dims[32]; + int dtype = DBGetVarType(dbfile, cat_comp_name); + ndims = DBGetVarDims(dbfile, cat_comp_name, sizeof(dims)/sizeof(dims[0]), dims); + p = DBGetVar(dbfile, cat_comp_name); + json_object_object_add(jobj, sobj->comp_names[i], + json_object_new_extptr(p, ndims, dims, dtype)); + } + else if (DBInqVarExists(dbfile, sobj->comp_names[i])) + { + json_object_object_add(jobj, sobj->comp_names[i], + DBGetJsonObject(dbfile, sobj->comp_names[i])); + } + else /* some component we do not know how to handle */ + { + json_object_object_add(jobj, sobj->comp_names[i], + json_object_new_string("")); + } + } + DBFreeObject(sobj); + return jobj; +} + +int DBWriteJsonObject(DBfile *dbfile, struct json_object *jobj) +{ + static int cnt = 0; + int retval; + DBobject *sobj; + char objnm[256]; + struct json_object_iterator jiter, jend; + memset(objnm, 0, sizeof(objnm)); + if (json_object_object_get_ex(jobj, "silo_type", 0) && + json_object_object_get_ex(jobj, "silo_name", 0)) + { + json_object *silo_type_obj = json_object_object_get(jobj, "silo_type"); + json_object *silo_name_obj = json_object_object_get(jobj, "silo_name"); + strncpy(objnm, json_object_get_string(silo_name_obj), sizeof(objnm)); + sobj = DBMakeObject(objnm, + json_object_get_int(silo_type_obj), + json_object_object_length(jobj)+10 + ); + } + else + { + snprintf(objnm, sizeof(objnm), "anon_%d", cnt++); + sobj = DBMakeObject(objnm, DB_USERDEF, json_object_object_length(jobj)+10); + } + jiter = json_object_iter_begin(jobj); + jend = json_object_iter_end(jobj); + + /* use foreachC macro instead */ + while (!json_object_iter_equal(&jiter, &jend)) + { + struct json_object *mobj = json_object_iter_peek_value(&jiter); + char const *mname = json_object_iter_peek_name(&jiter); + json_type jtype = json_object_get_type(mobj); + + switch (jtype) + { + case json_type_array: + case json_type_null: break; + + case json_type_boolean: + case json_type_int: + { + int val = 0; + if (jtype == json_type_boolean && json_object_get_boolean(mobj)) + val = 1; + else + val = json_object_get_int(mobj); + DBAddIntComponent(sobj, mname, val); + break; + } + case json_type_double: + { + DBAddDblComponent(sobj, mname, json_object_get_double(mobj)); + break; + } + case json_type_string: + { + if (strlen(json_object_get_string(mobj))) + DBAddStrComponent(sobj, mname, json_object_get_string(mobj)); + break; + } + +/* warning STRDUPS ARE LEAKS */ + + case json_type_object: /* must be extptr array reference */ + { + if (json_object_object_get_ex(mobj, "ptr", 0) && + json_object_object_get_ex(mobj, "datatype", 0) && + json_object_object_get_ex(mobj, "ndims", 0) && + json_object_object_get_ex(mobj, "dims", 0)) + { + int i; + long dims[32]; + void *p = json_object_get_strptr(json_object_object_get(mobj, "ptr")); + int datatype = json_object_get_int(json_object_object_get(mobj, "datatype")); + int ndims = json_object_get_int(json_object_object_get(mobj, "ndims")); + struct json_object *darr = json_object_object_get(mobj, "dims"); + for (i = 0; i < ndims; i++) + dims[i] = (long) json_object_get_int(json_object_array_get_idx(darr, i)); + DBWriteComponent(dbfile, sobj, mname, strdup(objnm), + db_GetDatatypeString(datatype), p, ndims, dims); + } + else + { + json_object *silo_type_subobj=0, *silo_name_subobj=0; + int has_silo_type, has_silo_name; + char tmp[32]; + has_silo_type = json_object_object_get_ex(mobj, "silo_type", &silo_type_subobj); + has_silo_name = json_object_object_get_ex(mobj, "silo_name", &silo_name_subobj); + snprintf(tmp, sizeof(tmp), "anon_%d", cnt); + + if (has_silo_name && has_silo_type) + DBAddStrComponent(sobj, mname, strdup(json_object_get_string(silo_name_subobj))); + else + DBAddStrComponent(sobj, mname, strdup(tmp)); + DBWriteJsonObject(dbfile, mobj); + } + + break; + } + } + json_object_iter_next(&jiter); + } + retval = DBWriteObject(dbfile, sobj, 0); + DBFreeObject(sobj); + return retval; +} diff -Nru silo-llnl-4.10.2/src/silo/silo_json.h silo-llnl-4.10.2.real/src/silo/silo_json.h --- silo-llnl-4.10.2/src/silo/silo_json.h 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/src/silo/silo_json.h 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,120 @@ +/* +Copyright (c) 1994 - 2010, Lawrence Livermore National Security, LLC. +LLNL-CODE-425250. +All rights reserved. + +This file is part of Silo. For details, see silo.llnl.gov. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the disclaimer below. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the disclaimer (as noted + below) in the documentation and/or other materials provided with + the distribution. + * Neither the name of the LLNS/LLNL nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL LAWRENCE +LIVERMORE NATIONAL SECURITY, LLC, THE U.S. DEPARTMENT OF ENERGY OR +CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +This work was produced at Lawrence Livermore National Laboratory under +Contract No. DE-AC52-07NA27344 with the DOE. + +Neither the United States Government nor Lawrence Livermore National +Security, LLC nor any of their employees, makes any warranty, express +or implied, or assumes any liability or responsibility for the +accuracy, completeness, or usefulness of any information, apparatus, +product, or process disclosed, or represents that its use would not +infringe privately-owned rights. + +Any reference herein to any specific commercial products, process, or +services by trade name, trademark, manufacturer or otherwise does not +necessarily constitute or imply its endorsement, recommendation, or +favoring by the United States Government or Lawrence Livermore +National Security, LLC. The views and opinions of authors expressed +herein do not necessarily state or reflect those of the United States +Government or Lawrence Livermore National Security, LLC, and shall not +be used for advertising or product endorsement purposes. +*/ +#ifndef SILO_JSON_H +#define SILO_JSON_H + +#include + +#include + +#define JSON_C_TO_STRING_EXTPTR_AS_BINARY (JSON_C_TO_STRING_PRETTY<<1) +#define JSON_C_TO_STRING_EXTPTR_SKIP (JSON_C_TO_STRING_EXTPTR_AS_BINARY<<1) + +#define JSON_C_DIFF_ZERO_TOLS 0x00000001 /* ignore tolerances (e.g. set to zero) */ +#define JSON_C_DIFF_INCLUSIVE_ONLY 0x00000002 /* ignore exclusive members */ +#define JSON_C_DIFF_MIX_PRIM_TYPE 0x00000004 /* allow diffs of mixed primitive type */ +#define JSON_C_DIFF_TOTAL 0x00000008 /* compute a total difference including even non-differing terms. */ +#define JSON_C_DIFF_REVERSE_LR 0x00000010 /* INTERNAL USE ONLY (left/right operands are reversed) */ +#define JSON_C_DIFF_RADIX_BINARY 0x00000020 /* radix at which to print numerical values 2,8,10,16 */ +#define JSON_C_DIFF_RADIX_OCTAL 0x00000040 /* radix at which to print numerical values 2,8,10,16 */ +#define JSON_C_DIFF_RADIX_DECIMAL 0x00000080 /* radix at which to print numerical values 2,8,10,16 */ +#define JSON_C_DIFF_RADIX_HEX 0x00000100 /* radix at which to print numerical values 2,8,10,16 */ + +#ifdef __cplusplus +extern "C" { +#endif + +enum json_diff_mode { json_diff_bool, json_diff_string, json_diff_object }; + +/* A 'strptr' json object is just a string representation + * (e.g. '0xFFFE60A42') of a void pointer */ +SILO_API extern struct json_object * json_object_new_strptr(void *p); +SILO_API extern void * json_object_get_strptr(struct json_object *o); + +/* An 'extptr' json object is an ensemble of 4 json objects, + * (int) datatype, (int) ndims, (array) dims, (strptr) void *, + * that represent an array of data externally referenced from + * the json object. */ +SILO_API extern struct json_object * json_object_new_extptr(void *p, int ndims, int const *dims, int datatype); +SILO_API extern void json_object_extptr_delete(struct json_object *jso); + +/* Inspect members of an extptr object */ +SILO_API int json_object_is_extptr(struct json_object *obj); +SILO_API extern int json_object_get_extptr_datatype(struct json_object *obj); +SILO_API extern int json_object_get_extptr_ndims(struct json_object *obj); +SILO_API extern int json_object_get_extptr_dims_idx(struct json_object *obj, int idx); +SILO_API extern void * json_object_get_extptr_ptr(struct json_object *obj); +SILO_API extern int json_object_reconstitute_extptrs(struct json_object *obj); + +/* Methods to serialize a json object to a binary buffer. Note that the + * json-c library itself can serialize Silo's json objects to a string using + * json_object_to_json_string(). */ +SILO_API extern int json_object_to_binary_buf(struct json_object *obj, int flags, void **buf, int *len); +SILO_API extern struct json_object * json_object_from_binary_buf(void *buf, int len); + +/* Methods to read/write serial, json object to a file */ +SILO_API extern int json_object_to_binary_file(char const *filename, struct json_object *obj); +SILO_API extern struct json_object * json_object_from_binary_file(char const *filename); + +SILO_API extern int json_object_diff(struct json_object *objL, struct json_object json_objR); + +/* Methods to read/write json objects as Silo objects */ +SILO_API extern int DBWriteJsonObject(DBfile *dbfile, struct json_object *jobj); +SILO_API extern struct json_object *DBGetJsonObject(DBfile *, char const *); + +#ifdef __cplusplus +} +#endif + +#endif diff -Nru silo-llnl-4.10.2/src/silo/silo_ns.c silo-llnl-4.10.2.real/src/silo/silo_ns.c --- silo-llnl-4.10.2/src/silo/silo_ns.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/src/silo/silo_ns.c 2018-02-15 17:25:43.000000000 +0000 @@ -175,7 +175,6 @@ char typec = *p; char tokbuf[129]; char *tp = tokbuf; - DBexprnode *subtree; p++; while (*p != '[') *tp++ = *p++; @@ -183,14 +182,6 @@ *tp = '\0'; errno = 0; tree = UpdateTree(tree, typec, 0, tokbuf); - p++; - subtree = BuildExprTree(&p); - if (tree->left == 0) - tree->left = subtree; - else if (tree->right == 0) - tree->right = subtree; - else - free(subtree); /* should never hit this case */ break; } @@ -202,7 +193,7 @@ break; } - case '(': + case '(': case '[': { DBexprnode *subtree; p++; @@ -257,11 +248,14 @@ } /* very simple circular cache for a handful of embedded strings */ -static int SaveInternalString(DBnamescheme *ns, const char *sval) +static int SaveInternalString(DBnamescheme const *ns, const char *sval) { - int modn = ns->nembed++ % DB_MAX_EXPSTRS; - FREE(ns->embedstrs[modn]); - ns->embedstrs[modn] = STRDUP(sval); + /* The modn/embedstrs portion of a namescheme is 'internal' state + allowed to disobey const rules */ + DBnamescheme *non_const_ns = (DBnamescheme*) ns; + int modn = non_const_ns->nembed++ % DB_MAX_EXPSTRS; + FREE(non_const_ns->embedstrs[modn]); + non_const_ns->embedstrs[modn] = STRDUP(sval); return modn; } @@ -285,7 +279,7 @@ } static int -EvalExprTree(DBnamescheme *ns, DBexprnode *tree, int n) +EvalExprTree(DBnamescheme const *ns, DBexprnode *tree, int n) { if (tree == 0) return 0; @@ -319,16 +313,23 @@ { vc = EvalExprTree(ns, tree->left, n); tree = tree->right; + if (vc) + vl = EvalExprTree(ns, tree->left, n); + else + vr = EvalExprTree(ns, tree->right, n); + } + else + { + vl = EvalExprTree(ns, tree->left, n); + vr = EvalExprTree(ns, tree->right, n); } - vl = EvalExprTree(ns, tree->left, n); - vr = EvalExprTree(ns, tree->right, n); switch (tree->type) { case '+': return vl + vr; case '-': return vl - vr; case '*': return vl * vr; - case '/': return vl / vr; - case '%': return vl % vr; + case '/': return (vr != 0 ? vl / vr : 1); + case '%': return (vr != 0 ? vl % vr : 1); case '|': return vl | vr; case '&': return vl & vr; case '^': return vl ^ vr; @@ -339,7 +340,7 @@ } PUBLIC DBnamescheme * -DBMakeNamescheme(const char *fmt, ...) +DBMakeNamescheme(char const *fmt, ...) { va_list ap; int i, j, k, n, pass, ncspecs, done, saved_narrefs; @@ -495,7 +496,7 @@ { char **tmp = NULL; rv->arrsizes[k] = -1; /* initialize to 'unknown size' */ - tmp = DBStringListToStringArray((char*)rv->arrvals[k], &(rv->arrsizes[k]), 0, 0); + tmp = DBStringListToStringArray((char*)rv->arrvals[k], &(rv->arrsizes[k]), 0); FREE(rv->arrvals[k]); rv->arrvals[k] = tmp; } @@ -535,7 +536,7 @@ } PUBLIC const char * -DBGetName(DBnamescheme *ns, int natnum) +DBGetName(DBnamescheme const *ns, int natnum) { char *currentExpr, *tmpExpr; static char retval[1024]; diff -Nru silo-llnl-4.10.2/src/silo/silo_private.h silo-llnl-4.10.2.real/src/silo/silo_private.h --- silo-llnl-4.10.2/src/silo/silo_private.h 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/src/silo/silo_private.h 2018-02-15 17:25:43.000000000 +0000 @@ -76,9 +76,6 @@ #include /*for access() F_OK, R_OK */ #endif #endif -/* define USE_CONST_DB_CONSTARR so that when we compile Silo - we are sure to get the CONST versions of DB_CONSTARR symbols */ -#define USE_CONST_DB_CONSTARR #include "silo.h" /* @@ -314,7 +311,7 @@ jstat = 1 ; \ if (NM && jdbfile && !jdbfile->pub.pathok) { \ char const *jr ; \ - jold = context_switch (jdbfile,(char const *)NM,&jr) ;\ + jold = context_switch (jdbfile,NM,&jr) ; \ if (!jold) longjmp (SILO_Globals.Jstk->jbuf, -1) ;\ NM = jr ; \ } \ @@ -387,7 +384,7 @@ #define REALLOC(P,T,N) REALLOC_N((P),(T),(N)) #define REALLOC_N(P,T,N) ((T*)((N)>0?realloc((P),(size_t)((N)*sizeof(T))):0)) #define FREE(M) if(M){free(M);(M)=NULL;} -#define STRDUP(S) safe_strdup((S)) +#define STRDUP(S) _db_safe_strdup((S)) #define STRNDUP(S,N) db_strndup((S),(N)) #define SW_strndup(S,N) db_strndup((S),(N)) @@ -413,6 +410,26 @@ */ #define DB_ISOPEN 0x01 /*database is open; ID is in use */ +#define db_SetMissingValueForGet(DST, SRC) \ +{ \ + DST = SRC; \ + if (DST == DB_MISSING_VALUE_NOT_SET) \ + DST = 0.0; \ + else if (DST == 0.0) \ + DST = DB_MISSING_VALUE_NOT_SET; \ +} + +#define db_SetMissingValueForPut(DST, SRC) \ +{ \ + if (SRC != DB_MISSING_VALUE_NOT_SET) \ + { \ + if (SRC == 0) \ + DST = DB_MISSING_VALUE_NOT_SET;\ + else \ + DST = SRC; \ + } \ +} + /* * Global data for Material */ @@ -469,6 +486,9 @@ int _llong_gnodeno; int _conserved; int _extensive; + double _missing_value; + char *_ghost_node_labels; + char **_alt_nodenum_vars; /*These used only by NetCDF driver */ int _dim_ndims; @@ -491,7 +511,7 @@ int _dtime_set; float _align[3]; int _cycle; - int _coordsys; + int _coord_sys; int _facetype; int _hi_offset[3]; int _lo_offset[3]; @@ -523,6 +543,11 @@ char **_region_pnames; int _conserved; int _extensive; + double _missing_value; + char *_ghost_node_labels; + char *_ghost_zone_labels; + char **_alt_nodenum_vars; + char **_alt_zonenum_vars; /* These are probably only used by the pdb driver */ char _nm_dims[64]; @@ -567,7 +592,7 @@ int _lo_offset; int _hi_offset_set; int _lo_offset_set; - int _coordsys; + int _coord_sys; int _topo_dim; int _facetype; int _ndims; @@ -604,6 +629,9 @@ int _llong_gnodeno; int _conserved; int _extensive; + double _missing_value; + char *_ghost_node_labels; + char **_alt_nodenum_vars; }; /* @@ -642,6 +670,8 @@ int _disjoint_mode; int _conserved; int _extensive; + double _missing_value; + char **_alt_nodenum_vars; }; /* @@ -650,6 +680,8 @@ struct _uzl { int *_gzoneno; int _llong_gzoneno; + char *_ghost_zone_labels; + char **_alt_zonenum_vars; }; /* @@ -658,6 +690,8 @@ struct _phzl { int *_gzoneno; int _llong_gzoneno; + char *_ghost_zone_labels; + char **_alt_zonenum_vars; }; /* @@ -666,6 +700,7 @@ struct _csgzl { char **_regnames; char **_zonenames; + char **_alt_zonenum_vars; }; /* @@ -719,6 +754,9 @@ int *_empty_list; int _empty_cnt; int _repr_block_idx; + double _missing_value; + char **_alt_zonenum_vars; + char **_alt_nodenum_vars; }; /* @@ -731,6 +769,8 @@ char *_units[2] ; int _guihide; char *_reference ; + int _coord_sys ; + double _missing_value; }; /* @@ -795,7 +835,7 @@ /* Namespace struct for Silo's global variables */ typedef struct SILO_Globals_t { - long dataReadMask; + unsigned long long dataReadMask; int allowOverwrites; int allowEmptyObjects; int enableChecksums; @@ -842,7 +882,7 @@ INTERNAL char *DBGetObjtypeName (int); INTERNAL char *db_strndup (const char *, int); INTERNAL char *db_GetDatatypeString (int); -INTERNAL int db_GetDatatypeID (char *); +INTERNAL int db_GetDatatypeID (char const * const); INTERNAL int db_perror (char const *, int, char const *); INTERNAL void _DBQQCalcStride (int *, int *, int, int); INTERNAL void _DBQMSetStride (DBquadmesh *); @@ -856,16 +896,16 @@ int *); INTERNAL int CSGM_CalcExtents (int, int, int, const int*, const void *, double *, double *); -INTERNAL int _DBQMCalcExtents (DB_DTPTR2, int, int *, int *, int *, int, +INTERNAL int _DBQMCalcExtents (DBVCP2_t, int, int const *, int const *, int const *, int, int, void *, void *); -INTERNAL int UM_CalcExtents (DB_DTPTR2, int, int, int, void *, +INTERNAL int UM_CalcExtents (DBVCP2_t, int, int, int, void *, void *); -INTERNAL int _DBSubsetMinMax2 (DB_DTPTR1, int, float *, float *, int, +INTERNAL int _DBSubsetMinMax2 (DBVCP1_t, int, float *, float *, int, int, int, int, int); INTERNAL int _DBSubsetMinMax3 (float *, int, float *, float *, int, int, int, int, int, int, int, int); -INTERNAL int db_ProcessOptlist (int, const DBoptlist *const); -INTERNAL int db_VariableNameValid(char *); +INTERNAL int db_ProcessOptlist (int, DBoptlist const * const); +INTERNAL int db_VariableNameValid(char const *); INTERNAL int db_SplitShapelist (DBucdmesh *um); INTERNAL int db_ResetGlobalData_Csgmesh (); INTERNAL int db_ResetGlobalData_Mrgtree(); @@ -892,8 +932,10 @@ INTERNAL char *db_unsplit_path ( const db_Pathname *p ); INTERNAL db_Pathname *db_split_path ( const char *pathname ); INTERNAL const int *db_get_used_file_options_sets_ids(); -char *safe_strdup (const char *); +//char *_db_safe_strdup (const char *); #undef strdup /*prevent a warning for the following definition*/ -#define strdup(s) safe_strdup(s) +#define strdup(s) _db_safe_strdup(s) + +INTERNAL int db_StringListToStringArrayMBOpt(char *strList, char ***strArray, char **alloc_flag, int nblocks); #endif /* !SILO_PRIVATE_H */ diff -Nru silo-llnl-4.10.2/src/taurus/Makefile.in silo-llnl-4.10.2.real/src/taurus/Makefile.in --- silo-llnl-4.10.2/src/taurus/Makefile.in 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/src/taurus/Makefile.in 2018-02-15 17:25:43.000000000 +0000 @@ -181,6 +181,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +JSON = @JSON@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBM = @LIBM@ @@ -229,9 +230,6 @@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SILEX = @SILEX@ -SILO_DTYPPTR = @SILO_DTYPPTR@ -SILO_DTYPPTR1 = @SILO_DTYPPTR1@ -SILO_DTYPPTR2 = @SILO_DTYPPTR2@ SILO_VERS_MAJ = @SILO_VERS_MAJ@ SILO_VERS_MIN = @SILO_VERS_MIN@ SILO_VERS_PAT = @SILO_VERS_PAT@ diff -Nru silo-llnl-4.10.2/src/taurus/silo_taurus.c silo-llnl-4.10.2.real/src/taurus/silo_taurus.c --- silo-llnl-4.10.2/src/taurus/silo_taurus.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/src/taurus/silo_taurus.c 2018-02-15 17:25:43.000000000 +0000 @@ -69,7 +69,7 @@ {"almansi", "green", "inf_strain", "nodal", "shell", "stress", "rates"}; -PRIVATE int db_taur_cd(TAURUSfile *taurus, char *path); +PRIVATE int db_taur_cd(TAURUSfile *taurus, char const *path); PRIVATE int db_taur_pwd(TAURUSfile *taurus, char *path); INTERNAL void db_taur_extface(int *znodelist, int nnodes, int nzones, int *matlist, int **fnodelist, @@ -118,7 +118,7 @@ dbfile->pub.r_var = db_taur_ReadVar; dbfile->pub.newtoc = db_taur_NewToc; dbfile->pub.module = db_taur_Filters; - dbfile->pub.inqvartype = (DBObjectType(*)(struct DBfile *, char*)) db_taur_InqVartype; + dbfile->pub.inqvartype = db_taur_InqVartype; } /*------------------------------------------------------------------------- @@ -231,7 +231,7 @@ *-------------------------------------------------------------------------*/ /* ARGSUSED */ PUBLIC DBfile * -db_taur_Open(char *name, int mode, int subtype) +db_taur_Open(char const *name, int mode, int subtype) { TAURUSfile *taurus; DBfile_taur *dbfile; @@ -348,7 +348,7 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK int -db_taur_SetDir(DBfile *_dbfile, char *path) +db_taur_SetDir(DBfile *_dbfile, char const *path) { DBfile_taur *dbfile = (DBfile_taur *) _dbfile; char *me = "db_taur_SetDir"; @@ -580,7 +580,7 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK void * -db_taur_GetComponent(DBfile *_dbfile, char *obj_name, char *comp_name) +db_taur_GetComponent(DBfile *_dbfile, char const *obj_name, char const *comp_name) { DBfile_taur *dbfile = (DBfile_taur *) _dbfile; TAURUSfile *taurus = dbfile->taurus; @@ -650,7 +650,7 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK DBmaterial * -db_taur_GetMaterial(DBfile *_dbfile, char *mat_name) +db_taur_GetMaterial(DBfile *_dbfile, char const *mat_name) { DBfile_taur *dbfile = (DBfile_taur *) _dbfile; TAURUSfile *taurus = dbfile->taurus; @@ -789,7 +789,7 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK DBucdmesh * -db_taur_GetUcdmesh(DBfile *_dbfile, char *mesh_name) +db_taur_GetUcdmesh(DBfile *_dbfile, char const *mesh_name) { DBfile_taur *dbfile = (DBfile_taur *) _dbfile; TAURUSfile *taurus = dbfile->taurus; @@ -1139,7 +1139,7 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK DBucdvar * -db_taur_GetUcdvar(DBfile *_dbfile, char *var_name) +db_taur_GetUcdvar(DBfile *_dbfile, char const *var_name) { int i, j; int nhex, nshell; @@ -1182,7 +1182,7 @@ if (SILO_Globals.dataReadMask & DBUVData) { - uv->vals = (DB_DTPTR*) ALLOC_N(float *, 1); + uv->vals = (void **)ALLOC_N(void*, 1); if (taurus_readvar(taurus, var_name, &(((float **)(uv->vals))[0]), &uv->nels, &uv->centering, meshname) < 0) { db_perror("taurus_readvar", E_CALLFAIL, me); @@ -1197,7 +1197,7 @@ */ if (taurus->activ >= 1000 && taurus->activ <= 1005) { if (uv->centering != 0) { - buf = uv->vals[0]; + buf = (float *)uv->vals[0]; if (strcmp (meshname, "hs_mesh") == 0) { for (i = 0, j = 0; i < taurus->nhex; i++) { if (taurus->hex_activ [i] != 0) { @@ -1274,7 +1274,7 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK void * -db_taur_GetVar(DBfile *_dbfile, char *varname) +db_taur_GetVar(DBfile *_dbfile, char const *varname) { void *ptr; char *me = "db_taur_GetVar"; @@ -1315,7 +1315,7 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK int -db_taur_GetVarByteLength(DBfile *_dbfile, char *varname) +db_taur_GetVarByteLength(DBfile *_dbfile, char const *varname) { DBfile_taur *dbfile = (DBfile_taur *) _dbfile; TAURUSfile *taurus = dbfile->taurus; @@ -1370,7 +1370,7 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK int -db_taur_GetVarLength(DBfile *_dbfile, char *varname) +db_taur_GetVarLength(DBfile *_dbfile, char const *varname) { DBfile_taur *dbfile = (DBfile_taur *) _dbfile; TAURUSfile *taurus = dbfile->taurus; @@ -1424,7 +1424,7 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK int -db_taur_InqMeshname(DBfile *_dbfile, char *var_name, char *mesh_name) +db_taur_InqMeshname(DBfile *_dbfile, char const *var_name, char *mesh_name) { DBfile_taur *dbfile = (DBfile_taur *) _dbfile; TAURUSfile *taurus = dbfile->taurus; @@ -1514,7 +1514,7 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK int -db_taur_InqMeshtype(DBfile *_dbfile, char *mesh_name) +db_taur_InqMeshtype(DBfile *_dbfile, char const *mesh_name) { DBfile_taur *dbfile = (DBfile_taur *) _dbfile; TAURUSfile *taurus = dbfile->taurus; @@ -1596,8 +1596,8 @@ * *------------------------------------------------------------------------- */ -SILO_CALLBACK int -db_taur_InqVartype(DBfile *_dbfile, char *varname) +SILO_CALLBACK DBObjectType +db_taur_InqVartype(DBfile *_dbfile, char const *varname) { DBfile_taur *dbfile = (DBfile_taur *) _dbfile; TAURUSfile *taurus = dbfile->taurus; @@ -1610,7 +1610,7 @@ char *path = 0; int vartype = DB_INVALID_OBJECT; int changeDir = 0; - char *var = varname + pos; + char const *var = varname + pos; while(*var != '/' && var != varname) --var; /* If we have a slash in the name then we have a directory and @@ -1641,10 +1641,11 @@ if(changeDir) db_taur_cd(taurus, pwd); - return vartype; + return (DBObjectType)vartype; } - return db_perror(varname, E_NOTFOUND, me); + db_perror(varname, E_NOTFOUND, me); + return DB_INVALID_OBJECT; } /*---------------------------------------------------------------------- @@ -1664,7 +1665,7 @@ *--------------------------------------------------------------------*/ /* ARGSUSED */ SILO_CALLBACK int -db_taur_InqVarExists(DBfile *_dbfile, char *varname) +db_taur_InqVarExists(DBfile *_dbfile, char const *varname) { if (strcmp(varname, "time") == 0) { return (1); @@ -1716,7 +1717,7 @@ *------------------------------------------------------------------------- */ SILO_CALLBACK int -db_taur_ReadVar(DBfile *_dbfile, char *varname, void *ptr) +db_taur_ReadVar(DBfile *_dbfile, char const *varname, void *ptr) { DBfile_taur *dbfile = (DBfile_taur *) _dbfile; TAURUSfile *taurus = dbfile->taurus; @@ -1769,7 +1770,7 @@ *------------------------------------------------------------------------- */ PRIVATE int -db_taur_cd(TAURUSfile *taurus, char *path) +db_taur_cd(TAURUSfile *taurus, char const *path) { int i; int state; diff -Nru silo-llnl-4.10.2/src/taurus/silo_taurus_private.h silo-llnl-4.10.2.real/src/taurus/silo_taurus_private.h --- silo-llnl-4.10.2/src/taurus/silo_taurus_private.h 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/src/taurus/silo_taurus_private.h 2018-02-15 17:25:43.000000000 +0000 @@ -76,19 +76,19 @@ #ifndef SILO_NO_CALLBACKS SILO_CALLBACK int db_taur_Close(DBfile *); SILO_CALLBACK int db_taur_GetDir(DBfile *, char *); -SILO_CALLBACK int db_taur_SetDir(DBfile *, char *); -SILO_CALLBACK void *db_taur_GetComponent(DBfile *, char *, char *); -SILO_CALLBACK int db_taur_InqMeshname(DBfile *, char *, char *); -SILO_CALLBACK int db_taur_InqVarExists(DBfile *, char *); -SILO_CALLBACK int db_taur_InqMeshtype(DBfile *, char *); -SILO_CALLBACK int db_taur_InqVartype(DBfile *, char *); -SILO_CALLBACK int db_taur_ReadVar(DBfile *, char *, void *); -SILO_CALLBACK DBmaterial *db_taur_GetMaterial(DBfile *, char *); -SILO_CALLBACK DBucdmesh *db_taur_GetUcdmesh(DBfile *, char *); -SILO_CALLBACK DBucdvar *db_taur_GetUcdvar(DBfile *, char *); -SILO_CALLBACK void *db_taur_GetVar(DBfile *, char *); -SILO_CALLBACK int db_taur_GetVarByteLength(DBfile *, char *); -SILO_CALLBACK int db_taur_GetVarLength(DBfile *, char *); +SILO_CALLBACK int db_taur_SetDir(DBfile *, char const *); +SILO_CALLBACK void *db_taur_GetComponent(DBfile *, char const *, char const *); +SILO_CALLBACK int db_taur_InqMeshname(DBfile *, char const *, char *); +SILO_CALLBACK int db_taur_InqVarExists(DBfile *, char const *); +SILO_CALLBACK int db_taur_InqMeshtype(DBfile *, char const *); +SILO_CALLBACK DBObjectType db_taur_InqVartype(DBfile *, char const *); +SILO_CALLBACK int db_taur_ReadVar(DBfile *, char const *, void *); +SILO_CALLBACK DBmaterial *db_taur_GetMaterial(DBfile *, char const *); +SILO_CALLBACK DBucdmesh *db_taur_GetUcdmesh(DBfile *, char const *); +SILO_CALLBACK DBucdvar *db_taur_GetUcdvar(DBfile *, char const *); +SILO_CALLBACK void *db_taur_GetVar(DBfile *, char const *); +SILO_CALLBACK int db_taur_GetVarByteLength(DBfile *, char const *); +SILO_CALLBACK int db_taur_GetVarLength(DBfile *, char const *); SILO_CALLBACK int db_taur_Filters(DBfile *, FILE *); SILO_CALLBACK int db_taur_NewToc(DBfile *); @@ -99,12 +99,12 @@ * by the Taurus device driver. *------------------------------------------------------------------------- */ -extern TAURUSfile *db_taur_open(char *); +extern TAURUSfile *db_taur_open(char const *); extern int db_taur_close(TAURUSfile *); extern void init_coord_info(TAURUSfile *); extern void init_mesh_info(TAURUSfile *); extern void init_zone_info(TAURUSfile *); -extern int taurus_readvar(TAURUSfile *, char *, float **, int *, int *, +extern int taurus_readvar(TAURUSfile *, char const *, float **, int *, int *, char *); extern void db_taur_extface(int *, int, int, int *, int **, int *, int **); diff -Nru silo-llnl-4.10.2/src/taurus/taurus.c silo-llnl-4.10.2.real/src/taurus/taurus.c --- silo-llnl-4.10.2/src/taurus/taurus.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/src/taurus/taurus.c 2018-02-15 17:25:43.000000000 +0000 @@ -1592,7 +1592,7 @@ *------------------------------------------------------------------------- */ TAURUSfile * -db_taur_open (char *basename) +db_taur_open (char const *basename) { int fd; int loc, size; @@ -2289,7 +2289,7 @@ *------------------------------------------------------------------------- */ int -taurus_readvar (TAURUSfile *taurus, char *varname, float **var, int *length, +taurus_readvar (TAURUSfile *taurus, char const *varname, float **var, int *length, int *center, char *meshname) { int i; diff -Nru silo-llnl-4.10.2/src/unknown/Makefile.in silo-llnl-4.10.2.real/src/unknown/Makefile.in --- silo-llnl-4.10.2/src/unknown/Makefile.in 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/src/unknown/Makefile.in 2018-02-15 17:25:43.000000000 +0000 @@ -181,6 +181,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +JSON = @JSON@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBM = @LIBM@ @@ -229,9 +230,6 @@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SILEX = @SILEX@ -SILO_DTYPPTR = @SILO_DTYPPTR@ -SILO_DTYPPTR1 = @SILO_DTYPPTR1@ -SILO_DTYPPTR2 = @SILO_DTYPPTR2@ SILO_VERS_MAJ = @SILO_VERS_MAJ@ SILO_VERS_MIN = @SILO_VERS_MIN@ SILO_VERS_PAT = @SILO_VERS_PAT@ diff -Nru silo-llnl-4.10.2/svn_bin/Makefile.in silo-llnl-4.10.2.real/svn_bin/Makefile.in --- silo-llnl-4.10.2/svn_bin/Makefile.in 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/svn_bin/Makefile.in 2018-02-15 17:25:43.000000000 +0000 @@ -157,6 +157,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +JSON = @JSON@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBM = @LIBM@ @@ -205,9 +206,6 @@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SILEX = @SILEX@ -SILO_DTYPPTR = @SILO_DTYPPTR@ -SILO_DTYPPTR1 = @SILO_DTYPPTR1@ -SILO_DTYPPTR2 = @SILO_DTYPPTR2@ SILO_VERS_MAJ = @SILO_VERS_MAJ@ SILO_VERS_MIN = @SILO_VERS_MIN@ SILO_VERS_PAT = @SILO_VERS_PAT@ diff -Nru silo-llnl-4.10.2/tests/arbpoly2d.c silo-llnl-4.10.2.real/tests/arbpoly2d.c --- silo-llnl-4.10.2/tests/arbpoly2d.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/arbpoly2d.c 2018-02-15 17:25:43.000000000 +0000 @@ -105,8 +105,8 @@ shapesize[0] = 3; shapesize[1] = 4; shapesize[2] = 5; - DBPutUcdmesh(dbfile, "mesh_zl", 2, coordnames, coords, 8, 1, "zl", - NULL, DB_FLOAT, NULL); + DBPutUcdmesh(dbfile, "mesh_zl", 2, (DBCAS_t) coordnames, + coords, 8, 1, "zl", NULL, DB_FLOAT, NULL); DBSetDeprecateWarnings(0); DBPutZonelist(dbfile, "zl", 3, 2, nl, LEN(nl), 0, shapesize, shapecnt, 3); @@ -119,8 +119,8 @@ shapesize[0] = 3; shapesize[1] = 4; shapesize[2] = 0; - DBPutUcdmesh(dbfile, "mesh_zl0", 2, coordnames, coords, 8, 1, "zl0", - NULL, DB_FLOAT, NULL); + DBPutUcdmesh(dbfile, "mesh_zl0", 2, (DBCAS_t) coordnames, + coords, 8, 1, "zl0", NULL, DB_FLOAT, NULL); DBSetDeprecateWarnings(0); DBPutZonelist(dbfile, "zl0", 3, 2, nl2, LEN(nl2), 0, shapesize, shapecnt, 3); @@ -135,8 +135,8 @@ shapetype[0] = DB_ZONETYPE_TRIANGLE; shapetype[1] = DB_ZONETYPE_QUAD; shapetype[2] = DB_ZONETYPE_POLYGON; - DBPutUcdmesh(dbfile, "mesh_zl2", 2, coordnames, coords, 8, 1, "zl2", - NULL, DB_FLOAT, NULL); + DBPutUcdmesh(dbfile, "mesh_zl2", 2, (DBCAS_t) coordnames, + coords, 8, 1, "zl2", NULL, DB_FLOAT, NULL); DBPutZonelist2(dbfile, "zl2", 3, 2, nl, LEN(nl), 0, 0, 0, shapetype, shapesize, shapecnt, 3, NULL); DBPutUcdvar1(dbfile, "v_zl2", "mesh_zl2", var, 8, NULL, 0, DB_FLOAT, @@ -149,8 +149,8 @@ shapetype[0] = DB_ZONETYPE_TRIANGLE; shapetype[1] = DB_ZONETYPE_QUAD; shapetype[2] = DB_ZONETYPE_POLYGON; - DBPutUcdmesh(dbfile, "mesh_zl20", 2, coordnames, coords, 8, 1, "zl20", - NULL, DB_FLOAT, NULL); + DBPutUcdmesh(dbfile, "mesh_zl20", 2, (DBCAS_t) coordnames, + coords, 8, 1, "zl20", NULL, DB_FLOAT, NULL); DBPutZonelist2(dbfile, "zl20", 3, 2, nl2, LEN(nl2), 0, 0, 0, shapetype, shapesize, shapecnt, 3, NULL); DBPutUcdvar1(dbfile, "v_zl20", "mesh_zl20", var, 8, NULL, 0, DB_FLOAT, @@ -163,8 +163,8 @@ shapetype[0] = DB_ZONETYPE_POLYGON; shapetype[1] = DB_ZONETYPE_POLYGON; shapetype[2] = DB_ZONETYPE_POLYGON; - DBPutUcdmesh(dbfile, "mesh_zl2p", 2, coordnames, coords, 8, 1, "zl2p", - NULL, DB_FLOAT, NULL); + DBPutUcdmesh(dbfile, "mesh_zl2p", 2, (DBCAS_t) coordnames, + coords, 8, 1, "zl2p", NULL, DB_FLOAT, NULL); DBPutZonelist2(dbfile, "zl2p", 3, 2, nl, LEN(nl), 0, 0, 0, shapetype, shapesize, shapecnt, 3, NULL); DBPutUcdvar1(dbfile, "v_zl2p", "mesh_zl2p", var, 8, NULL, 0, DB_FLOAT, @@ -177,8 +177,8 @@ shapetype[0] = DB_ZONETYPE_POLYGON; shapetype[1] = DB_ZONETYPE_POLYGON; shapetype[2] = DB_ZONETYPE_POLYGON; - DBPutUcdmesh(dbfile, "mesh_zl2p0", 2, coordnames, coords, 8, 1, "zl2p0", - NULL, DB_FLOAT, NULL); + DBPutUcdmesh(dbfile, "mesh_zl2p0", 2, (DBCAS_t) coordnames, + coords, 8, 1, "zl2p0", NULL, DB_FLOAT, NULL); DBPutZonelist2(dbfile, "zl2p0", 3, 2, nl3, LEN(nl3), 0, 0, 0, shapetype, shapesize, shapecnt, 3, NULL); DBPutUcdvar1(dbfile, "v_zl2p0", "mesh_zl2p0", var, 8, NULL, 0, DB_FLOAT, @@ -188,8 +188,8 @@ shapetype[0] = DB_ZONETYPE_TRIANGLE; shapetype[1] = DB_ZONETYPE_QUAD; shapetype[2] = DB_ZONETYPE_POLYGON; - DBPutUcdmesh(dbfile, "mesh_fl", 2, coordnames, coords, 8, 1, "fl", - NULL, DB_FLOAT, NULL); + DBPutUcdmesh(dbfile, "mesh_fl", 2, (DBCAS_t) coordnames, + coords, 8, 1, "fl", NULL, DB_FLOAT, NULL); /* note that we need to say ndims==3 to get this call to write shapesize/shapecnt */ DBPutFacelist(dbfile, "fl", 3, 3, nl, LEN(nl), 0, NULL, shapesize, shapecnt, 3, shapetype, NULL, 3); @@ -200,8 +200,8 @@ shapesize[0] = 3; shapesize[1] = 4; shapesize[2] = 5; - DBPutUcdmesh(dbfile, "mesh_phzl", 2, coordnames, coords, 8, 1, "phzl", - NULL, DB_FLOAT, NULL); + DBPutUcdmesh(dbfile, "mesh_phzl", 2, (DBCAS_t) coordnames, + coords, 8, 1, "phzl", NULL, DB_FLOAT, NULL); DBPutPHZonelist(dbfile, "phzl", 3, shapesize, LEN(nl), nl, 0,0,0,0,0,0,0,0,0); DBPutUcdvar1(dbfile, "v_phzl", "mesh_phzl", var, 8, NULL, 0, DB_FLOAT, DB_NODECENT, NULL); diff -Nru silo-llnl-4.10.2/tests/arbpoly.c silo-llnl-4.10.2.real/tests/arbpoly.c --- silo-llnl-4.10.2/tests/arbpoly.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/arbpoly.c 2018-02-15 17:25:43.000000000 +0000 @@ -57,22 +57,6 @@ #define LEN(A) (sizeof(A)/sizeof(A[0])) - - - - - - - - - - - - - - - - int main(int argc, char *argv[]) { @@ -217,7 +201,7 @@ } /* Typical 2D mesh with obsolete zonelist method */ - DBPutUcdmesh(dbfile, "mesh1_zl1", pass, coordnames, coords, LEN(x), 11, "zl1", + DBPutUcdmesh(dbfile, "mesh1_zl1", pass, (DBCAS_t) coordnames, coords, LEN(x), 11, "zl1", NULL, DB_FLOAT, NULL); DBSetDeprecateWarnings(0); DBPutZonelist(dbfile, "zl1", 11, 2, nl, LEN(nl), 0, shapesize, @@ -229,7 +213,7 @@ DB_ZONECENT, NULL); /* Same as above except using DBPutZonelist2 (newer method) */ - DBPutUcdmesh(dbfile, "mesh1_zl2", pass, coordnames, coords, LEN(x), 11, "zl2", + DBPutUcdmesh(dbfile, "mesh1_zl2", pass, (DBCAS_t) coordnames, coords, LEN(x), 11, "zl2", NULL, DB_FLOAT, NULL); DBPutZonelist2(dbfile, "zl2", 11, 2, nl, LEN(nl), 0, 0, 0, shapetype, shapesize2, shapecnt, 5, 0); @@ -239,7 +223,7 @@ DB_ZONECENT, NULL); /* Same as above except with some ghost zones */ - DBPutUcdmesh(dbfile, "mesh1g_zl2", pass, coordnames, coords, LEN(x), 11, "zlg2", + DBPutUcdmesh(dbfile, "mesh1g_zl2", pass, (DBCAS_t) coordnames, coords, LEN(x), 11, "zlg2", NULL, DB_FLOAT, NULL); DBPutZonelist2(dbfile, "zlg2", 11, 2, nl, LEN(nl), 0, 3, 3, shapetype, shapesize2, shapecnt, 5, 0); @@ -251,7 +235,7 @@ /* same using ph-zonelist of faces only */ ol = DBMakeOptlist(3); DBAddOption(ol, DBOPT_PHZONELIST, "phzl"); - DBPutUcdmesh(dbfile, "mesh1_phzl", pass, coordnames, coords, LEN(x), 11, 0, + DBPutUcdmesh(dbfile, "mesh1_phzl", pass, (DBCAS_t) coordnames, coords, LEN(x), 11, 0, NULL, DB_FLOAT, ol); DBFreeOptlist(ol); DBPutPHZonelist(dbfile, "phzl", 11, ndcnts_phzl1, LEN(nl_phzl1), nl_phzl1, 0,0,0,0,0,0,0,10,0); @@ -263,7 +247,7 @@ /* same using ph-zonelist with explicit edge list */ ol = DBMakeOptlist(3); DBAddOption(ol, DBOPT_PHZONELIST, "phzl2"); - DBPutUcdmesh(dbfile, "mesh1_phzl2", pass, coordnames, coords, LEN(x), 11, 0, + DBPutUcdmesh(dbfile, "mesh1_phzl2", pass, (DBCAS_t) coordnames, coords, LEN(x), 11, 0, NULL, DB_FLOAT, ol); DBFreeOptlist(ol); DBPutPHZonelist(dbfile, "phzl2", LEN(nl_phzl2)/2, ndcnts_phzl2, LEN(nl_phzl2), nl_phzl2, 0, @@ -602,13 +586,13 @@ DBSetDir(dbfile, "3D"); /* Use DBPutzonelist and DBPutZonelist2 */ - DBPutUcdmesh(dbfile, "mesh1", 3, coordnames, coords, nnodes, nzones, "zl1", 0, DB_FLOAT, 0); + DBPutUcdmesh(dbfile, "mesh1", 3, (DBCAS_t) coordnames, coords, nnodes, nzones, "zl1", 0, DB_FLOAT, 0); DBPutUcdvar1(dbfile, "n1", "mesh1", nvar, nnodes, NULL, 0, DB_FLOAT, DB_NODECENT, NULL); DBPutUcdvar1(dbfile, "z1", "mesh1", zvar, nzones, NULL, 0, DB_FLOAT, DB_ZONECENT, NULL); - DBPutUcdmesh(dbfile, "mesh2", 3, coordnames, coords, nnodes, nzones, "zl2", 0, DB_FLOAT, 0); + DBPutUcdmesh(dbfile, "mesh2", 3, (DBCAS_t) coordnames, coords, nnodes, nzones, "zl2", 0, DB_FLOAT, 0); DBPutUcdvar1(dbfile, "n2", "mesh2", nvar, nnodes, NULL, 0, DB_FLOAT, DB_NODECENT, NULL); DBPutUcdvar1(dbfile, "z2", "mesh2", zvar, nzones, NULL, 0, DB_FLOAT, DB_ZONECENT, NULL); - DBPutUcdmesh(dbfile, "mesh2g", 3, coordnames, coords, nnodes, nzones, "zl2g", 0, DB_FLOAT, 0); + DBPutUcdmesh(dbfile, "mesh2g", 3, (DBCAS_t) coordnames, coords, nnodes, nzones, "zl2g", 0, DB_FLOAT, 0); DBPutUcdvar1(dbfile, "n2g", "mesh2g", nvar, nnodes, NULL, 0, DB_FLOAT, DB_NODECENT, NULL); DBPutUcdvar1(dbfile, "z2g", "mesh2g", zvar, nzones, NULL, 0, DB_FLOAT, DB_ZONECENT, NULL); { @@ -670,7 +654,7 @@ ol = DBMakeOptlist(3); DBAddOption(ol, DBOPT_PHZONELIST, "phzl"); - DBPutUcdmesh(dbfile, "mesh3", 3, coordnames, coords, nnodes, nzones, 0, 0, DB_FLOAT, ol); + DBPutUcdmesh(dbfile, "mesh3", 3, (DBCAS_t) coordnames, coords, nnodes, nzones, 0, 0, DB_FLOAT, ol); DBFreeOptlist(ol); DBPutUcdvar1(dbfile, "n3", "mesh3", nvar, nnodes, NULL, 0, DB_FLOAT, DB_NODECENT, NULL); DBPutUcdvar1(dbfile, "z3", "mesh3", zvar2, nzones, NULL, 0, DB_FLOAT, DB_ZONECENT, NULL); @@ -682,7 +666,7 @@ ol = DBMakeOptlist(3); DBAddOption(ol, DBOPT_PHZONELIST, "phzl_r"); - DBPutUcdmesh(dbfile, "mesh3r", 3, coordnames, coords, nnodes, nzones, 0, 0, DB_FLOAT, ol); + DBPutUcdmesh(dbfile, "mesh3r", 3, (DBCAS_t) coordnames, coords, nnodes, nzones, 0, 0, DB_FLOAT, ol); DBFreeOptlist(ol); DBPutUcdvar1(dbfile, "n3r", "mesh3r", nvar, nnodes, NULL, 0, DB_FLOAT, DB_NODECENT, NULL); DBPutUcdvar1(dbfile, "z3r", "mesh3r", zvar2, nzones, NULL, 0, DB_FLOAT, DB_ZONECENT, NULL); diff -Nru silo-llnl-4.10.2/tests/array.c silo-llnl-4.10.2.real/tests/array.c --- silo-llnl-4.10.2/tests/array.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/array.c 2018-02-15 17:25:43.000000000 +0000 @@ -142,7 +142,7 @@ } DBPutCompoundarray(dbfile, "carray", /*array */ - ename, esize, 3, /*simple arrays */ + (DBCAS_t) ename, esize, 3, /*simple arrays */ val, 18, DB_FLOAT, /*values */ NULL); /*options */ i = 1; @@ -181,7 +181,7 @@ } printf(" values... (float)\n"); - for (show = ca->values, i = 0; i < ca->nvalues; i++) { + for (show = (float*)ca->values, i = 0; i < ca->nvalues; i++) { printf(" value %d is %g\n", i, show[i]); } } diff -Nru silo-llnl-4.10.2/tests/arrayf90.f90 silo-llnl-4.10.2.real/tests/arrayf90.f90 --- silo-llnl-4.10.2/tests/arrayf90.f90 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/arrayf90.f90 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,162 @@ +!*********************************************************************** +! Copyright (c) 1994 - 2010, Lawrence Livermore National Security, LLC. +! LLNL-CODE-425250. +! All rights reserved. +! +! This file is part of Silo. For details, see silo.llnl.gov. +! +! Redistribution and use in source and binary forms, with or without +! modification, are permitted provided that the following conditions +! are met: +! +! * Redistributions of source code must retain the above copyright +! notice, this list of conditions and the disclaimer below. +! * Redistributions in binary form must reproduce the above copyright +! notice, this list of conditions and the disclaimer (as noted +! below) in the documentation and/or other materials provided with +! the distribution. +! * Neither the name of the LLNS/LLNL nor the names of its +! contributors may be used to endorse or promote products derived +! from this software without specific prior written permission. +! +! THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +! "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +! LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +! A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL LAWRENCE +! LIVERMORE NATIONAL SECURITY, LLC, THE U.S. DEPARTMENT OF ENERGY OR +! CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +! EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +! PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +! PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +! LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +! NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +! SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +! +! This work was produced at Lawrence Livermore National Laboratory under +! Contract No. DE-AC52-07NA27344 with the DOE. +! +! Neither the United States Government nor Lawrence Livermore National +! Security, LLC nor any of their employees, makes any warranty, express +! or implied, or assumes any liability or responsibility for the +! accuracy, completeness, or usefulness of any information, apparatus, +! product, or process disclosed, or represents that its use would not +! infringe privately-owned rights. +! +! Any reference herein to any specific commercial products, process, or +! services by trade name, trademark, manufacturer or otherwise does not +! necessarily constitute or imply its endorsement, recommendation, or +! favoring by the United States Government or Lawrence Livermore +! National Security, LLC. The views and opinions of authors expressed +! herein do not necessarily state or reflect those of the United States +! Government or Lawrence Livermore National Security, LLC, and shall not +! be used for advertising or product endorsement purposes. +!*********************************************************************** + +!------------------------------------------------------------------------- +! Purpose +! +! Demonstrate use of SILO for creating compound array objects. +! +! Converted from arrayf77.f using https://bitbucket.org/lemonlab/f2f +! +!------------------------------------------------------------------------- + + program main + + implicit none + include "silo_f9x.inc" + integer :: dbid, err, driver, nargs + character(256) :: cloption + + character(32) :: elemnames(3) + integer :: elemlengths(3), array_id, i + real :: values(18) + + character(32) :: g_enames(10) + integer :: g_elengths(10), g_nelems, g_nvalues, g_datatype, & + g_maxwidth + + real :: g_values(100) + real :: foo(100000000) + real (kind=8) :: dummy + + data elemnames/"x","y","z"/ + data elemlengths/4,6,8/ + + dummy = DB_MISSING_VALUE_NOT_SET + write (*,*) "dummy = ", dummy + driver = DB_PDB + nargs = iargc() + call getarg(1, cloption) + if (cloption == "DB_HDF5") then + driver = DB_HDF5 + end if + + err = dbshowerrors(DB_ABORT) + +!...Create file named "robb.pdb". Database ID is returned in 'dbid'. + + err = dbcreate("arrayf77.silo", 13, 0, DB_LOCAL, "file info", & + 9, driver, dbid) + + + do i=1, 18 + values(i) = i/100.0 + enddo + + err = dbputca (dbid, "carray", 6, elemnames, 32, & + elemlengths, 3, values, DB_FLOAT, DB_F77NULL, array_id) + + err = dbclose (dbid) + + +! CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC +! Now try to read from the file... +! CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC + + err = dbopen ("arrayf77.silo", 13, DB_UNKNOWN, DB_READ, dbid) + + err = dbgetca (dbid, "carray", 6, 32, g_enames, g_elengths, & + g_nelems, g_values, g_nvalues, g_datatype) + + write (*,*) "reading via dbgetca" + write (*,*) "number of elements..........", g_nelems + write (*,*) "number of values............", g_nvalues + write (*,*) "data type...................", g_datatype + do i=1, g_nelems + write (*,*) "simple array ", i, " name is ", g_enames(i) + enddo + do i=1, g_nvalues + write (*,*) "value ", i, " is ", g_values(i) + enddo + + + g_nvalues = 0 + do i=1,100 + g_values(i) = 0 + enddo + err = dbfgetca (dbid, "carray", 6, g_values, g_nvalues) + + write (*,*) "reading via dbfgetca" + write (*,*) "number of values............", g_nvalues + do i=1, g_nvalues + write (*,*) "value ", i, " is ", g_values(i) + enddo + + + g_nelems = 0 + g_nvalues = 0 + g_datatype = 0 + err = dbinqca (dbid, "carray", 6, g_maxwidth, g_nelems, g_nvalues, & + g_datatype) + + write (*,*) "reading via dbinqca" + write (*,*) "number of elements..........", g_nelems + write (*,*) "number of values............", g_nvalues + write (*,*) "data type...................", g_datatype + write (*,*) "longest name................", g_maxwidth + + err = dbclose (dbid) + + stop + END PROGRAM diff -Nru silo-llnl-4.10.2/tests/bcastopen.c silo-llnl-4.10.2.real/tests/bcastopen.c --- silo-llnl-4.10.2/tests/bcastopen.c 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/bcastopen.c 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,64 @@ +#include +#include +#include +#include + +DBfile *DBOpenByBcast(char const *filename, MPI_Comm comm, int rank_of_root) +{ + int rank; + int file_len; + void *file_buf; + DBfile *retval = 0; + DBoptlist *file_optlist; + int fic_vfd; + int fic_optset; + + MPI_Comm_rank(comm, &rank); + + if (rank == rank_of_root) + { + hid_t fapl, fid; + ssize_t read_len; + + /* Just open the file at the HDF5 level + using default (sec2) and get file image from it */ + /* Could just use stat/open to read the whole file too? */ + fid = H5Fopen(filename, H5F_ACC_RDONLY, H5P_DEFAULT); + file_len = (int) H5Fget_file_image(fid, NULL, (size_t)0); + file_buf = malloc((size_t)file_len); + read_len = H5Fget_file_image(fid, file_buf, (size_t)file_len); + H5Fclose(fid); + + /* bcast the size */ + MPI_Bcast(&file_len, 1, MPI_INT, rank_of_root, comm); + + /* bcast the buffer */ + MPI_Bcast(file_buf, file_len, MPI_BYTE, rank_of_root, comm); + } + else + { + /* recv the size */ + MPI_Bcast(&file_len, 1, MPI_INT, rank_of_root, comm); + + /* recv the buffer */ + file_buf = (void *) malloc(file_len); + MPI_Bcast(file_buf, file_len, MPI_BYTE, rank_of_root, comm); + } + + /* Set up a file options set to use this buffer as the file */ + file_optlist = DBMakeOptlist(10); + fic_vfd = DB_H5VFD_FIC; + DBAddOption(file_optlist, DBOPT_H5_VFD, &fic_vfd); + DBAddOption(file_optlist, DBOPT_H5_FIC_SIZE, &file_len); + DBAddOption(file_optlist, DBOPT_H5_FIC_BUF, file_buf); + fic_optset = DBRegisterFileOptionsSet(file_optlist); + + /* Ok, now have Silo open this buffer */ + retval = DBOpen("dummy", DB_HDF5_OPTS(fic_optset), DB_READ); + + /* free up the file options set */ + DBUnregisterFileOptionsSet(fic_optset); + DBFreeOptlist(file_optlist); + + return retval; +} diff -Nru silo-llnl-4.10.2/tests/checksums silo-llnl-4.10.2.real/tests/checksums --- silo-llnl-4.10.2/tests/checksums 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/checksums 2018-02-15 17:25:43.000000000 +0000 @@ -91,10 +91,19 @@ # Silo's checksumming is done only on the dataset objects in # the file. So, we have to make sure that we corrupt a dataset. # We do this using octal dump (od) and looking for some numbers -# we expect in a silo object (domain_23/fl) -# -offset=`od -A d4 -t d4 h5_check_files/multi_ucd3d.h5 | tr '\t' ' ' | tr -s ' ' | grep '167 179 323 311' | cut -d' ' -f1` -offset=`echo $offset | cut -d' ' -f1` +# we expect in a silo object (domain_23/fl). Note that od breaks +# data up into lines of 16 bytes each. Due to variations in HDF5 +# library, the offset at which the sequence 167 179 323 211 can +# occur can vary. So, we loop over successive starting points +# each 4 bytes further down the file until we find one. +# +offset=0 +skip=0 +while [[ $offset -eq 0 && $skip -lt 13 ]]; do + offset=`od -j $skip -A d4 -t d4 h5_check_files/multi_ucd3d.h5 | tr '\t' ' ' | tr -s ' ' | grep '167 179 323 311' | cut -d' ' -f1` + offset=`echo $offset | cut -d' ' -f1` + skip=$(expr $skip + 4) +done size=`ls -l h5_check_files/multi_ucd3d.h5 | tr -s ' ' | cut -d' ' -f5` # @@ -131,7 +140,7 @@ # # Cleanup # -rm -rf h5_check_files -rm -f multi_ucd3d_corrupt.h5 +#rm -rf h5_check_files +#rm -f multi_ucd3d_corrupt.h5 exit $result diff -Nru silo-llnl-4.10.2/tests/csg.c silo-llnl-4.10.2.real/tests/csg.c --- silo-llnl-4.10.2/tests/csg.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/csg.c 2018-02-15 17:25:43.000000000 +0000 @@ -170,8 +170,8 @@ pv[0] = (void*) var1_data; pname[0] = name1; - DBPutCsgvar(dbfile, "var1", "csgmesh", 1, pname, pv, 2, DB_DOUBLE, - DB_ZONECENT, 0); + DBPutCsgvar(dbfile, "var1", "csgmesh", 1, (DBCAS_t) pname, + (void const * const *) pv, 2, DB_DOUBLE, DB_ZONECENT, 0); DBFreeCsgvar(DBGetCsgvar(dbfile, "var1")); } diff -Nru silo-llnl-4.10.2/tests/dir.c silo-llnl-4.10.2.real/tests/dir.c --- silo-llnl-4.10.2/tests/dir.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/dir.c 2018-02-15 17:25:43.000000000 +0000 @@ -84,7 +84,7 @@ * *------------------------------------------------------------------------- */ -main(int argc, char *argv[]) +int main(int argc, char *argv[]) { int meshid, diridq, diridu, diridt; diff -Nru silo-llnl-4.10.2/tests/efcentering.c silo-llnl-4.10.2.real/tests/efcentering.c --- silo-llnl-4.10.2/tests/efcentering.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/efcentering.c 2018-02-15 17:25:43.000000000 +0000 @@ -325,14 +325,14 @@ } } - DBPutQuadmesh(dbfile, "qmesh2", coordnames, coords, dims, 2, DB_FLOAT, DB_NONCOLLINEAR, 0); - DBPutQuadmesh(dbfile, "qmesh3", coordnames, coords, dims, 3, DB_FLOAT, DB_NONCOLLINEAR, 0); + DBPutQuadmesh(dbfile, "qmesh2", (DBCAS_t) coordnames, coords, dims, 2, DB_FLOAT, DB_NONCOLLINEAR, 0); + DBPutQuadmesh(dbfile, "qmesh3", (DBCAS_t) coordnames, coords, dims, 3, DB_FLOAT, DB_NONCOLLINEAR, 0); DBPutQuadvar1(dbfile, "qevar2", "qmesh2", evar2d, dims, 2, 0, 0, DB_FLOAT, DB_EDGECENT, 0); DBPutQuadvar1(dbfile, "qevar3", "qmesh3", evar3d, dims, 3, 0, 0, DB_FLOAT, DB_EDGECENT, 0); DBPutQuadvar1(dbfile, "qfvar3", "qmesh3", fvar3d, dims, 3, 0, 0, DB_FLOAT, DB_FACECENT, 0); - DBPutUcdmesh(dbfile, "umesh2", 2, coordnames, coords, 16, 9, "um2zl", 0, DB_FLOAT, 0); - DBPutUcdmesh(dbfile, "umesh3", 3, coordnames, coords, 64, 27, "um3zl", 0, DB_FLOAT, 0); + DBPutUcdmesh(dbfile, "umesh2", 2, (DBCAS_t) coordnames, coords, 16, 9, "um2zl", 0, DB_FLOAT, 0); + DBPutUcdmesh(dbfile, "umesh3", 3, (DBCAS_t) coordnames, coords, 64, 27, "um3zl", 0, DB_FLOAT, 0); DBPutZonelist2(dbfile, "um2zl", 9, 2, nodelist2, ss2*sc2, 0, 0, 0, &st2, &ss2, &sc2, 1, 0); DBPutZonelist2(dbfile, "um3zl", 27, 3, nodelist3, ss3*sc3, 0, 0, 0, &st3, &ss3, &sc3, 1, 0); diff -Nru silo-llnl-4.10.2/tests/empty.c silo-llnl-4.10.2.real/tests/empty.c --- silo-llnl-4.10.2/tests/empty.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/empty.c 2018-02-15 17:25:43.000000000 +0000 @@ -59,32 +59,68 @@ #include -#define ASSERT(FUNCCALL,RETPRED0,RETPRED1) \ -{ int retval = FUNCCALL; \ - if (pass == 0) \ - { \ - if(!(RETPRED0)){fprintf(stderr,"On empty object rejection pass, assertion \"%s\" at line %d failed\n",#RETPRED0,__LINE__);abort();} \ - } \ - else \ - { \ - if(!(RETPRED1)){fprintf(stderr,"On empty object allow pass, assertion \"%s\" at line %d failed\n",#RETPRED1,__LINE__);abort();} \ - } \ +static DBfile *dbfile = NULL; + +#define ASSERT(FUNCCALL,RETPRED0,RETPRED1) \ +{ int retval, i=0; \ + char nm[256]; \ + strncpy(nm, #FUNCCALL, sizeof(nm)); \ + while (nm[i] != '(') i++; \ + if (nm[i-1]=='1'||nm[i-1]=='2') nm[i-1] = '\0'; \ + nm[i] = '\0'; \ + \ + if (pass == 0) \ + { \ + DBMkDir(dbfile, nm); \ + DBSetDir(dbfile, nm); \ + retval = FUNCCALL; \ + if(!(RETPRED0)){fprintf(stderr,"On empty object " \ + "rejection pass, assertion \"%s\" at line %d" \ + " failed\n",#RETPRED0,__LINE__);abort();} \ + DBSetDir(dbfile, ".."); \ + } \ + else \ + { \ + DBSetDir(dbfile, nm); \ + retval = FUNCCALL; \ + if(!(RETPRED1)){fprintf(stderr,"On empty object "\ + "allow pass, assertion \"%s\" at line %d " \ + "failed\n",#RETPRED1,__LINE__);abort();} \ + DBSetDir(dbfile, ".."); \ + } \ +} + +static DBoptlist *OL(DBoptlist *ol) +{ + double *dtime = (double*) DBGetOption(ol, DBOPT_DTIME); + int *hfg = (int*) DBGetOption(ol, DBOPT_HIDE_FROM_GUI); + *dtime+=5; + *hfg+=1; + return ol; } int main(int argc, char *argv[]) { - DBfile *dbfile = NULL; int driver = DB_PDB; char *filename = "empty.silo"; int show_all_errors = FALSE; int i, pass; - char *cnames[3] = {"x","y","z"}; - void const *coords[3] = {(void*)1,(void*)2,(void*)3}; /* really funky dummy pointers */ - void const *vars[3] = {(void*)1,(void*)2,(void*)3}; /* really funky dummy pointers */ + char const * const cnames[3] = {"x","y","z"}; + void *coords[3] = {(void*)1,(void*)2,(void*)3}; /* really funky dummy pointers */ + void *vars[3] = {(void*)1,(void*)2,(void*)3}; /* really funky dummy pointers */ + void const * const vvars[3] = {(void*)1,(void*)2,(void*)3}; /* really funky dummy pointers */ void *var = (void*)1; int iarr[3] = {1,1,1}; /* dummy int array */ + int ZDIMS[3] = {0,0,0}; double exts[4] = {0,0,0,0}; + DBoptlist *ol = 0; + double dtime = 0.0; + int hide_from_gui=0; + int *gnodeno = 0; + int *gzoneno = 0; + char *ghostn = 0; + char *ghostz = 0; /* Parse command-line */ for (i=1; i +#include +#include +#include +#include +#include +#include +#include + +#include + +#include +#include + +#include + +static void json_object_print_extptr_header(json_object *obj) +{ + int i, ndims; + char *dtstr; + + if (!json_object_is_extptr(obj)) return; + + dtstr = DBGetDatatypeString(json_object_get_extptr_datatype(obj)); + printf("datatype = %s, ", dtstr); + free(dtstr); + ndims = json_object_get_extptr_ndims(obj); + printf("ndims = %d ", ndims); + printf("dims = "); + for (i = 0; i < ndims; i++) + printf("%d, ", json_object_get_extptr_dims_idx(obj, i)); + printf("\n"); +} + +int +main(int argc, char *argv[]) +{ + DBfile *dbfile = NULL; + int fd, i, driver = DB_PDB; + char *filename = "onehex.silo"; + int show_all_errors = FALSE; + struct json_object *jsilo_obj, *fil_obj, *jstuff, *jarr; + char *binary_obj_strA; + void *binary_obj_strB; + + /* Parse command-line */ + for (i=1; i_pb)); + fd = open("onehex-A.bson", O_CREAT|O_TRUNC|O_WRONLY, S_IRUSR|S_IWUSR); + write(fd, binary_obj_strA, printbuf_length(jsilo_obj->_pb)); + close(fd); +#endif + + /* Example of creating a serialized, binary buffer of a Silo json object and then + writing it to a binary file. */ + { void *buf; int len; + struct json_object *bobj; + json_object_to_binary_buf(jsilo_obj, 0, &buf, &len); + fd = open("onehex-B.bson", O_CREAT|O_TRUNC|O_WRONLY, S_IRUSR|S_IWUSR); + write(fd, buf, len); + close(fd); + + /* Example of re-constituting a Silo json object from a binary buffer + and writing it to a Silo file using DBWriteJsonObject */ + bobj = json_object_from_binary_buf(buf, len); + printf("bojb =%s\n", json_object_to_json_string(bobj)); + dbfile = DBCreate("onehex_from_binary_json.pdb", DB_CLOBBER, DB_LOCAL, "test binary json output", DB_PDB); + DBWriteJsonObject(dbfile, bobj); + json_object_put(bobj); + DBClose(dbfile); + free(buf); + } + + /* Example of taking a standard silo object and adding some arbitrary stuff to it */ + json_object_to_file("onehex.json", jsilo_obj); + json_object_put(jsilo_obj); + fil_obj = json_object_from_file("onehex.json"); + json_object_reconstitute_extptrs(fil_obj); + printf("fil_obj=%s\n", json_object_to_json_string(fil_obj)); + + jstuff = json_object_new_object(); + json_object_object_add(jstuff, "foo", json_object_new_boolean(0)); + json_object_object_add(jstuff, "a_double", json_object_new_double(1.5)); + json_object_object_add(jstuff, "b_int", json_object_new_int(33)); + + jarr = json_object_new_array(); + json_object_array_add(jarr, json_object_new_double(0.5)); + json_object_array_add(jarr, json_object_new_double(97.0)); + json_object_array_add(jarr, json_object_new_double(21.666)); + json_object_object_add(jstuff, "array", jarr); + + json_object_object_add(fil_obj, "katie_data", jstuff); + + dbfile = DBCreate("onehex_from_json.pdb", DB_CLOBBER, DB_LOCAL, "test json output", DB_PDB); + DBWriteJsonObject(dbfile, fil_obj); + DBClose(dbfile); + json_object_put(fil_obj); + + CleanupDriverStuff(); + + return 0; +} diff -Nru silo-llnl-4.10.2/tests/listtypes.c silo-llnl-4.10.2.real/tests/listtypes.c --- silo-llnl-4.10.2/tests/listtypes.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/listtypes.c 2018-02-15 17:25:43.000000000 +0000 @@ -56,13 +56,16 @@ #include #include #include +#ifdef HAVE_HDF5_H +#include +#endif #define ALLOC_N(T, N) (T *)malloc((N) * sizeof(T)) #define FREE(P) if(P) {free(P); (P) = NULL;} /* Prototypes */ -void PrintFileComponentTypes(char *); -void PrintObjectComponentsType(DBfile *, char *, char *); +void PrintFileComponentTypes(DBfile*, FILE*); +static void PrintObjectComponentsType(DBfile *, FILE*, char *, char *); /********************************************************************* * @@ -87,7 +90,7 @@ * Made long long support UNconditionally compiled. ********************************************************************/ -char * +static char * IntToTypename(int type) { char *retval; @@ -127,51 +130,6 @@ /********************************************************************* * - * Purpose: Main function for listtypes.c. This function iterates - * over the command line arguments and supplies them to - * a function that prints the component types for a file. - * This program tests the DBGetComponentType function. - * - * Programmer: Brad Whitlock - * Date: Thu Jan 20 13:05:37 PST 2000 - * - * Input Arguments: - * argc : The number of command line arguments. - * argv : An array containing the command line arguments. - * - * Modifications: - * Thomas R. Treadway, Thu Jul 5 16:33:38 PDT 2007 - * Chaneged main's return type to int, to stop gcc-4.x whining. - * - ********************************************************************/ - -int -main(int argc, char *argv[]) -{ - int i; - - if(argc < 2) - { - printf("Usage: listtypes filename [filename ...]\n"); - exit(0); - } - - DBShowErrors (DB_NONE, NULL); - - /* Print the types for components in the specified files. */ - for(i = 1; i < argc; i++) - { - if (!strcmp(argv[i], "show-all-errors")) - DBShowErrors (DB_ALL_AND_DRVR, NULL); - else - PrintFileComponentTypes(argv[i]); - } - - return 0; -} - -/********************************************************************* - * * Purpose: Macroize code that processes entries in the TOC. * * The last 'S' argument to the macro is used to handle plural or @@ -185,12 +143,12 @@ * Mark C. Miller, Wed Sep 23 11:55:48 PDT 2009 * Added misc. variables. ********************************************************************/ -#define PRINT_OBJS(theFile, theToc, theClass, Indent) \ +#define PRINT_OBJS(theFile, outFile, theToc, theClass, Indent) \ nobjs += theToc->n ## theClass; \ for (i = 0; i < theToc->n ## theClass; i++) \ - PrintObjectComponentsType(theFile, theToc->theClass ## _names[i], Indent); + PrintObjectComponentsType(theFile, outFile, theToc->theClass ## _names[i], Indent); -int ProcessCurrentDirectory(DBfile *dbfile, DBtoc *dbtoc, int depth) +static int ProcessCurrentDirectory(DBfile *dbfile, FILE* outf, DBtoc *dbtoc, int depth) { int i, j, nobjs; char indent[1024]; @@ -224,9 +182,9 @@ DBtoc *current_dbtoc; DBSetDir(dbfile, dir_names[j]); current_dbtoc = DBGetToc(dbfile); - printf("%sDirectory: %s\n", indent, dir_names[j]); - if (ProcessCurrentDirectory(dbfile, current_dbtoc, depth+1) <= 0) - printf("%s\n\n", indent); + fprintf(outf, "%sDirectory: %s\n", indent, dir_names[j]); + if (ProcessCurrentDirectory(dbfile, outf, current_dbtoc, depth+1) <= 0) + fprintf(outf, "%s\n\n", indent); } /* Free the directory list. */ @@ -240,29 +198,29 @@ /* Print the objects in the top directory. */ nobjs = ndirs; - PRINT_OBJS(dbfile, dbtoc, obj, indent); - PRINT_OBJS(dbfile, dbtoc, defvars, indent); - PRINT_OBJS(dbfile, dbtoc, array, indent); - PRINT_OBJS(dbfile, dbtoc, var, indent); - PRINT_OBJS(dbfile, dbtoc, curve, indent); - PRINT_OBJS(dbfile, dbtoc, ptmesh, indent); - PRINT_OBJS(dbfile, dbtoc, ptvar, indent); - PRINT_OBJS(dbfile, dbtoc, qmesh, indent); - PRINT_OBJS(dbfile, dbtoc, qvar, indent); - PRINT_OBJS(dbfile, dbtoc, ucdmesh, indent); - PRINT_OBJS(dbfile, dbtoc, ucdvar, indent); - PRINT_OBJS(dbfile, dbtoc, csgmesh, indent); - PRINT_OBJS(dbfile, dbtoc, csgvar, indent); - PRINT_OBJS(dbfile, dbtoc, mat, indent); - PRINT_OBJS(dbfile, dbtoc, matspecies, indent); - PRINT_OBJS(dbfile, dbtoc, multimesh, indent); - PRINT_OBJS(dbfile, dbtoc, multimeshadj, indent); - PRINT_OBJS(dbfile, dbtoc, multivar, indent); - PRINT_OBJS(dbfile, dbtoc, multimat, indent); - PRINT_OBJS(dbfile, dbtoc, multimatspecies, indent); - PRINT_OBJS(dbfile, dbtoc, mrgtree, indent); - PRINT_OBJS(dbfile, dbtoc, mrgvar, indent); - PRINT_OBJS(dbfile, dbtoc, groupelmap, indent); + PRINT_OBJS(dbfile, outf, dbtoc, obj, indent); + PRINT_OBJS(dbfile, outf, dbtoc, defvars, indent); + PRINT_OBJS(dbfile, outf, dbtoc, array, indent); + PRINT_OBJS(dbfile, outf, dbtoc, var, indent); + PRINT_OBJS(dbfile, outf, dbtoc, curve, indent); + PRINT_OBJS(dbfile, outf, dbtoc, ptmesh, indent); + PRINT_OBJS(dbfile, outf, dbtoc, ptvar, indent); + PRINT_OBJS(dbfile, outf, dbtoc, qmesh, indent); + PRINT_OBJS(dbfile, outf, dbtoc, qvar, indent); + PRINT_OBJS(dbfile, outf, dbtoc, ucdmesh, indent); + PRINT_OBJS(dbfile, outf, dbtoc, ucdvar, indent); + PRINT_OBJS(dbfile, outf, dbtoc, csgmesh, indent); + PRINT_OBJS(dbfile, outf, dbtoc, csgvar, indent); + PRINT_OBJS(dbfile, outf, dbtoc, mat, indent); + PRINT_OBJS(dbfile, outf, dbtoc, matspecies, indent); + PRINT_OBJS(dbfile, outf, dbtoc, multimesh, indent); + PRINT_OBJS(dbfile, outf, dbtoc, multimeshadj, indent); + PRINT_OBJS(dbfile, outf, dbtoc, multivar, indent); + PRINT_OBJS(dbfile, outf, dbtoc, multimat, indent); + PRINT_OBJS(dbfile, outf, dbtoc, multimatspecies, indent); + PRINT_OBJS(dbfile, outf, dbtoc, mrgtree, indent); + PRINT_OBJS(dbfile, outf, dbtoc, mrgvar, indent); + PRINT_OBJS(dbfile, outf, dbtoc, groupelmap, indent); return nobjs; } @@ -284,30 +242,20 @@ ********************************************************************/ void -PrintFileComponentTypes(char *filename) +PrintFileComponentTypes(DBfile *dbfile, FILE* outf) { - DBfile *dbfile = NULL; DBtoc *dbtoc = NULL; - /* Open the data file. Return if it cannot be read. */ - if((dbfile = DBOpen(filename, DB_UNKNOWN, DB_READ)) == NULL) - { - printf("File: %s\n \n\n", filename); - return; - } - /* Read the file's table of contents. */ if((dbtoc = DBGetToc(dbfile)) == NULL) { - printf("File: %s\n \n\n", filename); + fprintf(outf, "File: \n \n\n"); DBClose(dbfile); return; } - printf("File: %s\n", filename); - - if (ProcessCurrentDirectory(dbfile, dbtoc, 0) <= 0) - printf("\n\n"); + if (ProcessCurrentDirectory(dbfile, outf, dbtoc, 0) <= 0) + fprintf(outf, "\n\n"); /* Close the file. */ DBClose(dbfile); @@ -334,8 +282,8 @@ * Added support for misc. variable printing. ********************************************************************/ -void -PrintObjectComponentsType(DBfile *dbfile, char *objname, char *indent) +static void +PrintObjectComponentsType(DBfile *dbfile, FILE* outf, char *objname, char *indent) { int i, comptype = DB_NOTYPE; DBobject *obj = NULL; @@ -345,12 +293,14 @@ { int len = DBGetVarLength(dbfile, objname); comptype = DBGetVarType(dbfile, objname); - printf("%sObject: \"%s\" is a simple array\n", indent, objname); - printf(" Length: %d Type: %-11s\n", len, IntToTypename(comptype)); + fprintf(outf, "%sObject: \"%s\"\n", indent, objname); + fprintf(outf, "%s is a simple array\n", indent); + fprintf(outf, "%s Length: %d Type: %-11s\n", indent, len, IntToTypename(comptype)); + fprintf(outf, "\n"); return; } - printf("%sObject: \"%s\"\n", indent, objname); + fprintf(outf, "%sObject: \"%s\"\n", indent, objname); if(obj->ncomponents > 0) { void *comp = NULL; @@ -364,7 +314,7 @@ if(comptype != DB_VARIABLE) comp = DBGetComponent(dbfile, objname, obj->comp_names[i]); - printf(" %sComponent: %-15s Type: %-11s", + fprintf(outf, " %sComponent: %-15s Type: %-11s", indent, obj->comp_names[i], IntToTypename(comptype)); if(comp != NULL) @@ -375,31 +325,31 @@ switch(comptype) { case DB_INT: - printf(" Value: %d\n", *((int *)comp)); + fprintf(outf, " Value: %d\n", *((int *)comp)); break; case DB_CHAR: - printf(" Value: %s\n", (char *)comp); + fprintf(outf, " Value: %s\n", (char *)comp); break; case DB_FLOAT: - printf(" Value: %g\n", *((float *)comp)); + fprintf(outf, " Value: %g\n", *((float *)comp)); break; case DB_DOUBLE: - printf(" Value: %.30g\n", *((double *)comp)); + fprintf(outf, " Value: %.30g\n", *((double *)comp)); break; default: - printf(" Value: ???\n"); + fprintf(outf, " Value: ???\n"); } /* Free the component memory. */ free(comp); } else - printf("\n"); + fprintf(outf, "\n"); } - printf("\n"); + fprintf(outf, "\n"); } else - printf(" %s\n\n", indent); + fprintf(outf, " %s\n\n", indent); /* Free the object.*/ DBFreeObject(obj); diff -Nru silo-llnl-4.10.2/tests/listtypes_main.c silo-llnl-4.10.2.real/tests/listtypes_main.c --- silo-llnl-4.10.2/tests/listtypes_main.c 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/listtypes_main.c 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,134 @@ +#include +#include +#include +#include +#include +#ifdef HAVE_HDF5_H +#include +#define HDF5_VERSION_GE(Maj,Min,Rel) \ + (((H5_VERS_MAJOR==Maj) && (H5_VERS_MINOR==Min) && (H5_VERS_RELEASE>=Rel)) || \ + ((H5_VERS_MAJOR==Maj) && (H5_VERS_MINOR>Min)) || \ + (H5_VERS_MAJOR>Maj)) +#endif + +extern void PrintFileComponentTypes(DBfile *dbfile, FILE* outf); + +static void +ProcessSiloFile(char const *filename, int test_fic_vfd) +{ + DBfile *dbfile; + + if (test_fic_vfd) + { +#ifdef HAVE_HDF5_H +#if HDF5_VERSION_GE(1,8,9) + hid_t fapl, fid; + int file_len; + ssize_t read_len; + void *file_buf; + DBoptlist *file_optlist; + int fic_optset; + int fic_vfd; + + /* Open the file using default (sec2) and get file image from it */ + fid = H5Fopen(filename, H5F_ACC_RDONLY, H5P_DEFAULT); + file_len = (int) H5Fget_file_image(fid, NULL, (size_t)0); + file_buf = malloc((size_t)file_len); + read_len = H5Fget_file_image(fid, file_buf, (size_t)file_len); + H5Fclose(fid); + + /* now, try to open the above buffer as a 'file' */ + file_optlist = DBMakeOptlist(10); + fic_vfd = DB_H5VFD_FIC; + DBAddOption(file_optlist, DBOPT_H5_VFD, &fic_vfd); + DBAddOption(file_optlist, DBOPT_H5_FIC_SIZE, &file_len); + DBAddOption(file_optlist, DBOPT_H5_FIC_BUF, file_buf); + fic_optset = DBRegisterFileOptionsSet(file_optlist); + + /* Ok, now test silo opening this 'buffer' */ + if((dbfile = DBOpen("dummy", DB_HDF5_OPTS(fic_optset), DB_READ)) == NULL) + { + fprintf(stderr, "File: %s\n \n\n", "dummy"); + return; + } + + /* free up the file options set */ + DBUnregisterFileOptionsSet(fic_optset); + DBFreeOptlist(file_optlist); + +#endif +#else + + fprintf(stderr, "Cannot test FIC vfd without HDF5 library\n"); + exit(-1); + +#endif + + } + else + { + /* Open the data file. Return if it cannot be read. */ + if((dbfile = DBOpen(filename, DB_UNKNOWN, DB_READ)) == NULL) + { + fprintf(stderr, "File: %s\n \n\n", filename); + return; + } + } + + fprintf(stdout, "File: %s\n", filename); + + PrintFileComponentTypes(dbfile, stdout); + + DBClose(dbfile); +} + +/********************************************************************* + * + * Purpose: Main function for listtypes.c. This function iterates + * over the command line arguments and supplies them to + * a function that prints the component types for a file. + * This program tests the DBGetComponentType function. + * + * Programmer: Brad Whitlock + * Date: Thu Jan 20 13:05:37 PST 2000 + * + * Input Arguments: + * argc : The number of command line arguments. + * argv : An array containing the command line arguments. + * + * Modifications: + * Thomas R. Treadway, Thu Jul 5 16:33:38 PDT 2007 + * Chaneged main's return type to int, to stop gcc-4.x whining. + * + ********************************************************************/ + +int +main(int argc, char *argv[]) +{ + int i; + int test_fic_vfd = 0; + int show_all_errors = 0; + + if (argc < 2) + { + printf("Usage: listtypes filename [filename ...]\n"); + return 0; + } + + DBShowErrors(DB_NONE, NULL); + + /* Print the types for components in the specified files. */ + for(i = 1; i < argc; i++) + { + if (!strcmp(argv[i], "show-all-errors")) + DBShowErrors(DB_ALL_AND_DRVR, NULL); + else if (!strcmp(argv[i], "test-fic-vfd")) + test_fic_vfd = 1; + else + { + ProcessSiloFile(argv[i], test_fic_vfd); + } + } + + return 0; +} diff -Nru silo-llnl-4.10.2/tests/Makefile.am silo-llnl-4.10.2.real/tests/Makefile.am --- silo-llnl-4.10.2/tests/Makefile.am 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/Makefile.am 2018-02-15 17:25:43.000000000 +0000 @@ -83,6 +83,7 @@ Make_ioperf \ ioperf_tests \ std.c \ + bcastopen.c \ zeros.dat \ $(check_SCRIPTS) \ $(check_DATA) @@ -117,26 +118,34 @@ else LDADD = ../src/libsilo.la endif +if JSON_NEEDED + LDADD += ../tools/json/json-c-0.10/libjson.la +endif # paths look at install directories before sources AM_CPPFLAGS = \ - -I$(srcdir)/../src/pdb \ - -I$(srcdir)/../src/score \ -I$(builddir)/../src/silo \ -I$(srcdir)/../src/silo \ -I$(includedir) #quad_CPPFLAGS = $(AM_CPPFLAGS) PDBTESTS = if INSTALL_LITE_HEADERS -testpdb_CPPFLAGS = -DPDB_LITE $(AM_CPPFLAGS) -pdbtst_CPPFLAGS = -DPDB_LITE $(AM_CPPFLAGS) -PDBTESTS += testpdb pdbtst + testpdb_CPPFLAGS = -DPDB_LITE $(AM_CPPFLAGS) -I../src/pdb -I../src/score + pdbtst_CPPFLAGS = -DPDB_LITE $(AM_CPPFLAGS) -I../src/pdb -I../src/score + PDBTESTS += testpdb pdbtst +endif +JSONTESTS = +if JSON_NEEDED + json_CPPFLAGS = -I$(prefix)/json/include $(AM_CPPFLAGS) + JSONTESTS += json endif #TestReadMask_CPPFLAGS = $(AM_CPPFLAGS) +mk_nasf_pdb_CPPFLAGS = $(AM_CPPFLAGS) -I../src/pdb -I../src/score AM_FFLAGS = $(AM_CPPFLAGS) +AM_FCFLAGS = $(AM_CPPFLAGS) HDF5PROGS=compression grab mk_nasf_h5 -FCPROGS= arrayf77 curvef77 matf77 pointf77 quadf77 ucdf77 testallf77 \ +FCPROGS= arrayf77 arrayf90 curvef77 matf77 pointf77 quadf77 ucdf77 testallf77 \ csgmesh PROGS=array dir extface multi_test partial_io point quad simple ucd \ ucdsamp3 testall obj onehex oneprism onepyramid onetet subhex \ @@ -144,9 +153,11 @@ cpz1plt group_test listtypes alltypes wave multi_file polyzl csg \ rocket mmadjacency largefile version namescheme efcentering \ mk_nasf_pdb ioperf arbpoly2d readstuff mat3d_3across merge_block \ - empty majorder $(PDBTESTS) + empty majorder realloc_obj_and_opts $(PDBTESTS) $(JSONTESTS) dir_SOURCES = dir.c testlib.c +listtypes_SOURCES = listtypes.c listtypes_main.c +bcastopen_SOURCES = bcastopen.c bcastopen_test.c quad_SOURCES = quad.c testlib.c rocket_SOURCES = rocket.cxx rocket_LDFLAGS = -ldl @@ -170,6 +181,7 @@ ioperf_LDFLAGS = -ldl ioperf_CXXFALGS = -rdynamic # the '-rpath /nowhere' is some trick to force libtool to produce a shared lib +ioperf_pdb_la_CPPFLAGS = $(AM_CPPFLAGS) -I../src/pdb -I../src/score ioperf_silo_la_LDFLAGS = -module -avoid-version -rpath /nowhere ioperf_hdf5_la_LDFLAGS = -module -avoid-version -rpath /nowhere ioperf_pdb_la_LDFLAGS = -module -avoid-version -rpath /nowhere @@ -226,7 +238,9 @@ testfs \ empty \ majorder \ - $(PDBTESTS) + realloc_obj_and_opts \ + $(PDBTESTS) \ + $(JSONTESTS) # Deal with need to use c++ linker whenever we've got C++ # sources compiled with the silo library and the fact that @@ -280,6 +294,7 @@ nodist_EXTRA_version_SOURCES = dummy.cxx nodist_EXTRA_namescheme_SOURCES = dummy.cxx nodist_EXTRA_arrayf77_SOURCES = dummy.cxx + nodist_EXTRA_arrayf90_SOURCES = dummy.cxx nodist_EXTRA_curvef77_SOURCES = dummy.cxx nodist_EXTRA_matf77_SOURCES = dummy.cxx nodist_EXTRA_pointf77_SOURCES = dummy.cxx @@ -296,6 +311,8 @@ nodist_EXTRA_testfs_SOURCES = dummy.cxx nodist_EXTRA_empty_SOURCES = dummy.cxx nodist_EXTRA_majorder_SOURCES = dummy.cxx + nodist_EXTRA_realloc_obj_and_opts_SOURCES = dummy.cxx + nodist_EXTRA_json_SOURCES = dummy.cxx endif @@ -316,6 +333,8 @@ check_PROGRAMS += $(FCPROGS) arrayf77_SOURCES = arrayf77.f arrayf77_LDADD = $(LDADD) $(FCLIBS) + arrayf90_SOURCES = arrayf90.f90 + arrayf90_LDADD = $(LDADD) $(FCLIBS) curvef77_SOURCES = curvef77.f curvef77_LDADD = $(LDADD) $(FCLIBS) matf77_SOURCES = matf77.f diff -Nru silo-llnl-4.10.2/tests/Makefile.in silo-llnl-4.10.2.real/tests/Makefile.in --- silo-llnl-4.10.2/tests/Makefile.in 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/Makefile.in 2018-02-15 17:25:43.000000000 +0000 @@ -95,7 +95,9 @@ POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ -@INSTALL_LITE_HEADERS_TRUE@am__append_1 = testpdb pdbtst +@JSON_NEEDED_TRUE@am__append_1 = ../tools/json/json-c-0.10/libjson.la +@INSTALL_LITE_HEADERS_TRUE@am__append_2 = testpdb pdbtst +@JSON_NEEDED_TRUE@am__append_3 = json check_PROGRAMS = arbpoly$(EXEEXT) arbpoly2d$(EXEEXT) array$(EXEEXT) \ extface$(EXEEXT) multi_test$(EXEEXT) partial_io$(EXEEXT) \ point$(EXEEXT) group_test$(EXEEXT) listtypes$(EXEEXT) \ @@ -111,13 +113,14 @@ dir$(EXEEXT) quad$(EXEEXT) version$(EXEEXT) \ namescheme$(EXEEXT) efcentering$(EXEEXT) mk_nasf_pdb$(EXEEXT) \ ioperf$(EXEEXT) readstuff$(EXEEXT) testfs$(EXEEXT) \ - empty$(EXEEXT) majorder$(EXEEXT) $(am__EXEEXT_2) \ - $(am__EXEEXT_4) $(am__EXEEXT_6) -@HDF5_DRV_NEEDED_TRUE@am__append_2 = $(HDF5PROGS) -@HDF5_DRV_NEEDED_TRUE@am__append_3 = $(HDF5PROGS) -@HDF5_DRV_NEEDED_TRUE@am__append_4 = $(HDF5CKLTLIBS) -@FORTRAN_NEEDED_TRUE@am__append_5 = $(FCPROGS) -@FORTRAN_NEEDED_TRUE@am__append_6 = $(FCPROGS) + empty$(EXEEXT) majorder$(EXEEXT) realloc_obj_and_opts$(EXEEXT) \ + $(am__EXEEXT_2) $(am__EXEEXT_4) $(am__EXEEXT_6) \ + $(am__EXEEXT_8) +@HDF5_DRV_NEEDED_TRUE@am__append_4 = $(HDF5PROGS) +@HDF5_DRV_NEEDED_TRUE@am__append_5 = $(HDF5PROGS) +@HDF5_DRV_NEEDED_TRUE@am__append_6 = $(HDF5CKLTLIBS) +@FORTRAN_NEEDED_TRUE@am__append_7 = $(FCPROGS) +@FORTRAN_NEEDED_TRUE@am__append_8 = $(FCPROGS) subdir = tests DIST_COMMON = $(include_HEADERS) $(srcdir)/Makefile.am \ $(srcdir)/Makefile.in @@ -146,7 +149,7 @@ @HDF5_DRV_NEEDED_TRUE@am_ioperf_hdf5_la_rpath = ioperf_pdb_la_LIBADD = ioperf_pdb_la_SOURCES = ioperf_pdb.c -ioperf_pdb_la_OBJECTS = ioperf_pdb.lo +ioperf_pdb_la_OBJECTS = ioperf_pdb_la-ioperf_pdb.lo ioperf_pdb_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ $(ioperf_pdb_la_LDFLAGS) $(LDFLAGS) -o $@ @@ -177,43 +180,60 @@ @INSTALL_LITE_HEADERS_TRUE@am__EXEEXT_1 = testpdb$(EXEEXT) \ @INSTALL_LITE_HEADERS_TRUE@ pdbtst$(EXEEXT) am__EXEEXT_2 = $(am__EXEEXT_1) -am__EXEEXT_3 = compression$(EXEEXT) grab$(EXEEXT) mk_nasf_h5$(EXEEXT) -@HDF5_DRV_NEEDED_TRUE@am__EXEEXT_4 = $(am__EXEEXT_3) -am__EXEEXT_5 = arrayf77$(EXEEXT) curvef77$(EXEEXT) matf77$(EXEEXT) \ - pointf77$(EXEEXT) quadf77$(EXEEXT) ucdf77$(EXEEXT) \ - testallf77$(EXEEXT) csgmesh$(EXEEXT) -@FORTRAN_NEEDED_TRUE@am__EXEEXT_6 = $(am__EXEEXT_5) +@JSON_NEEDED_TRUE@am__EXEEXT_3 = json$(EXEEXT) +am__EXEEXT_4 = $(am__EXEEXT_3) +am__EXEEXT_5 = compression$(EXEEXT) grab$(EXEEXT) mk_nasf_h5$(EXEEXT) +@HDF5_DRV_NEEDED_TRUE@am__EXEEXT_6 = $(am__EXEEXT_5) +am__EXEEXT_7 = arrayf77$(EXEEXT) arrayf90$(EXEEXT) curvef77$(EXEEXT) \ + matf77$(EXEEXT) pointf77$(EXEEXT) quadf77$(EXEEXT) \ + ucdf77$(EXEEXT) testallf77$(EXEEXT) csgmesh$(EXEEXT) +@FORTRAN_NEEDED_TRUE@am__EXEEXT_8 = $(am__EXEEXT_7) TestReadMask_SOURCES = TestReadMask.c TestReadMask_OBJECTS = TestReadMask.$(OBJEXT) TestReadMask_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@TestReadMask_DEPENDENCIES = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@TestReadMask_DEPENDENCIES = ../src/libsiloh5.la +@HDF5_DRV_NEEDED_FALSE@TestReadMask_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@TestReadMask_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) alltypes_SOURCES = alltypes.c alltypes_OBJECTS = alltypes.$(OBJEXT) alltypes_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@alltypes_DEPENDENCIES = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@alltypes_DEPENDENCIES = ../src/libsiloh5.la +@HDF5_DRV_NEEDED_FALSE@alltypes_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@alltypes_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) arbpoly_SOURCES = arbpoly.c arbpoly_OBJECTS = arbpoly.$(OBJEXT) arbpoly_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@arbpoly_DEPENDENCIES = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@arbpoly_DEPENDENCIES = ../src/libsiloh5.la +@HDF5_DRV_NEEDED_FALSE@arbpoly_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@arbpoly_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) arbpoly2d_SOURCES = arbpoly2d.c arbpoly2d_OBJECTS = arbpoly2d.$(OBJEXT) arbpoly2d_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@arbpoly2d_DEPENDENCIES = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@arbpoly2d_DEPENDENCIES = ../src/libsiloh5.la +@HDF5_DRV_NEEDED_FALSE@arbpoly2d_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@arbpoly2d_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) array_SOURCES = array.c array_OBJECTS = array.$(OBJEXT) array_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@array_DEPENDENCIES = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@array_DEPENDENCIES = ../src/libsiloh5.la +@HDF5_DRV_NEEDED_FALSE@array_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@array_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) am__arrayf77_SOURCES_DIST = arrayf77.f @FORTRAN_NEEDED_TRUE@am_arrayf77_OBJECTS = arrayf77.$(OBJEXT) arrayf77_OBJECTS = $(am_arrayf77_OBJECTS) am__DEPENDENCIES_1 = @FORTRAN_NEEDED_TRUE@arrayf77_DEPENDENCIES = $(LDADD) \ @FORTRAN_NEEDED_TRUE@ $(am__DEPENDENCIES_1) +am__arrayf90_SOURCES_DIST = arrayf90.f90 +@FORTRAN_NEEDED_TRUE@am_arrayf90_OBJECTS = arrayf90.$(OBJEXT) +arrayf90_OBJECTS = $(am_arrayf90_OBJECTS) +@FORTRAN_NEEDED_TRUE@arrayf90_DEPENDENCIES = $(LDADD) \ +@FORTRAN_NEEDED_TRUE@ $(am__DEPENDENCIES_1) am__compression_SOURCES_DIST = compression.c @HDF5_DRV_NEEDED_TRUE@am_compression_OBJECTS = compression.$(OBJEXT) compression_OBJECTS = $(am_compression_OBJECTS) @@ -221,13 +241,17 @@ cpz1plt_SOURCES = cpz1plt.c cpz1plt_OBJECTS = cpz1plt.$(OBJEXT) cpz1plt_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@cpz1plt_DEPENDENCIES = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@cpz1plt_DEPENDENCIES = ../src/libsiloh5.la +@HDF5_DRV_NEEDED_FALSE@cpz1plt_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@cpz1plt_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) csg_SOURCES = csg.c csg_OBJECTS = csg.$(OBJEXT) csg_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@csg_DEPENDENCIES = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@csg_DEPENDENCIES = ../src/libsiloh5.la +@HDF5_DRV_NEEDED_FALSE@csg_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@csg_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) am__csgmesh_SOURCES_DIST = csgmesh.f @FORTRAN_NEEDED_TRUE@am_csgmesh_OBJECTS = csgmesh.$(OBJEXT) csgmesh_OBJECTS = $(am_csgmesh_OBJECTS) @@ -241,23 +265,31 @@ am_dir_OBJECTS = dir.$(OBJEXT) testlib.$(OBJEXT) dir_OBJECTS = $(am_dir_OBJECTS) dir_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@dir_DEPENDENCIES = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@dir_DEPENDENCIES = ../src/libsiloh5.la +@HDF5_DRV_NEEDED_FALSE@dir_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@dir_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) efcentering_SOURCES = efcentering.c efcentering_OBJECTS = efcentering.$(OBJEXT) efcentering_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@efcentering_DEPENDENCIES = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@efcentering_DEPENDENCIES = ../src/libsiloh5.la +@HDF5_DRV_NEEDED_FALSE@efcentering_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@efcentering_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) empty_SOURCES = empty.c empty_OBJECTS = empty.$(OBJEXT) empty_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@empty_DEPENDENCIES = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@empty_DEPENDENCIES = ../src/libsiloh5.la +@HDF5_DRV_NEEDED_FALSE@empty_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@empty_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) extface_SOURCES = extface.c extface_OBJECTS = extface.$(OBJEXT) extface_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@extface_DEPENDENCIES = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@extface_DEPENDENCIES = ../src/libsiloh5.la +@HDF5_DRV_NEEDED_FALSE@extface_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@extface_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) am__grab_SOURCES_DIST = grab.c @HDF5_DRV_NEEDED_TRUE@am_grab_OBJECTS = grab.$(OBJEXT) grab_OBJECTS = $(am_grab_OBJECTS) @@ -265,37 +297,55 @@ group_test_SOURCES = group_test.c group_test_OBJECTS = group_test.$(OBJEXT) group_test_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@group_test_DEPENDENCIES = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@group_test_DEPENDENCIES = ../src/libsiloh5.la +@HDF5_DRV_NEEDED_FALSE@group_test_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@group_test_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) ioperf_SOURCES = ioperf.c ioperf_OBJECTS = ioperf.$(OBJEXT) ioperf_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@ioperf_DEPENDENCIES = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@ioperf_DEPENDENCIES = ../src/libsiloh5.la +@HDF5_DRV_NEEDED_FALSE@ioperf_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@ioperf_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) ioperf_LINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ --mode=link $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) \ $(ioperf_LDFLAGS) $(LDFLAGS) -o $@ +json_SOURCES = json.c +json_OBJECTS = json-json.$(OBJEXT) +json_LDADD = $(LDADD) +@HDF5_DRV_NEEDED_FALSE@json_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@json_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) largefile_SOURCES = largefile.c largefile_OBJECTS = largefile.$(OBJEXT) largefile_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@largefile_DEPENDENCIES = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@largefile_DEPENDENCIES = ../src/libsiloh5.la -listtypes_SOURCES = listtypes.c -listtypes_OBJECTS = listtypes.$(OBJEXT) +@HDF5_DRV_NEEDED_FALSE@largefile_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@largefile_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) +am_listtypes_OBJECTS = listtypes.$(OBJEXT) listtypes_main.$(OBJEXT) +listtypes_OBJECTS = $(am_listtypes_OBJECTS) listtypes_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@listtypes_DEPENDENCIES = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@listtypes_DEPENDENCIES = ../src/libsiloh5.la +@HDF5_DRV_NEEDED_FALSE@listtypes_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@listtypes_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) majorder_SOURCES = majorder.c majorder_OBJECTS = majorder.$(OBJEXT) majorder_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@majorder_DEPENDENCIES = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@majorder_DEPENDENCIES = ../src/libsiloh5.la +@HDF5_DRV_NEEDED_FALSE@majorder_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@majorder_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) mat3d_3across_SOURCES = mat3d_3across.c mat3d_3across_OBJECTS = mat3d_3across.$(OBJEXT) mat3d_3across_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@mat3d_3across_DEPENDENCIES = ../src/libsilo.la +@HDF5_DRV_NEEDED_FALSE@mat3d_3across_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) @HDF5_DRV_NEEDED_TRUE@mat3d_3across_DEPENDENCIES = \ -@HDF5_DRV_NEEDED_TRUE@ ../src/libsiloh5.la +@HDF5_DRV_NEEDED_TRUE@ ../src/libsiloh5.la $(am__append_1) am__matf77_SOURCES_DIST = matf77.f @FORTRAN_NEEDED_TRUE@am_matf77_OBJECTS = matf77.$(OBJEXT) matf77_OBJECTS = $(am_matf77_OBJECTS) @@ -304,82 +354,112 @@ merge_block_SOURCES = merge_block.c merge_block_OBJECTS = merge_block.$(OBJEXT) merge_block_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@merge_block_DEPENDENCIES = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@merge_block_DEPENDENCIES = ../src/libsiloh5.la +@HDF5_DRV_NEEDED_FALSE@merge_block_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@merge_block_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) am__mk_nasf_h5_SOURCES_DIST = mk_nasf_h5.c @HDF5_DRV_NEEDED_TRUE@am_mk_nasf_h5_OBJECTS = mk_nasf_h5.$(OBJEXT) mk_nasf_h5_OBJECTS = $(am_mk_nasf_h5_OBJECTS) @HDF5_DRV_NEEDED_TRUE@mk_nasf_h5_DEPENDENCIES = $(LDADD) mk_nasf_pdb_SOURCES = mk_nasf_pdb.c -mk_nasf_pdb_OBJECTS = mk_nasf_pdb.$(OBJEXT) +mk_nasf_pdb_OBJECTS = mk_nasf_pdb-mk_nasf_pdb.$(OBJEXT) mk_nasf_pdb_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@mk_nasf_pdb_DEPENDENCIES = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@mk_nasf_pdb_DEPENDENCIES = ../src/libsiloh5.la +@HDF5_DRV_NEEDED_FALSE@mk_nasf_pdb_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@mk_nasf_pdb_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) mmadjacency_SOURCES = mmadjacency.c mmadjacency_OBJECTS = mmadjacency.$(OBJEXT) mmadjacency_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@mmadjacency_DEPENDENCIES = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@mmadjacency_DEPENDENCIES = ../src/libsiloh5.la +@HDF5_DRV_NEEDED_FALSE@mmadjacency_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@mmadjacency_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) multi_file_SOURCES = multi_file.c multi_file_OBJECTS = multi_file.$(OBJEXT) multi_file_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@multi_file_DEPENDENCIES = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@multi_file_DEPENDENCIES = ../src/libsiloh5.la +@HDF5_DRV_NEEDED_FALSE@multi_file_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@multi_file_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) multi_test_SOURCES = multi_test.c multi_test_OBJECTS = multi_test.$(OBJEXT) multi_test_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@multi_test_DEPENDENCIES = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@multi_test_DEPENDENCIES = ../src/libsiloh5.la +@HDF5_DRV_NEEDED_FALSE@multi_test_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@multi_test_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) multispec_SOURCES = multispec.c multispec_OBJECTS = multispec.$(OBJEXT) multispec_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@multispec_DEPENDENCIES = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@multispec_DEPENDENCIES = ../src/libsiloh5.la +@HDF5_DRV_NEEDED_FALSE@multispec_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@multispec_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) namescheme_SOURCES = namescheme.c namescheme_OBJECTS = namescheme.$(OBJEXT) namescheme_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@namescheme_DEPENDENCIES = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@namescheme_DEPENDENCIES = ../src/libsiloh5.la +@HDF5_DRV_NEEDED_FALSE@namescheme_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@namescheme_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) obj_SOURCES = obj.c obj_OBJECTS = obj.$(OBJEXT) obj_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@obj_DEPENDENCIES = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@obj_DEPENDENCIES = ../src/libsiloh5.la +@HDF5_DRV_NEEDED_FALSE@obj_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@obj_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) onehex_SOURCES = onehex.c onehex_OBJECTS = onehex.$(OBJEXT) onehex_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@onehex_DEPENDENCIES = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@onehex_DEPENDENCIES = ../src/libsiloh5.la +@HDF5_DRV_NEEDED_FALSE@onehex_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@onehex_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) oneprism_SOURCES = oneprism.c oneprism_OBJECTS = oneprism.$(OBJEXT) oneprism_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@oneprism_DEPENDENCIES = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@oneprism_DEPENDENCIES = ../src/libsiloh5.la +@HDF5_DRV_NEEDED_FALSE@oneprism_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@oneprism_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) onepyramid_SOURCES = onepyramid.c onepyramid_OBJECTS = onepyramid.$(OBJEXT) onepyramid_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@onepyramid_DEPENDENCIES = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@onepyramid_DEPENDENCIES = ../src/libsiloh5.la +@HDF5_DRV_NEEDED_FALSE@onepyramid_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@onepyramid_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) onetet_SOURCES = onetet.c onetet_OBJECTS = onetet.$(OBJEXT) onetet_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@onetet_DEPENDENCIES = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@onetet_DEPENDENCIES = ../src/libsiloh5.la +@HDF5_DRV_NEEDED_FALSE@onetet_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@onetet_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) partial_io_SOURCES = partial_io.c partial_io_OBJECTS = partial_io.$(OBJEXT) partial_io_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@partial_io_DEPENDENCIES = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@partial_io_DEPENDENCIES = ../src/libsiloh5.la +@HDF5_DRV_NEEDED_FALSE@partial_io_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@partial_io_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) pdbtst_SOURCES = pdbtst.c pdbtst_OBJECTS = pdbtst-pdbtst.$(OBJEXT) pdbtst_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@pdbtst_DEPENDENCIES = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@pdbtst_DEPENDENCIES = ../src/libsiloh5.la +@HDF5_DRV_NEEDED_FALSE@pdbtst_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@pdbtst_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) point_SOURCES = point.c point_OBJECTS = point.$(OBJEXT) point_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@point_DEPENDENCIES = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@point_DEPENDENCIES = ../src/libsiloh5.la +@HDF5_DRV_NEEDED_FALSE@point_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@point_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) am__pointf77_SOURCES_DIST = pointf77.f @FORTRAN_NEEDED_TRUE@am_pointf77_OBJECTS = pointf77.$(OBJEXT) pointf77_OBJECTS = $(am_pointf77_OBJECTS) @@ -388,13 +468,17 @@ polyzl_SOURCES = polyzl.c polyzl_OBJECTS = polyzl.$(OBJEXT) polyzl_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@polyzl_DEPENDENCIES = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@polyzl_DEPENDENCIES = ../src/libsiloh5.la +@HDF5_DRV_NEEDED_FALSE@polyzl_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@polyzl_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) am_quad_OBJECTS = quad.$(OBJEXT) testlib.$(OBJEXT) quad_OBJECTS = $(am_quad_OBJECTS) quad_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@quad_DEPENDENCIES = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@quad_DEPENDENCIES = ../src/libsiloh5.la +@HDF5_DRV_NEEDED_FALSE@quad_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@quad_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) am__quadf77_SOURCES_DIST = quadf77.f @FORTRAN_NEEDED_TRUE@am_quadf77_OBJECTS = quadf77.$(OBJEXT) quadf77_OBJECTS = $(am_quadf77_OBJECTS) @@ -403,46 +487,69 @@ readstuff_SOURCES = readstuff.c readstuff_OBJECTS = readstuff.$(OBJEXT) readstuff_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@readstuff_DEPENDENCIES = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@readstuff_DEPENDENCIES = ../src/libsiloh5.la +@HDF5_DRV_NEEDED_FALSE@readstuff_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@readstuff_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) +realloc_obj_and_opts_SOURCES = realloc_obj_and_opts.c +realloc_obj_and_opts_OBJECTS = realloc_obj_and_opts.$(OBJEXT) +realloc_obj_and_opts_LDADD = $(LDADD) +@HDF5_DRV_NEEDED_FALSE@realloc_obj_and_opts_DEPENDENCIES = \ +@HDF5_DRV_NEEDED_FALSE@ ../src/libsilo.la $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@realloc_obj_and_opts_DEPENDENCIES = \ +@HDF5_DRV_NEEDED_TRUE@ ../src/libsiloh5.la $(am__append_1) am_rocket_OBJECTS = rocket-rocket.$(OBJEXT) rocket_OBJECTS = $(am_rocket_OBJECTS) rocket_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@rocket_DEPENDENCIES = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@rocket_DEPENDENCIES = ../src/libsiloh5.la +@HDF5_DRV_NEEDED_FALSE@rocket_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@rocket_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) rocket_LINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ --mode=link $(CXXLD) $(rocket_CXXFLAGS) $(CXXFLAGS) \ $(rocket_LDFLAGS) $(LDFLAGS) -o $@ sami_SOURCES = sami.c sami_OBJECTS = sami.$(OBJEXT) sami_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@sami_DEPENDENCIES = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@sami_DEPENDENCIES = ../src/libsiloh5.la +@HDF5_DRV_NEEDED_FALSE@sami_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@sami_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) simple_SOURCES = simple.c simple_OBJECTS = simple.$(OBJEXT) simple_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@simple_DEPENDENCIES = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@simple_DEPENDENCIES = ../src/libsiloh5.la +@HDF5_DRV_NEEDED_FALSE@simple_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@simple_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) spec_SOURCES = spec.c spec_OBJECTS = spec.$(OBJEXT) spec_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@spec_DEPENDENCIES = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@spec_DEPENDENCIES = ../src/libsiloh5.la +@HDF5_DRV_NEEDED_FALSE@spec_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@spec_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) specmix_SOURCES = specmix.c specmix_OBJECTS = specmix.$(OBJEXT) specmix_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@specmix_DEPENDENCIES = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@specmix_DEPENDENCIES = ../src/libsiloh5.la +@HDF5_DRV_NEEDED_FALSE@specmix_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@specmix_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) subhex_SOURCES = subhex.c subhex_OBJECTS = subhex.$(OBJEXT) subhex_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@subhex_DEPENDENCIES = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@subhex_DEPENDENCIES = ../src/libsiloh5.la +@HDF5_DRV_NEEDED_FALSE@subhex_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@subhex_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) testall_SOURCES = testall.c testall_OBJECTS = testall.$(OBJEXT) testall_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@testall_DEPENDENCIES = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@testall_DEPENDENCIES = ../src/libsiloh5.la +@HDF5_DRV_NEEDED_FALSE@testall_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@testall_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) am__testallf77_SOURCES_DIST = testallf77.f @FORTRAN_NEEDED_TRUE@am_testallf77_OBJECTS = testallf77.$(OBJEXT) testallf77_OBJECTS = $(am_testallf77_OBJECTS) @@ -451,28 +558,38 @@ testfs_SOURCES = testfs.c testfs_OBJECTS = testfs.$(OBJEXT) testfs_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@testfs_DEPENDENCIES = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@testfs_DEPENDENCIES = ../src/libsiloh5.la +@HDF5_DRV_NEEDED_FALSE@testfs_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@testfs_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) testpdb_SOURCES = testpdb.c testpdb_OBJECTS = testpdb-testpdb.$(OBJEXT) testpdb_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@testpdb_DEPENDENCIES = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@testpdb_DEPENDENCIES = ../src/libsiloh5.la +@HDF5_DRV_NEEDED_FALSE@testpdb_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@testpdb_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) twohex_SOURCES = twohex.c twohex_OBJECTS = twohex.$(OBJEXT) twohex_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@twohex_DEPENDENCIES = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@twohex_DEPENDENCIES = ../src/libsiloh5.la +@HDF5_DRV_NEEDED_FALSE@twohex_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@twohex_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) ucd_SOURCES = ucd.c ucd_OBJECTS = ucd.$(OBJEXT) ucd_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@ucd_DEPENDENCIES = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@ucd_DEPENDENCIES = ../src/libsiloh5.la +@HDF5_DRV_NEEDED_FALSE@ucd_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@ucd_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) ucd1d_SOURCES = ucd1d.c ucd1d_OBJECTS = ucd1d.$(OBJEXT) ucd1d_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@ucd1d_DEPENDENCIES = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@ucd1d_DEPENDENCIES = ../src/libsiloh5.la +@HDF5_DRV_NEEDED_FALSE@ucd1d_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@ucd1d_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) am__ucdf77_SOURCES_DIST = ucdf77.f @FORTRAN_NEEDED_TRUE@am_ucdf77_OBJECTS = ucdf77.$(OBJEXT) ucdf77_OBJECTS = $(am_ucdf77_OBJECTS) @@ -481,18 +598,24 @@ ucdsamp3_SOURCES = ucdsamp3.c ucdsamp3_OBJECTS = ucdsamp3.$(OBJEXT) ucdsamp3_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@ucdsamp3_DEPENDENCIES = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@ucdsamp3_DEPENDENCIES = ../src/libsiloh5.la +@HDF5_DRV_NEEDED_FALSE@ucdsamp3_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@ucdsamp3_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) version_SOURCES = version.c version_OBJECTS = version.$(OBJEXT) version_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@version_DEPENDENCIES = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@version_DEPENDENCIES = ../src/libsiloh5.la +@HDF5_DRV_NEEDED_FALSE@version_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@version_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) wave_SOURCES = wave.c wave_OBJECTS = wave.$(OBJEXT) wave_LDADD = $(LDADD) -@HDF5_DRV_NEEDED_FALSE@wave_DEPENDENCIES = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@wave_DEPENDENCIES = ../src/libsiloh5.la +@HDF5_DRV_NEEDED_FALSE@wave_DEPENDENCIES = ../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@wave_DEPENDENCIES = ../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) depcomp = $(SHELL) $(top_srcdir)/config/depcomp am__depfiles_maybe = depfiles @@ -522,6 +645,13 @@ F77LINK = $(LIBTOOL) --tag=F77 $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ --mode=link $(F77LD) $(AM_FFLAGS) $(FFLAGS) $(AM_LDFLAGS) \ $(LDFLAGS) -o $@ +FCCOMPILE = $(FC) $(AM_FCFLAGS) $(FCFLAGS) +LTFCCOMPILE = $(LIBTOOL) --tag=FC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ + --mode=compile $(FC) $(AM_FCFLAGS) $(FCFLAGS) +FCLD = $(FC) +FCLINK = $(LIBTOOL) --tag=FC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ + --mode=link $(FCLD) $(AM_FCFLAGS) $(FCFLAGS) $(AM_LDFLAGS) \ + $(LDFLAGS) -o $@ SOURCES = ioperf_hdf5.c ioperf_pdb.c ioperf_sec2.c ioperf_silo.c \ ioperf_stdio.c $(rocket_silo_la_SOURCES) \ $(nodist_EXTRA_TestReadMask_SOURCES) TestReadMask.c \ @@ -529,7 +659,8 @@ $(nodist_EXTRA_arbpoly_SOURCES) arbpoly.c \ $(nodist_EXTRA_arbpoly2d_SOURCES) arbpoly2d.c \ $(nodist_EXTRA_array_SOURCES) array.c $(arrayf77_SOURCES) \ - $(nodist_EXTRA_arrayf77_SOURCES) $(compression_SOURCES) \ + $(nodist_EXTRA_arrayf77_SOURCES) $(arrayf90_SOURCES) \ + $(nodist_EXTRA_arrayf90_SOURCES) $(compression_SOURCES) \ $(nodist_EXTRA_compression_SOURCES) \ $(nodist_EXTRA_cpz1plt_SOURCES) cpz1plt.c \ $(nodist_EXTRA_csg_SOURCES) csg.c $(csgmesh_SOURCES) \ @@ -542,8 +673,9 @@ $(nodist_EXTRA_grab_SOURCES) \ $(nodist_EXTRA_group_test_SOURCES) group_test.c \ $(nodist_EXTRA_ioperf_SOURCES) ioperf.c \ + $(nodist_EXTRA_json_SOURCES) json.c \ $(nodist_EXTRA_largefile_SOURCES) largefile.c \ - $(nodist_EXTRA_listtypes_SOURCES) listtypes.c \ + $(listtypes_SOURCES) $(nodist_EXTRA_listtypes_SOURCES) \ $(nodist_EXTRA_majorder_SOURCES) majorder.c \ $(nodist_EXTRA_mat3d_3across_SOURCES) mat3d_3across.c \ $(matf77_SOURCES) $(nodist_EXTRA_matf77_SOURCES) \ @@ -567,7 +699,9 @@ $(nodist_EXTRA_quad_SOURCES) $(quadf77_SOURCES) \ $(nodist_EXTRA_quadf77_SOURCES) \ $(nodist_EXTRA_readstuff_SOURCES) readstuff.c \ - $(rocket_SOURCES) $(nodist_EXTRA_sami_SOURCES) sami.c \ + $(nodist_EXTRA_realloc_obj_and_opts_SOURCES) \ + realloc_obj_and_opts.c $(rocket_SOURCES) \ + $(nodist_EXTRA_sami_SOURCES) sami.c \ $(nodist_EXTRA_simple_SOURCES) simple.c \ $(nodist_EXTRA_spec_SOURCES) spec.c \ $(nodist_EXTRA_specmix_SOURCES) specmix.c \ @@ -586,21 +720,23 @@ DIST_SOURCES = ioperf_hdf5.c ioperf_pdb.c ioperf_sec2.c ioperf_silo.c \ ioperf_stdio.c $(rocket_silo_la_SOURCES) TestReadMask.c \ alltypes.c arbpoly.c arbpoly2d.c array.c \ - $(am__arrayf77_SOURCES_DIST) $(am__compression_SOURCES_DIST) \ - cpz1plt.c csg.c $(am__csgmesh_SOURCES_DIST) \ - $(am__curvef77_SOURCES_DIST) $(dir_SOURCES) efcentering.c \ - empty.c extface.c $(am__grab_SOURCES_DIST) group_test.c \ - ioperf.c largefile.c listtypes.c majorder.c mat3d_3across.c \ + $(am__arrayf77_SOURCES_DIST) $(am__arrayf90_SOURCES_DIST) \ + $(am__compression_SOURCES_DIST) cpz1plt.c csg.c \ + $(am__csgmesh_SOURCES_DIST) $(am__curvef77_SOURCES_DIST) \ + $(dir_SOURCES) efcentering.c empty.c extface.c \ + $(am__grab_SOURCES_DIST) group_test.c ioperf.c json.c \ + largefile.c $(listtypes_SOURCES) majorder.c mat3d_3across.c \ $(am__matf77_SOURCES_DIST) merge_block.c \ $(am__mk_nasf_h5_SOURCES_DIST) mk_nasf_pdb.c mmadjacency.c \ multi_file.c multi_test.c multispec.c namescheme.c obj.c \ onehex.c oneprism.c onepyramid.c onetet.c partial_io.c \ pdbtst.c point.c $(am__pointf77_SOURCES_DIST) polyzl.c \ $(quad_SOURCES) $(am__quadf77_SOURCES_DIST) readstuff.c \ - $(rocket_SOURCES) sami.c simple.c spec.c specmix.c subhex.c \ - testall.c $(am__testallf77_SOURCES_DIST) testfs.c testpdb.c \ - twohex.c ucd.c ucd1d.c $(am__ucdf77_SOURCES_DIST) ucdsamp3.c \ - version.c wave.c + realloc_obj_and_opts.c $(rocket_SOURCES) sami.c simple.c \ + spec.c specmix.c subhex.c testall.c \ + $(am__testallf77_SOURCES_DIST) testfs.c testpdb.c twohex.c \ + ucd.c ucd1d.c $(am__ucdf77_SOURCES_DIST) ucdsamp3.c version.c \ + wave.c am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ @@ -677,6 +813,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +JSON = @JSON@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBM = @LIBM@ @@ -725,9 +862,6 @@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SILEX = @SILEX@ -SILO_DTYPPTR = @SILO_DTYPPTR@ -SILO_DTYPPTR1 = @SILO_DTYPPTR1@ -SILO_DTYPPTR2 = @SILO_DTYPPTR2@ SILO_VERS_MAJ = @SILO_VERS_MAJ@ SILO_VERS_MIN = @SILO_VERS_MIN@ SILO_VERS_PAT = @SILO_VERS_PAT@ @@ -824,6 +958,7 @@ Make_ioperf \ ioperf_tests \ std.c \ + bcastopen.c \ zeros.dat \ $(check_SCRIPTS) \ $(check_DATA) @@ -853,25 +988,27 @@ AUTOM4TE = autom4te AUTOTEST = $(AUTOM4TE) --language=autotest TESTSUITE = $(srcdir)/testsuite -@HDF5_DRV_NEEDED_FALSE@LDADD = ../src/libsilo.la -@HDF5_DRV_NEEDED_TRUE@LDADD = ../src/libsiloh5.la +@HDF5_DRV_NEEDED_FALSE@LDADD = ../src/libsilo.la $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@LDADD = ../src/libsiloh5.la $(am__append_1) # paths look at install directories before sources AM_CPPFLAGS = \ - -I$(srcdir)/../src/pdb \ - -I$(srcdir)/../src/score \ -I$(builddir)/../src/silo \ -I$(srcdir)/../src/silo \ -I$(includedir) #quad_CPPFLAGS = $(AM_CPPFLAGS) -PDBTESTS = $(am__append_1) -@INSTALL_LITE_HEADERS_TRUE@testpdb_CPPFLAGS = -DPDB_LITE $(AM_CPPFLAGS) -@INSTALL_LITE_HEADERS_TRUE@pdbtst_CPPFLAGS = -DPDB_LITE $(AM_CPPFLAGS) +PDBTESTS = $(am__append_2) +@INSTALL_LITE_HEADERS_TRUE@testpdb_CPPFLAGS = -DPDB_LITE $(AM_CPPFLAGS) -I../src/pdb -I../src/score +@INSTALL_LITE_HEADERS_TRUE@pdbtst_CPPFLAGS = -DPDB_LITE $(AM_CPPFLAGS) -I../src/pdb -I../src/score +JSONTESTS = $(am__append_3) +@JSON_NEEDED_TRUE@json_CPPFLAGS = -I$(prefix)/json/include $(AM_CPPFLAGS) #TestReadMask_CPPFLAGS = $(AM_CPPFLAGS) +mk_nasf_pdb_CPPFLAGS = $(AM_CPPFLAGS) -I../src/pdb -I../src/score AM_FFLAGS = $(AM_CPPFLAGS) +AM_FCFLAGS = $(AM_CPPFLAGS) HDF5PROGS = compression grab mk_nasf_h5 -FCPROGS = arrayf77 curvef77 matf77 pointf77 quadf77 ucdf77 testallf77 \ +FCPROGS = arrayf77 arrayf90 curvef77 matf77 pointf77 quadf77 ucdf77 testallf77 \ csgmesh PROGS = array dir extface multi_test partial_io point quad simple ucd \ @@ -880,9 +1017,11 @@ group_test listtypes alltypes wave multi_file polyzl csg \ rocket mmadjacency largefile version namescheme efcentering \ mk_nasf_pdb ioperf arbpoly2d readstuff mat3d_3across \ - merge_block empty majorder $(PDBTESTS) $(am__append_2) \ - $(am__append_5) + merge_block empty majorder realloc_obj_and_opts $(PDBTESTS) \ + $(JSONTESTS) $(am__append_4) $(am__append_7) dir_SOURCES = dir.c testlib.c +listtypes_SOURCES = listtypes.c listtypes_main.c +bcastopen_SOURCES = bcastopen.c bcastopen_test.c quad_SOURCES = quad.c testlib.c rocket_SOURCES = rocket.cxx rocket_LDFLAGS = -ldl @@ -892,7 +1031,7 @@ # plugins for rocket and for ioperf HDF5CKLTLIBS = ioperf_hdf5.la check_LTLIBRARIES = rocket_silo.la ioperf_silo.la ioperf_pdb.la \ - ioperf_sec2.la ioperf_stdio.la $(am__append_4) + ioperf_sec2.la ioperf_stdio.la $(am__append_6) rocket_silo_la_SOURCES = rocket_silo.cxx # the '-rpath /nowhere' is some trick to force libtool to produce a shared lib rocket_silo_la_LDFLAGS = -module -avoid-version -rpath /nowhere @@ -900,6 +1039,7 @@ ioperf_LDFLAGS = -ldl ioperf_CXXFALGS = -rdynamic # the '-rpath /nowhere' is some trick to force libtool to produce a shared lib +ioperf_pdb_la_CPPFLAGS = $(AM_CPPFLAGS) -I../src/pdb -I../src/score ioperf_silo_la_LDFLAGS = -module -avoid-version -rpath /nowhere ioperf_hdf5_la_LDFLAGS = -module -avoid-version -rpath /nowhere ioperf_pdb_la_LDFLAGS = -module -avoid-version -rpath /nowhere @@ -957,6 +1097,7 @@ @CXX_LINK_NEEDED_TRUE@nodist_EXTRA_version_SOURCES = dummy.cxx @CXX_LINK_NEEDED_TRUE@nodist_EXTRA_namescheme_SOURCES = dummy.cxx @CXX_LINK_NEEDED_TRUE@nodist_EXTRA_arrayf77_SOURCES = dummy.cxx +@CXX_LINK_NEEDED_TRUE@nodist_EXTRA_arrayf90_SOURCES = dummy.cxx @CXX_LINK_NEEDED_TRUE@nodist_EXTRA_curvef77_SOURCES = dummy.cxx @CXX_LINK_NEEDED_TRUE@nodist_EXTRA_matf77_SOURCES = dummy.cxx @CXX_LINK_NEEDED_TRUE@nodist_EXTRA_pointf77_SOURCES = dummy.cxx @@ -973,6 +1114,8 @@ @CXX_LINK_NEEDED_TRUE@nodist_EXTRA_testfs_SOURCES = dummy.cxx @CXX_LINK_NEEDED_TRUE@nodist_EXTRA_empty_SOURCES = dummy.cxx @CXX_LINK_NEEDED_TRUE@nodist_EXTRA_majorder_SOURCES = dummy.cxx +@CXX_LINK_NEEDED_TRUE@nodist_EXTRA_realloc_obj_and_opts_SOURCES = dummy.cxx +@CXX_LINK_NEEDED_TRUE@nodist_EXTRA_json_SOURCES = dummy.cxx @HDF5_DRV_NEEDED_TRUE@compression_SOURCES = compression.c @HDF5_DRV_NEEDED_TRUE@compression_LDADD = $(LDADD) @HDF5_DRV_NEEDED_TRUE@grab_SOURCES = grab.c @@ -981,6 +1124,8 @@ @HDF5_DRV_NEEDED_TRUE@mk_nasf_h5_LDADD = $(LDADD) @FORTRAN_NEEDED_TRUE@arrayf77_SOURCES = arrayf77.f @FORTRAN_NEEDED_TRUE@arrayf77_LDADD = $(LDADD) $(FCLIBS) +@FORTRAN_NEEDED_TRUE@arrayf90_SOURCES = arrayf90.f90 +@FORTRAN_NEEDED_TRUE@arrayf90_LDADD = $(LDADD) $(FCLIBS) @FORTRAN_NEEDED_TRUE@curvef77_SOURCES = curvef77.f @FORTRAN_NEEDED_TRUE@curvef77_LDADD = $(LDADD) $(FCLIBS) @FORTRAN_NEEDED_TRUE@matf77_SOURCES = matf77.f @@ -998,7 +1143,7 @@ all: all-am .SUFFIXES: -.SUFFIXES: .c .cxx .f .lo .o .obj +.SUFFIXES: .c .cxx .f .f90 .lo .o .obj $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ @@ -1077,6 +1222,9 @@ arrayf77$(EXEEXT): $(arrayf77_OBJECTS) $(arrayf77_DEPENDENCIES) @rm -f arrayf77$(EXEEXT) $(CXXLINK) $(arrayf77_OBJECTS) $(arrayf77_LDADD) $(LIBS) +arrayf90$(EXEEXT): $(arrayf90_OBJECTS) $(arrayf90_DEPENDENCIES) + @rm -f arrayf90$(EXEEXT) + $(CXXLINK) $(arrayf90_OBJECTS) $(arrayf90_LDADD) $(LIBS) compression$(EXEEXT): $(compression_OBJECTS) $(compression_DEPENDENCIES) @rm -f compression$(EXEEXT) $(CXXLINK) $(compression_OBJECTS) $(compression_LDADD) $(LIBS) @@ -1113,6 +1261,9 @@ ioperf$(EXEEXT): $(ioperf_OBJECTS) $(ioperf_DEPENDENCIES) @rm -f ioperf$(EXEEXT) $(ioperf_LINK) $(ioperf_OBJECTS) $(ioperf_LDADD) $(LIBS) +json$(EXEEXT): $(json_OBJECTS) $(json_DEPENDENCIES) + @rm -f json$(EXEEXT) + $(CXXLINK) $(json_OBJECTS) $(json_LDADD) $(LIBS) largefile$(EXEEXT): $(largefile_OBJECTS) $(largefile_DEPENDENCIES) @rm -f largefile$(EXEEXT) $(CXXLINK) $(largefile_OBJECTS) $(largefile_LDADD) $(LIBS) @@ -1191,6 +1342,9 @@ readstuff$(EXEEXT): $(readstuff_OBJECTS) $(readstuff_DEPENDENCIES) @rm -f readstuff$(EXEEXT) $(CXXLINK) $(readstuff_OBJECTS) $(readstuff_LDADD) $(LIBS) +realloc_obj_and_opts$(EXEEXT): $(realloc_obj_and_opts_OBJECTS) $(realloc_obj_and_opts_DEPENDENCIES) + @rm -f realloc_obj_and_opts$(EXEEXT) + $(CXXLINK) $(realloc_obj_and_opts_OBJECTS) $(realloc_obj_and_opts_LDADD) $(LIBS) rocket$(EXEEXT): $(rocket_OBJECTS) $(rocket_DEPENDENCIES) @rm -f rocket$(EXEEXT) $(rocket_LINK) $(rocket_OBJECTS) $(rocket_LDADD) $(LIBS) @@ -1266,17 +1420,21 @@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/group_test.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ioperf.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ioperf_hdf5.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ioperf_pdb.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ioperf_pdb_la-ioperf_pdb.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ioperf_sec2.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ioperf_silo.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ioperf_stdio.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/json-dummy.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/json-json.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/largefile.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/listtypes.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/listtypes_main.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/majorder.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mat3d_3across.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/merge_block.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mk_nasf_h5.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mk_nasf_pdb.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mk_nasf_pdb-dummy.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mk_nasf_pdb-mk_nasf_pdb.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mmadjacency.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/multi_file.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/multi_test.Po@am__quote@ @@ -1294,6 +1452,7 @@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/polyzl.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/quad.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/readstuff.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/realloc_obj_and_opts.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/rocket-rocket.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/rocket_silo.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sami.Po@am__quote@ @@ -1334,6 +1493,41 @@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< +ioperf_pdb_la-ioperf_pdb.lo: ioperf_pdb.c +@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ioperf_pdb_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ioperf_pdb_la-ioperf_pdb.lo -MD -MP -MF $(DEPDIR)/ioperf_pdb_la-ioperf_pdb.Tpo -c -o ioperf_pdb_la-ioperf_pdb.lo `test -f 'ioperf_pdb.c' || echo '$(srcdir)/'`ioperf_pdb.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/ioperf_pdb_la-ioperf_pdb.Tpo $(DEPDIR)/ioperf_pdb_la-ioperf_pdb.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='ioperf_pdb.c' object='ioperf_pdb_la-ioperf_pdb.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(ioperf_pdb_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ioperf_pdb_la-ioperf_pdb.lo `test -f 'ioperf_pdb.c' || echo '$(srcdir)/'`ioperf_pdb.c + +json-json.o: json.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(json_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT json-json.o -MD -MP -MF $(DEPDIR)/json-json.Tpo -c -o json-json.o `test -f 'json.c' || echo '$(srcdir)/'`json.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/json-json.Tpo $(DEPDIR)/json-json.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='json.c' object='json-json.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(json_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o json-json.o `test -f 'json.c' || echo '$(srcdir)/'`json.c + +json-json.obj: json.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(json_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT json-json.obj -MD -MP -MF $(DEPDIR)/json-json.Tpo -c -o json-json.obj `if test -f 'json.c'; then $(CYGPATH_W) 'json.c'; else $(CYGPATH_W) '$(srcdir)/json.c'; fi` +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/json-json.Tpo $(DEPDIR)/json-json.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='json.c' object='json-json.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(json_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o json-json.obj `if test -f 'json.c'; then $(CYGPATH_W) 'json.c'; else $(CYGPATH_W) '$(srcdir)/json.c'; fi` + +mk_nasf_pdb-mk_nasf_pdb.o: mk_nasf_pdb.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mk_nasf_pdb_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT mk_nasf_pdb-mk_nasf_pdb.o -MD -MP -MF $(DEPDIR)/mk_nasf_pdb-mk_nasf_pdb.Tpo -c -o mk_nasf_pdb-mk_nasf_pdb.o `test -f 'mk_nasf_pdb.c' || echo '$(srcdir)/'`mk_nasf_pdb.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/mk_nasf_pdb-mk_nasf_pdb.Tpo $(DEPDIR)/mk_nasf_pdb-mk_nasf_pdb.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mk_nasf_pdb.c' object='mk_nasf_pdb-mk_nasf_pdb.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mk_nasf_pdb_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o mk_nasf_pdb-mk_nasf_pdb.o `test -f 'mk_nasf_pdb.c' || echo '$(srcdir)/'`mk_nasf_pdb.c + +mk_nasf_pdb-mk_nasf_pdb.obj: mk_nasf_pdb.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mk_nasf_pdb_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT mk_nasf_pdb-mk_nasf_pdb.obj -MD -MP -MF $(DEPDIR)/mk_nasf_pdb-mk_nasf_pdb.Tpo -c -o mk_nasf_pdb-mk_nasf_pdb.obj `if test -f 'mk_nasf_pdb.c'; then $(CYGPATH_W) 'mk_nasf_pdb.c'; else $(CYGPATH_W) '$(srcdir)/mk_nasf_pdb.c'; fi` +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/mk_nasf_pdb-mk_nasf_pdb.Tpo $(DEPDIR)/mk_nasf_pdb-mk_nasf_pdb.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mk_nasf_pdb.c' object='mk_nasf_pdb-mk_nasf_pdb.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mk_nasf_pdb_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o mk_nasf_pdb-mk_nasf_pdb.obj `if test -f 'mk_nasf_pdb.c'; then $(CYGPATH_W) 'mk_nasf_pdb.c'; else $(CYGPATH_W) '$(srcdir)/mk_nasf_pdb.c'; fi` + pdbtst-pdbtst.o: pdbtst.c @am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pdbtst_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT pdbtst-pdbtst.o -MD -MP -MF $(DEPDIR)/pdbtst-pdbtst.Tpo -c -o pdbtst-pdbtst.o `test -f 'pdbtst.c' || echo '$(srcdir)/'`pdbtst.c @am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/pdbtst-pdbtst.Tpo $(DEPDIR)/pdbtst-pdbtst.Po @@ -1383,6 +1577,34 @@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(LTCXXCOMPILE) -c -o $@ $< +json-dummy.o: dummy.cxx +@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(json_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT json-dummy.o -MD -MP -MF $(DEPDIR)/json-dummy.Tpo -c -o json-dummy.o `test -f 'dummy.cxx' || echo '$(srcdir)/'`dummy.cxx +@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/json-dummy.Tpo $(DEPDIR)/json-dummy.Po +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='dummy.cxx' object='json-dummy.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(json_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o json-dummy.o `test -f 'dummy.cxx' || echo '$(srcdir)/'`dummy.cxx + +json-dummy.obj: dummy.cxx +@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(json_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT json-dummy.obj -MD -MP -MF $(DEPDIR)/json-dummy.Tpo -c -o json-dummy.obj `if test -f 'dummy.cxx'; then $(CYGPATH_W) 'dummy.cxx'; else $(CYGPATH_W) '$(srcdir)/dummy.cxx'; fi` +@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/json-dummy.Tpo $(DEPDIR)/json-dummy.Po +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='dummy.cxx' object='json-dummy.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(json_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o json-dummy.obj `if test -f 'dummy.cxx'; then $(CYGPATH_W) 'dummy.cxx'; else $(CYGPATH_W) '$(srcdir)/dummy.cxx'; fi` + +mk_nasf_pdb-dummy.o: dummy.cxx +@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mk_nasf_pdb_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT mk_nasf_pdb-dummy.o -MD -MP -MF $(DEPDIR)/mk_nasf_pdb-dummy.Tpo -c -o mk_nasf_pdb-dummy.o `test -f 'dummy.cxx' || echo '$(srcdir)/'`dummy.cxx +@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/mk_nasf_pdb-dummy.Tpo $(DEPDIR)/mk_nasf_pdb-dummy.Po +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='dummy.cxx' object='mk_nasf_pdb-dummy.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mk_nasf_pdb_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o mk_nasf_pdb-dummy.o `test -f 'dummy.cxx' || echo '$(srcdir)/'`dummy.cxx + +mk_nasf_pdb-dummy.obj: dummy.cxx +@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mk_nasf_pdb_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT mk_nasf_pdb-dummy.obj -MD -MP -MF $(DEPDIR)/mk_nasf_pdb-dummy.Tpo -c -o mk_nasf_pdb-dummy.obj `if test -f 'dummy.cxx'; then $(CYGPATH_W) 'dummy.cxx'; else $(CYGPATH_W) '$(srcdir)/dummy.cxx'; fi` +@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/mk_nasf_pdb-dummy.Tpo $(DEPDIR)/mk_nasf_pdb-dummy.Po +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='dummy.cxx' object='mk_nasf_pdb-dummy.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mk_nasf_pdb_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o mk_nasf_pdb-dummy.obj `if test -f 'dummy.cxx'; then $(CYGPATH_W) 'dummy.cxx'; else $(CYGPATH_W) '$(srcdir)/dummy.cxx'; fi` + pdbtst-dummy.o: dummy.cxx @am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(pdbtst_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT pdbtst-dummy.o -MD -MP -MF $(DEPDIR)/pdbtst-dummy.Tpo -c -o pdbtst-dummy.o `test -f 'dummy.cxx' || echo '$(srcdir)/'`dummy.cxx @am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/pdbtst-dummy.Tpo $(DEPDIR)/pdbtst-dummy.Po @@ -1434,6 +1656,15 @@ .f.lo: $(LTF77COMPILE) -c -o $@ $< +.f90.o: + $(FCCOMPILE) -c -o $@ $< + +.f90.obj: + $(FCCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` + +.f90.lo: + $(LTFCCOMPILE) -c -o $@ $< + mostlyclean-libtool: -rm -f *.lo diff -Nru silo-llnl-4.10.2/tests/mat3d_3across.c silo-llnl-4.10.2.real/tests/mat3d_3across.c --- silo-llnl-4.10.2/tests/mat3d_3across.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/mat3d_3across.c 2018-02-15 17:25:43.000000000 +0000 @@ -127,9 +127,10 @@ int main(int argc, char **argv) { DBfile *db; int i, driver = DB_PDB; - char *filename = "csg.pdb"; + char *filename = "mat3d_3across.pdb"; int show_all_errors = FALSE; - char *coordnames[3]; + int custom_mat = FALSE; + char const * const coordnames[3] = {"x", "y", "z"}; float *coord[3]; for (i=1; imixlen; - mix_vf2 = mat[i]->mix_vf; + mix_vf2 = (float*)mat[i]->mix_vf; mix_next2 = mat[i]->mix_next; mix_mat2 = mat[i]->mix_mat; for (j = 0; j < mixlen2; j++) @@ -450,7 +452,7 @@ int *map=NULL; int nnode; - local_coord = um[i]->coords[0]; + local_coord = (float*)um[i]->coords[0]; map = local_global_map[i]; nnode = um[i]->nnodes; for (j = 0; j < nnode; j++) @@ -466,7 +468,7 @@ int *map=NULL; int nnode; - local_coord = um[i]->coords[1]; + local_coord = (float*)um[i]->coords[1]; map = local_global_map[i]; nnode = um[i]->nnodes; for (j = 0; j < nnode; j++) @@ -482,7 +484,7 @@ int *map=NULL; int nnode; - local_coord = um[i]->coords[2]; + local_coord = (float*)um[i]->coords[2]; map = local_global_map[i]; nnode = um[i]->nnodes; for (j = 0; j < nnode; j++) @@ -621,7 +623,7 @@ float *var2=NULL; nels2 = uv[j]->nels; - var2 = uv[j]->vals[0]; + var2 = (float*)uv[j]->vals[0]; for (k = 0; k < nels2; k++) { var[l++] = var2[k]; @@ -642,7 +644,7 @@ int *map=NULL; nels2 = uv[j]->nels; - var2 = uv[j]->vals[0]; + var2 = (float*)uv[j]->vals[0]; map = local_global_map[j]; for (k = 0; k < nels2; k++) { diff -Nru silo-llnl-4.10.2/tests/mmadjacency.c silo-llnl-4.10.2.real/tests/mmadjacency.c --- silo-llnl-4.10.2/tests/mmadjacency.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/mmadjacency.c 2018-02-15 17:25:43.000000000 +0000 @@ -136,15 +136,15 @@ int nblocks = sizeof(meshtypes) / sizeof(meshtypes[0]); DBPutMultimeshadj(dbfile, "mmadjacency", nblocks, meshtypes, - nneighbors, neighbors, NULL, lnodelists, nodelists, + nneighbors, neighbors, NULL, lnodelists, (int const * const *) nodelists, NULL, NULL, NULL); /* now try writing the same object with repeated calls */ DBPutMultimeshadj(dbfile, "mmadjacency2", nblocks, meshtypes, - nneighbors, neighbors, NULL, lnodelists, nodelists2, + nneighbors, neighbors, NULL, lnodelists, (int const * const *) nodelists2, NULL, NULL, NULL); DBPutMultimeshadj(dbfile, "mmadjacency2", nblocks, meshtypes, - nneighbors, neighbors, NULL, lnodelists, nodelists3, + nneighbors, neighbors, NULL, lnodelists, (int const * const *) nodelists3, NULL, NULL, NULL); } diff -Nru silo-llnl-4.10.2/tests/multi_file.c silo-llnl-4.10.2.real/tests/multi_file.c --- silo-llnl-4.10.2/tests/multi_file.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/multi_file.c 2018-02-15 17:25:43.000000000 +0000 @@ -89,7 +89,7 @@ void fill_mat(float *, float *, float *, int *, int, int, int, int *, int *, int *, float *, int *, int, double, double, double, double); -int build_multi(char *, int, char *, int, int, int); +int build_multi(char *, int, char *, int, int, int, int); void build_block_ucd3d(char *, int, char *, int, int, int); @@ -112,7 +112,12 @@ char *basename="ucd3d"; char *file_ext="pdb"; int driver=DB_PDB; - int show_all_errors = FALSE; + int show_all_errors = 0; +#if !defined(_WIN32) + int windows_style_slash = 0; +#else + int windows_style_slash = 1; +#endif /* * Parse the command-line. @@ -137,6 +142,8 @@ empties = 1; else if (!strcmp(argv[i], "show-all-errors")) show_all_errors = 1; + else if (!strcmp(argv[i], "invert-slash-style")) + windows_style_slash = !windows_style_slash; else if (argv[i][0] != '\0') fprintf(stderr, "%s: ignored argument `%s'\n", argv[0], argv[i]); } @@ -147,7 +154,7 @@ /* * Create the multi-block ucd 3d mesh. */ - build_multi(basename, driver, file_ext, 6, 8, 6); + build_multi(basename, driver, file_ext, 6, 8, 6, windows_style_slash); CleanupDriverStuff(); return 0; @@ -314,7 +321,8 @@ ***********************************************************************/ int build_multi(char *basename, int driver, char *file_ext, - int nblocks_x, int nblocks_y, int nblocks_z) + int nblocks_x, int nblocks_y, int nblocks_z, + int windows_style_slash) { int i; int cycle; @@ -360,11 +368,12 @@ filenum = i / (nblocks / NFILES); if (multidir) -#ifdef WIN32 - sprintf(prefix, "multi_file.dir\\%03d\\%s%d.%s:/block%d/", filenum, basename, filenum, file_ext, i); -#else - sprintf(prefix, "multi_file.dir/%03d/%s%d.%s:/block%d/", filenum, basename, filenum, file_ext, i); -#endif + { + if (windows_style_slash) + sprintf(prefix, "multi_file.dir\\%03d\\%s%d.%s:/block%d/", filenum, basename, filenum, file_ext, i); + else + sprintf(prefix, "multi_file.dir/%03d/%s%d.%s:/block%d/", filenum, basename, filenum, file_ext, i); + } else sprintf(prefix, "%s%d.%s:/block%d/", basename, filenum, file_ext, i); @@ -395,11 +404,11 @@ { if (multidir) { -#ifdef WIN32 - sprintf(file_ns, "|multi_file.dir\\%%03d\\%%s%%d.%%s|n/36|'%s'|n/36|'%s'", basename, file_ext); -#else - sprintf(file_ns, "|multi_file.dir/%%03d/%%s%%d.%%s|n/36|'%s'|n/36|'%s'", basename, file_ext); -#endif + if (windows_style_slash) + sprintf(file_ns, "|multi_file.dir\\%%03d\\%%s%%d.%%s|n/36|'%s'|n/36|'%s'", basename, file_ext); + else + sprintf(file_ns, "|multi_file.dir/%%03d/%%s%%d.%%s|n/36|'%s'|n/36|'%s'", basename, file_ext); + } else sprintf(file_ns, "|%%s%%d.%%s|'%s'|n/36|'%s'", basename, file_ext); @@ -454,7 +463,8 @@ */ block_type = DB_UCDMESH; if (DBPutMultimesh(dbfile, "mesh1", nblocks, - use_ns?0:meshnames, use_ns?0:meshtypes, optlist) == -1) + (DBCAS_t) (use_ns?0:meshnames), + use_ns?0:meshtypes, optlist) == -1) { DBFreeOptlist(optlist); fprintf(stderr, "Error creating multi mesh\n"); @@ -462,7 +472,7 @@ } block_type = DB_UCDVAR; sprintf(block_ns, "|/block%%d/d|n"); - if (DBPutMultivar(dbfile, "d", nblocks, use_ns?0:var1names, use_ns?0:vartypes, optlist) + if (DBPutMultivar(dbfile, "d", nblocks, (DBCAS_t) (use_ns?0:var1names), use_ns?0:vartypes, optlist) == -1) { DBFreeOptlist(optlist); @@ -470,7 +480,7 @@ return -1; } sprintf(block_ns, "|/block%%d/p|n"); - if (DBPutMultivar(dbfile, "p", nblocks, use_ns?0:var2names, use_ns?0:vartypes, optlist) + if (DBPutMultivar(dbfile, "p", nblocks, (DBCAS_t) (use_ns?0:var2names), use_ns?0:vartypes, optlist) == -1) { DBFreeOptlist(optlist); @@ -478,7 +488,7 @@ return -1; } sprintf(block_ns, "|/block%%d/u|n"); - if (DBPutMultivar(dbfile, "u", nblocks, use_ns?0:var3names, use_ns?0:vartypes, optlist) + if (DBPutMultivar(dbfile, "u", nblocks, (DBCAS_t) (use_ns?0:var3names), use_ns?0:vartypes, optlist) == -1) { DBFreeOptlist(optlist); @@ -486,7 +496,7 @@ return -1; } sprintf(block_ns, "|/block%%d/v|n"); - if (DBPutMultivar(dbfile, "v", nblocks, use_ns?0:var4names, use_ns?0:vartypes, optlist) + if (DBPutMultivar(dbfile, "v", nblocks, (DBCAS_t) (use_ns?0:var4names), use_ns?0:vartypes, optlist) == -1) { DBFreeOptlist(optlist); @@ -494,7 +504,7 @@ return -1; } sprintf(block_ns, "|/block%%d/w|n"); - if (DBPutMultivar(dbfile, "w", nblocks, use_ns?0:var5names, use_ns?0:vartypes, optlist) + if (DBPutMultivar(dbfile, "w", nblocks, (DBCAS_t) (use_ns?0:var5names), use_ns?0:vartypes, optlist) == -1) { DBFreeOptlist(optlist); @@ -502,7 +512,7 @@ return -1; } sprintf(block_ns, "|/block%%d/mat1|n"); - if (DBPutMultimat(dbfile, "mat1", nblocks, use_ns?0:matnames, optlist) == -1) + if (DBPutMultimat(dbfile, "mat1", nblocks, (DBCAS_t) (use_ns?0:matnames), optlist) == -1) { DBFreeOptlist(optlist); fprintf(stderr, "Error creating multi material\n"); @@ -534,7 +544,8 @@ int cycle; float time; double dtime; - char *coordnames[3]; + char const * const coordnames[3] = {"xcoords", "ycoords", "zcoords"}; + float *coords[3]; float *x=NULL, *y=NULL, *z=NULL; @@ -685,9 +696,6 @@ dtime = 4.8; meshname = "mesh1"; - coordnames[0] = "xcoords"; - coordnames[1] = "ycoords"; - coordnames[2] = "zcoords"; var1name = "d"; var2name = "p"; @@ -736,7 +744,7 @@ unlink("multi_file.dir/007/ucd3d7.h5"); rmdir("multi_file.dir/007"); rmdir("multi_file.dir"); -#ifndef WIN32 +#if !defined(_WIN32) st = mkdir("multi_file.dir",S_IRWXU|S_IRWXG|S_IRWXU); #else st = _mkdir("multi_file.dir"); @@ -978,7 +986,7 @@ int st; char dname[60]; sprintf(dname, "multi_file.dir/%03d", filenum); -#ifndef WIN32 +#if !defined(_WIN32) st = mkdir(dname, S_IRWXU|S_IRWXG|S_IRWXU); #else st = _mkdir(dname); @@ -1081,27 +1089,27 @@ vars[0] = d2; varnames[0] = var1name; - DBPutUcdvar(dbfile, var1name, meshname, 1, varnames, vars, + DBPutUcdvar(dbfile, var1name, meshname, 1, (DBCAS_t) varnames, vars, nnodes, NULL, 0, DB_FLOAT, DB_NODECENT, optlist); vars[0] = p2; varnames[0] = var2name; - DBPutUcdvar(dbfile, var2name, meshname, 1, varnames, vars, + DBPutUcdvar(dbfile, var2name, meshname, 1, (DBCAS_t) varnames, vars, nnodes, NULL, 0, DB_FLOAT, DB_NODECENT, optlist); vars[0] = u2; varnames[0] = var3name; - DBPutUcdvar(dbfile, var3name, meshname, 1, varnames, vars, + DBPutUcdvar(dbfile, var3name, meshname, 1, (DBCAS_t) varnames, vars, nnodes, NULL, 0, DB_FLOAT, DB_NODECENT, optlist); vars[0] = v2; varnames[0] = var4name; - DBPutUcdvar(dbfile, var4name, meshname, 1, varnames, vars, + DBPutUcdvar(dbfile, var4name, meshname, 1, (DBCAS_t) varnames, vars, nnodes, NULL, 0, DB_FLOAT, DB_NODECENT, optlist); vars[0] = w2; varnames[0] = var5name; - DBPutUcdvar(dbfile, var5name, meshname, 1, varnames, vars, + DBPutUcdvar(dbfile, var5name, meshname, 1, (DBCAS_t) varnames, vars, nnodes, NULL, 0, DB_FLOAT, DB_NODECENT, optlist); DBPutMaterial(dbfile, matname, meshname, nmats, matnos, diff -Nru silo-llnl-4.10.2/tests/multispec.c silo-llnl-4.10.2.real/tests/multispec.c --- silo-llnl-4.10.2/tests/multispec.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/multispec.c 2018-02-15 17:25:43.000000000 +0000 @@ -122,7 +122,7 @@ int meshtype=DB_QUADMESH; int vartype=DB_QUADVAR; int coord_type=DB_NONCOLLINEAR; - char *coordnames[3]; + char const * const coordnames[3] = {"xcoords", "ycoords", "zcoords"}; int ndims; int dims[3], zdims[3]; float *coords[3]; @@ -228,9 +228,6 @@ * Create the mesh. */ meshname = "mesh1"; - coordnames[0] = "xcoords"; - coordnames[1] = "ycoords"; - coordnames[2] = "zcoords"; coords[0] = x; coords[1] = y; ndims = 2; @@ -465,7 +462,7 @@ /* create the multi-block mesh */ - if (DBPutMultimesh(dbfile, "mesh1", nblocks, meshnames, + if (DBPutMultimesh(dbfile, "mesh1", nblocks, (DBCAS_t) meshnames, meshtypes, optlist) == -1) { DBFreeOptlist(optlist); @@ -474,26 +471,26 @@ } /* if */ /* create the multi-block variables */ - if (DBPutMultivar(dbfile, "d", nblocks, varnames[0], vartypes, optlist) == -1) + if (DBPutMultivar(dbfile, "d", nblocks, (DBCAS_t) varnames[0], vartypes, optlist) == -1) { DBFreeOptlist(optlist); fprintf(stderr, "Error creating multi var d\n"); return (-1); } /* if */ - if (DBPutMultivar(dbfile, "p", nblocks, varnames[1], vartypes, optlist) == -1) + if (DBPutMultivar(dbfile, "p", nblocks, (DBCAS_t) varnames[1], vartypes, optlist) == -1) { DBFreeOptlist(optlist); fprintf(stderr, "Error creating multi var p\n"); return (-1); } /* if */ - if (DBPutMultivar(dbfile, "u", nblocks, varnames[2], vartypes, optlist) == -1) + if (DBPutMultivar(dbfile, "u", nblocks, (DBCAS_t) varnames[2], vartypes, optlist) == -1) { DBFreeOptlist(optlist); fprintf(stderr, "Error creating multi var u\n"); return (-1); } /* if */ - if (DBPutMultivar(dbfile, "v", nblocks, varnames[3], vartypes, optlist) == -1) + if (DBPutMultivar(dbfile, "v", nblocks, (DBCAS_t) varnames[3], vartypes, optlist) == -1) { DBFreeOptlist(optlist); fprintf(stderr, "Error creating multi var v\n"); @@ -501,7 +498,7 @@ } /* if */ /* create the multi-block material */ - if (DBPutMultimat(dbfile, "mat1", nblocks, matnames, optlist) == -1) + if (DBPutMultimat(dbfile, "mat1", nblocks, (DBCAS_t) matnames, optlist) == -1) { DBFreeOptlist(optlist); fprintf(stderr, "Error creating multi material\n"); @@ -509,7 +506,7 @@ } /* if */ /* create the multi-block species */ - if (DBPutMultimatspecies(dbfile, "species1", nblocks, specnames, optlist) == -1) + if (DBPutMultimatspecies(dbfile, "species1", nblocks, (DBCAS_t) specnames, optlist) == -1) { DBFreeOptlist(optlist); fprintf(stderr, "Error creating multi species\n"); diff -Nru silo-llnl-4.10.2/tests/multi_test.c silo-llnl-4.10.2.real/tests/multi_test.c --- silo-llnl-4.10.2/tests/multi_test.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/multi_test.c 2018-02-15 17:25:43.000000000 +0000 @@ -96,7 +96,9 @@ if (MLISTS) \ DBAddOption(optlist, DBOPT_MATLISTS, MLISTS); \ if (HASEXT) \ - DBAddOption(optlist, DBOPT_HAS_EXTERNAL_ZONES, HASEXT) + DBAddOption(optlist, DBOPT_HAS_EXTERNAL_ZONES, HASEXT);\ + if (missing_value != DB_MISSING_VALUE_NOT_SET)\ + DBAddOption(optlist, DBOPT_MISSING_VALUE, &missing_value) #define ASSERT(PRED) if(!(PRED)){fprintf(stderr,"Assertion \"%s\" at line %d failed\n",#PRED,__LINE__);abort();} @@ -300,7 +302,8 @@ } \ else \ { \ - ASSERT(DBPutUcdmesh(F,MN,NDS,CNMS,CS,NNS,NZS,ZLNM,FLNM,DTYPE,OL)==0); \ + ASSERT(DBPutUcdmesh(F,MN,NDS,(DBCAS_t) CNMS, \ + CS,NNS,NZS,ZLNM,FLNM,DTYPE,OL)==0); \ } \ } @@ -333,7 +336,8 @@ } \ else \ { \ - ASSERT(DBPutQuadmesh(F,MN,CNMS,CS,DS,NDS,DTYPE,CTYPE,OL)==0); \ + ASSERT(DBPutQuadmesh(F,MN,(DBCAS_t) CNMS, \ + CS,DS,NDS,DTYPE,CTYPE,OL)==0); \ } \ } @@ -396,11 +400,12 @@ } \ else \ { \ - ASSERT(DBPutUcdvar(F,VN,MN,NV,VNMS,VP,NVALS,MXVALS,MXLEN,DTYPE,CENT,OL)==0); \ + ASSERT(DBPutUcdvar(F,VN,MN,NV,(DBCAS_t)VNMS, \ + VP,NVALS,MXVALS,MXLEN,DTYPE,CENT,OL)==0); \ } \ } -#define TESTQVAR(F,VN,MN,VP,DS,NDS,VTYPE,CENT,OL) \ +#define TESTQVAR(F,VN,MN,VP,DS,NDS,VTYPE,CENT,OL) \ { \ int sz = DS[0]*(NDS>=2?DS[1]:1)*(NDS==3?DS[2]:1); \ if (handle_read) \ @@ -503,6 +508,7 @@ int check_early_close = FALSE; int testread = FALSE; int testbadread = FALSE; +double missing_value = DB_MISSING_VALUE_NOT_SET; int build_multi(DBfile *, int, int, int, int, int, int, int, int); @@ -812,6 +818,8 @@ testread = 1; } else if (!strcmp(argv[i], "testbadread")) { testbadread = 1; + } else if (!strcmp(argv[i], "missing-value")) { + missing_value = strtod(argv[++i],0); } else { fprintf(stderr, "%s: ignored argument `%s'\n", argv[0], argv[i]); } @@ -836,7 +844,7 @@ if (testread || testbadread) { fprintf(stdout, "reading %s\n", filename); - if (dbfile = DBOpen(filename, DB_UNKNOWN, DB_READ)) + if ((dbfile = DBOpen(filename, DB_UNKNOWN, DB_READ))) { if (build_multi(dbfile, DB_QUADMESH, DB_QUADVAR, 2, 3, 4, 1, DB_COLLINEAR, 1) == -1) fprintf(stderr, "Error reading contents of '%s'.\n", filename); @@ -867,7 +875,7 @@ if (testread || testbadread) { fprintf(stdout, "reading %s\n", filename); - if (dbfile = DBOpen(filename, DB_UNKNOWN, DB_READ)) + if ((dbfile = DBOpen(filename, DB_UNKNOWN, DB_READ))) { if (build_multi(dbfile, DB_QUADMESH, DB_QUADVAR, 2, 5, 1, 1, DB_NONCOLLINEAR, 1) == -1) fprintf(stderr, "Error reading contents of '%s'.\n", filename); @@ -898,7 +906,7 @@ if (testread || testbadread) { fprintf(stdout, "reading %s\n", filename); - if (dbfile = DBOpen(filename, DB_UNKNOWN, DB_READ)) + if ((dbfile = DBOpen(filename, DB_UNKNOWN, DB_READ))) { if (build_multi(dbfile, DB_POINTMESH, DB_POINTVAR, 2, 5, 1, 1, 0, 1) == -1) fprintf(stderr, "Error reading contents of '%s'.\n", filename); @@ -929,7 +937,7 @@ if (testread || testbadread) { fprintf(stdout, "reading %s\n", filename); - if (dbfile = DBOpen(filename, DB_UNKNOWN, DB_READ)) + if ((dbfile = DBOpen(filename, DB_UNKNOWN, DB_READ))) { if (build_multi(dbfile, DB_QUADMESH, DB_QUADVAR, 3, 3, 4, 3, DB_COLLINEAR, 1) == -1) fprintf(stderr, "Error reading contents of '%s'.\n", filename); @@ -960,7 +968,7 @@ if (testread || testbadread) { fprintf(stdout, "reading %s\n", filename); - if (dbfile = DBOpen(filename, DB_UNKNOWN, DB_READ)) + if ((dbfile = DBOpen(filename, DB_UNKNOWN, DB_READ))) { if (build_multi(dbfile, DB_QUADMESH, DB_QUADVAR, 3, 3, 4, 3, DB_NONCOLLINEAR, 1) == -1) fprintf(stderr, "Error reading contents of '%s'.\n", filename); @@ -992,7 +1000,7 @@ if (testread || testbadread) { fprintf(stdout, "reading %s\n", filename); - if (dbfile = DBOpen(filename, DB_UNKNOWN, DB_READ)) + if ((dbfile = DBOpen(filename, DB_UNKNOWN, DB_READ))) { if (build_multi(dbfile, DB_UCDMESH, DB_UCDVAR, 3, 3, 4, 3, 0, 1) == -1) fprintf(stderr, "Error reading contents of '%s'.\n", filename); @@ -1214,7 +1222,7 @@ /* create the multi-block variables */ extentssize = 2; SET_OPTIONS(extentssize,varextents[3],NULL,NULL,NULL,NULL,NULL); - if (DBPutMultivar(dbfile, "d", nblocks, var1names, vartypes, optlist) + if (DBPutMultivar(dbfile, "d", nblocks, (DBCAS_t) var1names, vartypes, optlist) == -1) { DBFreeOptlist(optlist); @@ -1222,7 +1230,7 @@ return (-1); } /* if */ SET_OPTIONS(extentssize,varextents[4],NULL,NULL,NULL,NULL,NULL); - if (DBPutMultivar(dbfile, "p", nblocks, var2names, vartypes, optlist) + if (DBPutMultivar(dbfile, "p", nblocks, (DBCAS_t) var2names, vartypes, optlist) == -1) { DBFreeOptlist(optlist); @@ -1230,7 +1238,7 @@ return (-1); } /* if */ SET_OPTIONS(extentssize,varextents[5],NULL,NULL,NULL,NULL,NULL); - if (DBPutMultivar(dbfile, "u", nblocks, var3names, vartypes, optlist) + if (DBPutMultivar(dbfile, "u", nblocks, (DBCAS_t) var3names, vartypes, optlist) == -1) { DBFreeOptlist(optlist); @@ -1238,7 +1246,7 @@ return (-1); } /* if */ SET_OPTIONS(extentssize,varextents[6],NULL,NULL,NULL,NULL,NULL); - if (DBPutMultivar(dbfile, "v", nblocks, var4names, vartypes, optlist) + if (DBPutMultivar(dbfile, "v", nblocks, (DBCAS_t) var4names, vartypes, optlist) == -1) { DBFreeOptlist(optlist); @@ -1248,7 +1256,7 @@ if (dim == 3) { SET_OPTIONS(extentssize,varextents[7],NULL,NULL,NULL,NULL,NULL); - if (DBPutMultivar(dbfile, "w", nblocks, var5names, vartypes, optlist) + if (DBPutMultivar(dbfile, "w", nblocks, (DBCAS_t) var5names, vartypes, optlist) == -1) { DBFreeOptlist(optlist); @@ -1269,7 +1277,7 @@ SET_OPTIONS(extentssize,NULL,NULL,mixlens,matcounts,tmpList,NULL); if (meshtype != DB_POINTMESH) { - if (DBPutMultimat(dbfile, "mat1", nblocks, matnames, optlist) == -1) + if (DBPutMultimat(dbfile, "mat1", nblocks, (DBCAS_t) matnames, optlist) == -1) { DBFreeOptlist(optlist); fprintf(stderr, "Error creating multi material\n"); @@ -1284,7 +1292,7 @@ char *matrnames[3] = {"outer","middle","inner"}; DBAddOption(optlist, DBOPT_MATCOLORS, colors); DBAddOption(optlist, DBOPT_MATNAMES, matrnames); - if (DBPutMultimat(dbfile, "mat2", nblocks, matnames, optlist) == -1) + if (DBPutMultimat(dbfile, "mat2", nblocks, (DBCAS_t) matnames, optlist) == -1) { DBFreeOptlist(optlist); fprintf(stderr, "Error creating multi material\n"); @@ -1326,7 +1334,8 @@ sprintf(defns[2], "nmats(mat1)"); pdefns[2] = defns[2]; - DBPutDefvars(dbfile, "defvars", ndefs, pvnames, types, pdefns, 0); + DBPutDefvars(dbfile, "defvars", ndefs, (DBCAS_t) pvnames, types, + (DBCAS_t) pdefns, 0); } return (0); @@ -1487,9 +1496,9 @@ dims2[1] = NY; mixlen = 0; matnames = (char**)malloc(sizeof(char*)*nmats); - matnames[0] = safe_strdup("Shredded documents"); - matnames[1] = safe_strdup("Marble"); - matnames[2] = safe_strdup("Gold bullion"); + matnames[0] = _db_safe_strdup("Shredded documents"); + matnames[1] = _db_safe_strdup("Marble"); + matnames[2] = _db_safe_strdup("Gold bullion"); /* * Put in material 1. @@ -2853,8 +2862,8 @@ (x[i * (NX + 1) * (NY + 1) + j * (NX + 1) + k] - xcenter) + (y[i * (NX + 1) * (NY + 1) + j * (NX + 1) + k] - ycenter) * (y[i * (NX + 1) * (NY + 1) + j * (NX + 1) + k] - ycenter)); - d[i * (NX + 1) * (NY + 1) + j * (NX + 1) + k] = dist; - p[i * (NX + 1) * (NY + 1) + j * (NX + 1) + k] = 1. / (dist + .0001); + d[i * NX * NY + j * NX + k] = dist; + p[i * NX * NY + j * NX + k] = 1. / (dist + .0001); } } } diff -Nru silo-llnl-4.10.2/tests/namescheme.c silo-llnl-4.10.2.real/tests/namescheme.c --- silo-llnl-4.10.2/tests/namescheme.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/namescheme.c 2018-02-15 17:25:43.000000000 +0000 @@ -65,11 +65,27 @@ #include #include +#define TEST_GET_NAME(NS,I,EXP) \ +if (!NS) \ +{ \ + fprintf(stderr, "Got NULL namescheme from DBMakeNamescheme at line %d\n", __LINE__); \ + return 1; \ +} \ +else \ +{ \ + if (strcmp(DBGetName(NS, I), EXP) != 0) \ + { \ + fprintf(stderr, "Namescheme at line %d failed failed for index %d. Expected \"%s\", got \"%s\"\n", \ + __LINE__, I, EXP, DBGetName(NS, I)); \ + return 1; \ + } \ +} + int main(int argc, char **argv) { int i; int P[100], U[4]; - char *N[3]; + char const * const N[3] = {"red","green","blue"}; char blockName[1024]; int driver = DB_PDB; int show_all_errors = 0; @@ -92,8 +108,7 @@ /* Test a somewhat complex expression */ ns = DBMakeNamescheme("@foo_%+03d@3-((n % 3)*(4+1)+1/2)+1"); - if (strcmp(DBGetName(ns, 25), "foo_+01") != 0) - return 1; + TEST_GET_NAME(ns, 25, "foo_+01"); DBFreeNamescheme(ns); /* test returned string is different for successive calls (Dan Laney bug) */ @@ -105,24 +120,22 @@ /* Test ?:: operator */ ns = DBMakeNamescheme("@foo_%d@(n-5)?14:77:"); - if (strcmp(DBGetName(ns, 6), "foo_14") != 0) - return 1; + TEST_GET_NAME(ns, 5, "foo_77"); + TEST_GET_NAME(ns, 6, "foo_14"); DBFreeNamescheme(ns); /* Test multiple conversion specifiers */ ns = DBMakeNamescheme("|foo_%03dx%03d|n/5|n%5"); - if (strcmp(DBGetName(ns, 17), "foo_003x002") != 0) - return 1; - if (strcmp(DBGetName(ns, 20), "foo_004x000") != 0) - return 1; - if (strcmp(DBGetName(ns, 3), "foo_000x003") != 0) - return 1; + TEST_GET_NAME(ns, 17, "foo_003x002"); + TEST_GET_NAME(ns, 20, "foo_004x000"); + TEST_GET_NAME(ns, 3, "foo_000x003"); DBFreeNamescheme(ns); /* Test embedded string value results */ ns = DBMakeNamescheme("@foo_%s@(n-5)?'master':'slave':"); - if (strcmp(DBGetName(ns, 6), "foo_master") != 0) - return 1; + TEST_GET_NAME(ns, 4, "foo_master"); + TEST_GET_NAME(ns, 5, "foo_slave"); + TEST_GET_NAME(ns, 6, "foo_master"); DBFreeNamescheme(ns); /* Test array-based references to int valued arrays and whose @@ -132,27 +145,17 @@ for (i = 0; i < 4; i++) U[i] = i*i; ns = DBMakeNamescheme("@foo_%03dx%03d@#Place[n]@#Upper[n%4]", P, U); - if (strcmp(DBGetName(ns, 17), "foo_085x001") != 0) - return 1; - if (strcmp(DBGetName(ns, 18), "foo_090x004") != 0) - return 1; - if (strcmp(DBGetName(ns, 19), "foo_095x009") != 0) - return 1; - if (strcmp(DBGetName(ns, 20), "foo_100x000") != 0) - return 1; - if (strcmp(DBGetName(ns, 21), "foo_105x001") != 0) - return 1; + TEST_GET_NAME(ns, 17, "foo_085x001"); + TEST_GET_NAME(ns, 18, "foo_090x004"); + TEST_GET_NAME(ns, 19, "foo_095x009"); + TEST_GET_NAME(ns, 20, "foo_100x000"); + TEST_GET_NAME(ns, 21, "foo_105x001"); DBFreeNamescheme(ns); /* Test array-based references to char* valued array */ - N[0] = "red"; - N[1] = "green"; - N[2] = "blue"; ns = DBMakeNamescheme("Hfoo_%sH$Noodle[n%3]", N); - if (strcmp(DBGetName(ns, 17), "foo_blue") != 0) - return 1; - if (strcmp(DBGetName(ns, 6), "foo_red") != 0) - return 1; + TEST_GET_NAME(ns, 17, "foo_blue"); + TEST_GET_NAME(ns, 6, "foo_red"); DBFreeNamescheme(ns); /* Test namescheme as it might be used for multi-block objects */ @@ -164,17 +167,17 @@ strcat(blockName, ":"); strcat(blockName, DBGetName(ns2, 123)); /* blockname part */ if (strcmp(blockName, "multi_file.dir/003/ucd3d3.pdb:/block123/mesh1") != 0) - return 0; + return 1; strcpy(blockName, DBGetName(ns, 0)); /* filename part */ strcat(blockName, ":"); strcat(blockName, DBGetName(ns2, 0)); /* blockname part */ if (strcmp(blockName, "multi_file.dir/000/ucd3d0.pdb:/block0/mesh1") != 0) - return 0; + return 1; strcpy(blockName, DBGetName(ns, 287)); /* filename part */ strcat(blockName, ":"); strcat(blockName, DBGetName(ns2, 287)); /* blockname part */ if (strcmp(blockName, "multi_file.dir/007/ucd3d7.pdb:/block287/mesh1") != 0) - return 0; + return 1; DBFreeNamescheme(ns); DBFreeNamescheme(ns2); @@ -183,6 +186,7 @@ DBfile *dbfile; int dims[3]; int strListLen; + char const * const FileNumbers[] = {"1","2","3"}; /* uses same namescheme as above but am placing arrays in different dir relative to where I will place the namesheme */ @@ -191,12 +195,16 @@ /* Use absolute path to external array; 'H' is delim char */ char *ns2 = "Hfoo_%sH$/arr_dir/Noodle[n%3]"; char *ns2r; - char *strList; + char *strList = 0; /* use paths relative to the MB mesh object in which the nameschems are embedded */ char *ns3 = "|/meshes/mesh1/dom_%s_%d|$../ns_arrays/Noodle[n]|n*2+1"; char *ns3r; + /* Test McCandless' namescheme example */ + char *ns4 = "@%s%s@(n/4)?'myfilename.':'':@(n/4)?$/arr_dir/FileNumbers[n/4-1]:'':"; + char *ns4r; + dbfile = DBCreate("namescheme.silo", DB_CLOBBER, DB_LOCAL, "Test namescheme constructor with external arrays in file", driver); @@ -207,6 +215,10 @@ DBWrite(dbfile, "Place", P, dims, 1, DB_INT); dims[0] = 4; DBWrite(dbfile, "Upper", U, dims, 1, DB_INT); + DBStringArrayToStringList(FileNumbers, 3, &strList, &strListLen); + dims[0] = strListLen; + DBWrite(dbfile, "FileNumbers", strList, dims, 1, DB_CHAR); + free(strList); DBStringArrayToStringList(N, 3, &strList, &strListLen); dims[0] = strListLen; DBWrite(dbfile, "Noodle", strList, dims, 1, DB_CHAR); @@ -222,6 +234,8 @@ DBSetDir(dbfile, "/dir_2/dir_3"); dims[0] = strlen(ns2)+1; DBWrite(dbfile, "ns2", ns2, dims, 1, DB_CHAR); + dims[0] = strlen(ns4)+1; + DBWrite(dbfile, "ns4", ns4, dims, 1, DB_CHAR); DBSetDir(dbfile, "/"); DBMkDir(dbfile, "meshes"); @@ -229,6 +243,7 @@ DBMkDir(dbfile, "ns_arrays"); dims[0] = strListLen; DBWrite(dbfile, "ns_arrays/Noodle", strList, dims, 1, DB_CHAR); + free(strList); DBMkDir(dbfile, "mesh1"); DBSetDir(dbfile, "mesh1"); @@ -271,40 +286,32 @@ DBPutMultimesh(dbfile, "mmesh", 3, 0, 0, optlist); DBFreeOptlist(optlist); } - free(strList); DBClose(dbfile); dbfile = DBOpen("namescheme.silo", DB_UNKNOWN, DB_READ); DBSetDir(dbfile, "dir_1"); - ns1r = DBGetVar(dbfile, "ns1"); + ns1r = (char*)DBGetVar(dbfile, "ns1"); /* Use the '0, DBfile*, 0' form of args to constructor */ ns = DBMakeNamescheme(ns1r, 0, dbfile, 0); /* Ok, lets test the constructed namescheme */ - if (strcmp(DBGetName(ns, 17), "foo_085x001") != 0) - return 1; - if (strcmp(DBGetName(ns, 18), "foo_090x004") != 0) - return 1; - if (strcmp(DBGetName(ns, 19), "foo_095x009") != 0) - return 1; - if (strcmp(DBGetName(ns, 20), "foo_100x000") != 0) - return 1; - if (strcmp(DBGetName(ns, 21), "foo_105x001") != 0) - return 1; + TEST_GET_NAME(ns, 17, "foo_085x001"); + TEST_GET_NAME(ns, 18, "foo_090x004"); + TEST_GET_NAME(ns, 19, "foo_095x009"); + TEST_GET_NAME(ns, 20, "foo_100x000"); + TEST_GET_NAME(ns, 21, "foo_105x001"); DBFreeNamescheme(ns); free(ns1r); DBSetDir(dbfile, "/dir_2/dir_3"); - ns2r = DBGetVar(dbfile, "ns2"); + ns2r = (char *)DBGetVar(dbfile, "ns2"); /* Use the '0, DBfile*, 0' form of args to constructor */ ns = DBMakeNamescheme(ns2r, 0, dbfile, 0); - if (strcmp(DBGetName(ns, 17), "foo_blue") != 0) - return 1; - if (strcmp(DBGetName(ns, 6), "foo_red") != 0) - return 1; + TEST_GET_NAME(ns, 17, "foo_blue"); + TEST_GET_NAME(ns, 6, "foo_red"); DBFreeNamescheme(ns); free(ns2r); @@ -319,28 +326,33 @@ { DBmultimesh *mm = DBGetMultimesh(dbfile, "mmesh"); ns = DBMakeNamescheme(mm->block_ns, 0, dbfile, "/meshes/mesh1"); - if (strcmp(DBGetName(ns, 0), "/meshes/mesh1/dom_red_1") != 0) - return 1; - if (strcmp(DBGetName(ns, 1), "/meshes/mesh1/dom_green_3") != 0) - return 1; - if (strcmp(DBGetName(ns, 2), "/meshes/mesh1/dom_blue_5") != 0) - return 1; + TEST_GET_NAME(ns, 0, "/meshes/mesh1/dom_red_1"); + TEST_GET_NAME(ns, 1, "/meshes/mesh1/dom_green_3"); + TEST_GET_NAME(ns, 2, "/meshes/mesh1/dom_blue_5"); DBFreeNamescheme(ns); DBFreeMultimesh(mm); } + /* Test McCandless' example */ + DBSetDir(dbfile, "/"); + ns4r = (char *)DBGetVar(dbfile, "/dir_2/dir_3/ns4"); + ns = DBMakeNamescheme(ns4r, 0, dbfile, 0); + TEST_GET_NAME(ns, 0, ""); + TEST_GET_NAME(ns, 1, ""); + TEST_GET_NAME(ns, 4, "myfilename.1"); + TEST_GET_NAME(ns, 15, "myfilename.3"); + DBFreeNamescheme(ns); + free(ns4r); + DBClose(dbfile); } /* test namescheme with constant componets */ { ns = DBMakeNamescheme("@foo/bar/gorfo_0@"); - if (strcmp(DBGetName(ns, 0), "foo/bar/gorfo_0") != 0) - return 1; - if (strcmp(DBGetName(ns, 1), "foo/bar/gorfo_0") != 0) - return 1; - if (strcmp(DBGetName(ns, 122), "foo/bar/gorfo_0") != 0) - return 1; + TEST_GET_NAME(ns, 0, "foo/bar/gorfo_0"); + TEST_GET_NAME(ns, 1, "foo/bar/gorfo_0"); + TEST_GET_NAME(ns, 122, "foo/bar/gorfo_0"); DBFreeNamescheme(ns); } diff -Nru silo-llnl-4.10.2/tests/onehex.c silo-llnl-4.10.2.real/tests/onehex.c --- silo-llnl-4.10.2/tests/onehex.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/onehex.c 2018-02-15 17:25:43.000000000 +0000 @@ -114,7 +114,7 @@ main(int argc, char *argv[]) { DBfile *dbfile = NULL; - char *coordnames[3]; + char const * const coordnames[3] = {"xcoords", "ycoords", "zcoords"}; double *coords[3]; int nodelist[8]; double x[8], y[8], z[8]; @@ -234,9 +234,6 @@ DBFreeOptlist(split_opts); } - coordnames[0] = "xcoords"; - coordnames[1] = "ycoords"; - coordnames[2] = "zcoords"; x[0] = 0; y[0] = 0; z[0] = 0; x[1] = 1; y[1] = 0; z[1] = 0; @@ -303,8 +300,7 @@ #endif var[0] = sqrt((double)-1.0); } - DBPutUcdvar1(dbfile, "v", "hex", var, 8, NULL, 0, DB_DOUBLE, DB_NODECENT, - NULL); + DBPutUcdvar1(dbfile, "v", "hex", var, 8, NULL, 0, DB_DOUBLE, DB_NODECENT, NULL); nodelist[0] = 0; nodelist[1] = 1; diff -Nru silo-llnl-4.10.2/tests/oneprism.c silo-llnl-4.10.2.real/tests/oneprism.c --- silo-llnl-4.10.2/tests/oneprism.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/oneprism.c 2018-02-15 17:25:43.000000000 +0000 @@ -189,8 +189,8 @@ var[i] = x[i]+y[i]*z[i]; } - DBPutUcdmesh(dbfile, "prism", 3, coordnames, coords, 6, 1, "zonelist", - "facelist", DB_FLOAT, NULL); + DBPutUcdmesh(dbfile, "prism", 3, (DBCAS_t) coordnames, + coords, 6, 1, "zonelist", "facelist", DB_FLOAT, NULL); matnos[0] = 1; matlist[0] = 1; diff -Nru silo-llnl-4.10.2/tests/onepyramid.c silo-llnl-4.10.2.real/tests/onepyramid.c --- silo-llnl-4.10.2/tests/onepyramid.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/onepyramid.c 2018-02-15 17:25:43.000000000 +0000 @@ -178,8 +178,8 @@ var[i] = x[i]+y[i]*z[i]; } - DBPutUcdmesh(dbfile, "pyramid", 3, coordnames, coords, 5, 1, "zonelist", - "facelist", DB_FLOAT, NULL); + DBPutUcdmesh(dbfile, "pyramid", 3, (DBCAS_t) coordnames, + coords, 5, 1, "zonelist", "facelist", DB_FLOAT, NULL); matnos[0] = 1; matlist[0] = 1; diff -Nru silo-llnl-4.10.2/tests/onetet.c silo-llnl-4.10.2.real/tests/onetet.c --- silo-llnl-4.10.2/tests/onetet.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/onetet.c 2018-02-15 17:25:43.000000000 +0000 @@ -177,8 +177,8 @@ var[i] = x[i]+y[i]*z[i]; } - DBPutUcdmesh(dbfile, "tet", 3, coordnames, coords, 4, 1, "zonelist", - "facelist", DB_FLOAT, NULL); + DBPutUcdmesh(dbfile, "tet", 3, (DBCAS_t) coordnames, + coords, 4, 1, "zonelist", "facelist", DB_FLOAT, NULL); matnos[0] = 1; matlist[0] = 1; diff -Nru silo-llnl-4.10.2/tests/package.m4 silo-llnl-4.10.2.real/tests/package.m4 --- silo-llnl-4.10.2/tests/package.m4 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/package.m4 2018-02-15 17:25:43.000000000 +0000 @@ -1,6 +1,6 @@ # Signature of the current package. m4_define([AT_PACKAGE_NAME], [silo]) m4_define([AT_PACKAGE_TARNAME], [silo]) -m4_define([AT_PACKAGE_VERSION], [4.9.1]) -m4_define([AT_PACKAGE_STRING], [silo 4.9.1]) -m4_define([AT_PACKAGE_BUGREPORT], [visit-users@email.ornl.gov]) +m4_define([AT_PACKAGE_VERSION], [4.10.2]) +m4_define([AT_PACKAGE_STRING], [silo 4.10.2]) +m4_define([AT_PACKAGE_BUGREPORT], [visit-users@elist.ornl.gov]) diff -Nru silo-llnl-4.10.2/tests/pdbtst.c silo-llnl-4.10.2.real/tests/pdbtst.c --- silo-llnl-4.10.2/tests/pdbtst.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/pdbtst.c 2018-02-15 17:25:43.000000000 +0000 @@ -272,7 +272,7 @@ return(rv);} -static int def_hash_types(PDBfile *file) +static void def_hash_types(PDBfile *file) { PD_defstr(file, haelemstr, "char *name", @@ -3992,9 +3992,15 @@ cs = SC_mem_monitor(cs, dbg, "B", msg); +#if defined PRId64 PRINT(STDOUT, - "\t\t %3d %8d %8d %7d %.2g\n", + "\t\t %3d %8" PRId64 " %8" PRI64d " %7" PRI64d " %.2g\n", n, bytaa, bytfa, bytaa - bytfa, time); +#else + PRINT(STDOUT, + "\t\t %3lld %8lld %8lld %7lld %.2g\n", + n, bytaa, bytfa, bytaa - bytfa, time); +#endif return(fail);} @@ -4052,7 +4058,7 @@ struct dirent *dent; ddir = opendir("."); - while (dent = readdir(ddir)) + while ((dent = readdir(ddir))) { if (dent->d_name[0] == '.') continue; SC_ASSERT(REMOVE(dent->d_name)==0); diff -Nru silo-llnl-4.10.2/tests/point.c silo-llnl-4.10.2.real/tests/point.c --- silo-llnl-4.10.2/tests/point.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/point.c 2018-02-15 17:25:43.000000000 +0000 @@ -106,9 +106,7 @@ *------------------------------------------------------------------------- */ double -randf(rmin, rmax) - double rmin; - double rmax; +randf(double rmin, double rmax) { unsigned long acc; static double divisor = 0; @@ -232,28 +230,37 @@ float *x = NULL, *y = NULL, *z = NULL; float *u = NULL, *v = NULL, *w = NULL; float *d = NULL, *t = NULL; + float *vm1 = NULL, *vm2 = NULL; int *itype = NULL; long long *litype = NULL; int i; float *coords[3], *vars[3]; DBoptlist *optlist = NULL; DBoptlist *optlist1 = NULL; + char *ghost_labels; + char name2[256]; int one = 1; int cycle = 44; float time = 4.4; double dtime = 4.4; + double missing_value1 = (float) 345.678; + double missing_value2 = 0; + x = ALLOC(float,N); assert_mem(x); y = ALLOC(float,N); assert_mem(y); z = ALLOC(float,N); assert_mem(y); u = ALLOC(float,N); assert_mem(u); v = ALLOC(float,N); assert_mem(v); + vm1 = ALLOC(float,N); assert_mem(vm1); + vm2 = ALLOC(float,N); assert_mem(vm2); w = ALLOC(float,N); assert_mem(w); d = ALLOC(float,N); assert_mem(d); t = ALLOC(float,N); assert_mem(t); itype = ALLOC(int,N); assert_mem(itype); litype = ALLOC(long long,N); assert_mem(litype); + ghost_labels = ALLOC(char,N); assert_mem(ghost_labels); optlist = DBMakeOptlist(10); optlist1 = DBMakeOptlist(10); @@ -266,6 +273,7 @@ DBAddOption(optlist1, DBOPT_TIME, &time); DBAddOption(optlist1, DBOPT_DTIME, &dtime); DBAddOption(optlist1, DBOPT_HIDE_FROM_GUI, &one); + DBAddOption(optlist1, DBOPT_MISSING_VALUE, &missing_value1); DBMkDir(dbfile, "dir1"); DBMkDir(dbfile, "dir2"); @@ -288,17 +296,32 @@ d[i] = sqrt(x[i]*x[i] + y[i]*y[i] + z[i]*z[i]); u[i] = x[i] / TwoPI; v[i] = y[i] / TwoPI; + vm1[i] = v[i]; + vm2[i] = v[i]; + if ((i % 7) == 0) + { + vm1[i] = missing_value1; + vm2[i] = missing_value2; + } w[i] = w[i] / TwoPI; t[i] = pow(10., 5. * f * f); itype[i] = i; + if (i > 5 && i < 17) + ghost_labels[i] = 1; } coords[0] = x; coords[1] = y; coords[2] = z; + DBPutPointmesh(dbfile, name, dims, coords, N, DB_FLOAT, optlist); + DBAddOption(optlist, DBOPT_GHOST_NODE_LABELS, ghost_labels); + sprintf(name2, "%s_wghost", name); + DBPutPointmesh(dbfile, name2, dims, coords, N, DB_FLOAT, optlist); + DBClearOption(optlist, DBOPT_GHOST_NODE_LABELS); + vars[0] = d; DBPutPointvar(dbfile, "d", name, 1, vars, N, DB_FLOAT, optlist); @@ -308,6 +331,17 @@ vars[0] = v; DBPutPointvar(dbfile, "v", name, 1, vars, N, DB_FLOAT, optlist); + vars[0] = vm1; + DBClearOption(optlist1, DBOPT_HIDE_FROM_GUI); + DBPutPointvar(dbfile, "vm1", name, 1, vars, N, DB_FLOAT, optlist1); + + DBClearOption(optlist1, DBOPT_MISSING_VALUE); + DBAddOption(optlist1, DBOPT_MISSING_VALUE, &missing_value2); + vars[0] = vm2; + DBPutPointvar(dbfile, "vm2", name, 1, vars, N, DB_FLOAT, optlist1); + DBClearOption(optlist1, DBOPT_MISSING_VALUE); + DBAddOption(optlist1, DBOPT_HIDE_FROM_GUI, &one); + if(dims == 3) { vars[0] = w; diff -Nru silo-llnl-4.10.2/tests/polyzl.c silo-llnl-4.10.2.real/tests/polyzl.c --- silo-llnl-4.10.2/tests/polyzl.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/polyzl.c 2018-02-15 17:25:43.000000000 +0000 @@ -145,8 +145,8 @@ optlist = DBMakeOptlist(3); DBAddOption(optlist, DBOPT_PHZONELIST, "polyzl"); - DBPutUcdmesh(dbfile, "ucdmesh", 3, coordnames, coords, NNODES, NZONES, - NULL, NULL, DB_FLOAT, optlist); + DBPutUcdmesh(dbfile, "ucdmesh", 3, (DBCAS_t) coordnames, + coords, NNODES, NZONES, NULL, NULL, DB_FLOAT, optlist); DBPutPHZonelist(dbfile, "polyzl", NFACES, nodecnt, lnodelist, nodelist, NULL, diff -Nru silo-llnl-4.10.2/tests/quadf77.f silo-llnl-4.10.2.real/tests/quadf77.f --- silo-llnl-4.10.2/tests/quadf77.f 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/quadf77.f 2018-02-15 17:25:43.000000000 +0000 @@ -91,6 +91,8 @@ driver = DB_HDF5 end if + err = dbset2dstrlen(1024) + c...Create file. err = dbcreate("quadf77.silo", 12, DB_CLOBBER, DB_LOCAL, . "file info", 9, driver, dbid) @@ -155,9 +157,11 @@ integer i, meshid, varid integer tcycle, mixlen, optlistid integer dims(3), ndims - real x(NX), y(NY), d(NZONES) + real x(NX), y(NY), d(NZONES), f(2*NZONES) real ttime double precision dttime + character*1024 vnames(2) + integer lvnames(2) c...Initializations. @@ -165,6 +169,7 @@ data x/1.,2.,3.,4./ data y/1.,2.,3./ data d/1.,2.,3.,4.,5.,6./ + data f/1.0,1.1,1.2,1.3,1.4,1.5,2.0,2.1,2.2,2.3,2.4,2.5/ ttime = 2.345 dttime = 2.345 @@ -222,6 +227,13 @@ . lname, d, dims, ndims, . DB_F77NULL, 0, DB_FLOAT, DB_ZONECENT, . optlistid, varid) + vnames(1) = "FooBar" + lvnames(1) = 6 + vnames(2) = "gorfo" + lvnames(2) = 5 + err = dbputqv(dbid, "f", 1, name, lname, 2, vnames, lvnames, + . f, dims, ndims, DB_F77NULL, 0, DB_FLOAT, DB_ZONECENT, + . optlistid, varid) buildquad = meshid diff -Nru silo-llnl-4.10.2/tests/readstuff.c silo-llnl-4.10.2.real/tests/readstuff.c --- silo-llnl-4.10.2/tests/readstuff.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/readstuff.c 2018-02-15 17:25:43.000000000 +0000 @@ -112,7 +112,7 @@ obj_names[11] = "../mesh1"; obj_names[12] = "../block11/u"; - DBSortObjectsByOffset(dbfile, 13, obj_names, ordering); + DBSortObjectsByOffset(dbfile, 13, (DBCAS_t) obj_names, ordering); printf("UNsorted objects...\n"); for (i = 0; i < 13; i++) printf("\t\"%s\"\n", obj_names[i]); diff -Nru silo-llnl-4.10.2/tests/realloc_obj_and_opts.c silo-llnl-4.10.2.real/tests/realloc_obj_and_opts.c --- silo-llnl-4.10.2/tests/realloc_obj_and_opts.c 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/realloc_obj_and_opts.c 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,116 @@ +/* +Copyright (c) 1994 - 2010, Lawrence Livermore National Security, LLC. +LLNL-CODE-425250. +All rights reserved. + +This file is part of Silo. For details, see silo.llnl.gov. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the disclaimer below. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the disclaimer (as noted + below) in the documentation and/or other materials provided with + the distribution. + * Neither the name of the LLNS/LLNL nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL LAWRENCE +LIVERMORE NATIONAL SECURITY, LLC, THE U.S. DEPARTMENT OF ENERGY OR +CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +This work was produced at Lawrence Livermore National Laboratory under +Contract No. DE-AC52-07NA27344 with the DOE. Neither the United +States Government nor Lawrence Livermore National Security, LLC nor +any of their employees, makes any warranty, express or implied, or +assumes any liability or responsibility for the accuracy, +completeness, or usefulness of any information, apparatus, product, or +process disclosed, or represents that its use would not infringe +privately-owned rights. Any reference herein to any specific +commercial products, process, or services by trade name, trademark, +manufacturer or otherwise does not necessarily constitute or imply its +endorsement, recommendation, or favoring by the United States +Government or Lawrence Livermore National Security, LLC. The views and +opinions of authors expressed herein do not necessarily state or +reflect those of the United States Government or Lawrence Livermore +National Security, LLC, and shall not be used for advertising or +product endorsement purposes. +*/ +#include +#include +#include +#include +#include + +int +main(int argc, char *argv[]) +{ + DBobject *obj; + DBoptlist *opts; + DBfile *dbfile; + int comp_data[] = {0,1,2,3,4,5,6,7,8,9}; + int ndims = 1; + const long int dims = sizeof(comp_data)/sizeof(comp_data[0]); + int cycle = 1; + float time = 1.5; + double dtime = 1.515; + int lo_offset = 7; + int hi_offset = 24; + + dbfile = DBCreate("object-tests.silo", DB_CLOBBER, DB_LOCAL, "object tests", DB_PDB); + + /* confirm can handle more components than orginal make of '3' */ + obj = DBMakeObject("test", DB_USERDEF, 3); + DBAddIntComponent(obj, "oneInt", 4); + DBAddIntComponent(obj, "secondInt", 5); + DBAddFltComponent(obj, "oneFlt", 3.5); + DBAddDblComponent(obj, "oneDbl", 1.53776); + DBAddStrComponent(obj, "foo", "bar"); + DBAddIntComponent(obj, "anotherInt", 8); + DBWriteComponent(dbfile, obj, "intCompA", "pre_", "integer", comp_data, 1, &dims); + DBAddDblComponent(obj, "Dbl2", 1.53776); + DBAddDblComponent(obj, "Dbl3", 1.53776); + DBAddDblComponent(obj, "Dbl4", 1.53776); + DBWriteComponent(dbfile, obj, "intCompB", "pre_", "integer", comp_data, 1, &dims); + DBWriteObject(dbfile, obj, 0); + DBFreeObject(obj); + + opts = DBMakeOptlist(3); + DBAddOption(opts, DBOPT_CYCLE, &cycle); + DBAddOption(opts, DBOPT_TIME, &time); + DBAddOption(opts, DBOPT_DTIME, &dtime); + DBClearOption(opts, DBOPT_CYCLE); + DBAddOption(opts, DBOPT_LO_OFFSET, &lo_offset); + DBAddOption(opts, DBOPT_HI_OFFSET, &hi_offset); + DBClearOptlist(opts); + DBAddOption(opts, DBOPT_CYCLE, &cycle); + DBAddOption(opts, DBOPT_TIME, &time); + DBAddOption(opts, DBOPT_DTIME, &dtime); + DBAddOption(opts, DBOPT_LO_OFFSET, &lo_offset); + DBAddOption(opts, DBOPT_HI_OFFSET, &hi_offset); + DBAddOption(opts, DBOPT_COORDSYS, &cycle); + DBAddOption(opts, DBOPT_NMATNOS, &cycle); + DBAddOption(opts, DBOPT_HIDE_FROM_GUI, &cycle); + DBAddOption(opts, DBOPT_TOPO_DIM, &cycle); + DBAddOption(opts, DBOPT_ALLOWMAT0, &cycle); + DBAddOption(opts, DBOPT_TV_CONNECTIVITY, &cycle); + DBAddOption(opts, DBOPT_DISJOINT_MODE, &cycle); + DBFreeOptlist(opts); + + DBClose(dbfile); + + return 0; +} diff -Nru silo-llnl-4.10.2/tests/rocket.cxx silo-llnl-4.10.2.real/tests/rocket.cxx --- silo-llnl-4.10.2/tests/rocket.cxx 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/rocket.cxx 2018-02-15 17:25:43.000000000 +0000 @@ -748,7 +748,7 @@ if (!cwdir) continue; struct dirent* dent; - while (dent = readdir(cwdir)) + while ((dent = readdir(cwdir))) { string dname = string(dent->d_name); diff -Nru silo-llnl-4.10.2/tests/rocket.h silo-llnl-4.10.2.real/tests/rocket.h --- silo-llnl-4.10.2/tests/rocket.h 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/rocket.h 2018-02-15 17:25:43.000000000 +0000 @@ -52,7 +52,6 @@ be used for advertising or product endorsement purposes. */ -#warning MAKE THIS CONDITIONAL LATER #define HAVE_SILO #ifdef __sgi /* IRIX C++ bug */ diff -Nru silo-llnl-4.10.2/tests/rocket_silo.cxx silo-llnl-4.10.2.real/tests/rocket_silo.cxx --- silo-llnl-4.10.2/tests/rocket_silo.cxx 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/rocket_silo.cxx 2018-02-15 17:25:43.000000000 +0000 @@ -221,7 +221,7 @@ DBSetCwr(mrgt, className); int seg_types[1], seg_lens[1], seg_ids[1]; - const int *seg_data[1]; + int *seg_data[1]; seg_types[0] = DB_NODECENT; seg_ids[0] = 0; @@ -265,7 +265,7 @@ seg_data[0] = &map_data[0]; string mapnm = string(regnNames[i]) + "_map"; DBAddRegion(mrgt, regnNames[i], 0, 0, mapnm.c_str(), 1, seg_ids, seg_lens, seg_types, 0); - DBPutGroupelmap(dbfile, mapnm.c_str(), 1, seg_types, seg_lens, seg_ids, (int**)seg_data, 0, 0, 0); + DBPutGroupelmap(dbfile, mapnm.c_str(), 1, seg_types, seg_lens, seg_ids, (int**)seg_data, 0, DB_NOTYPE, 0); } } } @@ -300,7 +300,7 @@ int ndoms = dom_classes.size(); vector dom_map; zoneClasses.GetEntitiesPartitionedByClasses(dom_classes, dom_map); - DBPutUcdvar1(dbfile, "proc_map", "mesh", &dom_map[0], nzones, 0, 0, DB_INT, DB_ZONECENT, 0); + DBPutUcdvar1(dbfile, "proc_map", "mesh", (float*) &dom_map[0], nzones, 0, 0, DB_INT, DB_ZONECENT, 0); // Create MRG Tree DBmrgtree *mrgt = DBMakeMrgtree(DB_UCDMESH, 0x0, 4, 0); diff -Nru silo-llnl-4.10.2/tests/sami.c silo-llnl-4.10.2.real/tests/sami.c --- silo-llnl-4.10.2/tests/sami.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/sami.c 2018-02-15 17:25:43.000000000 +0000 @@ -381,7 +381,7 @@ /* 1d char */ puts(" 1d_char"); - if (NULL==(cdata_in=DBGetVar(dbfile, "1d_char"))) { + if (NULL==(cdata_in=(char *)DBGetVar(dbfile, "1d_char"))) { puts(" DBGetVar() failed"); nerrors++; } else { @@ -397,7 +397,7 @@ /* 2d short */ puts(" 2d_short"); - if (NULL==(sdata_in=DBGetVar(dbfile, "2d_short"))) { + if (NULL==(sdata_in=(short*)DBGetVar(dbfile, "2d_short"))) { puts(" DBGetVar() failed"); nerrors++; } else { @@ -414,7 +414,7 @@ /* 3d int */ puts(" 3d_int"); - if (NULL==(idata_in=DBGetVar(dbfile, "3d_int"))) { + if (NULL==(idata_in=(int*)DBGetVar(dbfile, "3d_int"))) { puts(" DBGetVar() failed"); nerrors++; } else { @@ -429,7 +429,7 @@ /* 3d long */ puts(" 3d_long"); - if (NULL==(ldata_in=DBGetVar(dbfile, "3d_long"))) { + if (NULL==(ldata_in=(long*)DBGetVar(dbfile, "3d_long"))) { puts(" DBGetVar() failed"); nerrors++; } else { @@ -445,7 +445,7 @@ /* 4d float */ DBForceSingle(TRUE); puts(" 4d_float"); - if (NULL==(fdata_in=DBGetVar(dbfile, "4d_float"))) { + if (NULL==(fdata_in=(float*)DBGetVar(dbfile, "4d_float"))) { puts(" DBGetVar() failed"); nerrors++; } else { @@ -462,7 +462,7 @@ /* 5d double */ puts(" 5d_double"); - if (NULL==(ddata_in=DBGetVar(dbfile, "5d_double"))) { + if (NULL==(ddata_in=(double*)DBGetVar(dbfile, "5d_double"))) { puts(" DBGetVar() failed"); nerrors++; } else { @@ -998,8 +998,8 @@ nerrors++; } - if (DBPutQuadvar(dbfile, "qv1", "qm1", 3, varnames, (float**)vars, dims, 2, - NULL, 0, DB_DOUBLE, DB_NODECENT, NULL)<0) { + if (DBPutQuadvar(dbfile, "qv1", "qm1", 3, (DBCAS_t) varnames, + vars, dims, 2, NULL, 0, DB_DOUBLE, DB_NODECENT, NULL)<0) { puts("DBPutQuadmesh(qv1) failed"); nerrors++; } @@ -1063,9 +1063,8 @@ DBSetDir(dbfile, "/ucd"); /* Mesh */ - if (DBPutUcdmesh(dbfile, "um1", ndims, coordnames, (float**)coords, nnodes, - nzones, "zl1", "fl1", DB_DOUBLE, - NULL)<0) { + if (DBPutUcdmesh(dbfile, "um1", ndims, (DBCAS_t) coordnames, + coords, nnodes, nzones, "zl1", "fl1", DB_DOUBLE, NULL)<0) { puts("DBPutUcdmesh(um1) failed"); nerrors++; } @@ -1075,8 +1074,8 @@ } /* Variable */ - if (DBPutUcdvar(dbfile, "uv1", "um1", nvars, varnames, vars, nels, mixvars, - mixlen, DB_FLOAT, DB_NODECENT, NULL)<0) { + if (DBPutUcdvar(dbfile, "uv1", "um1", nvars, (DBCAS_t) varnames, + vars, nels, mixvars, mixlen, DB_FLOAT, DB_NODECENT, NULL)<0) { puts("DBPutUcdvar(uv1) failed"); nerrors++; } diff -Nru silo-llnl-4.10.2/tests/simple.c silo-llnl-4.10.2.real/tests/simple.c --- silo-llnl-4.10.2/tests/simple.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/simple.c 2018-02-15 17:25:43.000000000 +0000 @@ -211,7 +211,7 @@ val2[i] = 0; DBReadVarSlice(dbfile, "simple", offset, length, stride, ndims, val2); - lval2 = DBGetVar(dbfile, "longlong"); + lval2 = (long long *)DBGetVar(dbfile, "longlong"); DBClose(dbfile); diff -Nru silo-llnl-4.10.2/tests/spec.c silo-llnl-4.10.2.real/tests/spec.c --- silo-llnl-4.10.2/tests/spec.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/spec.c 2018-02-15 17:25:43.000000000 +0000 @@ -137,8 +137,8 @@ } /* Name the coordinate axes 'X' and 'Y' */ - coordnames[0] = (char *) safe_strdup("X"); - coordnames[1] = (char *) safe_strdup("Y"); + coordnames[0] = (char *) _db_safe_strdup("X"); + coordnames[1] = (char *) _db_safe_strdup("Y"); /* Set up the coordinate values */ @@ -158,8 +158,8 @@ dims[1] = NY + 1; /* Write out the mesh to the file */ - DBPutQuadmesh(file, "quad_mesh", coordnames, coordinates, dims, 2, - DB_FLOAT, DB_COLLINEAR, NULL); + DBPutQuadmesh(file, "quad_mesh", (DBCAS_t) coordnames, + coordinates, dims, 2, DB_FLOAT, DB_COLLINEAR, NULL); /* Set up the material and species information */ diff -Nru silo-llnl-4.10.2/tests/specmix.c silo-llnl-4.10.2.real/tests/specmix.c --- silo-llnl-4.10.2/tests/specmix.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/specmix.c 2018-02-15 17:25:43.000000000 +0000 @@ -86,6 +86,14 @@ #define lim(a,l,h) (max(min((a),(h)),(l))) #define lim01(a) (lim((a),0,1)) +static double difftol = 0.000001; +static int equald(double a, double b) +{ + if (a == 0 && b == 0) return 1; + if (b == 0) return 0; + return fabs(a/b - 1.0) < difftol; +} + /* Structures for a 2-d problem domain: */ /* Struct: Node */ @@ -102,7 +110,9 @@ int nmats; int mats[MAXMAT+1]; float matvf[MAXMAT+1]; + double matvfd[MAXMAT+1]; float specmf[MAXMAT+1][MAXSPEC]; + double specmfd[MAXMAT+1][MAXSPEC]; Node *n[2][2]; /* the four nodes at the corners of this zone*/ } Zone; @@ -120,7 +130,8 @@ /* file-writing functions */ void writemesh_curv2d(DBfile*,int,int); void writemesh_ucd2d(DBfile*,int,int); -int writematspec(DBfile*); +typedef enum _DoSpecOp_t { doWrite, doReadAndCheck} DoSpecOp_t; +int domatspec(DBfile*,DoSpecOp_t,int); /* problem specifics */ enum ZVARS { ZV_P, ZV_D }; @@ -211,6 +222,9 @@ reorder = 1; } else if (!strcmp(argv[i], "show-all-errors")) { show_all_errors = 1; + } else if (!strcmp(argv[i], "difftol")) { + difftol = strtod(argv[i+1], 0); + i++; } else if (argv[i][0] != '\0') { fprintf(stderr, "%s: ignored argument `%s'\n", argv[0], argv[i]); } @@ -287,6 +301,7 @@ int i,j; int c=0; float vf=0.; + double vfd=0.; const int RES=40; /* subsampling resolution */ /* Subsample the zone at RESxRES to * @@ -321,9 +336,12 @@ } } + vfd = vf; vf /= (float)c; + vfd /= (double)c; mesh.zone[x][y].matvf[m]=vf; + mesh.zone[x][y].matvfd[m]=vfd; if (vf) mesh.zone[x][y].nmats++; } @@ -370,43 +388,51 @@ float y11=mesh.zone[x][y].n[1][1]->y; float xx=(x00+x10+x01+x11)/4.; float yy=(y00+y10+y01+y11)/4.; + double xxd=(x00+x10+x01+x11)/4.; + double yyd=(y00+y10+y01+y11)/4.; - float mf=0; + float mf=0.; + double mfd=0.; float g,g1,g2; /* gradient values */ + double gd,g1d,g2d; /* gradient values */ switch (m) { case 1: g=lim01((xx+20.)/40.); + gd=lim01((xxd+20.)/40.); switch (s) { - case 0: mf=g; break; - case 1: mf=1.-g; break; + case 0: mf=g; mfd=gd; break; + case 1: mf=1.-g; mfd=1.-gd; break; default: exit(-1); } break; case 2: g=lim01((yy+20.)/40.); + gd=lim01((yyd+20.)/40.); switch (s) { - case 0: mf=.2+g/2.; break; - case 1: mf=.5-g/2.; break; - case 2: mf=.2; break; - case 3: mf=.1; break; + case 0: mf=.2+g/2.; mfd=.2+gd/2.; break; + case 1: mf=.5-g/2.; mfd=.5-gd/2.; break; + case 2: mf=.2; mfd=.2; break; + case 3: mf=.1; mfd=.1; break; default: exit(-1); } break; case 3: g1=lim01((xx-5+yy+40.)/80.); g2=lim01((xx-5-yy+40.)/80.); + g1d=lim01((xxd-5+yyd+40.)/80.); + g2d=lim01((xxd-5-yyd+40.)/80.); switch (s) { - case 0: mf=g1/2.; break; - case 1: mf=g2/4.; break; - case 2: mf=.5-g1/2.; break; - case 3: mf=.25-g2/4.; break; - case 4: mf=.25; break; + case 0: mf=g1/2.; mfd=g1d/2.; break; + case 1: mf=g2/4.; mfd=g2d/4.; break; + case 2: mf=.5-g1/2.; mfd=.5-g1d/2.; break; + case 3: mf=.25-g2/4.; mfd=.25-g2d/4.; break; + case 4: mf=.25; mfd=.25; break; default: exit(-1); } break; case 4: switch (s) { - case 0: mf=1.0; break; + case 0: mf=1.0; mfd=1.0; break; default: exit(-1); } break; @@ -416,6 +442,7 @@ } mesh.zone[x][y].specmf[m][s] = mf; + mesh.zone[x][y].specmfd[m][s] = mfd; mftot += mf; } if (mftot < .99 || mftot > 1.01) { @@ -436,17 +463,28 @@ sprintf(filename, "specmix_quad%s", file_ext); printf("Writing %s using curvilinear mesh.\n", filename); db=DBCreate(filename, DB_CLOBBER, DB_LOCAL, "Mixed zone species test", driver); - mixc=writematspec(db); + mixc=domatspec(db, doWrite, 0); writemesh_curv2d(db,mixc,reorder); DBClose(db); sprintf(filename, "specmix_ucd%s", file_ext); printf("Writing %s using unstructured mesh.\n", filename); db=DBCreate(filename, DB_CLOBBER, DB_LOCAL, "Mixed zone species test", driver); - mixc=writematspec(db); + mixc=domatspec(db, doWrite, 0); writemesh_ucd2d(db,mixc,reorder); DBClose(db); + /* Test read-back of species */ + printf("Reading %s with Force Single off.\n", filename); + db=DBOpen(filename, driver, DB_READ); + domatspec(db, doReadAndCheck, 0); + DBClose(db); + printf("Reading %s with Force Single ON.\n", filename); + DBForceSingle(1); + db=DBOpen(filename, driver, DB_READ); + domatspec(db, doReadAndCheck, 1); + DBClose(db); + printf("Done!\n"); for (x=0;xnmat, nmat); + CHECKIARR(mat->matnos, matnos, nmat); + CHECKIVAL(mat->ndims, 2); + CHECKIARR(mat->dims, dims, 2); + if (forceSingle) + { + CHECKIVAL(mat->datatype, DB_FLOAT); + } + else + { + CHECKIVAL(mat->datatype, pass?DB_FLOAT:DB_DOUBLE); + } + CHECKIVAL(mat->mixlen, mixc); + CHECKIARR(mat->matlist, matlist, dims[0]*dims[1]); + CHECKIARR(mat->mix_next, mix_next, mixc); + CHECKIARR(mat->mix_mat, mix_mat, mixc); + CHECKIARR(mat->mix_zone, mix_zone, mixc); + if (forceSingle) + { + CHECKDARR(((float*)mat->mix_vf), mix_vf, mixc); + } + else if (pass) + { + CHECKDARR(((float*)mat->mix_vf), mix_vf, mixc); + } + else + { + CHECKDARR(((double*)mat->mix_vf), mix_vfd, mixc); + } + } + } /* Okay! Now for the species! */ @@ -940,6 +1143,7 @@ for (s = 0; s < nspec[m - 1]; s++) { specmf[mfc] = mesh.zone[x][y].specmf[m][s]; + specmfd[mfc] = mesh.zone[x][y].specmfd[m][s]; mfc++; } } @@ -964,6 +1168,7 @@ for (s = 0; s < nspec[m - 1]; s++) { specmf[mfc] = mesh.zone[x][y].specmf[m][s]; + specmfd[mfc] = mesh.zone[x][y].specmfd[m][s]; mfc++; } } @@ -975,14 +1180,56 @@ } } - DBClearOptlist(optlist); - DBAddOption(optlist, DBOPT_SPECNAMES, specnames); - DBAddOption(optlist, DBOPT_SPECCOLORS, speccolors); + if (writeOrReadAndCheck == doWrite) + { + DBClearOptlist(optlist); + DBAddOption(optlist, DBOPT_SPECNAMES, specnames); + DBAddOption(optlist, DBOPT_SPECCOLORS, speccolors); + + DBPutMatspecies(db, "Species", "Material", nmat, nspec, speclist, dims, 2, + mfc, specmf, mixspeclist, mixc, DB_FLOAT, optlist); - DBPutMatspecies(db, "Species", "Material", nmat, nspec, speclist, dims, 2, - mfc, specmf, mixspeclist, mixc, DB_FLOAT, optlist); + DBPutMatspecies(db, "Speciesd", "Materiald", nmat, nspec, speclist, dims, 2, + mfc, specmfd, mixspeclist, mixc, DB_DOUBLE, optlist); - DBFreeOptlist(optlist); + DBFreeOptlist(optlist); + } + else /* doReadAndCheck */ + { + int pass; + for (pass = 0; pass < 2; pass++) + { + DBmatspecies *spec = DBGetMatspecies(db, pass?"Species":"Speciesd"); + CHECKIVAL(spec->nmat, nmat); + CHECKIARR(spec->nmatspec, nspec, nmat); + CHECKIVAL(spec->ndims, 2); + CHECKIARR(spec->dims, dims, 2); + if (forceSingle) + { + CHECKIVAL(spec->datatype, DB_FLOAT); + } + else + { + CHECKIVAL(spec->datatype, pass?DB_FLOAT:DB_DOUBLE); + } + CHECKIVAL(spec->mixlen, mixc); + CHECKIVAL(spec->nspecies_mf, mfc); + CHECKIARR(spec->speclist, speclist, dims[0]*dims[1]); + CHECKIARR(spec->mix_speclist, mixspeclist, mixc); + if (forceSingle) + { + CHECKDARR(((float*)spec->species_mf), specmf, mfc); + } + else if (pass) + { + CHECKDARR(((float*)spec->species_mf), specmf, mfc); + } + else + { + CHECKDARR(((double*)spec->species_mf), specmfd, mfc); + } + } + } return mixc; } diff -Nru silo-llnl-4.10.2/tests/std.c silo-llnl-4.10.2.real/tests/std.c --- silo-llnl-4.10.2/tests/std.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/std.c 2018-02-15 17:25:43.000000000 +0000 @@ -248,3 +248,4 @@ fprintf(stderr, "Unable to determine driver from string \"%s\"\n", str); exit(-1); } + diff -Nru silo-llnl-4.10.2/tests/subhex.c silo-llnl-4.10.2.real/tests/subhex.c --- silo-llnl-4.10.2/tests/subhex.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/subhex.c 2018-02-15 17:25:43.000000000 +0000 @@ -227,11 +227,10 @@ | +-------------------------------------*/ - DBPutUcdmesh(dbfile, "parent", 3, coordnames, coords, 12, 2, "Pzonelist", - "Pfacelist", DB_FLOAT, NULL); + DBPutUcdmesh(dbfile, "parent", 3, (DBCAS_t) coordnames, + coords, 12, 2, "Pzonelist", "Pfacelist", DB_FLOAT, NULL); - DBPutUcdvar1(dbfile, "v", "parent", Pvar, 12, NULL, 0, DB_FLOAT, DB_NODECENT, - NULL); + DBPutUcdvar1(dbfile, "v", "parent", Pvar, 12, NULL, 0, DB_FLOAT, DB_NODECENT, NULL); Pnodelist[ 0] = 0; /* The first hex */ Pnodelist[ 1] = 1; @@ -281,8 +280,7 @@ +-------------------------------------*/ DBSetDeprecateWarnings(0); - DBPutUcdsubmesh(dbfile, "child", "parent", 1, "Czonelist", - "Cfacelist", NULL); + DBPutUcdsubmesh(dbfile, "child", "parent", 1, "Czonelist", "Cfacelist", NULL); DBSetDeprecateWarnings(3); Cnodelist[ 0] = 1; /* Just one hex, refering to parent nodes */ diff -Nru silo-llnl-4.10.2/tests/testall.c silo-llnl-4.10.2.real/tests/testall.c --- silo-llnl-4.10.2/tests/testall.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/testall.c 2018-02-15 17:25:43.000000000 +0000 @@ -80,7 +80,9 @@ #include #include -#ifdef WIN32 +#ifndef WIN32 +#include +#else #include #include #endif @@ -375,7 +377,9 @@ char *meshname = NULL, *var1name = NULL, *var2name = NULL; char *var3name = NULL, *var4name = NULL, *matname = NULL; - float *d=NULL, *p=NULL, *u=NULL, *v=NULL, *t=NULL, *ascii=NULL; + float *d=NULL, *p=NULL, *u=NULL, *v=NULL, *t=NULL, *distarr=NULL; + + char *ascii=NULL, *asciiw=NULL; int nmats; int matnos[9]; @@ -386,8 +390,8 @@ float *mix_vf = NULL; DBoptlist *optlist = NULL; - char **matnames = NULL; - char **matcolors = NULL; + char **matnames = NULL; + char **matcolors = NULL; int one = 1; int i, j; @@ -417,7 +421,9 @@ u = ALLOC_N (float, (nx + 1) * (ny + 1)); v = ALLOC_N (float, (nx + 1) * (ny + 1)); t = ALLOC_N (float, (nx + 1) * (ny + 1)); - ascii = ALLOC_N (float, nx * ny); + distarr = ALLOC_N (float, nx * ny); + ascii = ALLOC_N (char, nx * ny); + asciiw = ALLOC_N (char, nx * ny * 9); matlist = ALLOC_N (int, nx * ny); mix_next = ALLOC_N (int, 40 * ny); mix_mat = ALLOC_N (int, 40 * ny); @@ -514,18 +520,25 @@ ycenter = .5; for (i=0; imaxdist) maxdist = dist; + distarr[j*nx+i] = sqrt ((x[i] - xcenter) * (x[i] - xcenter) + + (y[j] - ycenter) * (y[j] - ycenter)); + if (distarr[j*nx+i]>maxdist) maxdist = distarr[j*nx+i]; } } for (i=0; i/dev/null 2>&1 rm -rf h5_hzip_files mkdir h5_hzip_files -mv *.h5 h5_hzip_files/. +mv multi_*d.h5 h5_hzip_files/. # # Create data without compression @@ -105,7 +104,7 @@ # do a diff on the files rm -f testhzip.out $topDir/../tools/browser/browser -q -e diff $df h5_hzip_files/$df 1>testhzip.out 2>&1 - if test `wc -l testhzip.out | tr -s ' ' | cut -d' ' -f2` -gt 0; then + if test `cat testhzip.out | wc -l | tr -d ' '` -gt 0; then result=1 break fi @@ -114,7 +113,7 @@ # # Cleanup # -#rm -rf h5_hzip_files -#rm -f testhzip.out +rm -rf h5_hzip_files +rm -f testhzip.out exit $result diff -Nru silo-llnl-4.10.2/tests/testlib.c silo-llnl-4.10.2.real/tests/testlib.c --- silo-llnl-4.10.2/tests/testlib.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/testlib.c 2018-02-15 17:25:43.000000000 +0000 @@ -134,8 +134,8 @@ for (i = 0; i < dims[1]; i++) y[i] = (float)i + .1; - meshid = DBPutQuadmesh(dbfile, name, coordnames, coords, dims, ndims, - DB_FLOAT, DB_COLLINEAR, optlist); + meshid = DBPutQuadmesh(dbfile, name, (DBCAS_t) coordnames, + coords, dims, ndims, DB_FLOAT, DB_COLLINEAR, optlist); varnames[0] = "d"; vars[0] = d; @@ -145,7 +145,7 @@ for (i = 0; i < zdims[0] * zdims[1]; i++) d[i] = (float)i *.2; - (void)DBPutQuadvar1(dbfile, "d", name, d, zdims, ndims, + DBPutQuadvar1(dbfile, "d", name, d, zdims, ndims, NULL, 0, DB_FLOAT, DB_ZONECENT, optlist); for (i = 0; i < dims[0] * dims[1]; i++) { @@ -153,9 +153,9 @@ v[i] = (float)i *.1; } - (void)DBPutQuadvar1(dbfile, "ucomp", name, u, dims, ndims, + DBPutQuadvar1(dbfile, "ucomp", name, u, dims, ndims, NULL, 0, DB_FLOAT, DB_NODECENT, optlist); - (void)DBPutQuadvar1(dbfile, "vcomp", name, v, dims, ndims, + DBPutQuadvar1(dbfile, "vcomp", name, v, dims, ndims, NULL, 0, DB_FLOAT, DB_NODECENT, optlist); vars[0] = u; @@ -163,9 +163,8 @@ varnames[0] = "u"; varnames[1] = "v"; - (void)DBPutQuadvar(dbfile, "velocity", name, 2, varnames, vars, - dims, ndims, NULL, 0, DB_FLOAT, DB_NODECENT, - optlist); + DBPutQuadvar(dbfile, "velocity", name, 2, (DBCAS_t) varnames, + vars, dims, ndims, NULL, 0, DB_FLOAT, DB_NODECENT, optlist); /* * Build material data. @@ -183,7 +182,7 @@ for (i = 45; i < 63; i++) matlist[i] = 3; - (void)DBPutMaterial(dbfile, "material", name, nmat, matnos, + DBPutMaterial(dbfile, "material", name, nmat, matnos, matlist, zones, ndims, NULL, NULL, NULL, NULL, mixlen, DB_FLOAT, NULL); @@ -255,8 +254,8 @@ for (i = 0; i < dims[2]; i++) z[i] = (float)i; - meshid = DBPutQuadmesh(dbfile, name, coordnames, coords, dims, ndims, - DB_FLOAT, DB_COLLINEAR, optlist); + meshid = DBPutQuadmesh(dbfile, name, (DBCAS_t) coordnames, + coords, dims, ndims, DB_FLOAT, DB_COLLINEAR, optlist); varnames[0] = "d"; vars[0] = d; @@ -268,7 +267,7 @@ d[i] = (float)i *.2; for (i=0;i<200; i++) - (void)DBPutQuadvar1(dbfile, "d", name, d, zdims, ndims, + DBPutQuadvar1(dbfile, "d", name, d, zdims, ndims, NULL, 0, DB_FLOAT, DB_ZONECENT, optlist); for (i = 0; i < dims[0] * dims[1] * dims[2]; i++) { @@ -278,11 +277,11 @@ } for (i=0;i<200; i++) - (void)DBPutQuadvar1(dbfile, "ucomp", name, u, dims, ndims, + DBPutQuadvar1(dbfile, "ucomp", name, u, dims, ndims, NULL, 0, DB_FLOAT, DB_NODECENT, 0); - (void)DBPutQuadvar1(dbfile, "vcomp", name, v, dims, ndims, + DBPutQuadvar1(dbfile, "vcomp", name, v, dims, ndims, NULL, 0, DB_FLOAT, DB_NODECENT, optlist); - (void)DBPutQuadvar1(dbfile, "wcomp", name, w, dims, ndims, + DBPutQuadvar1(dbfile, "wcomp", name, w, dims, ndims, NULL, 0, DB_FLOAT, DB_NODECENT, optlist); vars[0] = u; @@ -292,9 +291,8 @@ varnames[1] = "v"; varnames[2] = "w"; - (void)DBPutQuadvar(dbfile, "velocity", name, 3, varnames, vars, - dims, ndims, NULL, 0, DB_FLOAT, DB_NODECENT, - optlist); + DBPutQuadvar(dbfile, "velocity", name, 3, (DBCAS_t) varnames, + vars, dims, ndims, NULL, 0, DB_FLOAT, DB_NODECENT, optlist); /* * Bulid material data. @@ -312,7 +310,7 @@ for (i = 45; i < 63; i++) matlist[i] = 3; - (void)DBPutMaterial(dbfile, "material", name, nmat, matnos, + DBPutMaterial(dbfile, "material", name, nmat, matnos, matlist, zones, ndims, NULL, NULL, NULL, NULL, mixlen, DB_FLOAT, NULL); @@ -443,44 +441,44 @@ vars[0] = d; varnames[0] = "d"; - (void)DBPutFacelist(dbfile, "fl", NFACES, 2, fnodelist, LFNODELIST, 0, + DBPutFacelist(dbfile, "fl", NFACES, 2, fnodelist, LFNODELIST, 0, NULL, &fshapesize, &fshapecnt, NFSHAPES, NULL, NULL, 0); - (void)DBPutZonelist(dbfile, "zl", NZONES, 2, znodelist, LZNODELIST, 0, + DBPutZonelist(dbfile, "zl", NZONES, 2, znodelist, LZNODELIST, 0, &zshapesize, &zshapecnt, NZSHAPES); - meshid = DBPutUcdmesh(dbfile, name, 2, coordnames, coords, - NNODES, NZONES, "zl", "fl", DB_FLOAT, NULL); + meshid = DBPutUcdmesh(dbfile, name, 2, (DBCAS_t) coordnames, + coords, NNODES, NZONES, "zl", "fl", DB_FLOAT, NULL); vars[0] = d; varnames[0] = "d"; - (void)DBPutUcdvar(dbfile, varnames[0], name, 1, varnames, vars, NZONES, - NULL, 0, idatatype, DB_ZONECENT, NULL); + DBPutUcdvar(dbfile, varnames[0], name, 1, (DBCAS_t) varnames, + vars, NZONES, NULL, 0, idatatype, DB_ZONECENT, NULL); vars[0] = u; varnames[0] = "u"; - (void)DBPutUcdvar(dbfile, varnames[0], name, 1, varnames, vars, NNODES, - NULL, 0, idatatype, DB_NODECENT, NULL); + DBPutUcdvar(dbfile, varnames[0], name, 1, (DBCAS_t) varnames, + vars, NNODES, NULL, 0, idatatype, DB_NODECENT, NULL); vars[0] = v; varnames[0] = "v"; - (void)DBPutUcdvar(dbfile, varnames[0], name, 1, varnames, vars, NNODES, - NULL, 0, idatatype, DB_NODECENT, NULL); + DBPutUcdvar(dbfile, varnames[0], name, 1, (DBCAS_t) varnames, + vars, NNODES, NULL, 0, idatatype, DB_NODECENT, NULL); vars[0] = u; varnames[0] = "ucomp"; vars[1] = v; varnames[1] = "vcomp"; - (void)DBPutUcdvar(dbfile, "velocity", name, 2, varnames, vars, NNODES, - NULL, 0, idatatype, DB_NODECENT, NULL); + DBPutUcdvar(dbfile, "velocity", name, 2, (DBCAS_t) varnames, + vars, NNODES, NULL, 0, idatatype, DB_NODECENT, NULL); dims = NZONES; - (void)DBPutMaterial(dbfile, "material", name, NMATS, matnos, + DBPutMaterial(dbfile, "material", name, NMATS, matnos, matlist, &dims, 1, mix_next, mix_mat, mix_zone, mix_vf, mixlen, DB_FLOAT, NULL); #if 0 @@ -496,7 +494,7 @@ DBConvertMat(NMATS, NZONES, nmix, mixedels, imatlist, matnos, vf, DB_FLOAT, &mixlen, matlist, mix_next, mix_mat, mix_zone, mix_vf); - (void)DBPutMaterial(dbfile, "material", name, matnos, NMATS, + DBPutMaterial(dbfile, "material", name, matnos, NMATS, matlist, &dims, 1, mix_next, mix_mat, mix_zone, mix_vf, mixlen, DB_FLOAT, NULL); @@ -693,7 +691,7 @@ &zshapesize, &zshapecnt, NZSHAPES, matlist, 0); - (void)DBPutFacelist(dbfile, "fl", fl->nfaces, 3, fl->nodelist, + DBPutFacelist(dbfile, "fl", fl->nfaces, 3, fl->nodelist, fl->lnodelist, 0, fl->zoneno, fl->shapesize, fl->shapecnt, fl->nshapes, NULL, NULL, 0); @@ -702,38 +700,38 @@ * fzoneno, &fshapesize, &fshapecnt, NFSHAPES, * NULL, NULL, 0); */ - (void)DBPutZonelist(dbfile, "zl", NZONES, 3, znodelist, LZNODELIST, 0, + DBPutZonelist(dbfile, "zl", NZONES, 3, znodelist, LZNODELIST, 0, &zshapesize, &zshapecnt, NZSHAPES); - meshid = DBPutUcdmesh(dbfile, name, 3, coordnames, coords, - NNODES, NZONES, "zl", "fl", DB_FLOAT, NULL); + meshid = DBPutUcdmesh(dbfile, name, 3, (DBCAS_t) coordnames, + coords, NNODES, NZONES, "zl", "fl", DB_FLOAT, NULL); - (void)DBPutMaterial(dbfile, "material", name, 2, matnos, matlist, + DBPutMaterial(dbfile, "material", name, 2, matnos, matlist, &dims, 1, NULL, NULL, NULL, NULL, 0, DB_FLOAT, NULL); vars[0] = d; varnames[0] = "d"; - (void)DBPutUcdvar(dbfile, varnames[0], name, 1, varnames, vars, NZONES, - NULL, 0, idatatype, DB_ZONECENT, NULL); + DBPutUcdvar(dbfile, varnames[0], name, 1, (DBCAS_t) varnames, + vars, NZONES, NULL, 0, idatatype, DB_ZONECENT, NULL); vars[0] = u; varnames[0] = "u"; - (void)DBPutUcdvar(dbfile, varnames[0], name, 1, varnames, vars, NNODES, - NULL, 0, idatatype, DB_NODECENT, NULL); + DBPutUcdvar(dbfile, varnames[0], name, 1, (DBCAS_t) varnames, + vars, NNODES, NULL, 0, idatatype, DB_NODECENT, NULL); vars[0] = v; varnames[0] = "v"; - (void)DBPutUcdvar(dbfile, varnames[0], name, 1, varnames, vars, NNODES, - NULL, 0, idatatype, DB_NODECENT, NULL); + DBPutUcdvar(dbfile, varnames[0], name, 1, (DBCAS_t) varnames, + vars, NNODES, NULL, 0, idatatype, DB_NODECENT, NULL); vars[0] = w; varnames[0] = "w"; - (void)DBPutUcdvar(dbfile, varnames[0], name, 1, varnames, vars, NNODES, - NULL, 0, idatatype, DB_NODECENT, NULL); + DBPutUcdvar(dbfile, varnames[0], name, 1, (DBCAS_t) varnames, + vars, NNODES, NULL, 0, idatatype, DB_NODECENT, NULL); vars[0] = u; varnames[0] = "ucomp"; @@ -742,8 +740,8 @@ vars[2] = w; varnames[2] = "wcomp"; - (void)DBPutUcdvar(dbfile, "velocity", name, 3, varnames, vars, NNODES, - NULL, 0, idatatype, DB_NODECENT, NULL); + DBPutUcdvar(dbfile, "velocity", name, 3, (DBCAS_t) varnames, + vars, NNODES, NULL, 0, idatatype, DB_NODECENT, NULL); return (meshid); } @@ -837,26 +835,26 @@ vars[0] = d; varnames[0] = "d"; - (void)DBPutFacelist(dbfile, "fl", nfaces, 2, fnodelist, lfnodelist, 0, + DBPutFacelist(dbfile, "fl", nfaces, 2, fnodelist, lfnodelist, 0, NULL, &fshapesize, &fshapecnt, nfshapes, NULL, NULL, 0); - (void)DBPutZonelist(dbfile, "zl", nzones, 2, znodelist, lznodelist, 0, + DBPutZonelist(dbfile, "zl", nzones, 2, znodelist, lznodelist, 0, &zshapesize, &zshapecnt, nzshapes); - meshid = DBPutUcdmesh(dbfile, name, 2, coordnames, coords, - nnodes, nzones, "zl", "fl", DB_FLOAT, NULL); + meshid = DBPutUcdmesh(dbfile, name, 2, (DBCAS_t) coordnames, + coords, nnodes, nzones, "zl", "fl", DB_FLOAT, NULL); vars[0] = d; varnames[0] = "d"; - (void)DBPutUcdvar(dbfile, varnames[0], name, 1, varnames, vars, nzones, - NULL, 0, idatatype, DB_ZONECENT, NULL); + DBPutUcdvar(dbfile, varnames[0], name, 1, (DBCAS_t) varnames, + vars, nzones, NULL, 0, idatatype, DB_ZONECENT, NULL); vars[0] = u; varnames[0] = "u"; - (void)DBPutUcdvar(dbfile, varnames[0], name, 1, varnames, vars, nnodes, - NULL, 0, idatatype, DB_NODECENT, NULL); + DBPutUcdvar(dbfile, varnames[0], name, 1, (DBCAS_t) varnames, + vars, nnodes, NULL, 0, idatatype, DB_NODECENT, NULL); return (meshid); } diff -Nru silo-llnl-4.10.2/tests/testpdb.c silo-llnl-4.10.2.real/tests/testpdb.c --- silo-llnl-4.10.2/tests/testpdb.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/testpdb.c 2018-02-15 17:25:43.000000000 +0000 @@ -60,7 +60,6 @@ #include #include -char *safe_strdup(const char *); typedef struct { char *name; @@ -113,12 +112,14 @@ 10., 11., 12., 13., 14., 15., 16., 17., 18., 19.}; -main () +int main () { CreateFile("abc.pdb", "mesh", "ucdmesh", 17, comp_names, pdb_names); ReadFile("abc.pdb", "mesh"); + + return 0; } void diff -Nru silo-llnl-4.10.2/tests/TestReadMask.c silo-llnl-4.10.2.real/tests/TestReadMask.c --- silo-llnl-4.10.2/tests/TestReadMask.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/TestReadMask.c 2018-02-15 17:25:43.000000000 +0000 @@ -69,16 +69,16 @@ * Date: Thu May 17 13:00:50 PST 2001 * */ -void printMask(FILE * fp, long mask); -int test_readmat(DBfile * dbfile, const char *testName, long mask); -int test_readpointmesh(DBfile * dbfile, long mask); -int test_readpointvar(DBfile * dbfile, long mask); -int test_readquadmesh(DBfile * dbfile, long mask); -int test_readquadvar(DBfile * dbfile, long mask); -int test_readucdmesh(DBfile * dbfile, const char *testName, long mask); -int test_readucdvar(DBfile * dbfile, long mask); -int test_readfacelist(DBfile * dbfile, long mask); -int test_readzonelist(DBfile * dbfile, long mask); +void printMask(FILE * fp, unsigned long long mask); +int test_readmat(DBfile * dbfile, const char *testName, unsigned long long mask); +int test_readpointmesh(DBfile * dbfile, unsigned long long mask); +int test_readpointvar(DBfile * dbfile, unsigned long long mask); +int test_readquadmesh(DBfile * dbfile, unsigned long long mask); +int test_readquadvar(DBfile * dbfile, unsigned long long mask); +int test_readucdmesh(DBfile * dbfile, const char *testName, unsigned long long mask); +int test_readucdvar(DBfile * dbfile, unsigned long long mask); +int test_readfacelist(DBfile * dbfile, unsigned long long mask); +int test_readzonelist(DBfile * dbfile, unsigned long long mask); void ResetTime(void); int ElapsedTime(void); @@ -115,7 +115,7 @@ int show_all_errors = FALSE; /* Set the masks used for the tests. */ - long mask[] = { + unsigned long long mask[] = { DBAll, DBMatMatnos, DBMatMatlist, @@ -178,7 +178,7 @@ printf("extraordinarily large. For an accurate timing test, this cache\n"); printf("would have to be disabled.\n\n"); - printMask(stdout, DBGetDataReadMask()); + printMask(stdout, DBGetDataReadMask2()); printf("\n\n"); /************************************************************************** @@ -357,7 +357,7 @@ } int -test_readmat(DBfile * dbfile, const char *testName, long mask) +test_readmat(DBfile * dbfile, const char *testName, unsigned long long mask) { int ms; DBmaterial *mat = NULL; @@ -365,9 +365,9 @@ /* Reset the timer. */ ResetTime(); - DBSetDataReadMask(mask); + DBSetDataReadMask2(mask); printf("%s: ", testName); - printMask(stdout, DBGetDataReadMask()); + printMask(stdout, DBGetDataReadMask2()); printf("\n"); /* Read the material list and print the material struct. */ mat = DBGetMaterial(dbfile, "mat1"); @@ -411,7 +411,7 @@ } int -test_readpointmesh(DBfile * dbfile, long mask) +test_readpointmesh(DBfile * dbfile, unsigned long long mask) { int ms; DBpointmesh *pmesh = NULL; @@ -419,9 +419,9 @@ /* Reset the timer. */ ResetTime(); - DBSetDataReadMask(mask); + DBSetDataReadMask2(mask); printf("test_readpointmesh: "); - printMask(stdout, DBGetDataReadMask()); + printMask(stdout, DBGetDataReadMask2()); printf("\n"); /* Read the material list and print the material struct. */ pmesh = DBGetPointmesh(dbfile, "dir1/pmesh"); @@ -454,7 +454,7 @@ * Removed condition on call to DBFreeMeshvar */ int -test_readpointvar(DBfile * dbfile, long mask) +test_readpointvar(DBfile * dbfile, unsigned long long mask) { int ms; DBmeshvar *mvar = NULL; @@ -462,9 +462,9 @@ /* Reset the timer. */ ResetTime(); - DBSetDataReadMask(mask); + DBSetDataReadMask2(mask); printf("test_readpointvar: "); - printMask(stdout, DBGetDataReadMask()); + printMask(stdout, DBGetDataReadMask2()); printf("\n"); /* Read the material list and print the material struct. */ mvar = DBGetPointvar(dbfile, "dir1/d"); @@ -488,7 +488,7 @@ } int -test_readquadmesh(DBfile * dbfile, long mask) +test_readquadmesh(DBfile * dbfile, unsigned long long mask) { int ms; DBquadmesh *qmesh = NULL; @@ -496,9 +496,9 @@ /* Reset the timer. */ ResetTime(); - DBSetDataReadMask(mask); + DBSetDataReadMask2(mask); printf("test_readquadmesh: "); - printMask(stdout, DBGetDataReadMask()); + printMask(stdout, DBGetDataReadMask2()); printf("\n"); /* Read the quad mesh and print the quadmesh struct. */ qmesh = DBGetQuadmesh(dbfile, "quadmesh2d"); @@ -531,7 +531,7 @@ * Removed condition on DBFreeQuadvar call. */ int -test_readquadvar(DBfile * dbfile, long mask) +test_readquadvar(DBfile * dbfile, unsigned long long mask) { int ms; DBquadvar *qvar = NULL; @@ -539,9 +539,9 @@ /* Reset the timer. */ ResetTime(); - DBSetDataReadMask(mask); + DBSetDataReadMask2(mask); printf("test_readquadvar: "); - printMask(stdout, DBGetDataReadMask()); + printMask(stdout, DBGetDataReadMask2()); printf("\n"); /* Read the quad var and print the struct. */ qvar = DBGetQuadvar(dbfile, "d"); @@ -566,7 +566,7 @@ } int -test_readucdmesh(DBfile * dbfile, const char *testName, long mask) +test_readucdmesh(DBfile * dbfile, const char *testName, unsigned long long mask) { int ms; DBucdmesh *umesh = NULL; @@ -574,9 +574,9 @@ /* Reset the timer. */ ResetTime(); - DBSetDataReadMask(mask); + DBSetDataReadMask2(mask); printf("%s: ", testName); - printMask(stdout, DBGetDataReadMask()); + printMask(stdout, DBGetDataReadMask2()); printf("\n"); /* Read the ucd mesh and print out the struct. */ umesh = DBGetUcdmesh(dbfile, "mesh1"); @@ -613,7 +613,7 @@ * Removed condition on DBFreeUcdvar call. */ int -test_readucdvar(DBfile * dbfile, long mask) +test_readucdvar(DBfile * dbfile, unsigned long long mask) { int ms; DBucdvar *uvar = NULL; @@ -621,9 +621,9 @@ /* Reset the timer. */ ResetTime(); - DBSetDataReadMask(mask); + DBSetDataReadMask2(mask); printf("test_readucdvar: "); - printMask(stdout, DBGetDataReadMask()); + printMask(stdout, DBGetDataReadMask2()); printf("\n"); /* Read the quad var and print the struct. */ uvar = DBGetUcdvar(dbfile, "u"); @@ -648,7 +648,7 @@ } int -test_readfacelist(DBfile * dbfile, long mask) +test_readfacelist(DBfile * dbfile, unsigned long long mask) { int ms; DBfacelist *fl = NULL; @@ -656,9 +656,9 @@ /* Reset the timer. */ ResetTime(); - DBSetDataReadMask(mask); + DBSetDataReadMask2(mask); printf("test_readfacelist: "); - printMask(stdout, DBGetDataReadMask()); + printMask(stdout, DBGetDataReadMask2()); printf("\n"); /* Read the face list and print the struct. */ fl = DBGetFacelist(dbfile, "fl"); @@ -688,7 +688,7 @@ } int -test_readzonelist(DBfile * dbfile, long mask) +test_readzonelist(DBfile * dbfile, unsigned long long mask) { int ms; DBzonelist *zl = NULL; @@ -696,9 +696,9 @@ /* Reset the timer. */ ResetTime(); - DBSetDataReadMask(mask); + DBSetDataReadMask2(mask); printf("test_readzonelist: "); - printMask(stdout, DBGetDataReadMask()); + printMask(stdout, DBGetDataReadMask2()); printf("\n"); /* Read the face list and print the struct. */ zl = DBGetZonelist(dbfile, "zl"); @@ -806,7 +806,7 @@ } void -printMask(FILE * fp, long mask) +printMask(FILE * fp, unsigned long long mask) { fprintf(fp, "readMask={"); if (mask == DBAll) diff -Nru silo-llnl-4.10.2/tests/testsuite silo-llnl-4.10.2.real/tests/testsuite --- silo-llnl-4.10.2/tests/testsuite 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/testsuite 2018-02-15 17:25:43.000000000 +0000 @@ -627,83 +627,86 @@ # List of the tested programs. at_tested='' # List of the all the test groups. -at_groups_all=' 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71' +at_groups_all=' 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74' # As many question marks as there are digits in the last test group number. # Used to normalize the test group numbers so that `ls' lists them in # numerical order. at_format='??' # Description of all the test groups. at_help_all="1;testsuite.at:63;version;; -2;testsuite.at:86;namescheme;; -3;testsuite.at:89;point;; -4;testsuite.at:92;extface;; -5;testsuite.at:95;testall -small;; -6;testsuite.at:98;TestReadMask;; -7;testsuite.at:104;array;; -8;testsuite.at:107;multi_test testread;; -9;testsuite.at:110;multi_test earlyclose;; -10;testsuite.at:113;partial_io;; -11;testsuite.at:116;simple;; -12;testsuite.at:119;ucd;; -13;testsuite.at:122;ucdsamp3;; -14;testsuite.at:125;testall -small -fortran;; -15;testsuite.at:128;obj;; -16;testsuite.at:131;onehex;; -17;testsuite.at:134;oneprism;; -18;testsuite.at:137;onepyramid;; -19;testsuite.at:140;onetet;; -20;testsuite.at:143;subhex;; -21;testsuite.at:146;twohex;; -22;testsuite.at:149;multispec;; -23;testsuite.at:152;sami;; -24;testsuite.at:155;specmix;; -25;testsuite.at:158;spec;; -26;testsuite.at:161;group_test;; -27;testsuite.at:164;listtypes;; -28;testsuite.at:168;alltypes;; -29;testsuite.at:171;wave;; -30;testsuite.at:174;polyzl;; -31;testsuite.at:177;csg;; -32;testsuite.at:180;rocket;; -33;testsuite.at:183;mmadjacency;; -34;testsuite.at:186;mat3d_3across;; -35;testsuite.at:189;ucd1d;; -36;testsuite.at:192;dir;; -37;testsuite.at:195;quad;; -38;testsuite.at:198;arbpoly2d;; -39;testsuite.at:201;readstuff;; -40;testsuite.at:205;testfs;; -41;testsuite.at:208;empty;; -42;testsuite.at:213;read;python; -43;testsuite.at:218;write;python; -44;testsuite.at:233;error handling;python; -45;testsuite.at:238;write objects;python; -46;testsuite.at:244;testpdb;; -47;testsuite.at:247;pdbtst;; -48;testsuite.at:252;grab;; -49;testsuite.at:255;compression gzip;compression; -50;testsuite.at:260;compression szip;compression; -51;testsuite.at:265;compression fpzip;compression; -52;testsuite.at:270;compression lossy3;compression; -53;testsuite.at:275;compression minratio1000;compression; -54;testsuite.at:279;testhzip;compression; -55;testsuite.at:283;checksums;; -56;testsuite.at:286;xversion;; -57;testsuite.at:289;largefile;large; -58;testsuite.at:295;arrayf77;fortran; -59;testsuite.at:299;curvef77;fortran; -60;testsuite.at:303;matf77;fortran; -61;testsuite.at:307;pointf77;fortran; -62;testsuite.at:311;quadf77;fortran; -63;testsuite.at:315;testallf77;fortran; -64;testsuite.at:319;ucdf77;fortran; -65;testsuite.at:323;csgmesh;fortran; -66;testsuite.at:329;silock;tools; -67;testsuite.at:333;force single;conversions; -68;testsuite.at:338;multi_file;large; -69;testsuite.at:342;multi_file use-ns;large; -70;testsuite.at:346;testall -medium;large; -71;testsuite.at:350;testall -large;large; +2;testsuite.at:88;namescheme;; +3;testsuite.at:91;realloc_obj_and_opts;; +4;testsuite.at:94;point;; +5;testsuite.at:97;extface;; +6;testsuite.at:100;testall -small;; +7;testsuite.at:103;TestReadMask;; +8;testsuite.at:109;array;; +9;testsuite.at:112;multi_test testread;; +10;testsuite.at:115;multi_test earlyclose;; +11;testsuite.at:118;partial_io;; +12;testsuite.at:121;simple;; +13;testsuite.at:124;ucd;; +14;testsuite.at:127;ucdsamp3;; +15;testsuite.at:130;testall -small -fortran;; +16;testsuite.at:133;obj;; +17;testsuite.at:136;onehex;; +18;testsuite.at:139;oneprism;; +19;testsuite.at:142;onepyramid;; +20;testsuite.at:145;onetet;; +21;testsuite.at:148;subhex;; +22;testsuite.at:151;twohex;; +23;testsuite.at:154;multispec;; +24;testsuite.at:157;sami;; +25;testsuite.at:160;specmix;; +26;testsuite.at:163;spec;; +27;testsuite.at:166;group_test;; +28;testsuite.at:169;listtypes;; +29;testsuite.at:173;alltypes;; +30;testsuite.at:176;wave;; +31;testsuite.at:179;polyzl;; +32;testsuite.at:182;csg;; +33;testsuite.at:185;rocket;; +34;testsuite.at:188;mmadjacency;; +35;testsuite.at:191;mat3d_3across;; +36;testsuite.at:194;ucd1d;; +37;testsuite.at:197;dir;; +38;testsuite.at:200;quad;; +39;testsuite.at:203;arbpoly2d;; +40;testsuite.at:206;readstuff;; +41;testsuite.at:210;testfs;; +42;testsuite.at:213;empty;; +43;testsuite.at:218;read;python; +44;testsuite.at:223;write;python; +45;testsuite.at:238;error handling;python; +46;testsuite.at:243;write objects;python; +47;testsuite.at:249;json;json; +48;testsuite.at:256;testpdb;; +49;testsuite.at:259;pdbtst;; +50;testsuite.at:264;grab;; +51;testsuite.at:267;compression gzip;compression; +52;testsuite.at:272;compression szip;compression; +53;testsuite.at:277;compression fpzip;compression; +54;testsuite.at:282;compression lossy3;compression; +55;testsuite.at:287;compression minratio1000;compression; +56;testsuite.at:291;testhzip;compression; +57;testsuite.at:295;checksums;; +58;testsuite.at:298;xversion;; +59;testsuite.at:301;largefile;large; +60;testsuite.at:307;arrayf77;fortran; +61;testsuite.at:311;arrayf90;fortran; +62;testsuite.at:315;curvef77;fortran; +63;testsuite.at:319;matf77;fortran; +64;testsuite.at:323;pointf77;fortran; +65;testsuite.at:327;quadf77;fortran; +66;testsuite.at:331;testallf77;fortran; +67;testsuite.at:335;ucdf77;fortran; +68;testsuite.at:339;csgmesh;fortran; +69;testsuite.at:345;silock;tools; +70;testsuite.at:349;force single;conversions; +71;testsuite.at:354;multi_file;large; +72;testsuite.at:358;multi_file use-ns;large; +73;testsuite.at:362;testall -medium;large; +74;testsuite.at:366;testall -large;large; " # at_func_validate_ranges [NAME...] @@ -715,7 +718,7 @@ for at_grp do eval at_value=\$$at_grp - if test $at_value -lt 1 || test $at_value -gt 71; then + if test $at_value -lt 1 || test $at_value -gt 74; then $as_echo "invalid test group: $at_value" >&2 exit 1 fi @@ -944,7 +947,7 @@ _ATEOF cat <<_ATEOF || at_write_fail=1 -Report bugs to . +Report bugs to . _ATEOF exit $at_write_fail fi @@ -952,7 +955,7 @@ # List of tests. if $at_list_p; then cat <<_ATEOF || at_write_fail=1 -silo 4.9.1 test suite: VALGRIND="$VALGRIND" STARGS="$STARGS" test groups: +silo 4.10.2 test suite: VALGRIND="$VALGRIND" STARGS="$STARGS" test groups: NUM: FILE-NAME:LINE TEST-GROUP-NAME KEYWORDS @@ -981,7 +984,7 @@ exit $at_write_fail fi if $at_version_p; then - $as_echo "$as_me (silo 4.9.1)" && + $as_echo "$as_me (silo 4.10.2)" && cat <<\_ACEOF || at_write_fail=1 Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 @@ -1009,21 +1012,24 @@ # Banner 1. testsuite.at:62 # Category starts at test group 1. at_banner_text_1="Non-driver-specific" -# Banner 2. testsuite.at:212 -# Category starts at test group 42. +# Banner 2. testsuite.at:217 +# Category starts at test group 43. at_banner_text_2="pythonmodule" -# Banner 3. testsuite.at:243 -# Category starts at test group 46. -at_banner_text_3="PDB Lite" -# Banner 4. testsuite.at:251 +# Banner 3. testsuite.at:248 +# Category starts at test group 47. +at_banner_text_3="JSON (experimental)" +# Banner 4. testsuite.at:255 # Category starts at test group 48. -at_banner_text_4="HDF5 Driver Specific" -# Banner 5. testsuite.at:294 -# Category starts at test group 58. -at_banner_text_5="Fortran" -# Banner 6. testsuite.at:328 -# Category starts at test group 66. -at_banner_text_6="Special" +at_banner_text_4="PDB Lite" +# Banner 5. testsuite.at:263 +# Category starts at test group 50. +at_banner_text_5="HDF5 Driver Specific" +# Banner 6. testsuite.at:306 +# Category starts at test group 60. +at_banner_text_6="Fortran" +# Banner 7. testsuite.at:344 +# Category starts at test group 69. +at_banner_text_7="Special" # Take any -C into account. if $at_change_dir ; then @@ -1187,11 +1193,11 @@ # Banners and logs. sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX -## silo 4.9.1 test suite: VALGRIND="$VALGRIND" STARGS="$STARGS". ## +## silo 4.10.2 test suite: VALGRIND="$VALGRIND" STARGS="$STARGS". ## _ASBOX { sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX -## silo 4.9.1 test suite: VALGRIND="$VALGRIND" STARGS="$STARGS". ## +## silo 4.10.2 test suite: VALGRIND="$VALGRIND" STARGS="$STARGS". ## _ASBOX echo @@ -1621,7 +1627,7 @@ sed "s/^ */$as_me: WARNING: /" <<_ATEOF A failure happened in a test group before any test could be run. This means that test suite is improperly designed. Please - report this failure to . + report this failure to . _ATEOF $as_echo "$at_setup_line" >"$at_check_line_file" fi @@ -1921,8 +1927,8 @@ echo $as_echo "Please send \`${at_testdir+${at_testdir}/}$as_me.log' and all information you think might help: - To: - Subject: [silo 4.9.1] $as_me: $at_fail_list${at_fail_list:+ failed${at_xpass_list:+, }}$at_xpass_list${at_xpass_list:+ passed unexpectedly} + To: + Subject: [silo 4.10.2] $as_me: $at_fail_list${at_fail_list:+ failed${at_xpass_list:+, }}$at_xpass_list${at_xpass_list:+ passed unexpectedly} " if test $at_debug_p = false; then echo @@ -1952,17 +1958,19 @@ $at_traceon cat >expout <<'_ATEOF' -This version of Silo is greater than or equal to 4.6 -This version of Silo is NOT greater than or equal to 90.5.2 -DBVersion() returns "4.9.1" +This version of the Silo library is greater than or equal to 4 +This version of the Silo library is NOT greater than or equal to 9 +This version of the Silo library is greater than or equal to 4.6 +This version of the Silo library is NOT greater than or equal to 90.5.2 +DBVersion() returns "4.10.2" DBVersionGE(4,6,0) returns 1 DBVersionGE(90,5,2) returns 0 On file handle returned from DBCreate... - DBFileVersion() returns "4.9.1" + DBFileVersion() returns "4.10.2" DBFileVersionGE(4,6,0) returns 1 DBFileVersionGE(90,5,2) returns 0 On file handle returned from DBOpen... - DBFileVersion() returns "4.9.1" + DBFileVersion() returns "4.10.2" DBFileVersionGE(4,6,0) returns 1 DBFileVersionGE(90,5,2) returns 0 On old silo file handle returned from DBOpen... @@ -1973,8 +1981,8 @@ _ATEOF { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:84: \$VALGRIND version \$STARGS" -echo testsuite.at:84 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:86: \$VALGRIND version \$STARGS" +echo testsuite.at:86 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "$VALGRIND version $STARGS"; then @@ -1987,7 +1995,7 @@ at_failed=false echo stderr:; cat "$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:84" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:86" $at_failed && at_func_log_failure $at_traceon; } @@ -1998,20 +2006,20 @@ at_status=`cat "$at_status_file"` #AT_STOP_1 #AT_START_2 -# 2. testsuite.at:86: namescheme -at_setup_line='testsuite.at:86' +# 2. testsuite.at:88: namescheme +at_setup_line='testsuite.at:88' at_func_banner 1 at_desc="namescheme" $at_quiet $as_echo_n " 2: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "2. testsuite.at:86: testing ..." + $as_echo "2. testsuite.at:88: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:87: \$VALGRIND namescheme" -echo testsuite.at:87 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:89: \$VALGRIND namescheme" +echo testsuite.at:89 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "$VALGRIND namescheme"; then @@ -2024,7 +2032,7 @@ at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:87" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:89" $at_failed && at_func_log_failure $at_traceon; } @@ -2035,20 +2043,57 @@ at_status=`cat "$at_status_file"` #AT_STOP_2 #AT_START_3 -# 3. testsuite.at:89: point -at_setup_line='testsuite.at:89' +# 3. testsuite.at:91: realloc_obj_and_opts +at_setup_line='testsuite.at:91' +at_func_banner 1 +at_desc="realloc_obj_and_opts" +$at_quiet $as_echo_n " 3: $at_desc " +at_xfail=no +echo "# -*- compilation -*-" >> "$at_group_log" +( + $as_echo "3. testsuite.at:91: testing ..." + $at_traceon + +{ $at_traceoff +$as_echo "$at_srcdir/testsuite.at:92: \$VALGRIND realloc_obj_and_opts \$STARGS" +echo testsuite.at:92 >"$at_check_line_file" + +if test -n "$at_traceon" \ + && at_func_check_newline "$VALGRIND realloc_obj_and_opts $STARGS"; then + ( $at_traceon; $VALGRIND realloc_obj_and_opts $STARGS ) >"$at_stdout" 2>"$at_stder1" + at_func_filter_trace $? +else + ( :; $VALGRIND realloc_obj_and_opts $STARGS ) >"$at_stdout" 2>"$at_stderr" +fi +at_status=$? +at_failed=false +at_func_diff_devnull "$at_stderr" || at_failed=: +echo stdout:; cat "$at_stdout" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:92" + +$at_failed && at_func_log_failure +$at_traceon; } + + $at_traceoff + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 | eval $at_tee_pipe +at_status=`cat "$at_status_file"` +#AT_STOP_3 +#AT_START_4 +# 4. testsuite.at:94: point +at_setup_line='testsuite.at:94' at_func_banner 1 at_desc="point" -$at_quiet $as_echo_n " 3: $at_desc " +$at_quiet $as_echo_n " 4: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "3. testsuite.at:89: testing ..." + $as_echo "4. testsuite.at:94: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:90: \$VALGRIND point \$STARGS" -echo testsuite.at:90 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:95: \$VALGRIND point \$STARGS" +echo testsuite.at:95 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "$VALGRIND point $STARGS"; then @@ -2061,7 +2106,7 @@ at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:90" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:95" $at_failed && at_func_log_failure $at_traceon; } @@ -2070,22 +2115,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_3 -#AT_START_4 -# 4. testsuite.at:92: extface -at_setup_line='testsuite.at:92' +#AT_STOP_4 +#AT_START_5 +# 5. testsuite.at:97: extface +at_setup_line='testsuite.at:97' at_func_banner 1 at_desc="extface" -$at_quiet $as_echo_n " 4: $at_desc " +$at_quiet $as_echo_n " 5: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "4. testsuite.at:92: testing ..." + $as_echo "5. testsuite.at:97: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:93: \$VALGRIND extface \$STARGS" -echo testsuite.at:93 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:98: \$VALGRIND extface \$STARGS" +echo testsuite.at:98 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "$VALGRIND extface $STARGS"; then @@ -2098,7 +2143,7 @@ at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:93" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:98" $at_failed && at_func_log_failure $at_traceon; } @@ -2107,22 +2152,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_4 -#AT_START_5 -# 5. testsuite.at:95: testall -small -at_setup_line='testsuite.at:95' +#AT_STOP_5 +#AT_START_6 +# 6. testsuite.at:100: testall -small +at_setup_line='testsuite.at:100' at_func_banner 1 at_desc="testall -small" -$at_quiet $as_echo_n " 5: $at_desc " +$at_quiet $as_echo_n " 6: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "5. testsuite.at:95: testing ..." + $as_echo "6. testsuite.at:100: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:96: \$VALGRIND testall -small \$STARGS" -echo testsuite.at:96 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:101: \$VALGRIND testall -small \$STARGS" +echo testsuite.at:101 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "$VALGRIND testall -small $STARGS"; then @@ -2135,7 +2180,7 @@ at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:96" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:101" $at_failed && at_func_log_failure $at_traceon; } @@ -2144,22 +2189,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_5 -#AT_START_6 -# 6. testsuite.at:98: TestReadMask -at_setup_line='testsuite.at:98' +#AT_STOP_6 +#AT_START_7 +# 7. testsuite.at:103: TestReadMask +at_setup_line='testsuite.at:103' at_func_banner 1 at_desc="TestReadMask" -$at_quiet $as_echo_n " 6: $at_desc " +$at_quiet $as_echo_n " 7: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "6. testsuite.at:98: testing ..." + $as_echo "7. testsuite.at:103: testing ..." $at_traceon # needs files generated by other execs { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:99: extface \$STARGS" -echo testsuite.at:99 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:104: extface \$STARGS" +echo testsuite.at:104 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "extface $STARGS"; then @@ -2172,14 +2217,14 @@ at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:99" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:104" $at_failed && at_func_log_failure $at_traceon; } # don't valgrind these intermediate parts { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:100: point \$STARGS" -echo testsuite.at:100 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:105: point \$STARGS" +echo testsuite.at:105 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "point $STARGS"; then @@ -2192,14 +2237,14 @@ at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:100" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:105" $at_failed && at_func_log_failure $at_traceon; } { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:101: testall -small \$STARGS" -echo testsuite.at:101 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:106: testall -small \$STARGS" +echo testsuite.at:106 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "testall -small $STARGS"; then @@ -2212,14 +2257,14 @@ at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:101" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:106" $at_failed && at_func_log_failure $at_traceon; } { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:102: \$VALGRIND TestReadMask \$STARGS" -echo testsuite.at:102 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:107: \$VALGRIND TestReadMask \$STARGS" +echo testsuite.at:107 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "$VALGRIND TestReadMask $STARGS"; then @@ -2232,7 +2277,7 @@ at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:102" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:107" $at_failed && at_func_log_failure $at_traceon; } @@ -2241,22 +2286,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_6 -#AT_START_7 -# 7. testsuite.at:104: array -at_setup_line='testsuite.at:104' +#AT_STOP_7 +#AT_START_8 +# 8. testsuite.at:109: array +at_setup_line='testsuite.at:109' at_func_banner 1 at_desc="array" -$at_quiet $as_echo_n " 7: $at_desc " +$at_quiet $as_echo_n " 8: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "7. testsuite.at:104: testing ..." + $as_echo "8. testsuite.at:109: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:105: \$VALGRIND array \$STARGS" -echo testsuite.at:105 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:110: \$VALGRIND array \$STARGS" +echo testsuite.at:110 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "$VALGRIND array $STARGS"; then @@ -2269,7 +2314,7 @@ at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:105" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:110" $at_failed && at_func_log_failure $at_traceon; } @@ -2278,22 +2323,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_7 -#AT_START_8 -# 8. testsuite.at:107: multi_test testread -at_setup_line='testsuite.at:107' +#AT_STOP_8 +#AT_START_9 +# 9. testsuite.at:112: multi_test testread +at_setup_line='testsuite.at:112' at_func_banner 1 at_desc="multi_test testread" -$at_quiet $as_echo_n " 8: $at_desc " +$at_quiet $as_echo_n " 9: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "8. testsuite.at:107: testing ..." + $as_echo "9. testsuite.at:112: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:108: \$VALGRIND multi_test testread \$STARGS" -echo testsuite.at:108 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:113: \$VALGRIND multi_test testread \$STARGS" +echo testsuite.at:113 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "$VALGRIND multi_test testread $STARGS"; then @@ -2306,7 +2351,7 @@ at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:108" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:113" $at_failed && at_func_log_failure $at_traceon; } @@ -2315,22 +2360,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_8 -#AT_START_9 -# 9. testsuite.at:110: multi_test earlyclose -at_setup_line='testsuite.at:110' +#AT_STOP_9 +#AT_START_10 +# 10. testsuite.at:115: multi_test earlyclose +at_setup_line='testsuite.at:115' at_func_banner 1 at_desc="multi_test earlyclose" -$at_quiet $as_echo_n " 9: $at_desc " +$at_quiet $as_echo_n " 10: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "9. testsuite.at:110: testing ..." + $as_echo "10. testsuite.at:115: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:111: \$VALGRIND multi_test earlyclose \$STARGS" -echo testsuite.at:111 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:116: \$VALGRIND multi_test earlyclose \$STARGS" +echo testsuite.at:116 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "$VALGRIND multi_test earlyclose $STARGS"; then @@ -2343,7 +2388,7 @@ at_failed=false echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:111" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:116" $at_failed && at_func_log_failure $at_traceon; } @@ -2352,22 +2397,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_9 -#AT_START_10 -# 10. testsuite.at:113: partial_io -at_setup_line='testsuite.at:113' +#AT_STOP_10 +#AT_START_11 +# 11. testsuite.at:118: partial_io +at_setup_line='testsuite.at:118' at_func_banner 1 at_desc="partial_io" -$at_quiet $as_echo_n " 10: $at_desc " +$at_quiet $as_echo_n " 11: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "10. testsuite.at:113: testing ..." + $as_echo "11. testsuite.at:118: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:114: \$VALGRIND partial_io \$STARGS" -echo testsuite.at:114 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:119: \$VALGRIND partial_io \$STARGS" +echo testsuite.at:119 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "$VALGRIND partial_io $STARGS"; then @@ -2380,7 +2425,7 @@ at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:114" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:119" $at_failed && at_func_log_failure $at_traceon; } @@ -2389,22 +2434,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_10 -#AT_START_11 -# 11. testsuite.at:116: simple -at_setup_line='testsuite.at:116' +#AT_STOP_11 +#AT_START_12 +# 12. testsuite.at:121: simple +at_setup_line='testsuite.at:121' at_func_banner 1 at_desc="simple" -$at_quiet $as_echo_n " 11: $at_desc " +$at_quiet $as_echo_n " 12: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "11. testsuite.at:116: testing ..." + $as_echo "12. testsuite.at:121: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:117: \$VALGRIND simple \$STARGS" -echo testsuite.at:117 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:122: \$VALGRIND simple \$STARGS" +echo testsuite.at:122 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "$VALGRIND simple $STARGS"; then @@ -2417,7 +2462,7 @@ at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:117" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:122" $at_failed && at_func_log_failure $at_traceon; } @@ -2426,22 +2471,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_11 -#AT_START_12 -# 12. testsuite.at:119: ucd -at_setup_line='testsuite.at:119' +#AT_STOP_12 +#AT_START_13 +# 13. testsuite.at:124: ucd +at_setup_line='testsuite.at:124' at_func_banner 1 at_desc="ucd" -$at_quiet $as_echo_n " 12: $at_desc " +$at_quiet $as_echo_n " 13: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "12. testsuite.at:119: testing ..." + $as_echo "13. testsuite.at:124: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:120: \$VALGRIND ucd \$STARGS" -echo testsuite.at:120 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:125: \$VALGRIND ucd \$STARGS" +echo testsuite.at:125 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "$VALGRIND ucd $STARGS"; then @@ -2454,7 +2499,7 @@ at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:120" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:125" $at_failed && at_func_log_failure $at_traceon; } @@ -2463,22 +2508,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_12 -#AT_START_13 -# 13. testsuite.at:122: ucdsamp3 -at_setup_line='testsuite.at:122' +#AT_STOP_13 +#AT_START_14 +# 14. testsuite.at:127: ucdsamp3 +at_setup_line='testsuite.at:127' at_func_banner 1 at_desc="ucdsamp3" -$at_quiet $as_echo_n " 13: $at_desc " +$at_quiet $as_echo_n " 14: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "13. testsuite.at:122: testing ..." + $as_echo "14. testsuite.at:127: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:123: \$VALGRIND ucdsamp3 \$STARGS" -echo testsuite.at:123 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:128: \$VALGRIND ucdsamp3 \$STARGS" +echo testsuite.at:128 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "$VALGRIND ucdsamp3 $STARGS"; then @@ -2491,7 +2536,7 @@ at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:123" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:128" $at_failed && at_func_log_failure $at_traceon; } @@ -2500,22 +2545,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_13 -#AT_START_14 -# 14. testsuite.at:125: testall -small -fortran -at_setup_line='testsuite.at:125' +#AT_STOP_14 +#AT_START_15 +# 15. testsuite.at:130: testall -small -fortran +at_setup_line='testsuite.at:130' at_func_banner 1 at_desc="testall -small -fortran" -$at_quiet $as_echo_n " 14: $at_desc " +$at_quiet $as_echo_n " 15: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "14. testsuite.at:125: testing ..." + $as_echo "15. testsuite.at:130: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:126: \$VALGRIND testall -small -fortran \$STARGS" -echo testsuite.at:126 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:131: \$VALGRIND testall -small -fortran \$STARGS" +echo testsuite.at:131 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "$VALGRIND testall -small -fortran $STARGS"; then @@ -2528,7 +2573,7 @@ at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:126" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:131" $at_failed && at_func_log_failure $at_traceon; } @@ -2537,22 +2582,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_14 -#AT_START_15 -# 15. testsuite.at:128: obj -at_setup_line='testsuite.at:128' +#AT_STOP_15 +#AT_START_16 +# 16. testsuite.at:133: obj +at_setup_line='testsuite.at:133' at_func_banner 1 at_desc="obj" -$at_quiet $as_echo_n " 15: $at_desc " +$at_quiet $as_echo_n " 16: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "15. testsuite.at:128: testing ..." + $as_echo "16. testsuite.at:133: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:129: \$VALGRIND obj \$STARGS" -echo testsuite.at:129 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:134: \$VALGRIND obj \$STARGS" +echo testsuite.at:134 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "$VALGRIND obj $STARGS"; then @@ -2565,7 +2610,7 @@ at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:129" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:134" $at_failed && at_func_log_failure $at_traceon; } @@ -2574,22 +2619,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_15 -#AT_START_16 -# 16. testsuite.at:131: onehex -at_setup_line='testsuite.at:131' +#AT_STOP_16 +#AT_START_17 +# 17. testsuite.at:136: onehex +at_setup_line='testsuite.at:136' at_func_banner 1 at_desc="onehex" -$at_quiet $as_echo_n " 16: $at_desc " +$at_quiet $as_echo_n " 17: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "16. testsuite.at:131: testing ..." + $as_echo "17. testsuite.at:136: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:132: \$VALGRIND onehex \$STARGS" -echo testsuite.at:132 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:137: \$VALGRIND onehex \$STARGS" +echo testsuite.at:137 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "$VALGRIND onehex $STARGS"; then @@ -2602,7 +2647,7 @@ at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:132" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:137" $at_failed && at_func_log_failure $at_traceon; } @@ -2611,22 +2656,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_16 -#AT_START_17 -# 17. testsuite.at:134: oneprism -at_setup_line='testsuite.at:134' +#AT_STOP_17 +#AT_START_18 +# 18. testsuite.at:139: oneprism +at_setup_line='testsuite.at:139' at_func_banner 1 at_desc="oneprism" -$at_quiet $as_echo_n " 17: $at_desc " +$at_quiet $as_echo_n " 18: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "17. testsuite.at:134: testing ..." + $as_echo "18. testsuite.at:139: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:135: \$VALGRIND oneprism \$STARGS" -echo testsuite.at:135 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:140: \$VALGRIND oneprism \$STARGS" +echo testsuite.at:140 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "$VALGRIND oneprism $STARGS"; then @@ -2639,7 +2684,7 @@ at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:135" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:140" $at_failed && at_func_log_failure $at_traceon; } @@ -2648,22 +2693,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_17 -#AT_START_18 -# 18. testsuite.at:137: onepyramid -at_setup_line='testsuite.at:137' +#AT_STOP_18 +#AT_START_19 +# 19. testsuite.at:142: onepyramid +at_setup_line='testsuite.at:142' at_func_banner 1 at_desc="onepyramid" -$at_quiet $as_echo_n " 18: $at_desc " +$at_quiet $as_echo_n " 19: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "18. testsuite.at:137: testing ..." + $as_echo "19. testsuite.at:142: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:138: \$VALGRIND onepyramid \$STARGS" -echo testsuite.at:138 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:143: \$VALGRIND onepyramid \$STARGS" +echo testsuite.at:143 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "$VALGRIND onepyramid $STARGS"; then @@ -2676,7 +2721,7 @@ at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:138" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:143" $at_failed && at_func_log_failure $at_traceon; } @@ -2685,22 +2730,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_18 -#AT_START_19 -# 19. testsuite.at:140: onetet -at_setup_line='testsuite.at:140' +#AT_STOP_19 +#AT_START_20 +# 20. testsuite.at:145: onetet +at_setup_line='testsuite.at:145' at_func_banner 1 at_desc="onetet" -$at_quiet $as_echo_n " 19: $at_desc " +$at_quiet $as_echo_n " 20: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "19. testsuite.at:140: testing ..." + $as_echo "20. testsuite.at:145: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:141: \$VALGRIND onetet \$STARGS" -echo testsuite.at:141 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:146: \$VALGRIND onetet \$STARGS" +echo testsuite.at:146 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "$VALGRIND onetet $STARGS"; then @@ -2713,7 +2758,7 @@ at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:141" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:146" $at_failed && at_func_log_failure $at_traceon; } @@ -2722,22 +2767,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_19 -#AT_START_20 -# 20. testsuite.at:143: subhex -at_setup_line='testsuite.at:143' +#AT_STOP_20 +#AT_START_21 +# 21. testsuite.at:148: subhex +at_setup_line='testsuite.at:148' at_func_banner 1 at_desc="subhex" -$at_quiet $as_echo_n " 20: $at_desc " +$at_quiet $as_echo_n " 21: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "20. testsuite.at:143: testing ..." + $as_echo "21. testsuite.at:148: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:144: \$VALGRIND subhex \$STARGS" -echo testsuite.at:144 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:149: \$VALGRIND subhex \$STARGS" +echo testsuite.at:149 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "$VALGRIND subhex $STARGS"; then @@ -2750,7 +2795,7 @@ at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:144" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:149" $at_failed && at_func_log_failure $at_traceon; } @@ -2759,22 +2804,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_20 -#AT_START_21 -# 21. testsuite.at:146: twohex -at_setup_line='testsuite.at:146' +#AT_STOP_21 +#AT_START_22 +# 22. testsuite.at:151: twohex +at_setup_line='testsuite.at:151' at_func_banner 1 at_desc="twohex" -$at_quiet $as_echo_n " 21: $at_desc " +$at_quiet $as_echo_n " 22: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "21. testsuite.at:146: testing ..." + $as_echo "22. testsuite.at:151: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:147: \$VALGRIND twohex \$STARGS" -echo testsuite.at:147 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:152: \$VALGRIND twohex \$STARGS" +echo testsuite.at:152 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "$VALGRIND twohex $STARGS"; then @@ -2787,7 +2832,7 @@ at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:147" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:152" $at_failed && at_func_log_failure $at_traceon; } @@ -2796,22 +2841,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_21 -#AT_START_22 -# 22. testsuite.at:149: multispec -at_setup_line='testsuite.at:149' +#AT_STOP_22 +#AT_START_23 +# 23. testsuite.at:154: multispec +at_setup_line='testsuite.at:154' at_func_banner 1 at_desc="multispec" -$at_quiet $as_echo_n " 22: $at_desc " +$at_quiet $as_echo_n " 23: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "22. testsuite.at:149: testing ..." + $as_echo "23. testsuite.at:154: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:150: \$VALGRIND multispec \$STARGS" -echo testsuite.at:150 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:155: \$VALGRIND multispec \$STARGS" +echo testsuite.at:155 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "$VALGRIND multispec $STARGS"; then @@ -2824,7 +2869,7 @@ at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:150" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:155" $at_failed && at_func_log_failure $at_traceon; } @@ -2833,22 +2878,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_22 -#AT_START_23 -# 23. testsuite.at:152: sami -at_setup_line='testsuite.at:152' +#AT_STOP_23 +#AT_START_24 +# 24. testsuite.at:157: sami +at_setup_line='testsuite.at:157' at_func_banner 1 at_desc="sami" -$at_quiet $as_echo_n " 23: $at_desc " +$at_quiet $as_echo_n " 24: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "23. testsuite.at:152: testing ..." + $as_echo "24. testsuite.at:157: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:153: \$VALGRIND sami \$STARGS" -echo testsuite.at:153 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:158: \$VALGRIND sami \$STARGS" +echo testsuite.at:158 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "$VALGRIND sami $STARGS"; then @@ -2861,7 +2906,7 @@ at_failed=false echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:153" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:158" $at_failed && at_func_log_failure $at_traceon; } @@ -2870,22 +2915,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_23 -#AT_START_24 -# 24. testsuite.at:155: specmix -at_setup_line='testsuite.at:155' +#AT_STOP_24 +#AT_START_25 +# 25. testsuite.at:160: specmix +at_setup_line='testsuite.at:160' at_func_banner 1 at_desc="specmix" -$at_quiet $as_echo_n " 24: $at_desc " +$at_quiet $as_echo_n " 25: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "24. testsuite.at:155: testing ..." + $as_echo "25. testsuite.at:160: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:156: \$VALGRIND specmix \$STARGS" -echo testsuite.at:156 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:161: \$VALGRIND specmix \$STARGS" +echo testsuite.at:161 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "$VALGRIND specmix $STARGS"; then @@ -2898,7 +2943,7 @@ at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:156" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:161" $at_failed && at_func_log_failure $at_traceon; } @@ -2907,22 +2952,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_24 -#AT_START_25 -# 25. testsuite.at:158: spec -at_setup_line='testsuite.at:158' +#AT_STOP_25 +#AT_START_26 +# 26. testsuite.at:163: spec +at_setup_line='testsuite.at:163' at_func_banner 1 at_desc="spec" -$at_quiet $as_echo_n " 25: $at_desc " +$at_quiet $as_echo_n " 26: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "25. testsuite.at:158: testing ..." + $as_echo "26. testsuite.at:163: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:159: \$VALGRIND spec \$STARGS" -echo testsuite.at:159 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:164: \$VALGRIND spec \$STARGS" +echo testsuite.at:164 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "$VALGRIND spec $STARGS"; then @@ -2935,7 +2980,7 @@ at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:159" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:164" $at_failed && at_func_log_failure $at_traceon; } @@ -2944,22 +2989,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_25 -#AT_START_26 -# 26. testsuite.at:161: group_test -at_setup_line='testsuite.at:161' +#AT_STOP_26 +#AT_START_27 +# 27. testsuite.at:166: group_test +at_setup_line='testsuite.at:166' at_func_banner 1 at_desc="group_test" -$at_quiet $as_echo_n " 26: $at_desc " +$at_quiet $as_echo_n " 27: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "26. testsuite.at:161: testing ..." + $as_echo "27. testsuite.at:166: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:162: \$VALGRIND group_test 0 0 0 \$STARGS" -echo testsuite.at:162 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:167: \$VALGRIND group_test 0 0 0 \$STARGS" +echo testsuite.at:167 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "$VALGRIND group_test 0 0 0 $STARGS"; then @@ -2972,7 +3017,7 @@ at_failed=false echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:162" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:167" $at_failed && at_func_log_failure $at_traceon; } @@ -2981,22 +3026,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_26 -#AT_START_27 -# 27. testsuite.at:164: listtypes -at_setup_line='testsuite.at:164' +#AT_STOP_27 +#AT_START_28 +# 28. testsuite.at:169: listtypes +at_setup_line='testsuite.at:169' at_func_banner 1 at_desc="listtypes" -$at_quiet $as_echo_n " 27: $at_desc " +$at_quiet $as_echo_n " 28: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "27. testsuite.at:164: testing ..." + $as_echo "28. testsuite.at:169: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:165: \$VALGRIND ucd \$STARGS" -echo testsuite.at:165 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:170: \$VALGRIND ucd \$STARGS" +echo testsuite.at:170 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "$VALGRIND ucd $STARGS"; then @@ -3009,14 +3054,14 @@ at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:165" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:170" $at_failed && at_func_log_failure $at_traceon; } { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:166: test -z \"\$STARGS\" && \$VALGRIND listtypes ucd.pdb || \$VALGRIND listtypes ucd.h5" -echo testsuite.at:166 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:171: test -z \"\$STARGS\" && \$VALGRIND listtypes ucd.pdb || \$VALGRIND listtypes ucd.h5" +echo testsuite.at:171 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "test -z \"$STARGS\" && $VALGRIND listtypes ucd.pdb || $VALGRIND listtypes ucd.h5"; then @@ -3029,7 +3074,7 @@ at_failed=false echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:166" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:171" $at_failed && at_func_log_failure $at_traceon; } @@ -3038,22 +3083,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_27 -#AT_START_28 -# 28. testsuite.at:168: alltypes -at_setup_line='testsuite.at:168' +#AT_STOP_28 +#AT_START_29 +# 29. testsuite.at:173: alltypes +at_setup_line='testsuite.at:173' at_func_banner 1 at_desc="alltypes" -$at_quiet $as_echo_n " 28: $at_desc " +$at_quiet $as_echo_n " 29: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "28. testsuite.at:168: testing ..." + $as_echo "29. testsuite.at:173: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:169: \$VALGRIND alltypes \$STARGS" -echo testsuite.at:169 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:174: \$VALGRIND alltypes \$STARGS" +echo testsuite.at:174 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "$VALGRIND alltypes $STARGS"; then @@ -3066,7 +3111,7 @@ at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:169" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:174" $at_failed && at_func_log_failure $at_traceon; } @@ -3075,22 +3120,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_28 -#AT_START_29 -# 29. testsuite.at:171: wave -at_setup_line='testsuite.at:171' +#AT_STOP_29 +#AT_START_30 +# 30. testsuite.at:176: wave +at_setup_line='testsuite.at:176' at_func_banner 1 at_desc="wave" -$at_quiet $as_echo_n " 29: $at_desc " +$at_quiet $as_echo_n " 30: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "29. testsuite.at:171: testing ..." + $as_echo "30. testsuite.at:176: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:172: \$VALGRIND wave \$STARGS" -echo testsuite.at:172 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:177: \$VALGRIND wave \$STARGS" +echo testsuite.at:177 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "$VALGRIND wave $STARGS"; then @@ -3103,7 +3148,7 @@ at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:172" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:177" $at_failed && at_func_log_failure $at_traceon; } @@ -3112,22 +3157,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_29 -#AT_START_30 -# 30. testsuite.at:174: polyzl -at_setup_line='testsuite.at:174' +#AT_STOP_30 +#AT_START_31 +# 31. testsuite.at:179: polyzl +at_setup_line='testsuite.at:179' at_func_banner 1 at_desc="polyzl" -$at_quiet $as_echo_n " 30: $at_desc " +$at_quiet $as_echo_n " 31: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "30. testsuite.at:174: testing ..." + $as_echo "31. testsuite.at:179: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:175: \$VALGRIND polyzl \$STARGS" -echo testsuite.at:175 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:180: \$VALGRIND polyzl \$STARGS" +echo testsuite.at:180 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "$VALGRIND polyzl $STARGS"; then @@ -3140,7 +3185,7 @@ at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:175" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:180" $at_failed && at_func_log_failure $at_traceon; } @@ -3149,22 +3194,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_30 -#AT_START_31 -# 31. testsuite.at:177: csg -at_setup_line='testsuite.at:177' +#AT_STOP_31 +#AT_START_32 +# 32. testsuite.at:182: csg +at_setup_line='testsuite.at:182' at_func_banner 1 at_desc="csg" -$at_quiet $as_echo_n " 31: $at_desc " +$at_quiet $as_echo_n " 32: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "31. testsuite.at:177: testing ..." + $as_echo "32. testsuite.at:182: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:178: \$VALGRIND csg \$STARGS" -echo testsuite.at:178 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:183: \$VALGRIND csg \$STARGS" +echo testsuite.at:183 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "$VALGRIND csg $STARGS"; then @@ -3177,7 +3222,7 @@ at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:178" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:183" $at_failed && at_func_log_failure $at_traceon; } @@ -3186,22 +3231,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_31 -#AT_START_32 -# 32. testsuite.at:180: rocket -at_setup_line='testsuite.at:180' +#AT_STOP_32 +#AT_START_33 +# 33. testsuite.at:185: rocket +at_setup_line='testsuite.at:185' at_func_banner 1 at_desc="rocket" -$at_quiet $as_echo_n " 32: $at_desc " +$at_quiet $as_echo_n " 33: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "32. testsuite.at:180: testing ..." + $as_echo "33. testsuite.at:185: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:181: \$VALGRIND rocket \$STARGS" -echo testsuite.at:181 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:186: \$VALGRIND rocket \$STARGS" +echo testsuite.at:186 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "$VALGRIND rocket $STARGS"; then @@ -3214,7 +3259,7 @@ at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:181" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:186" $at_failed && at_func_log_failure $at_traceon; } @@ -3223,22 +3268,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_32 -#AT_START_33 -# 33. testsuite.at:183: mmadjacency -at_setup_line='testsuite.at:183' +#AT_STOP_33 +#AT_START_34 +# 34. testsuite.at:188: mmadjacency +at_setup_line='testsuite.at:188' at_func_banner 1 at_desc="mmadjacency" -$at_quiet $as_echo_n " 33: $at_desc " +$at_quiet $as_echo_n " 34: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "33. testsuite.at:183: testing ..." + $as_echo "34. testsuite.at:188: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:184: \$VALGRIND mmadjacency \$STARGS" -echo testsuite.at:184 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:189: \$VALGRIND mmadjacency \$STARGS" +echo testsuite.at:189 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "$VALGRIND mmadjacency $STARGS"; then @@ -3251,7 +3296,7 @@ at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:184" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:189" $at_failed && at_func_log_failure $at_traceon; } @@ -3260,22 +3305,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_33 -#AT_START_34 -# 34. testsuite.at:186: mat3d_3across -at_setup_line='testsuite.at:186' +#AT_STOP_34 +#AT_START_35 +# 35. testsuite.at:191: mat3d_3across +at_setup_line='testsuite.at:191' at_func_banner 1 at_desc="mat3d_3across" -$at_quiet $as_echo_n " 34: $at_desc " +$at_quiet $as_echo_n " 35: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "34. testsuite.at:186: testing ..." + $as_echo "35. testsuite.at:191: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:187: \$VALGRIND mat3d_3across \$STARGS" -echo testsuite.at:187 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:192: \$VALGRIND mat3d_3across \$STARGS" +echo testsuite.at:192 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "$VALGRIND mat3d_3across $STARGS"; then @@ -3288,7 +3333,7 @@ at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: at_func_diff_devnull "$at_stdout" || at_failed=: -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:187" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:192" $at_failed && at_func_log_failure $at_traceon; } @@ -3297,22 +3342,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_34 -#AT_START_35 -# 35. testsuite.at:189: ucd1d -at_setup_line='testsuite.at:189' +#AT_STOP_35 +#AT_START_36 +# 36. testsuite.at:194: ucd1d +at_setup_line='testsuite.at:194' at_func_banner 1 at_desc="ucd1d" -$at_quiet $as_echo_n " 35: $at_desc " +$at_quiet $as_echo_n " 36: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "35. testsuite.at:189: testing ..." + $as_echo "36. testsuite.at:194: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:190: \$VALGRIND ucd1d \$STARGS" -echo testsuite.at:190 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:195: \$VALGRIND ucd1d \$STARGS" +echo testsuite.at:195 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "$VALGRIND ucd1d $STARGS"; then @@ -3325,7 +3370,7 @@ at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:190" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:195" $at_failed && at_func_log_failure $at_traceon; } @@ -3334,22 +3379,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_35 -#AT_START_36 -# 36. testsuite.at:192: dir -at_setup_line='testsuite.at:192' +#AT_STOP_36 +#AT_START_37 +# 37. testsuite.at:197: dir +at_setup_line='testsuite.at:197' at_func_banner 1 at_desc="dir" -$at_quiet $as_echo_n " 36: $at_desc " +$at_quiet $as_echo_n " 37: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "36. testsuite.at:192: testing ..." + $as_echo "37. testsuite.at:197: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:193: \$VALGRIND dir \$STARGS" -echo testsuite.at:193 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:198: \$VALGRIND dir \$STARGS" +echo testsuite.at:198 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "$VALGRIND dir $STARGS"; then @@ -3362,7 +3407,7 @@ at_failed=false echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:193" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:198" $at_failed && at_func_log_failure $at_traceon; } @@ -3371,22 +3416,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_36 -#AT_START_37 -# 37. testsuite.at:195: quad -at_setup_line='testsuite.at:195' +#AT_STOP_37 +#AT_START_38 +# 38. testsuite.at:200: quad +at_setup_line='testsuite.at:200' at_func_banner 1 at_desc="quad" -$at_quiet $as_echo_n " 37: $at_desc " +$at_quiet $as_echo_n " 38: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "37. testsuite.at:195: testing ..." + $as_echo "38. testsuite.at:200: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:196: \$VALGRIND quad \$STARGS" -echo testsuite.at:196 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:201: \$VALGRIND quad \$STARGS" +echo testsuite.at:201 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "$VALGRIND quad $STARGS"; then @@ -3399,7 +3444,7 @@ at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:196" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:201" $at_failed && at_func_log_failure $at_traceon; } @@ -3408,22 +3453,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_37 -#AT_START_38 -# 38. testsuite.at:198: arbpoly2d -at_setup_line='testsuite.at:198' +#AT_STOP_38 +#AT_START_39 +# 39. testsuite.at:203: arbpoly2d +at_setup_line='testsuite.at:203' at_func_banner 1 at_desc="arbpoly2d" -$at_quiet $as_echo_n " 38: $at_desc " +$at_quiet $as_echo_n " 39: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "38. testsuite.at:198: testing ..." + $as_echo "39. testsuite.at:203: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:199: \$VALGRIND arbpoly2d \$STARGS" -echo testsuite.at:199 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:204: \$VALGRIND arbpoly2d \$STARGS" +echo testsuite.at:204 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "$VALGRIND arbpoly2d $STARGS"; then @@ -3436,7 +3481,7 @@ at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:199" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:204" $at_failed && at_func_log_failure $at_traceon; } @@ -3445,22 +3490,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_38 -#AT_START_39 -# 39. testsuite.at:201: readstuff -at_setup_line='testsuite.at:201' +#AT_STOP_39 +#AT_START_40 +# 40. testsuite.at:206: readstuff +at_setup_line='testsuite.at:206' at_func_banner 1 at_desc="readstuff" -$at_quiet $as_echo_n " 39: $at_desc " +$at_quiet $as_echo_n " 40: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "39. testsuite.at:201: testing ..." + $as_echo "40. testsuite.at:206: testing ..." $at_traceon # needs data file from multi_test { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:202: multi_test \$STARGS" -echo testsuite.at:202 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:207: multi_test \$STARGS" +echo testsuite.at:207 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "multi_test $STARGS"; then @@ -3473,14 +3518,14 @@ at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:202" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:207" $at_failed && at_func_log_failure $at_traceon; } # don't valgrind these intermediate parts { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:203: \$VALGRIND readstuff \$STARGS" -echo testsuite.at:203 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:208: \$VALGRIND readstuff \$STARGS" +echo testsuite.at:208 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "$VALGRIND readstuff $STARGS"; then @@ -3493,7 +3538,7 @@ at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_func_check_skip $at_status "$at_srcdir/testsuite.at:203" +at_func_check_skip $at_status "$at_srcdir/testsuite.at:208" $at_failed && at_func_log_failure $at_traceon; } @@ -3502,22 +3547,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_39 -#AT_START_40 -# 40. testsuite.at:205: testfs -at_setup_line='testsuite.at:205' +#AT_STOP_40 +#AT_START_41 +# 41. testsuite.at:210: testfs +at_setup_line='testsuite.at:210' at_func_banner 1 at_desc="testfs" -$at_quiet $as_echo_n " 40: $at_desc " +$at_quiet $as_echo_n " 41: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "40. testsuite.at:205: testing ..." + $as_echo "41. testsuite.at:210: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:206: \$VALGRIND testfs \$STARGS" -echo testsuite.at:206 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:211: \$VALGRIND testfs \$STARGS" +echo testsuite.at:211 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "$VALGRIND testfs $STARGS"; then @@ -3530,7 +3575,7 @@ at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:206" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:211" $at_failed && at_func_log_failure $at_traceon; } @@ -3539,22 +3584,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_40 -#AT_START_41 -# 41. testsuite.at:208: empty -at_setup_line='testsuite.at:208' +#AT_STOP_41 +#AT_START_42 +# 42. testsuite.at:213: empty +at_setup_line='testsuite.at:213' at_func_banner 1 at_desc="empty" -$at_quiet $as_echo_n " 41: $at_desc " +$at_quiet $as_echo_n " 42: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "41. testsuite.at:208: testing ..." + $as_echo "42. testsuite.at:213: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:209: \$VALGRIND empty \$STARGS" -echo testsuite.at:209 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:214: \$VALGRIND empty \$STARGS" +echo testsuite.at:214 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "$VALGRIND empty $STARGS"; then @@ -3565,9 +3610,9 @@ fi at_status=$? at_failed=false -at_func_diff_devnull "$at_stderr" || at_failed=: +echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:209" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:214" $at_failed && at_func_log_failure $at_traceon; } @@ -3576,23 +3621,23 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_41 -#AT_START_42 -# 42. testsuite.at:213: read -at_setup_line='testsuite.at:213' +#AT_STOP_42 +#AT_START_43 +# 43. testsuite.at:218: read +at_setup_line='testsuite.at:218' at_func_banner 2 at_desc="read" -$at_quiet $as_echo_n " 42: $at_desc " +$at_quiet $as_echo_n " 43: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "42. testsuite.at:213: testing ..." + $as_echo "43. testsuite.at:218: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:215: multi_test \$STARGS hdf-friendly" -echo testsuite.at:215 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:220: multi_test \$STARGS hdf-friendly" +echo testsuite.at:220 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "multi_test $STARGS hdf-friendly"; then @@ -3605,14 +3650,14 @@ at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:215" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:220" $at_failed && at_func_log_failure $at_traceon; } # generate data for python tests { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:216: test -z \"\$PYTHON\" && exit 77 || env PYTHONPATH=../../../tools/python/.libs \$PYTHON ../../test_read.py" -echo testsuite.at:216 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:221: test -z \"\$PYTHON\" && exit 77 || env PYTHONPATH=../../../tools/python/.libs \$PYTHON ../../test_read.py" +echo testsuite.at:221 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "test -z \"$PYTHON\" && exit 77 || env PYTHONPATH=../../../tools/python/.libs $PYTHON ../../test_read.py"; then @@ -3625,7 +3670,7 @@ at_failed=false echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:216" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:221" $at_failed && at_func_log_failure $at_traceon; } @@ -3634,17 +3679,17 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_42 -#AT_START_43 -# 43. testsuite.at:218: write -at_setup_line='testsuite.at:218' +#AT_STOP_43 +#AT_START_44 +# 44. testsuite.at:223: write +at_setup_line='testsuite.at:223' at_func_banner 2 at_desc="write" -$at_quiet $as_echo_n " 43: $at_desc " +$at_quiet $as_echo_n " 44: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "43. testsuite.at:218: testing ..." + $as_echo "44. testsuite.at:223: testing ..." $at_traceon @@ -3655,15 +3700,15 @@ dir_names = (a) t2='hello' -t6= (1.2, 10.199999999999999) +t6=1.20,10.20 a/t8='x2' t9=x3 -/t5= (1.2, 10.0) +/t5=1.20,10.00 _ATEOF { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:231: test -z \"\$PYTHON\" && exit 77 || env PYTHONPATH=../../../tools/python/.libs \$PYTHON ../../test_write.py" -echo testsuite.at:231 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:236: test -z \"\$PYTHON\" && exit 77 || env PYTHONPATH=../../../tools/python/.libs \$PYTHON ../../test_write.py" +echo testsuite.at:236 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "test -z \"$PYTHON\" && exit 77 || env PYTHONPATH=../../../tools/python/.libs $PYTHON ../../test_write.py"; then @@ -3676,7 +3721,7 @@ at_failed=false echo stderr:; cat "$at_stderr" $at_diff expout "$at_stdout" || at_failed=: -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:231" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:236" $at_failed && at_func_log_failure $at_traceon; } @@ -3685,23 +3730,23 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_43 -#AT_START_44 -# 44. testsuite.at:233: error handling -at_setup_line='testsuite.at:233' +#AT_STOP_44 +#AT_START_45 +# 45. testsuite.at:238: error handling +at_setup_line='testsuite.at:238' at_func_banner 2 at_desc="error handling" -$at_quiet $as_echo_n " 44: $at_desc " +$at_quiet $as_echo_n " 45: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "44. testsuite.at:233: testing ..." + $as_echo "45. testsuite.at:238: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:235: multi_test \$STARGS hdf-friendly" -echo testsuite.at:235 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:240: multi_test \$STARGS hdf-friendly" +echo testsuite.at:240 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "multi_test $STARGS hdf-friendly"; then @@ -3714,14 +3759,14 @@ at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:235" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:240" $at_failed && at_func_log_failure $at_traceon; } # generate data for python tests { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:236: test -z \"\$PYTHON\" && exit 77 || env PYTHONPATH=../../../tools/python/.libs \$PYTHON ../../test_error.py" -echo testsuite.at:236 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:241: test -z \"\$PYTHON\" && exit 77 || env PYTHONPATH=../../../tools/python/.libs \$PYTHON ../../test_error.py" +echo testsuite.at:241 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "test -z \"$PYTHON\" && exit 77 || env PYTHONPATH=../../../tools/python/.libs $PYTHON ../../test_error.py"; then @@ -3734,7 +3779,7 @@ at_failed=false echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:236" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:241" $at_failed && at_func_log_failure $at_traceon; } @@ -3743,23 +3788,23 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_44 -#AT_START_45 -# 45. testsuite.at:238: write objects -at_setup_line='testsuite.at:238' +#AT_STOP_45 +#AT_START_46 +# 46. testsuite.at:243: write objects +at_setup_line='testsuite.at:243' at_func_banner 2 at_desc="write objects" -$at_quiet $as_echo_n " 45: $at_desc " +$at_quiet $as_echo_n " 46: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "45. testsuite.at:238: testing ..." + $as_echo "46. testsuite.at:243: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:240: test -z \"\$PYTHON\" -o -z \"\$BROWSER\" && exit 77 || \$VALGRIND testonehex \`pwd\`" -echo testsuite.at:240 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:245: test -z \"\$PYTHON\" -o -z \"\$BROWSER\" && exit 77 || \$VALGRIND testonehex \`pwd\`" +echo testsuite.at:245 >"$at_check_line_file" if { echo 'Not enabling shell tracing (command contains a `...` command substitution)' false; }; then @@ -3772,7 +3817,7 @@ at_failed=false echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:240" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:245" $at_failed && at_func_log_failure $at_traceon; } @@ -3781,22 +3826,80 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_45 -#AT_START_46 -# 46. testsuite.at:244: testpdb -at_setup_line='testsuite.at:244' +#AT_STOP_46 +#AT_START_47 +# 47. testsuite.at:249: json +at_setup_line='testsuite.at:249' at_func_banner 3 +at_desc="json" +$at_quiet $as_echo_n " 47: $at_desc " +at_xfail=no +echo "# -*- compilation -*-" >> "$at_group_log" +( + $as_echo "47. testsuite.at:249: testing ..." + $at_traceon + + +{ $at_traceoff +$as_echo "$at_srcdir/testsuite.at:251: test ! \\( -e ./json -o -e ../../json \\) && exit 77 || onehex \$STARGS" +echo testsuite.at:251 >"$at_check_line_file" + +if test -n "$at_traceon" \ + && at_func_check_newline "test ! \\( -e ./json -o -e ../../json \\) && exit 77 || onehex $STARGS"; then + ( $at_traceon; test ! \( -e ./json -o -e ../../json \) && exit 77 || onehex $STARGS ) >"$at_stdout" 2>"$at_stder1" + at_func_filter_trace $? +else + ( :; test ! \( -e ./json -o -e ../../json \) && exit 77 || onehex $STARGS ) >"$at_stdout" 2>"$at_stderr" +fi +at_status=$? +at_failed=false +at_func_diff_devnull "$at_stderr" || at_failed=: +echo stdout:; cat "$at_stdout" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:251" + +$at_failed && at_func_log_failure +$at_traceon; } + # don't valgrind these intermediate parts +{ $at_traceoff +$as_echo "$at_srcdir/testsuite.at:252: test ! \\( -e ./json -o -e ../../json \\) && exit 77 || \$VALGRIND json \$STARGS" +echo testsuite.at:252 >"$at_check_line_file" + +if test -n "$at_traceon" \ + && at_func_check_newline "test ! \\( -e ./json -o -e ../../json \\) && exit 77 || $VALGRIND json $STARGS"; then + ( $at_traceon; test ! \( -e ./json -o -e ../../json \) && exit 77 || $VALGRIND json $STARGS ) >"$at_stdout" 2>"$at_stder1" + at_func_filter_trace $? +else + ( :; test ! \( -e ./json -o -e ../../json \) && exit 77 || $VALGRIND json $STARGS ) >"$at_stdout" 2>"$at_stderr" +fi +at_status=$? +at_failed=false +at_func_diff_devnull "$at_stderr" || at_failed=: +echo stdout:; cat "$at_stdout" +at_func_check_skip $at_status "$at_srcdir/testsuite.at:252" + +$at_failed && at_func_log_failure +$at_traceon; } + + $at_traceoff + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 | eval $at_tee_pipe +at_status=`cat "$at_status_file"` +#AT_STOP_47 +#AT_START_48 +# 48. testsuite.at:256: testpdb +at_setup_line='testsuite.at:256' +at_func_banner 4 at_desc="testpdb" -$at_quiet $as_echo_n " 46: $at_desc " +$at_quiet $as_echo_n " 48: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "46. testsuite.at:244: testing ..." + $as_echo "48. testsuite.at:256: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:245: test ! \\( -e ../src/score/lite_score.h -o -e ../../../src/pdb/lite_pdb.h \\) -o \"\$STARGS\" = DB_HDF5 && exit 77 || \$VALGRIND testpdb" -echo testsuite.at:245 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:257: test ! \\( -e ../src/score/lite_score.h -o -e ../../../src/pdb/lite_pdb.h \\) -o \"\$STARGS\" = DB_HDF5 && exit 77 || \$VALGRIND testpdb" +echo testsuite.at:257 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "test ! \\( -e ../src/score/lite_score.h -o -e ../../../src/pdb/lite_pdb.h \\) -o \"$STARGS\" = DB_HDF5 && exit 77 || $VALGRIND testpdb"; then @@ -3809,7 +3912,7 @@ at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_func_check_skip $at_status "$at_srcdir/testsuite.at:245" +at_func_check_skip $at_status "$at_srcdir/testsuite.at:257" $at_failed && at_func_log_failure $at_traceon; } @@ -3818,22 +3921,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_46 -#AT_START_47 -# 47. testsuite.at:247: pdbtst -at_setup_line='testsuite.at:247' -at_func_banner 3 +#AT_STOP_48 +#AT_START_49 +# 49. testsuite.at:259: pdbtst +at_setup_line='testsuite.at:259' +at_func_banner 4 at_desc="pdbtst" -$at_quiet $as_echo_n " 47: $at_desc " +$at_quiet $as_echo_n " 49: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "47. testsuite.at:247: testing ..." + $as_echo "49. testsuite.at:259: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:248: test ! \\( -e ../src/score/lite_score.h -o -e ../../../src/pdb/lite_pdb.h \\) -o \"\$STARGS\" = DB_HDF5 && exit 77 || \$VALGRIND pdbtst" -echo testsuite.at:248 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:260: test ! \\( -e ../src/score/lite_score.h -o -e ../../../src/pdb/lite_pdb.h \\) -o \"\$STARGS\" = DB_HDF5 && exit 77 || \$VALGRIND pdbtst" +echo testsuite.at:260 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "test ! \\( -e ../src/score/lite_score.h -o -e ../../../src/pdb/lite_pdb.h \\) -o \"$STARGS\" = DB_HDF5 && exit 77 || $VALGRIND pdbtst"; then @@ -3846,7 +3949,7 @@ at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_func_check_skip $at_status "$at_srcdir/testsuite.at:248" +at_func_check_skip $at_status "$at_srcdir/testsuite.at:260" $at_failed && at_func_log_failure $at_traceon; } @@ -3855,22 +3958,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_47 -#AT_START_48 -# 48. testsuite.at:252: grab -at_setup_line='testsuite.at:252' -at_func_banner 4 +#AT_STOP_49 +#AT_START_50 +# 50. testsuite.at:264: grab +at_setup_line='testsuite.at:264' +at_func_banner 5 at_desc="grab" -$at_quiet $as_echo_n " 48: $at_desc " +$at_quiet $as_echo_n " 50: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "48. testsuite.at:252: testing ..." + $as_echo "50. testsuite.at:264: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:253: test \"\$STARGS\" != DB_HDF5 && exit 77 || \$VALGRIND grab" -echo testsuite.at:253 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:265: test \"\$STARGS\" != DB_HDF5 && exit 77 || \$VALGRIND grab" +echo testsuite.at:265 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "test \"$STARGS\" != DB_HDF5 && exit 77 || $VALGRIND grab"; then @@ -3883,7 +3986,7 @@ at_failed=false echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:253" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:265" $at_failed && at_func_log_failure $at_traceon; } @@ -3892,23 +3995,23 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_48 -#AT_START_49 -# 49. testsuite.at:255: compression gzip -at_setup_line='testsuite.at:255' -at_func_banner 4 +#AT_STOP_50 +#AT_START_51 +# 51. testsuite.at:267: compression gzip +at_setup_line='testsuite.at:267' +at_func_banner 5 at_desc="compression gzip" -$at_quiet $as_echo_n " 49: $at_desc " +$at_quiet $as_echo_n " 51: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "49. testsuite.at:255: testing ..." + $as_echo "51. testsuite.at:267: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:257: test \"\$STARGS\" != DB_HDF5 && exit 77 || \$VALGRIND compression gzip" -echo testsuite.at:257 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:269: test \"\$STARGS\" != DB_HDF5 && exit 77 || \$VALGRIND compression gzip" +echo testsuite.at:269 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "test \"$STARGS\" != DB_HDF5 && exit 77 || $VALGRIND compression gzip"; then @@ -3921,14 +4024,14 @@ at_failed=false echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:257" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:269" $at_failed && at_func_log_failure $at_traceon; } { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:258: test \"\$STARGS\" != DB_HDF5 && exit 77 || \$VALGRIND compression readonly" -echo testsuite.at:258 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:270: test \"\$STARGS\" != DB_HDF5 && exit 77 || \$VALGRIND compression readonly" +echo testsuite.at:270 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "test \"$STARGS\" != DB_HDF5 && exit 77 || $VALGRIND compression readonly"; then @@ -3941,7 +4044,7 @@ at_failed=false echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:258" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:270" $at_failed && at_func_log_failure $at_traceon; } @@ -3950,23 +4053,23 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_49 -#AT_START_50 -# 50. testsuite.at:260: compression szip -at_setup_line='testsuite.at:260' -at_func_banner 4 +#AT_STOP_51 +#AT_START_52 +# 52. testsuite.at:272: compression szip +at_setup_line='testsuite.at:272' +at_func_banner 5 at_desc="compression szip" -$at_quiet $as_echo_n " 50: $at_desc " +$at_quiet $as_echo_n " 52: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "50. testsuite.at:260: testing ..." + $as_echo "52. testsuite.at:272: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:262: test \"\$STARGS\" != DB_HDF5 && exit 77 || \$VALGRIND compression szip" -echo testsuite.at:262 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:274: test \"\$STARGS\" != DB_HDF5 && exit 77 || \$VALGRIND compression szip" +echo testsuite.at:274 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "test \"$STARGS\" != DB_HDF5 && exit 77 || $VALGRIND compression szip"; then @@ -3979,14 +4082,14 @@ at_failed=false echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:262" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:274" $at_failed && at_func_log_failure $at_traceon; } { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:263: test \"\$STARGS\" != DB_HDF5 && exit 77 || \$VALGRIND compression readonly" -echo testsuite.at:263 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:275: test \"\$STARGS\" != DB_HDF5 && exit 77 || \$VALGRIND compression readonly" +echo testsuite.at:275 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "test \"$STARGS\" != DB_HDF5 && exit 77 || $VALGRIND compression readonly"; then @@ -3999,7 +4102,7 @@ at_failed=false echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:263" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:275" $at_failed && at_func_log_failure $at_traceon; } @@ -4008,23 +4111,23 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_50 -#AT_START_51 -# 51. testsuite.at:265: compression fpzip -at_setup_line='testsuite.at:265' -at_func_banner 4 +#AT_STOP_52 +#AT_START_53 +# 53. testsuite.at:277: compression fpzip +at_setup_line='testsuite.at:277' +at_func_banner 5 at_desc="compression fpzip" -$at_quiet $as_echo_n " 51: $at_desc " +$at_quiet $as_echo_n " 53: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "51. testsuite.at:265: testing ..." + $as_echo "53. testsuite.at:277: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:267: test ! \\( -e ../src/fpzip/read.o -o -e ../../../src/fpzip/read.o \\) -o \"\$STARGS\" != DB_HDF5 && exit 77 || \$VALGRIND compression fpzip" -echo testsuite.at:267 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:279: test ! \\( -e ../src/fpzip/read.o -o -e ../../../src/fpzip/read.o \\) -o \"\$STARGS\" != DB_HDF5 && exit 77 || \$VALGRIND compression fpzip" +echo testsuite.at:279 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "test ! \\( -e ../src/fpzip/read.o -o -e ../../../src/fpzip/read.o \\) -o \"$STARGS\" != DB_HDF5 && exit 77 || $VALGRIND compression fpzip"; then @@ -4037,14 +4140,14 @@ at_failed=false echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:267" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:279" $at_failed && at_func_log_failure $at_traceon; } { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:268: test ! \\( -e ../src/fpzip/read.o -o -e ../../../src/fpzip/read.o \\) -o \"\$STARGS\" != DB_HDF5 && exit 77 || \$VALGRIND compression readonly" -echo testsuite.at:268 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:280: test ! \\( -e ../src/fpzip/read.o -o -e ../../../src/fpzip/read.o \\) -o \"\$STARGS\" != DB_HDF5 && exit 77 || \$VALGRIND compression readonly" +echo testsuite.at:280 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "test ! \\( -e ../src/fpzip/read.o -o -e ../../../src/fpzip/read.o \\) -o \"$STARGS\" != DB_HDF5 && exit 77 || $VALGRIND compression readonly"; then @@ -4057,7 +4160,7 @@ at_failed=false echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:268" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:280" $at_failed && at_func_log_failure $at_traceon; } @@ -4066,23 +4169,23 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_51 -#AT_START_52 -# 52. testsuite.at:270: compression lossy3 -at_setup_line='testsuite.at:270' -at_func_banner 4 +#AT_STOP_53 +#AT_START_54 +# 54. testsuite.at:282: compression lossy3 +at_setup_line='testsuite.at:282' +at_func_banner 5 at_desc="compression lossy3" -$at_quiet $as_echo_n " 52: $at_desc " +$at_quiet $as_echo_n " 54: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "52. testsuite.at:270: testing ..." + $as_echo "54. testsuite.at:282: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:272: test ! \\( -e ../src/fpzip/read.o -o -e ../../../src/fpzip/read.o \\) -o \"\$STARGS\" != DB_HDF5 && exit 77 || \$VALGRIND compression lossy3" -echo testsuite.at:272 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:284: test ! \\( -e ../src/fpzip/read.o -o -e ../../../src/fpzip/read.o \\) -o \"\$STARGS\" != DB_HDF5 && exit 77 || \$VALGRIND compression lossy3" +echo testsuite.at:284 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "test ! \\( -e ../src/fpzip/read.o -o -e ../../../src/fpzip/read.o \\) -o \"$STARGS\" != DB_HDF5 && exit 77 || $VALGRIND compression lossy3"; then @@ -4095,14 +4198,14 @@ at_failed=false echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:272" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:284" $at_failed && at_func_log_failure $at_traceon; } { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:273: test ! \\( -e ../src/fpzip/read.o -o -e ../../../src/fpzip/read.o \\) -o \"\$STARGS\" != DB_HDF5 && exit 77 || \$VALGRIND compression readonly" -echo testsuite.at:273 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:285: test ! \\( -e ../src/fpzip/read.o -o -e ../../../src/fpzip/read.o \\) -o \"\$STARGS\" != DB_HDF5 && exit 77 || \$VALGRIND compression readonly" +echo testsuite.at:285 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "test ! \\( -e ../src/fpzip/read.o -o -e ../../../src/fpzip/read.o \\) -o \"$STARGS\" != DB_HDF5 && exit 77 || $VALGRIND compression readonly"; then @@ -4115,7 +4218,7 @@ at_failed=false echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_func_check_status 50 $at_status "$at_srcdir/testsuite.at:273" +at_func_check_status 50 $at_status "$at_srcdir/testsuite.at:285" $at_failed && at_func_log_failure $at_traceon; } @@ -4124,23 +4227,23 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_52 -#AT_START_53 -# 53. testsuite.at:275: compression minratio1000 -at_setup_line='testsuite.at:275' -at_func_banner 4 +#AT_STOP_54 +#AT_START_55 +# 55. testsuite.at:287: compression minratio1000 +at_setup_line='testsuite.at:287' +at_func_banner 5 at_desc="compression minratio1000" -$at_quiet $as_echo_n " 53: $at_desc " +$at_quiet $as_echo_n " 55: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "53. testsuite.at:275: testing ..." + $as_echo "55. testsuite.at:287: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:277: test ! \\( -e ../src/fpzip/read.o -o -e ../../../src/fpzip/read.o \\) -o \"\$STARGS\" != DB_HDF5 && exit 77 || \$VALGRIND compression minratio1000" -echo testsuite.at:277 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:289: test ! \\( -e ../src/fpzip/read.o -o -e ../../../src/fpzip/read.o \\) -o \"\$STARGS\" != DB_HDF5 && exit 77 || \$VALGRIND compression minratio1000" +echo testsuite.at:289 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "test ! \\( -e ../src/fpzip/read.o -o -e ../../../src/fpzip/read.o \\) -o \"$STARGS\" != DB_HDF5 && exit 77 || $VALGRIND compression minratio1000"; then @@ -4153,7 +4256,7 @@ at_failed=false echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_func_check_status 1 $at_status "$at_srcdir/testsuite.at:277" +at_func_check_status 1 $at_status "$at_srcdir/testsuite.at:289" $at_failed && at_func_log_failure $at_traceon; } @@ -4162,23 +4265,23 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_53 -#AT_START_54 -# 54. testsuite.at:279: testhzip -at_setup_line='testsuite.at:279' -at_func_banner 4 +#AT_STOP_55 +#AT_START_56 +# 56. testsuite.at:291: testhzip +at_setup_line='testsuite.at:291' +at_func_banner 5 at_desc="testhzip" -$at_quiet $as_echo_n " 54: $at_desc " +$at_quiet $as_echo_n " 56: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "54. testsuite.at:279: testing ..." + $as_echo "56. testsuite.at:291: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:281: test ! \\( -e ../src/hzip/hzutil.o -o -e ../../../src/hzip/hzutil.o \\) -o -z \"\$BROWSER\" -o \"\$STARGS\" != DB_HDF5 && exit 77 || \$VALGRIND testhzip \`pwd\`" -echo testsuite.at:281 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:293: test ! \\( -e ../src/hzip/hzutil.o -o -e ../../../src/hzip/hzutil.o \\) -o -z \"\$BROWSER\" -o \"\$STARGS\" != DB_HDF5 && exit 77 || \$VALGRIND testhzip \`pwd\`" +echo testsuite.at:293 >"$at_check_line_file" if { echo 'Not enabling shell tracing (command contains a `...` command substitution)' false; }; then @@ -4191,7 +4294,7 @@ at_failed=false echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:281" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:293" $at_failed && at_func_log_failure $at_traceon; } @@ -4200,22 +4303,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_54 -#AT_START_55 -# 55. testsuite.at:283: checksums -at_setup_line='testsuite.at:283' -at_func_banner 4 +#AT_STOP_56 +#AT_START_57 +# 57. testsuite.at:295: checksums +at_setup_line='testsuite.at:295' +at_func_banner 5 at_desc="checksums" -$at_quiet $as_echo_n " 55: $at_desc " +$at_quiet $as_echo_n " 57: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "55. testsuite.at:283: testing ..." + $as_echo "57. testsuite.at:295: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:284: test -z \"\$BROWSER\" -o \"\$STARGS\" != DB_HDF5 && exit 77 || \$VALGRIND checksums \`pwd\`" -echo testsuite.at:284 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:296: test -z \"\$BROWSER\" -o \"\$STARGS\" != DB_HDF5 && exit 77 || \$VALGRIND checksums \`pwd\`" +echo testsuite.at:296 >"$at_check_line_file" if { echo 'Not enabling shell tracing (command contains a `...` command substitution)' false; }; then @@ -4228,7 +4331,7 @@ at_failed=false echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:284" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:296" $at_failed && at_func_log_failure $at_traceon; } @@ -4237,22 +4340,22 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_55 -#AT_START_56 -# 56. testsuite.at:286: xversion -at_setup_line='testsuite.at:286' -at_func_banner 4 +#AT_STOP_57 +#AT_START_58 +# 58. testsuite.at:298: xversion +at_setup_line='testsuite.at:298' +at_func_banner 5 at_desc="xversion" -$at_quiet $as_echo_n " 56: $at_desc " +$at_quiet $as_echo_n " 58: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "56. testsuite.at:286: testing ..." + $as_echo "58. testsuite.at:298: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:287: test -z \"\$BROWSER\" -o \"\$STARGS\" != DB_HDF5 && exit 77 || \$VALGRIND testxvers \`pwd\`" -echo testsuite.at:287 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:299: test -z \"\$BROWSER\" -o \"\$STARGS\" != DB_HDF5 && exit 77 || \$VALGRIND testxvers \`pwd\`" +echo testsuite.at:299 >"$at_check_line_file" if { echo 'Not enabling shell tracing (command contains a `...` command substitution)' false; }; then @@ -4265,7 +4368,7 @@ at_failed=false echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:287" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:299" $at_failed && at_func_log_failure $at_traceon; } @@ -4274,23 +4377,23 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_56 -#AT_START_57 -# 57. testsuite.at:289: largefile -at_setup_line='testsuite.at:289' -at_func_banner 4 +#AT_STOP_58 +#AT_START_59 +# 59. testsuite.at:301: largefile +at_setup_line='testsuite.at:301' +at_func_banner 5 at_desc="largefile" -$at_quiet $as_echo_n " 57: $at_desc " +$at_quiet $as_echo_n " 59: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "57. testsuite.at:289: testing ..." + $as_echo "59. testsuite.at:301: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:291: test \"\$STARGS\" != DB_HDF5 && exit 77 || \$VALGRIND largefile" -echo testsuite.at:291 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:303: test \"\$STARGS\" != DB_HDF5 && exit 77 || \$VALGRIND largefile" +echo testsuite.at:303 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "test \"$STARGS\" != DB_HDF5 && exit 77 || $VALGRIND largefile"; then @@ -4303,7 +4406,7 @@ at_failed=false echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:291" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:303" $at_failed && at_func_log_failure $at_traceon; } @@ -4312,23 +4415,23 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_57 -#AT_START_58 -# 58. testsuite.at:295: arrayf77 -at_setup_line='testsuite.at:295' -at_func_banner 5 +#AT_STOP_59 +#AT_START_60 +# 60. testsuite.at:307: arrayf77 +at_setup_line='testsuite.at:307' +at_func_banner 6 at_desc="arrayf77" -$at_quiet $as_echo_n " 58: $at_desc " +$at_quiet $as_echo_n " 60: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "58. testsuite.at:295: testing ..." + $as_echo "60. testsuite.at:307: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:297: test ! \\( -f arrayf77 -o -f ../../arrayf77 \\) && exit 77 || \$VALGRIND arrayf77 \$STARGS" -echo testsuite.at:297 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:309: test ! \\( -f arrayf77 -o -f ../../arrayf77 \\) && exit 77 || \$VALGRIND arrayf77 \$STARGS" +echo testsuite.at:309 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "test ! \\( -f arrayf77 -o -f ../../arrayf77 \\) && exit 77 || $VALGRIND arrayf77 $STARGS"; then @@ -4341,7 +4444,7 @@ at_failed=false echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:297" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:309" $at_failed && at_func_log_failure $at_traceon; } @@ -4350,23 +4453,61 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_58 -#AT_START_59 -# 59. testsuite.at:299: curvef77 -at_setup_line='testsuite.at:299' -at_func_banner 5 +#AT_STOP_60 +#AT_START_61 +# 61. testsuite.at:311: arrayf90 +at_setup_line='testsuite.at:311' +at_func_banner 6 +at_desc="arrayf90" +$at_quiet $as_echo_n " 61: $at_desc " +at_xfail=no +echo "# -*- compilation -*-" >> "$at_group_log" +( + $as_echo "61. testsuite.at:311: testing ..." + $at_traceon + + +{ $at_traceoff +$as_echo "$at_srcdir/testsuite.at:313: test ! \\( -f arrayf90 -o -f ../../arrayf90 \\) && exit 77 || \$VALGRIND arrayf90 \$STARGS" +echo testsuite.at:313 >"$at_check_line_file" + +if test -n "$at_traceon" \ + && at_func_check_newline "test ! \\( -f arrayf90 -o -f ../../arrayf90 \\) && exit 77 || $VALGRIND arrayf90 $STARGS"; then + ( $at_traceon; test ! \( -f arrayf90 -o -f ../../arrayf90 \) && exit 77 || $VALGRIND arrayf90 $STARGS ) >"$at_stdout" 2>"$at_stder1" + at_func_filter_trace $? +else + ( :; test ! \( -f arrayf90 -o -f ../../arrayf90 \) && exit 77 || $VALGRIND arrayf90 $STARGS ) >"$at_stdout" 2>"$at_stderr" +fi +at_status=$? +at_failed=false +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:313" + +$at_failed && at_func_log_failure +$at_traceon; } + + $at_traceoff + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 | eval $at_tee_pipe +at_status=`cat "$at_status_file"` +#AT_STOP_61 +#AT_START_62 +# 62. testsuite.at:315: curvef77 +at_setup_line='testsuite.at:315' +at_func_banner 6 at_desc="curvef77" -$at_quiet $as_echo_n " 59: $at_desc " +$at_quiet $as_echo_n " 62: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "59. testsuite.at:299: testing ..." + $as_echo "62. testsuite.at:315: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:301: test ! \\( -f curvef77 -o -f ../../curvef77 \\) && exit 77 || \$VALGRIND curvef77 \$STARGS" -echo testsuite.at:301 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:317: test ! \\( -f curvef77 -o -f ../../curvef77 \\) && exit 77 || \$VALGRIND curvef77 \$STARGS" +echo testsuite.at:317 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "test ! \\( -f curvef77 -o -f ../../curvef77 \\) && exit 77 || $VALGRIND curvef77 $STARGS"; then @@ -4379,7 +4520,7 @@ at_failed=false echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:301" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:317" $at_failed && at_func_log_failure $at_traceon; } @@ -4388,23 +4529,23 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_59 -#AT_START_60 -# 60. testsuite.at:303: matf77 -at_setup_line='testsuite.at:303' -at_func_banner 5 +#AT_STOP_62 +#AT_START_63 +# 63. testsuite.at:319: matf77 +at_setup_line='testsuite.at:319' +at_func_banner 6 at_desc="matf77" -$at_quiet $as_echo_n " 60: $at_desc " +$at_quiet $as_echo_n " 63: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "60. testsuite.at:303: testing ..." + $as_echo "63. testsuite.at:319: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:305: test ! \\( -f matf77 -o -f ../../matf77 \\) && exit 77 || \$VALGRIND matf77 \$STARGS" -echo testsuite.at:305 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:321: test ! \\( -f matf77 -o -f ../../matf77 \\) && exit 77 || \$VALGRIND matf77 \$STARGS" +echo testsuite.at:321 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "test ! \\( -f matf77 -o -f ../../matf77 \\) && exit 77 || $VALGRIND matf77 $STARGS"; then @@ -4417,7 +4558,7 @@ at_failed=false echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:305" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:321" $at_failed && at_func_log_failure $at_traceon; } @@ -4426,23 +4567,23 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_60 -#AT_START_61 -# 61. testsuite.at:307: pointf77 -at_setup_line='testsuite.at:307' -at_func_banner 5 +#AT_STOP_63 +#AT_START_64 +# 64. testsuite.at:323: pointf77 +at_setup_line='testsuite.at:323' +at_func_banner 6 at_desc="pointf77" -$at_quiet $as_echo_n " 61: $at_desc " +$at_quiet $as_echo_n " 64: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "61. testsuite.at:307: testing ..." + $as_echo "64. testsuite.at:323: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:309: test ! \\( -f pointf77 -o -f ../../pointf77 \\) && exit 77 || \$VALGRIND pointf77 \$STARGS" -echo testsuite.at:309 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:325: test ! \\( -f pointf77 -o -f ../../pointf77 \\) && exit 77 || \$VALGRIND pointf77 \$STARGS" +echo testsuite.at:325 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "test ! \\( -f pointf77 -o -f ../../pointf77 \\) && exit 77 || $VALGRIND pointf77 $STARGS"; then @@ -4455,7 +4596,7 @@ at_failed=false echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:309" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:325" $at_failed && at_func_log_failure $at_traceon; } @@ -4464,23 +4605,23 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_61 -#AT_START_62 -# 62. testsuite.at:311: quadf77 -at_setup_line='testsuite.at:311' -at_func_banner 5 +#AT_STOP_64 +#AT_START_65 +# 65. testsuite.at:327: quadf77 +at_setup_line='testsuite.at:327' +at_func_banner 6 at_desc="quadf77" -$at_quiet $as_echo_n " 62: $at_desc " +$at_quiet $as_echo_n " 65: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "62. testsuite.at:311: testing ..." + $as_echo "65. testsuite.at:327: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:313: test ! \\( -f quadf77 -o -f ../../quadf77 \\) && exit 77 || \$VALGRIND quadf77 \$STARGS" -echo testsuite.at:313 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:329: test ! \\( -f quadf77 -o -f ../../quadf77 \\) && exit 77 || \$VALGRIND quadf77 \$STARGS" +echo testsuite.at:329 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "test ! \\( -f quadf77 -o -f ../../quadf77 \\) && exit 77 || $VALGRIND quadf77 $STARGS"; then @@ -4493,7 +4634,7 @@ at_failed=false echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:313" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:329" $at_failed && at_func_log_failure $at_traceon; } @@ -4502,23 +4643,23 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_62 -#AT_START_63 -# 63. testsuite.at:315: testallf77 -at_setup_line='testsuite.at:315' -at_func_banner 5 +#AT_STOP_65 +#AT_START_66 +# 66. testsuite.at:331: testallf77 +at_setup_line='testsuite.at:331' +at_func_banner 6 at_desc="testallf77" -$at_quiet $as_echo_n " 63: $at_desc " +$at_quiet $as_echo_n " 66: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "63. testsuite.at:315: testing ..." + $as_echo "66. testsuite.at:331: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:317: test ! \\( -f testallf77 -o -f ../../testallf77 \\) && exit 77 || \$VALGRIND testallf77 \$STARGS" -echo testsuite.at:317 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:333: test ! \\( -f testallf77 -o -f ../../testallf77 \\) && exit 77 || \$VALGRIND testallf77 \$STARGS" +echo testsuite.at:333 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "test ! \\( -f testallf77 -o -f ../../testallf77 \\) && exit 77 || $VALGRIND testallf77 $STARGS"; then @@ -4531,7 +4672,7 @@ at_failed=false echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:317" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:333" $at_failed && at_func_log_failure $at_traceon; } @@ -4540,23 +4681,23 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_63 -#AT_START_64 -# 64. testsuite.at:319: ucdf77 -at_setup_line='testsuite.at:319' -at_func_banner 5 +#AT_STOP_66 +#AT_START_67 +# 67. testsuite.at:335: ucdf77 +at_setup_line='testsuite.at:335' +at_func_banner 6 at_desc="ucdf77" -$at_quiet $as_echo_n " 64: $at_desc " +$at_quiet $as_echo_n " 67: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "64. testsuite.at:319: testing ..." + $as_echo "67. testsuite.at:335: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:321: test ! \\( -f ucdf77 -o -f ../../ucdf77 \\) && exit 77 || \$VALGRIND ucdf77 \$STARGS" -echo testsuite.at:321 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:337: test ! \\( -f ucdf77 -o -f ../../ucdf77 \\) && exit 77 || \$VALGRIND ucdf77 \$STARGS" +echo testsuite.at:337 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "test ! \\( -f ucdf77 -o -f ../../ucdf77 \\) && exit 77 || $VALGRIND ucdf77 $STARGS"; then @@ -4569,7 +4710,7 @@ at_failed=false echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:321" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:337" $at_failed && at_func_log_failure $at_traceon; } @@ -4578,23 +4719,23 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_64 -#AT_START_65 -# 65. testsuite.at:323: csgmesh -at_setup_line='testsuite.at:323' -at_func_banner 5 +#AT_STOP_67 +#AT_START_68 +# 68. testsuite.at:339: csgmesh +at_setup_line='testsuite.at:339' +at_func_banner 6 at_desc="csgmesh" -$at_quiet $as_echo_n " 65: $at_desc " +$at_quiet $as_echo_n " 68: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "65. testsuite.at:323: testing ..." + $as_echo "68. testsuite.at:339: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:325: test ! \\( -f csgmesh -o -f ../../csgmesh \\) && exit 77 || \$VALGRIND csgmesh \$STARGS" -echo testsuite.at:325 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:341: test ! \\( -f csgmesh -o -f ../../csgmesh \\) && exit 77 || \$VALGRIND csgmesh \$STARGS" +echo testsuite.at:341 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "test ! \\( -f csgmesh -o -f ../../csgmesh \\) && exit 77 || $VALGRIND csgmesh $STARGS"; then @@ -4607,7 +4748,7 @@ at_failed=false echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:325" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:341" $at_failed && at_func_log_failure $at_traceon; } @@ -4616,23 +4757,23 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_65 -#AT_START_66 -# 66. testsuite.at:329: silock -at_setup_line='testsuite.at:329' -at_func_banner 6 +#AT_STOP_68 +#AT_START_69 +# 69. testsuite.at:345: silock +at_setup_line='testsuite.at:345' +at_func_banner 7 at_desc="silock" -$at_quiet $as_echo_n " 66: $at_desc " +$at_quiet $as_echo_n " 69: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "66. testsuite.at:329: testing ..." + $as_echo "69. testsuite.at:345: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:331: testsilock \`pwd\` \$STARGS" -echo testsuite.at:331 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:347: testsilock \`pwd\` \$STARGS" +echo testsuite.at:347 >"$at_check_line_file" if { echo 'Not enabling shell tracing (command contains a `...` command substitution)' false; }; then @@ -4645,7 +4786,7 @@ at_failed=false echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:331" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:347" $at_failed && at_func_log_failure $at_traceon; } @@ -4654,23 +4795,23 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_66 -#AT_START_67 -# 67. testsuite.at:333: force single -at_setup_line='testsuite.at:333' -at_func_banner 6 +#AT_STOP_69 +#AT_START_70 +# 70. testsuite.at:349: force single +at_setup_line='testsuite.at:349' +at_func_banner 7 at_desc="force single" -$at_quiet $as_echo_n " 67: $at_desc " +$at_quiet $as_echo_n " 70: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "67. testsuite.at:333: testing ..." + $as_echo "70. testsuite.at:349: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:335: specmix \$STARGS" -echo testsuite.at:335 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:351: specmix \$STARGS" +echo testsuite.at:351 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "specmix $STARGS"; then @@ -4683,27 +4824,27 @@ at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:335" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:351" $at_failed && at_func_log_failure $at_traceon; } { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:336: testdtypes \`pwd\` \$STARGS" -echo testsuite.at:336 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:352: test -z \"\$BROWSER\" && exit 77 || \$VALGRIND testdtypes \`pwd\` \$STARGS" +echo testsuite.at:352 >"$at_check_line_file" if { echo 'Not enabling shell tracing (command contains a `...` command substitution)' false; }; then - ( $at_traceon; testdtypes `pwd` $STARGS ) >"$at_stdout" 2>"$at_stder1" + ( $at_traceon; test -z "$BROWSER" && exit 77 || $VALGRIND testdtypes `pwd` $STARGS ) >"$at_stdout" 2>"$at_stder1" at_func_filter_trace $? else - ( :; testdtypes `pwd` $STARGS ) >"$at_stdout" 2>"$at_stderr" + ( :; test -z "$BROWSER" && exit 77 || $VALGRIND testdtypes `pwd` $STARGS ) >"$at_stdout" 2>"$at_stderr" fi at_status=$? at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:336" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:352" $at_failed && at_func_log_failure $at_traceon; } @@ -4712,23 +4853,23 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_67 -#AT_START_68 -# 68. testsuite.at:338: multi_file -at_setup_line='testsuite.at:338' -at_func_banner 6 +#AT_STOP_70 +#AT_START_71 +# 71. testsuite.at:354: multi_file +at_setup_line='testsuite.at:354' +at_func_banner 7 at_desc="multi_file" -$at_quiet $as_echo_n " 68: $at_desc " +$at_quiet $as_echo_n " 71: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "68. testsuite.at:338: testing ..." + $as_echo "71. testsuite.at:354: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:340: \$VALGRIND multi_file \$STARGS" -echo testsuite.at:340 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:356: \$VALGRIND multi_file \$STARGS" +echo testsuite.at:356 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "$VALGRIND multi_file $STARGS"; then @@ -4741,7 +4882,7 @@ at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:340" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:356" $at_failed && at_func_log_failure $at_traceon; } @@ -4750,23 +4891,23 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_68 -#AT_START_69 -# 69. testsuite.at:342: multi_file use-ns -at_setup_line='testsuite.at:342' -at_func_banner 6 +#AT_STOP_71 +#AT_START_72 +# 72. testsuite.at:358: multi_file use-ns +at_setup_line='testsuite.at:358' +at_func_banner 7 at_desc="multi_file use-ns" -$at_quiet $as_echo_n " 69: $at_desc " +$at_quiet $as_echo_n " 72: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "69. testsuite.at:342: testing ..." + $as_echo "72. testsuite.at:358: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:344: \$VALGRIND multi_file use-ns \$STARGS" -echo testsuite.at:344 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:360: \$VALGRIND multi_file use-ns \$STARGS" +echo testsuite.at:360 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "$VALGRIND multi_file use-ns $STARGS"; then @@ -4779,7 +4920,7 @@ at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:344" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:360" $at_failed && at_func_log_failure $at_traceon; } @@ -4788,23 +4929,23 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_69 -#AT_START_70 -# 70. testsuite.at:346: testall -medium -at_setup_line='testsuite.at:346' -at_func_banner 6 +#AT_STOP_72 +#AT_START_73 +# 73. testsuite.at:362: testall -medium +at_setup_line='testsuite.at:362' +at_func_banner 7 at_desc="testall -medium" -$at_quiet $as_echo_n " 70: $at_desc " +$at_quiet $as_echo_n " 73: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "70. testsuite.at:346: testing ..." + $as_echo "73. testsuite.at:362: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:348: \$VALGRIND testall -medium \$STARGS" -echo testsuite.at:348 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:364: \$VALGRIND testall -medium \$STARGS" +echo testsuite.at:364 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "$VALGRIND testall -medium $STARGS"; then @@ -4817,7 +4958,7 @@ at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:348" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:364" $at_failed && at_func_log_failure $at_traceon; } @@ -4826,23 +4967,23 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_70 -#AT_START_71 -# 71. testsuite.at:350: testall -large -at_setup_line='testsuite.at:350' -at_func_banner 6 +#AT_STOP_73 +#AT_START_74 +# 74. testsuite.at:366: testall -large +at_setup_line='testsuite.at:366' +at_func_banner 7 at_desc="testall -large" -$at_quiet $as_echo_n " 71: $at_desc " +$at_quiet $as_echo_n " 74: $at_desc " at_xfail=no echo "# -*- compilation -*-" >> "$at_group_log" ( - $as_echo "71. testsuite.at:350: testing ..." + $as_echo "74. testsuite.at:366: testing ..." $at_traceon { $at_traceoff -$as_echo "$at_srcdir/testsuite.at:352: \$VALGRIND testall -large \$STARGS" -echo testsuite.at:352 >"$at_check_line_file" +$as_echo "$at_srcdir/testsuite.at:368: \$VALGRIND testall -large \$STARGS" +echo testsuite.at:368 >"$at_check_line_file" if test -n "$at_traceon" \ && at_func_check_newline "$VALGRIND testall -large $STARGS"; then @@ -4855,7 +4996,7 @@ at_failed=false at_func_diff_devnull "$at_stderr" || at_failed=: echo stdout:; cat "$at_stdout" -at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:352" +at_func_check_status 0 $at_status "$at_srcdir/testsuite.at:368" $at_failed && at_func_log_failure $at_traceon; } @@ -4864,4 +5005,4 @@ $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 | eval $at_tee_pipe at_status=`cat "$at_status_file"` -#AT_STOP_71 +#AT_STOP_74 diff -Nru silo-llnl-4.10.2/tests/testsuite.at silo-llnl-4.10.2.real/tests/testsuite.at --- silo-llnl-4.10.2/tests/testsuite.at 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/testsuite.at 2018-02-15 17:25:43.000000000 +0000 @@ -62,8 +62,10 @@ AT_BANNER(Non-driver-specific) AT_SETUP(version) AT_DATA(expout, -This version of Silo is greater than or equal to 4.6 -This version of Silo is NOT greater than or equal to 90.5.2 +This version of the Silo library is greater than or equal to 4 +This version of the Silo library is NOT greater than or equal to 9 +This version of the Silo library is greater than or equal to 4.6 +This version of the Silo library is NOT greater than or equal to 90.5.2 DBVersion() returns "AT_PACKAGE_VERSION" DBVersionGE(4,6,0) returns 1 DBVersionGE(90,5,2) returns 0 @@ -86,6 +88,9 @@ AT_SETUP(namescheme) AT_CHECK($VALGRIND namescheme,,ignore) AT_CLEANUP +AT_SETUP(realloc_obj_and_opts) +AT_CHECK($VALGRIND realloc_obj_and_opts $STARGS,,ignore) +AT_CLEANUP AT_SETUP(point) AT_CHECK($VALGRIND point $STARGS,,ignore) AT_CLEANUP @@ -206,7 +211,7 @@ AT_CHECK($VALGRIND testfs $STARGS,,ignore) AT_CLEANUP AT_SETUP(empty) -AT_CHECK($VALGRIND empty $STARGS,,ignore) +AT_CHECK($VALGRIND empty $STARGS,,ignore,ignore) AT_CLEANUP AT_BANNER(pythonmodule) @@ -223,10 +228,10 @@ dir_names = (a) t2='hello' -t6= (1.2, 10.199999999999999) +t6=1.20,10.20 a/t8='x2' t9=x3 -/t5= (1.2, 10.0) +/t5=1.20,10.00 ]) AT_CHECK(test -z "$PYTHON" && exit 77 || env PYTHONPATH=../../../tools/python/.libs $PYTHON ../../test_write.py,,expout,ignore) AT_CLEANUP @@ -240,6 +245,13 @@ AT_CHECK(test -z "$PYTHON" -o -z "$BROWSER" && exit 77 || $VALGRIND testonehex `pwd`,,ignore,ignore) AT_CLEANUP +AT_BANNER(JSON (experimental)) +AT_SETUP(json) +AT_KEYWORDS(json) +AT_CHECK(test ! \( -e ./json -o -e ../../json \) && exit 77 || onehex $STARGS,,ignore) # don't valgrind these intermediate parts +AT_CHECK(test ! \( -e ./json -o -e ../../json \) && exit 77 || $VALGRIND json $STARGS,ignore,ignore) +AT_CLEANUP + AT_BANNER(PDB Lite) AT_SETUP(testpdb) AT_CHECK(test ! \( -e ../src/score/lite_score.h -o -e ../../../src/pdb/lite_pdb.h \) -o "$STARGS" = DB_HDF5 && exit 77 || $VALGRIND testpdb,ignore,ignore) @@ -296,6 +308,10 @@ AT_KEYWORDS(fortran) AT_CHECK(test ! \( -f arrayf77 -o -f ../../arrayf77 \) && exit 77 || $VALGRIND arrayf77 $STARGS,,ignore,ignore) AT_CLEANUP +AT_SETUP(arrayf90) +AT_KEYWORDS(fortran) +AT_CHECK(test ! \( -f arrayf90 -o -f ../../arrayf90 \) && exit 77 || $VALGRIND arrayf90 $STARGS,,ignore,ignore) +AT_CLEANUP AT_SETUP(curvef77) AT_KEYWORDS(fortran) AT_CHECK(test ! \( -f curvef77 -o -f ../../curvef77 \) && exit 77 || $VALGRIND curvef77 $STARGS,,ignore,ignore) @@ -333,7 +349,7 @@ AT_SETUP(force single) AT_KEYWORDS(conversions) AT_CHECK(specmix $STARGS,,ignore) -AT_CHECK(testdtypes `pwd` $STARGS,,ignore) +AT_CHECK(test -z "$BROWSER" && exit 77 || $VALGRIND testdtypes `pwd` $STARGS,,ignore) AT_CLEANUP AT_SETUP(multi_file) AT_KEYWORDS(large) diff -Nru silo-llnl-4.10.2/tests/test_write.py silo-llnl-4.10.2.real/tests/test_write.py --- silo-llnl-4.10.2/tests/test_write.py 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/test_write.py 2018-02-15 17:25:43.000000000 +0000 @@ -70,9 +70,9 @@ db2=Silo.Open("foo.silo") print "toc=%s"%db2.GetToc() print "t2='%s'"%db2.GetVar("t2") -print "t6=",db2.GetVar("t6") +print "t6=%.2f,%.2f"%db2.GetVar("t6") print "a/t8='%s'"%db2.GetVar("a/t8") db2.SetDir("a") print "t9=%s"%db2.GetVar("t9") -print "/t5=",db2.GetVar("../t5") +print "/t5=%.2f,%.2f"%db2.GetVar("../t5") db2.Close() diff -Nru silo-llnl-4.10.2/tests/twohex.c silo-llnl-4.10.2.real/tests/twohex.c --- silo-llnl-4.10.2/tests/twohex.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/twohex.c 2018-02-15 17:25:43.000000000 +0000 @@ -240,8 +240,8 @@ facelist->nshapes, facelist->types, facelist->typelist, facelist->ntypes); - DBPutUcdmesh(dbfile, "hex", 3, coordnames, coords, 12, 2, "zonelist", - "facelist", DB_FLOAT, NULL); + DBPutUcdmesh(dbfile, "hex", 3, (DBCAS_t) coordnames, + coords, 12, 2, "zonelist", "facelist", DB_FLOAT, NULL); DBPutUcdvar1(dbfile, "v", "hex", var, 12, NULL, 0, DB_FLOAT, DB_NODECENT, NULL); diff -Nru silo-llnl-4.10.2/tests/ucd.c silo-llnl-4.10.2.real/tests/ucd.c --- silo-llnl-4.10.2/tests/ucd.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/ucd.c 2018-02-15 17:25:43.000000000 +0000 @@ -202,7 +202,9 @@ #endif float *coords[3], *vars[8]; - char *coordnames[3], *varnames[8]; + char *coordnames[3], *varnames[8], *alt_nodenum_varnames[5]; + + DBoptlist *opts; fshapesize = 2; fshapecnt = NFACES; @@ -218,18 +220,26 @@ coordnames[1] = "Y"; vars[0] = d; varnames[0] = "d"; + alt_nodenum_varnames[0] = "foo"; + alt_nodenum_varnames[1] = "bar"; + alt_nodenum_varnames[2] = "gorfo"; + alt_nodenum_varnames[3] = "qwerty"; + alt_nodenum_varnames[4] = 0; - (void)DBPutFacelist(dbfile, "fl", NFACES, 2, fnodelist, LFNODELIST, 0, + DBPutFacelist(dbfile, "fl", NFACES, 2, fnodelist, LFNODELIST, 0, NULL, &fshapesize, &fshapecnt, NFSHAPES, NULL, NULL, 0); DBSetDeprecateWarnings(0); - (void)DBPutZonelist(dbfile, "zl", NZONES, 2, znodelist, LZNODELIST, 0, + DBPutZonelist(dbfile, "zl", NZONES, 2, znodelist, LZNODELIST, 0, &zshapesize, &zshapecnt, NZSHAPES); DBSetDeprecateWarnings(3); - (void)DBPutUcdmesh(dbfile, name, 2, coordnames, coords, - NNODES, NZONES, "zl", NULL, DB_FLOAT, NULL); + opts = DBMakeOptlist(3); + DBAddOption(opts, DBOPT_ALT_NODENUM_VARS, alt_nodenum_varnames); + DBPutUcdmesh(dbfile, name, 2, (DBCAS_t) coordnames, + coords, NNODES, NZONES, "zl", NULL, DB_FLOAT, opts); + DBFreeOptlist(opts); vars[0] = d; varnames[0] = "d"; @@ -239,20 +249,20 @@ sprintf(vname, "d%d", i); - (void)DBPutUcdvar1(dbfile, vname, name, vars[0], NZONES, + DBPutUcdvar1(dbfile, vname, name, vars[0], NZONES, NULL, 0, idatatype, DB_ZONECENT, NULL); } vars[0] = u; varnames[0] = "u"; - (void)DBPutUcdvar(dbfile, varnames[0], name, 1, varnames, vars, NNODES, + DBPutUcdvar(dbfile, varnames[0], name, 1, (DBCAS_t) varnames, vars, NNODES, NULL, 0, idatatype, DB_NODECENT, NULL); vars[0] = v; varnames[0] = "v"; - (void)DBPutUcdvar(dbfile, varnames[0], name, 1, varnames, vars, NNODES, + DBPutUcdvar(dbfile, varnames[0], name, 1, (DBCAS_t) varnames, vars, NNODES, NULL, 0, idatatype, DB_NODECENT, NULL); vars[0] = u; @@ -260,7 +270,7 @@ vars[1] = v; varnames[1] = "vcomp"; - (void)DBPutUcdvar(dbfile, "velocity", name, 2, varnames, vars, NNODES, + DBPutUcdvar(dbfile, "velocity", name, 2, (DBCAS_t) varnames, vars, NNODES, NULL, 0, idatatype, DB_NODECENT, NULL); /* test writing more than 2 or 3 component variable */ @@ -277,13 +287,13 @@ vars[5] = v; varnames[5] = "vcompm_copy"; - (void)DBPutUcdvar(dbfile, "many_comps", name, 6, varnames, vars, NNODES, + DBPutUcdvar(dbfile, "many_comps", name, 6, (DBCAS_t) varnames, vars, NNODES, NULL, 0, idatatype, DB_NODECENT, NULL); dims = NZONES; - (void)DBPutMaterial(dbfile, "material", name, NMATS, matnos, + DBPutMaterial(dbfile, "material", name, NMATS, matnos, matlist, &dims, 1, mix_next, mix_mat, mix_zone, mix_vf, mixlen, DB_FLOAT, NULL); #if 0 @@ -299,7 +309,7 @@ DBConvertMat(NMATS, NZONES, nmix, mixedels, imatlist, matnos, vf, DB_FLOAT, &mixlen, matlist, mix_next, mix_mat, mix_zone, mix_vf); - (void)DBPutMaterial(dbfile, "material", name, matnos, NMATS, + DBPutMaterial(dbfile, "material", name, matnos, NMATS, matlist, &dims, 1, mix_next, mix_mat, mix_zone, mix_vf, mixlen, DB_FLOAT, NULL); #endif diff -Nru silo-llnl-4.10.2/tests/ucdf77.f silo-llnl-4.10.2.real/tests/ucdf77.f --- silo-llnl-4.10.2/tests/ucdf77.f 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/ucdf77.f 2018-02-15 17:25:43.000000000 +0000 @@ -56,7 +56,7 @@ c Purpose c c Demonstrate use of SILO for creating unstructured cell data -c (UCD) objects for viewing with MeshTV. +c (UCD) objects for visualization. c c--------------------------------------------------------------------- program main @@ -80,7 +80,7 @@ . "file info", 9, driver, dbid) -c...Write out necessary objects for MeshTV. +c...Write out objects for visualization meshid = builducd(dbid, "ucd", 3) diff -Nru silo-llnl-4.10.2/tests/ucdsamp3.c silo-llnl-4.10.2.real/tests/ucdsamp3.c --- silo-llnl-4.10.2/tests/ucdsamp3.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/ucdsamp3.c 2018-02-15 17:25:43.000000000 +0000 @@ -258,7 +258,7 @@ * Write out the external facelist we defined * above. *-------------------------------------------------*/ - (void)DBPutFacelist(dbfile, "fl", NFACES, 3, fnodelist, LFNODELIST, 0, + DBPutFacelist(dbfile, "fl", NFACES, 3, fnodelist, LFNODELIST, 0, fzoneno, &fshapesize, &fshapecnt, NFSHAPES, NULL, NULL, 0); #else @@ -269,7 +269,7 @@ fl = (DBfacelist *) DBCalcExternalFacelist(znodelist, NNODES, 0, &zshapesize, &zshapecnt, NZSHAPES, matlist, 2); - (void)DBPutFacelist(dbfile, "fl", fl->nfaces, 3, + DBPutFacelist(dbfile, "fl", fl->nfaces, 3, fl->nodelist, fl->lnodelist, 0, fl->zoneno, fl->shapesize, fl->shapecnt, fl->nshapes, NULL, NULL, 0); @@ -279,7 +279,7 @@ * Write out the zonelist. *-------------------------------------------------*/ DBSetDeprecateWarnings(0); - (void)DBPutZonelist(dbfile, "zl", NZONES, 3, znodelist, LZNODELIST, 0, + DBPutZonelist(dbfile, "zl", NZONES, 3, znodelist, LZNODELIST, 0, &zshapesize, &zshapecnt, NZSHAPES); DBSetDeprecateWarnings(3); @@ -293,26 +293,26 @@ coordnames[1] = "Y"; coordnames[2] = "Z"; - meshid = DBPutUcdmesh(dbfile, name, 3, coordnames, coords, - NNODES, NZONES, "zl", "fl", DB_FLOAT, NULL); + meshid = DBPutUcdmesh(dbfile, name, 3, (DBCAS_t) coordnames, + coords, NNODES, NZONES, "zl", "fl", DB_FLOAT, NULL); /*-------------------------------------------------- * Write out the material data. *-------------------------------------------------*/ - (void)DBPutMaterial(dbfile, "material", name, 2, matnos, matlist, + DBPutMaterial(dbfile, "material", name, 2, matnos, matlist, &dims, 1, NULL, NULL, NULL, NULL, 0, DB_FLOAT, NULL); /*-------------------------------------------------- * Write out a zonal variable. *-------------------------------------------------*/ - (void)DBPutUcdvar1(dbfile, "d", name, d, NZONES, + DBPutUcdvar1(dbfile, "d", name, d, NZONES, NULL, 0, idatatype, DB_ZONECENT, NULL); /*-------------------------------------------------- * Write out a nodal variable. *-------------------------------------------------*/ - (void)DBPutUcdvar1(dbfile, "u", name, u, NNODES, + DBPutUcdvar1(dbfile, "u", name, u, NNODES, NULL, 0, idatatype, DB_NODECENT, NULL); return (meshid); diff -Nru silo-llnl-4.10.2/tests/version.c silo-llnl-4.10.2.real/tests/version.c --- silo-llnl-4.10.2/tests/version.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tests/version.c 2018-02-15 17:25:43.000000000 +0000 @@ -57,13 +57,45 @@ #include "silo.h" #include +static int VersionNumberGE(int aMaj, int aMin, int aPat, + int bMaj, int bMin, int bPat) +{ + if (aMaj < 0) aMaj = 0; + if (aMin < 0) aMin = 0; + if (aPat < 0) aPat = 0; + + if (bMaj < 0) bMaj = 0; + if (bMin < 0) bMin = 0; + if (bPat < 0) bPat = 0; + + if (aMaj > bMaj) + return 1; + else if (aMaj < bMaj) + return 0; + else + { + if (aMin > bMin) + return 1; + else if (aMin < bMin) + return 0; + else + { + if (aPat >= bPat) + return 1; + else + return 0; + } + } +} + int main(int argc, char *argv[]) { DBfile *dbfile; - int i, driver=DB_PDB; + int i, pass, driver=DB_PDB; static char *filename="version.pdb"; int show_all_errors = FALSE; + int vnos[4]; for (i=1; iname = safe_strdup ("ARRAY"); - cls->new = ary_new; + cls->newobj = ary_new; cls->copy = ary_copy; cls->dest = ary_dest; cls->apply = ary_apply; @@ -198,7 +203,7 @@ static obj_t ary_new (va_list ap) { - obj_ary_t *self = calloc (1, sizeof(obj_ary_t)); + obj_ary_t *self = (obj_ary_t*)calloc (1, sizeof(obj_ary_t)); char *s; assert (self); @@ -243,7 +248,7 @@ retval = self; } else { - retval = calloc (1, sizeof(obj_ary_t)); + retval = (obj_ary_t*)calloc (1, sizeof(obj_ary_t)); retval->ascii_dims = safe_strdup (self->ascii_dims); retval->byte_offset = self->byte_offset; retval->ndims = self->ndims; @@ -493,7 +498,7 @@ if ((nbytes=obj_sizeof(self->sub))<=0) { /* Total hack to make SH5 case work */ if (ARY_SH_5==self->special_handling) { - nbytes=sizeof(int); + nbytes=sizeof(void*); } else { out_error ("unable to determine size of: ", self->sub); return; @@ -593,24 +598,12 @@ if (wdata->nvals<0) return ; /*error already detected*/ if (wdata->vals == 0) { - /* Total hack to make SH5 case work */ - wdata->vals = (int *) malloc(10*sizeof(int)); - wdata->nvals = 0; - wdata->maxvals = 10; + int sentinel = wdata->maxvals; + void **memtmp = (void**) mem; i = 0; - while (1) - { - if (wdata->nvals == wdata->maxvals) - { - wdata->maxvals *= 1.5; - wdata->vals = (int *) realloc(wdata->vals, wdata->maxvals*sizeof(int)); - } - wdata->vals[i] = *((int*)((char*)mem+i*nbytes)); - wdata->nvals++; - if (wdata->vals[i] == -1) - break; + while ((void*) sentinel != memtmp[i]) i++; - } + wdata->nvals = i; } else { @@ -1310,7 +1303,7 @@ obj_ary_t *self = MYCLASS(_self); char *s, *t, *rest, buf[1024]; - int i, n, dim[NDIMS], max_dim0=0, sentinel; + int i, n, dim[NDIMS], max_dim0=0, sentinel=0, dimadd=0; lex_t *lex_input=NULL; obj_t in=NIL, sdo=NIL; walk_t wdata; @@ -1370,7 +1363,10 @@ max_dim0 = strtol (rest, &rest, 0); } else if (ARY_SH_5==self->special_handling) { sentinel = strtol (rest, &rest, 0); - self->ndims = 1; + self->ndims = 1; + } else if (ARY_SH_6==self->special_handling) { + self->special_handling = 0; /*completely handled here*/ + dimadd = strtol (rest, &rest, 0); } assert (!rest || !*rest); @@ -1413,16 +1409,18 @@ { wdata.vals = 0; wdata.nvals = 0; - wdata.maxvals = 0; + wdata.maxvals = sentinel; obj_walk1 (sdo, NULL, WALK_RETRIEVE, &wdata); - if (wdata.nvals<1) { - out_errorn ("array dimension has no value: %s", t); + if (wdata.nvals<1) + { self->ndims = 0; - goto error; + } + else + { + self->ndims = 1; + self->dim[0] = wdata.nvals; } sdo = obj_dest (sdo); - self->ndims = 1; - self->dim[0] = wdata.nvals; } else { @@ -1430,7 +1428,7 @@ wdata.nvals = 0; wdata.maxvals = NELMTS(dim); obj_walk1 (sdo, NULL, WALK_RETRIEVE, &wdata); - if (wdata.nvals<1) { + if (wdata.nvals<0) { out_errorn ("array dimension has no value: %s", t); self->ndims = 0; goto error; @@ -1441,11 +1439,11 @@ out_errorn ("too many dimensions in array type"); goto error; } - self->dim[self->ndims] = n = wdata.vals[i]; + self->dim[self->ndims] = n = wdata.vals[i] + dimadd; self->ndims += 1; - if (n<0) { - out_errorn ("dimension %d is invalid: %d", - self->ndims, n); + if (n<0 && !(wdata.vals[i]==0 && dimadd==-1)) { + out_errorn ("dimension %d is invalid: %d (%s)", + self->ndims, n, t); goto error; } } diff -Nru silo-llnl-4.10.2/tools/browser/bif.c silo-llnl-4.10.2.real/tools/browser/bif.c --- silo-llnl-4.10.2/tools/browser/bif.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tools/browser/bif.c 2018-02-15 17:25:43.000000000 +0000 @@ -104,10 +104,10 @@ class_t bif_class (void) { - class_t cls = calloc (1, sizeof(*cls)); + class_t cls = (class_t)calloc (1, sizeof(*cls)); cls->name = safe_strdup ("BIF"); - cls->new = bif_new; + cls->newobj = bif_new; cls->apply = bif_apply; cls->dest = NULL; cls->copy = NULL; @@ -137,7 +137,7 @@ static obj_t bif_new (va_list ap) { - obj_bif_t *self = calloc (1, sizeof(obj_bif_t)); + obj_bif_t *self = (obj_bif_t *)calloc (1, sizeof(obj_bif_t)); int flags ; assert (self); diff -Nru silo-llnl-4.10.2/tools/browser/browser.c silo-llnl-4.10.2.real/tools/browser/browser.c --- silo-llnl-4.10.2/tools/browser/browser.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tools/browser/browser.c 2018-02-15 17:25:43.000000000 +0000 @@ -296,7 +296,7 @@ toc->nobj + toc->ndir + toc->narray + toc->ndefvars + toc->ncsgmesh + toc->ncsgvar + toc->nmultimeshadj + toc->nmrgtree + toc->ngroupelmap + toc->nmrgvar; - if (total) retval = malloc (total * sizeof(toc_t)); + if (total) retval = (toc_t *)malloc (total * sizeof(toc_t)); /* * Load the various types of objects into the new structure. @@ -462,7 +462,7 @@ */ #if defined(HAVE_READLINE_READLINE_H) && defined(HAVE_LIBREADLINE) static char * -browser_rl_obj_generator (char *text, int state) { +browser_rl_obj_generator (char const *text, int state) { obj_t f1, val; int i, n; @@ -602,67 +602,9 @@ * Made reltol_eps diff mutually exclusive with abstol || reltol diff. *------------------------------------------------------------------------- */ -int -different (double a, double b, double abstol, double reltol, - double reltol_eps) { - - double num, den; - - /* - * First, see if we should use the alternate diff. - * check |A-B|/(|A|+|B|+EPS) in a way that won't overflow. - */ - if (reltol_eps >= 0 && reltol > 0) - { - if ((a<0 && b>0) || (b<0 && a>0)) { - num = fabs (a/2 - b/2); - den = fabs (a/2) + fabs(b/2) + reltol_eps/2; - reltol /= 2; - } else { - num = fabs (a - b); - den = fabs (a) + fabs(b) + reltol_eps; - } - if (0.0==den && num) return 1; - if (num/den > reltol) return 1; - return 0; - } - else /* use the old Abs|Rel difference test */ - { - /* - * Now the |A-B| but make sure it doesn't overflow which can only - * happen if one is negative and the other is positive. - */ - if (abstol>0) { - if ((a<0 && b>0) || (b<0 && a>0)) { - if (fabs (a/2 - b/2) > abstol/2) return 1; - } else { - if (fabs(a-b) > abstol) return 1; - } - } - - /* - * Now check 2|A-B|/|A+B| in a way that won't overflow. - */ - if (reltol>0) { - if ((a<0 && b>0) || (b<0 && a>0)) { - num = fabs (a/2 - b/2); - den = fabs (a/2 + b/2); - reltol /= 2; - } else { - num = fabs (a - b); - den = fabs (a/2 + b/2); - } - if (0.0==den && num) return 1; - if (num/den > reltol) return 1; - } - - if (abstol>0 || reltol>0) return 0; - } - - /* - * Otherwise do a normal exact comparison. - */ - return a!=b; +int different (double a, double b, double abstol, double reltol, double reltol_eps) +{ + return DBIsDifferentDouble(a,b,abstol,reltol,reltol_eps); } /*------------------------------------------------------------------------- @@ -682,68 +624,9 @@ * Made it compiled UNconditionally. *------------------------------------------------------------------------- */ -#define FABS(A) ((A)<0?-(A):(A)) -int -differentll (long long a, long long b, double abstol, double reltol, - double reltol_eps) { - - long long num, den; - - /* - * First, see if we should use the alternate diff. - * check |A-B|/(|A|+|B|+EPS) in a way that won't overflow. - */ - if (reltol_eps >= 0 && reltol > 0) - { - if ((a<0 && b>0) || (b<0 && a>0)) { - num = FABS (a/2 - b/2); - den = FABS (a/2) + FABS(b/2) + reltol_eps/2; - reltol /= 2; - } else { - num = FABS (a - b); - den = FABS (a) + FABS(b) + reltol_eps; - } - if (0.0==den && num) return 1; - if (num/den > reltol) return 1; - return 0; - } - else - { - /* - * Now the |A-B| but make sure it doesn't overflow which can only - * happen if one is negative and the other is positive. - */ - if (abstol>0) { - if ((a<0 && b>0) || (b<0 && a>0)) { - if (FABS(a/2 - b/2) > abstol/2) return 1; - } else { - if (FABS(a-b) > abstol) return 1; - } - } - - /* - * Now check 2|A-B|/|A+B| in a way that won't overflow. - */ - if (reltol>0) { - if ((a<0 && b>0) || (b<0 && a>0)) { - num = FABS (a/2 - b/2); - den = FABS (a/2 + b/2); - reltol /= 2; - } else { - num = FABS (a - b); - den = FABS (a/2 + b/2); - } - if (0.0==den && num) return 1; - if (num/den > reltol) return 1; - - if (abstol>0 || reltol>0) return 0; - } - } - - /* - * Otherwise do a normal exact comparison. - */ - return a!=b; +int differentll (long long a, long long b, double abstol, double reltol, double reltol_eps) +{ + return DBIsDifferentLongLong(a,b,abstol,reltol,reltol_eps); } /*------------------------------------------------------------------------- @@ -1229,9 +1112,9 @@ sym_bi_set("lowlevel", sw->lexeme, NULL, NULL); } - if ((sw=switch_find(switches, "--rdonly")) && sw->seen) { + if ((sw=switch_find(switches, "--writeable")) && sw->seen) { sprintf(tmp, "%d", sw->value.d); /*boolean*/ - sym_bi_set("rdonly", tmp, NULL, NULL); + sym_bi_set("writeable", tmp, NULL, NULL); } if ((sw=switch_find(switches, "--single")) && sw->seen) { @@ -1429,7 +1312,15 @@ /* We have our own readline completion function that tries to complete * object names instead of the standard completion function that tries * to complete file names. */ - rl_completion_entry_function = (char *(*)(const char *, int)) browser_rl_obj_generator; +#ifdef RL_READLINE_VERSION +# if RL_READLINE_VERSION >= 0x602 + rl_completion_entry_function = (rl_compentry_func_t *) browser_rl_obj_generator; +# else + rl_completion_entry_function = (Function *) browser_rl_obj_generator; +# endif +#else + rl_completion_entry_function = browser_rl_obj_generator; +#endif #endif /*HAVE_READLINE_READLINE_H && HAVE_LIBREADLINE*/ #if defined(HAVE_READLINE_HISTORY_H) && defined(HAVE_READLINE_HISTORY) @@ -1503,7 +1394,7 @@ if (SUCCEEDED(SHGetFolderPath(NULL, CSIDL_PERSONAL, NULL, SHGFP_TYPE_CURRENT, szPath))) { - ExpandEnvironmentStrings(userhome, szPath, 1024); + ExpandEnvironmentStrings((LPCWSTR)userhome, szPath, 1024); sprintf(init_file_buf, "%s\\%s", userhome, INIT_FILE); if (access(init_file_buf, F_OK)>=0) init_file = init_file_buf; } @@ -1629,11 +1520,11 @@ "displayed with a type-dependent printf(3C) format string " "which is user defined (e.g., `$fmt_int')."); - switch_add(sws, "-r", "--rdonly", "b=1", NULL); + switch_add(sws, "-W", "--writeable", "b=1", NULL); switch_doc(NULL, - "If this switch is specified then all files will be open in " - "read-only mode regardless of their permissions. This switch " - "sets the $rdonly variable."); + "If this switch is specified then all files will be open with " + "write permission if the file permissions allow it. This switch " + "sets the $writeable variable."); switch_add(sws, "-s", "--single", "b=1", NULL); switch_doc(NULL, diff -Nru silo-llnl-4.10.2/tools/browser/browser.h silo-llnl-4.10.2.real/tools/browser/browser.h --- silo-llnl-4.10.2/tools/browser/browser.h 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tools/browser/browser.h 2018-02-15 17:25:43.000000000 +0000 @@ -146,13 +146,17 @@ #define DEEP 1 #define NIL ((obj_t)0) #define NDIMS 10 +#ifndef NELEMTS #define NELMTS(X) (sizeof(X)/sizeof(*(X))) - -#ifndef _WIN32 -char *safe_strdup(const char *); #endif + +//#ifndef _WIN32 +//extern char *_db_safe_strdup(const char *); +//#endif #undef strdup -#define strdup(s) safe_strdup(s) +#undef safe_strdup +#define strdup(s) _db_safe_strdup(s) +#define safe_strdup(s) _db_safe_strdup(s) /* * The Makefile can override these constants. @@ -227,14 +231,8 @@ } walk_t; -/* - * I/O association tables map integer values to string constants and - * vice versa. - */ -#define NASSOCS 32 - typedef struct prim_assoc_t { - int n ; /*integer part */ + double n ; /*double part */ char *s ; /*string part */ } prim_assoc_t; @@ -243,7 +241,7 @@ */ struct class_t { char *name ; /*class name */ - obj_t (*new)(va_list); /*constructor */ + obj_t (*newobj)(va_list); /*constructor */ obj_t (*dest)(obj_t); /*destructor */ obj_t (*copy)(obj_t,int); /*copy constructor */ void (*print)(obj_t,struct out_t*); /*print object */ @@ -499,7 +497,7 @@ /*** file.c ***/ DBfile *file_file (obj_t); -int file_rdonly (obj_t); +int file_writeable (obj_t); /*** func.c ***/ extern diffopt_t DiffOpt; @@ -634,6 +632,8 @@ extern prim_assoc_t PA_REGIONOP[]; extern prim_assoc_t PA_TOPODIM[]; extern prim_assoc_t PA_REPRBLOCK[]; +extern prim_assoc_t PA_MISSING_VALUE[]; +extern prim_assoc_t PA_ZONETYPE[]; obj_t prim_set_io_assoc (obj_t, prim_assoc_t*); DBdatatype prim_silotype (obj_t); diff -Nru silo-llnl-4.10.2/tools/browser/cons.c silo-llnl-4.10.2.real/tools/browser/cons.c --- silo-llnl-4.10.2/tools/browser/cons.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tools/browser/cons.c 2018-02-15 17:25:43.000000000 +0000 @@ -104,10 +104,10 @@ class_t cons_class (void) { - class_t cls = calloc(1, sizeof(*cls)); + class_t cls = (class_t)calloc(1, sizeof(*cls)); cls->name = safe_strdup("CONS"); - cls->new = cons_new; + cls->newobj = cons_new; cls->dest = cons_dest; cls->copy = cons_copy; cls->print = cons_print; @@ -138,7 +138,7 @@ static obj_t cons_new (va_list ap) { - obj_cons_t *self = calloc (1, sizeof(obj_cons_t)); + obj_cons_t *self = (obj_cons_t *)calloc (1, sizeof(obj_cons_t)); assert (self); self->head = va_arg (ap, obj_t); diff -Nru silo-llnl-4.10.2/tools/browser/file.c silo-llnl-4.10.2.real/tools/browser/file.c --- silo-llnl-4.10.2/tools/browser/file.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tools/browser/file.c 2018-02-15 17:25:43.000000000 +0000 @@ -63,16 +63,16 @@ * *------------------------------------------------------------------------- */ +#include /*Silo configuration record*/ #include #include +#include #ifdef HAVE_FNMATCH_H # include #endif - -#include /*Silo configuration record*/ +#include #include #include -#include #define CHECK_SYMBOL(A) if (!strncmp(str, #A, strlen(str))) return A @@ -183,13 +183,15 @@ CHECK_SYMBOL(DB_H5VFD_MPIO); CHECK_SYMBOL(DB_H5VFD_MPIP); CHECK_SYMBOL(DB_H5VFD_SILO); + + return DB_PDB; } #define MYCLASS(X) ((obj_file_t*)(X)) typedef struct obj_file_t { obj_pub_t pub; - int rdonly; + int writeable; char *name; DBfile *f; } obj_file_t; @@ -226,10 +228,10 @@ class_t file_class (void) { - class_t cls = calloc (1, sizeof(*cls)); + class_t cls = (class_t)calloc (1, sizeof(*cls)); cls->name = safe_strdup ("FILE"); - cls->new = file_new; + cls->newobj = file_new; cls->dest = file_dest; cls->copy = NULL; cls->print = file_print; @@ -400,12 +402,12 @@ obj_file_t *self; char *fname=NULL; DBfile *f; - int rdonly; + int writeable; int old_err_level; static int seen_file_format = -1; fname = va_arg (ap, char*); - rdonly = va_arg (ap, int); + writeable = va_arg (ap, int); /* reset hdf5 vfd options (whether the are used or not) */ file_reset_hdf5_vfd_options(); @@ -415,13 +417,13 @@ * permission then try opening it for read-only */ #define DEFAULT_DB_TYPE DB_UNKNOWN - f = DBOpen (fname, DEFAULT_DB_TYPE, rdonly ? DB_READ : DB_APPEND); - if (!f && E_FILENOWRITE==db_errno && !rdonly) { + f = DBOpen (fname, DEFAULT_DB_TYPE, writeable ? DB_APPEND : DB_READ); + if (!f && E_FILENOWRITE==db_errno && writeable) { f = DBOpen (fname, DEFAULT_DB_TYPE, DB_READ); if (f) { out_info ("file opened, but without write permission"); } - rdonly = true; + writeable = false; } /* @@ -432,7 +434,7 @@ if (!f && E_NOTFILTER==db_errno) { old_err_level = DBErrlvl(); DBShowErrors(DB_ALL, NULL); - f = DBOpen (fname, DEFAULT_DB_TYPE, rdonly ? DB_READ : DB_APPEND); + f = DBOpen (fname, DEFAULT_DB_TYPE, writeable ? DB_APPEND : DB_READ); DBShowErrors(old_err_level, NULL); } @@ -441,10 +443,10 @@ } if (!f) return NIL ; /*error already printed*/ - self = calloc (1, sizeof(obj_file_t)); + self = (obj_file_t *)calloc (1, sizeof(obj_file_t)); self->name = safe_strdup (fname); self->f = f; - self->rdonly = rdonly; + self->writeable = writeable; /* If we see any file which is not PDB then turn off the `$lowlevel' * flag for fear of the caller attempting a `diff' operation across @@ -524,7 +526,7 @@ char cwd[1024]; if (DBGetDir (self->f, cwd)<0) strcpy (cwd, "???"); - out_printf (f, "%s%s:%s", self->name, self->rdonly?"[RDONLY]":"", cwd); + out_printf (f, "%s%s:%s", self->name, self->writeable?"[WRITEABLE]":"", cwd); } @@ -598,7 +600,7 @@ int i, j, occur; if (!obj) return NULL; - new_names = calloc(obj->ncomponents, sizeof(char*)); + new_names = (char **)calloc(obj->ncomponents, sizeof(char*)); /* Look for duplicates and generate new names */ for (i=1; incomponents; i++) { @@ -615,7 +617,7 @@ } else { sprintf(suffix, " [%dth occurrence]", occur); } - new_names[i] = malloc(strlen(obj->comp_names[i])+strlen(suffix)+1); + new_names[i] = (char *)malloc(strlen(obj->comp_names[i])+strlen(suffix)+1); strcpy(new_names[i], obj->comp_names[i]); strcat(new_names[i], suffix); } @@ -734,11 +736,11 @@ * fields (four pointers and an integer) are properly aligned when packed. */ assert(sizeof(char*)==sizeof(void*)); - b_obj = malloc (need); + b_obj = (char *)malloc (need); *((DBobject**)b_obj) = obj; *((char**)(b_obj+sizeof(void*))) = obj->name; *((char**)(b_obj+2*sizeof(void*))) = obj->type; - flags = calloc (obj->ncomponents, sizeof(int)); + flags = (int *)calloc (obj->ncomponents, sizeof(int)); *((int**)(b_obj+3*sizeof(void*))) = flags; *((int*)(b_obj+4*sizeof(void*))) = obj->ncomponents; offset = 4 * sizeof(void*) + sizeof(int); @@ -857,7 +859,7 @@ double d; obj_t comp_name; - if (self->rdonly) { + if (!self->writeable) { out_errorn ("file `%s' is read-only", self->name); return -1; } @@ -905,7 +907,7 @@ s = *((char**)(b_obj+offset)); if (strncmp(obj->pdb_names[i]+4, s, strlen(s))) { free (obj->pdb_names[i]); - obj->pdb_names[i] = malloc (strlen(s)+5); + obj->pdb_names[i] = (char *)malloc (strlen(s)+5); strcpy (obj->pdb_names[i], "'"); strcpy (obj->pdb_names[i]+4, s); nchanges++; @@ -926,24 +928,6 @@ /*------------------------------------------------------------------------- - * Function: browser_DBGetMultimeshadj - * - * Purpose: Deal with non-standard get-API for DBmultimeshadj objects - * - * Return: DBmultimeshadj - * - * Programmer: Mark C. Miller - * August 24, 2005 - * - *------------------------------------------------------------------------- - */ -static DBmultimeshadj* -browser_DBGetMultimeshadj(DBfile *file, char *name) -{ - return DBGetMultimeshadj(file, name, 0, NULL); -} - -/*------------------------------------------------------------------------- * Function: browser_DBFreeObject * * Purpose: Frees a modified SILO DBobject which was created with the @@ -988,6 +972,333 @@ DBFreeObject (obj); } +/*------------------------------------------------------------------------- + * Function: browser_DBGetMultimeshadj + * + * Purpose: Deal with non-standard get-API for DBmultimeshadj objects + * + * Return: DBmultimeshadj + * + * Programmer: Mark C. Miller + * August 24, 2005 + * + *------------------------------------------------------------------------- + */ +static void* +browser_DBGetMultimeshadj(DBfile *file, char *name, obj_t *type_ptr) +{ + DBmultimeshadj *mmadj; + char **b_mmadj; + char buf[64], fmt[64]; + int i, nbytes, digits; + obj_t type=NIL, tmp=NIL; + + /* + * Read the multimeshadj and create a browser multimeshadj. The + * first entry in the browser multimeshadj points to the beginning + * of the silo multimeshadj so we can free it later. + */ + mmadj = DBGetMultimeshadj(file, name, -1, 0); + if (!mmadj) return NULL; + + b_mmadj = (char **)calloc (2*(mmadj->lneighbors)+11, sizeof(char*)); + type = obj_new (C_STC, NULL, NULL); + b_mmadj[0] = (char*)mmadj; + + /* + * The browser multimeshadj should point to the silo multimeshadj + * fields so that modifying the browser object actually modifies the + * silo object. + */ + b_mmadj[1] = (char*)&(mmadj->nblocks); + stc_add (type, obj_new(C_PTR, obj_new(C_PRIM, "int")), + 1*sizeof(char*), "nblocks"); + + b_mmadj[2] = (char*)&(mmadj->blockorigin); + stc_add (type, obj_new(C_PTR, obj_new(C_PRIM, "int")), + 2*sizeof(char*), "blockorigin"); + + tmp = obj_new (C_PRIM, "int"); + prim_set_io_assoc (tmp, PA_OBJTYPE); + obj_bind (tmp, NULL); + b_mmadj[3] = (char*)mmadj->meshtypes; + sprintf (buf, "%d", mmadj->nblocks); + stc_add (type, obj_new(C_PTR, obj_new(C_ARY, buf, obj_copy(tmp,SHALLOW))), + 3*sizeof(char*), "meshtypes"); + tmp = NIL; + + tmp = obj_new (C_PRIM, "int"); + obj_bind (tmp, NULL); + b_mmadj[4] = (char*)mmadj->nneighbors; + sprintf (buf, "%d", mmadj->nblocks); + stc_add (type, obj_new(C_PTR, obj_new(C_ARY, buf, obj_copy(tmp,SHALLOW))), + 4*sizeof(char*), "nneighbors"); + tmp = NIL; + + b_mmadj[5] = (char*)&(mmadj->lneighbors); + stc_add (type, obj_new(C_PTR, obj_new(C_PRIM, "int")), + 5*sizeof(char*), "lneighbors"); + + tmp = obj_new (C_PRIM, "int"); + obj_bind (tmp, NULL); + b_mmadj[6] = (char*)mmadj->neighbors; + sprintf (buf, "%d", mmadj->lneighbors); + stc_add (type, obj_new(C_PTR, obj_new(C_ARY, buf, obj_copy(tmp,SHALLOW))), + 6*sizeof(char*), "neighbors"); + tmp = NIL; + + if (mmadj->back) { + tmp = obj_new (C_PRIM, "int"); + obj_bind (tmp, NULL); + b_mmadj[7] = (char*)mmadj->back; + sprintf (buf, "%d", mmadj->lneighbors); + stc_add (type, obj_new(C_PTR, obj_new(C_ARY, buf, obj_copy(tmp,SHALLOW))), + 7*sizeof(char*), "back"); + tmp = NIL; + } + + b_mmadj[8] = (char*)&(mmadj->totlnodelists); + stc_add (type, obj_new(C_PTR, obj_new(C_PRIM, "int")), + 8*sizeof(char*), "totlnodelists"); + + if (mmadj->lnodelists) { + tmp = obj_new (C_PRIM, "int"); + obj_bind (tmp, NULL); + b_mmadj[9] = (char*)mmadj->lnodelists; + sprintf (buf, "%d", mmadj->lneighbors); + stc_add (type, obj_new(C_PTR, obj_new(C_ARY, buf, obj_copy(tmp,SHALLOW))), + 9*sizeof(char*), "lnodelists"); + tmp = NIL; + } + + b_mmadj[10] = (char*)&(mmadj->totlzonelists); + stc_add (type, obj_new(C_PTR, obj_new(C_PRIM, "int")), + 10*sizeof(char*), "totlzonelists"); + + if (mmadj->zonelists) { + tmp = obj_new (C_PRIM, "int"); + obj_bind (tmp, NULL); + b_mmadj[11] = (char*)mmadj->lzonelists; + sprintf (buf, "%d", mmadj->lneighbors); + stc_add (type, obj_new(C_PTR, obj_new(C_ARY, buf, obj_copy(tmp,SHALLOW))), + 11*sizeof(char*), "lzonelists"); + tmp = NIL; + } + + /* + * Create the sub array base type. + */ + sprintf (buf, "%d", DB_INT); + tmp = obj_new (C_PRIM, buf); + obj_bind (tmp, NULL); + nbytes = obj_sizeof(tmp); + assert (nbytes>0); + + /* + * Create browser entries for each of the sub arrays. + */ + digits = (int) (log10((double)mmadj->lneighbors) + 1); + for (i=0; ilneighbors; i++) { + char aname[32]; + + /* deal with nodelist entry */ + sprintf(fmt, "nodelist%%0%dd", digits); + if (mmadj->nodelists && mmadj->nodelists[i]) + { + b_mmadj[2*i+11] = (char*)(mmadj->nodelists[i]); + sprintf (aname, fmt, i); + if (1==mmadj->lnodelists[i]) { + stc_add (type, obj_new (C_PTR, obj_copy (tmp, SHALLOW)), + (2*i+11)*sizeof(char*), aname); + } else { + sprintf (buf, "%d", mmadj->lnodelists[i]); + stc_add (type, obj_new (C_PTR, obj_new (C_ARY, buf, obj_copy(tmp,SHALLOW))), + (2*i+11)*sizeof(char*), aname); + } + } + + /* deal with zonelist entry */ + sprintf(fmt, "zonelist%%0%dd", digits); + if (mmadj->zonelists && mmadj->zonelists[i]) + { + b_mmadj[2*i+1+11] = (char*)(mmadj->zonelists[i]); + sprintf (aname, fmt, i); + if (1==mmadj->lzonelists[i]) { + stc_add (type, obj_new (C_PTR, obj_copy (tmp, SHALLOW)), + (2*i+1+11)*sizeof(char*), aname); + } else { + sprintf (buf, "%d", mmadj->lzonelists[i]); + stc_add (type, obj_new (C_PTR, obj_new (C_ARY, buf, obj_copy(tmp,SHALLOW))), + (2*i+1+11)*sizeof(char*), aname); + } + } + } + + /* + * Free temp data and return + */ + tmp = obj_dest (tmp); + *type_ptr = type; + return b_mmadj; +} + +static void +browser_DBFreeMultimeshadj(void *mem, obj_t type) { + + char *b_mmadj = (char*)mem; + DBmultimeshadj *mmadj; + + if (!b_mmadj) return; + mmadj = *((DBmultimeshadj**)b_mmadj); + if (!mmadj) return; + DBFreeMultimeshadj(mmadj); +} + +static void * +browser_DBGetGroupelmap(DBfile *file, char *name, obj_t *type_ptr) { + + DBgroupelmap *gm; + char **b_gm; + char buf[64], bufi[64], buff[64]; + int i, nbytes; + obj_t type=NIL, tmp=NIL, tmpi=NIL, tmpf=NIL; + + /* + * Read the compound array and create a browser compound array. The + * first entry in the browser compound array points to the beginning + * of the silo compound array so we can free it later. + */ + gm = DBGetGroupelmap(file, name); + if (!gm) return NULL; + b_gm = (char **)calloc (2*gm->num_segments+7, sizeof(char*)); + type = obj_new (C_STC, NULL, NULL); + b_gm[0] = (char*)gm; + + /* + * The browser compound array should point to the silo compound array + * fields so that modifying the browser object actually modifies the + * silo object. + */ + b_gm[1] = gm->name; + stc_add (type, obj_new(C_PRIM, "string"), + 1*sizeof(char*), "name"); + + b_gm[2] = (char*)&(gm->num_segments); + stc_add (type, obj_new(C_PTR, obj_new(C_PRIM, "int")), + 2*sizeof(char*), "num_segments"); + + tmp = obj_new (C_PRIM, "int"); + prim_set_io_assoc (tmp, PA_CENTERING); + obj_bind (tmp, NULL); + b_gm[3] = (char*)gm->groupel_types; + sprintf (buf, "%d", gm->num_segments); + stc_add (type, obj_new(C_PTR, obj_new(C_ARY, buf, obj_copy(tmp,SHALLOW))), + 3*sizeof(char*), "groupel_types"); + tmp = NIL; + + tmp = obj_new (C_PRIM, "int"); + obj_bind (tmp, NULL); + b_gm[4] = (char*)gm->segment_lengths; + sprintf (buf, "%d", gm->num_segments); + stc_add (type, obj_new(C_PTR, obj_new(C_ARY, buf, obj_copy(tmp,SHALLOW))), + 4*sizeof(char*), "segment_lengths"); + tmp = NIL; + + tmp = obj_new (C_PRIM, "int"); + obj_bind (tmp, NULL); + b_gm[5] = (char*)gm->segment_ids; + sprintf (buf, "%d", gm->num_segments); + stc_add (type, obj_new(C_PTR, obj_new(C_ARY, buf, obj_copy(tmp,SHALLOW))), + 5*sizeof(char*), "segment_ids"); + tmp = NIL; + + b_gm[6] = (char*)&(gm->fracs_data_type); + tmp = obj_new (C_PRIM, "int"); + prim_set_io_assoc (tmp, PA_DATATYPE); + stc_add (type, obj_new(C_PTR, tmp), 6*sizeof(char*), "fracs_data_type"); + tmp = NIL; + + /* + * Create the sub array base type for segment_data segments + */ + sprintf (bufi, "%d", DB_INT); + tmpi = obj_new (C_PRIM, bufi); + obj_bind (tmpi, NULL); + nbytes = obj_sizeof(tmpi); + assert (nbytes>0); + + /* + * Create the sub array base type for segment_fracs segments + */ + if (gm->fracs_data_type) + { + sprintf (buff, "%d", gm->fracs_data_type); + tmpf = obj_new (C_PRIM, buff); + obj_bind (tmpf, NULL); + nbytes = obj_sizeof(tmpf); + assert (nbytes>0); + } + + /* + * Create browser entries for each of the sub arrays. + */ + for (i=0; inum_segments; i++) { + char aname[32]; + int segid = gm->segment_ids?gm->segment_ids[i]:i; + char *segid_label = gm->segment_ids?"":"(def)"; + + /* deal segment_data entry */ + if (gm->segment_lengths[i] && gm->segment_data[i]) + { + b_gm[2*i+7] = (char*)(gm->segment_data[i]); + sprintf (aname, "segdata(id=%05d%s)", segid, segid_label); + if (1==gm->segment_lengths[i]) { + stc_add (type, obj_new (C_PTR, obj_copy (tmpi, SHALLOW)), + (2*i+7)*sizeof(char*), aname); + } else { + sprintf (bufi, "%d", gm->segment_lengths[i]); + stc_add (type, obj_new (C_PTR, obj_new (C_ARY, bufi, obj_copy(tmpi,SHALLOW))), + (2*i+7)*sizeof(char*), aname); + } + } + + /* deal with segment_fracs entry */ + if (gm->segment_fracs && gm->segment_lengths[i] && gm->segment_fracs[i]) + { + b_gm[2*i+1+7] = (char*)(gm->segment_fracs[i]); + sprintf (aname, "segfracs(id=%05d%s)", segid, segid_label); + if (1==gm->segment_lengths[i]) { + stc_add (type, obj_new (C_PTR, obj_copy (tmpf, SHALLOW)), + (2*i+1+7)*sizeof(char*), aname); + } else { + sprintf (buff, "%d", gm->segment_lengths[i]); + stc_add (type, obj_new (C_PTR, obj_new (C_ARY, buff, obj_copy(tmpf,SHALLOW))), + (2*i+1+7)*sizeof(char*), aname); + } + } + } + + /* + * Free temp data and return + */ + tmpi = obj_dest (tmpi); + if (tmpf) tmpf = obj_dest (tmpf); + *type_ptr = type; + return b_gm; +} + +/*ARGSUSED*/ +static void +browser_DBFreeGroupelmap(void *mem, obj_t type) { + + char *b_gm = (char*)mem; + DBgroupelmap *gm; + + if (!b_gm) return; + gm = *((DBgroupelmap**)b_gm); + if (!gm) return; + DBFreeGroupelmap (gm); +} /*------------------------------------------------------------------------- * Function: browser_DBGetCompoundarray @@ -1023,7 +1334,7 @@ */ ca = DBGetCompoundarray (file, name); if (!ca) return NULL; - b_ca = calloc (ca->nelems+7, sizeof(char*)); + b_ca = (char **)calloc (ca->nelems+7, sizeof(char*)); type = obj_new (C_STC, NULL, NULL); b_ca[0] = (char*)ca; @@ -1165,10 +1476,10 @@ toc = browser_DBGetToc (file, &nentries, sort_toc_by_type); if (DBSetDir (file, cwd)<0) return NULL; - dir = calloc (1, sizeof(DBdirectory)); + dir = (DBdirectory *)calloc (1, sizeof(DBdirectory)); dir->nsyms = nentries; dir->toc = toc; - if (nentries) dir->entry_ptr = calloc (nentries, sizeof (toc_t *)); + if (nentries) dir->entry_ptr = (toc_t **)calloc (nentries, sizeof (toc_t *)); for (i=0; ientry_ptr[i] = dir->toc + i; } @@ -1210,7 +1521,7 @@ assert (ca); assert (elmtno>=0 && elmtnonelems); - b_ca = calloc (2, sizeof(char*)); + b_ca = (char **)calloc (2, sizeof(char*)); b_ca[1] = (char*)ca; /* @@ -1394,25 +1705,6 @@ } /*------------------------------------------------------------------------- - * Function: browser_DBFreeMultimeshadj - * - * Purpose: Frees a DBmultimeshadj. - * - * Return: void - * - * Programmer: Mark C. Miller - * August 24, 2005 - * - *------------------------------------------------------------------------- - */ -/*ARGSUSED*/ -static void -browser_DBFreeMultimeshadj (void *mem, obj_t type) { - - DBFreeMultimeshadj ((DBmultimeshadj*)mem); -} - -/*------------------------------------------------------------------------- * Function: browser_DBFreeMultivar * * Purpose: Frees a DBmultivar @@ -1670,12 +1962,6 @@ /*ARGSUSED*/ static void -browser_DBFreeGroupelmap(void *mem, obj_t type) { - DBFreeGroupelmap ((DBgroupelmap*)mem); -} - -/*ARGSUSED*/ -static void browser_DBFreeMrgvar(void *mem, obj_t type) { DBFreeMrgvar ((DBmrgvar*)mem); } @@ -1829,7 +2115,7 @@ DBdatatype silotype; DBfile *dbfile = file_file(_self); - if (self->rdonly) + if (!self->writeable) { out_errorn("file `%s' is read-only", self->name); return -1; @@ -1913,7 +2199,7 @@ char *name=NULL, buf[4096]; obj_t retval=NIL, tmp_argv[1]; - dir = sdo_mem (_self); + dir = (DBdirectory *)sdo_mem (_self); name = obj_name (argv[0]); /* @@ -1994,7 +2280,7 @@ obj_file_t *self = MYCLASS(_self); char *name=NULL, *orig=NULL, cwd[1024], fullname[1024]; char path[1024], *base=NULL, buf[1024]; - char *typename=NULL; + char *type_name=NULL; DBfile *file=NULL; DBtoc *toc=NULL; void *r_mem=NULL; @@ -2057,7 +2343,7 @@ savefunc = NULL; freefunc = browser_DBFreeDirectory; dereffunc = file_deref_DBdirectory; - typename = "DBdirectory"; + type_name = "DBdirectory"; goto done; } @@ -2098,7 +2384,7 @@ loadfunc = (void*(*)(DBfile*,char*))DBGetCurve; savefunc = NULL; freefunc = browser_DBFreeCurve; - typename = "DBcurve"; + type_name = "DBcurve"; goto done; } } @@ -2108,7 +2394,7 @@ loadfunc = (void*(*)(DBfile*,char*))DBGetCsgmesh; savefunc = NULL; freefunc = browser_DBFreeCsgmesh; - typename = "DBcsgmesh"; + type_name = "DBcsgmesh"; goto done; } } @@ -2118,7 +2404,7 @@ loadfunc = (void*(*)(DBfile*,char*))DBGetCsgvar; savefunc = NULL; freefunc = browser_DBFreeCsgvar; - typename = "DBcsgvar"; + type_name = "DBcsgvar"; goto done; } } @@ -2128,7 +2414,7 @@ loadfunc = (void*(*)(DBfile*,char*))DBGetDefvars; savefunc = NULL; freefunc = browser_DBFreeDefvars; - typename = "DBdefvars"; + type_name = "DBdefvars"; goto done; } } @@ -2138,18 +2424,21 @@ loadfunc = (void*(*)(DBfile*,char*))DBGetMultimesh; savefunc = NULL; freefunc = browser_DBFreeMultimesh; - typename = "DBmultimesh"; + type_name = "DBmultimesh"; goto done; } } for (i=0; inmultimeshadj; i++) { if (!strcmp(toc->multimeshadj_names[i], base)) { - loadfunc = (void*(*)(DBfile*,char*))browser_DBGetMultimeshadj; + if (Verbosity>=2) { + out_info("file_deref: loading DBmultimeshadj%s:%s", + self->name, name); + } + r_mem = browser_DBGetMultimeshadj(file, base, &type); savefunc = NULL; freefunc = browser_DBFreeMultimeshadj; - typename = "DBmultimeshadj"; - goto done; + if (r_mem) goto done; } } @@ -2158,7 +2447,7 @@ loadfunc = (void*(*)(DBfile*,char*))DBGetMultivar; savefunc = NULL; freefunc = browser_DBFreeMultivar; - typename = "DBmultivar"; + type_name = "DBmultivar"; goto done; } } @@ -2168,7 +2457,7 @@ loadfunc = (void*(*)(DBfile*,char*))DBGetMultimat; savefunc = NULL; freefunc = browser_DBFreeMultimat; - typename = "DBmultimat"; + type_name = "DBmultimat"; goto done; } } @@ -2178,7 +2467,7 @@ loadfunc = (void*(*)(DBfile*,char*))DBGetMultimatspecies; savefunc = NULL; freefunc = browser_DBFreeMultimatspecies; - typename = "DBmultimatspecies"; + type_name = "DBmultimatspecies"; goto done; } } @@ -2188,7 +2477,7 @@ loadfunc = (void*(*)(DBfile*,char*))DBGetQuadmesh; savefunc = NULL; freefunc = browser_DBFreeQuadmesh; - typename = "DBquadmesh"; + type_name = "DBquadmesh"; goto done; } } @@ -2198,7 +2487,7 @@ loadfunc = (void*(*)(DBfile*,char*))DBGetQuadvar; savefunc = NULL; freefunc = browser_DBFreeQuadvar; - typename = "DBquadvar"; + type_name = "DBquadvar"; goto done; } } @@ -2208,7 +2497,7 @@ loadfunc = (void*(*)(DBfile*,char*))DBGetUcdmesh; savefunc = NULL; freefunc = browser_DBFreeUcdmesh; - typename = "DBucdmesh"; + type_name = "DBucdmesh"; goto done; } } @@ -2218,7 +2507,7 @@ loadfunc = (void*(*)(DBfile*,char*))DBGetUcdvar; savefunc = NULL; freefunc = browser_DBFreeUcdvar; - typename = "DBucdvar"; + type_name = "DBucdvar"; goto done; } } @@ -2228,7 +2517,7 @@ loadfunc = (void*(*)(DBfile*,char*))DBGetPointmesh; savefunc = NULL; freefunc = browser_DBFreePointmesh; - typename = "DBpointmesh"; + type_name = "DBpointmesh"; goto done; } } @@ -2238,7 +2527,7 @@ loadfunc = (void*(*)(DBfile*,char*))DBGetPointvar; savefunc = NULL; freefunc = browser_DBFreeMeshvar; - typename = "DBmeshvar"; + type_name = "DBmeshvar"; goto done; } } @@ -2248,7 +2537,7 @@ loadfunc = (void*(*)(DBfile*,char*))DBGetMaterial; savefunc = NULL; freefunc = browser_DBFreeMaterial; - typename = "DBmaterial"; + type_name = "DBmaterial"; goto done; } } @@ -2258,7 +2547,7 @@ loadfunc = (void*(*)(DBfile*,char*))DBGetMatspecies; savefunc = NULL; freefunc = browser_DBFreeMatspecies; - typename = "DBmatspecies"; + type_name = "DBmatspecies"; goto done; } } @@ -2268,18 +2557,21 @@ loadfunc = (void*(*)(DBfile*,char*))DBGetMrgtree; savefunc = NULL; freefunc = browser_DBFreeMrgtree; - typename = "DBmrgtree"; + type_name = "DBmrgtree"; goto done; } } for (i=0; ingroupelmap; i++) { if (!strcmp(toc->groupelmap_names[i], base)) { - loadfunc = (void*(*)(DBfile*,char*))DBGetGroupelmap; + if (Verbosity>=2) { + out_info("file_deref: loading DBgroupelmap %s:%s", + self->name, name); + } + r_mem = browser_DBGetGroupelmap(file, base, &type); savefunc = NULL; freefunc = browser_DBFreeGroupelmap; - typename = "DBgroupelmap"; - goto done; + if (r_mem) goto done; } } @@ -2288,7 +2580,7 @@ loadfunc = (void*(*)(DBfile*,char*))DBGetMrgvar; savefunc = NULL; freefunc = browser_DBFreeMrgvar; - typename = "DBmrgvar"; + type_name = "DBmrgvar"; goto done; } } @@ -2318,7 +2610,7 @@ savefunc = NULL; freefunc = browser_DBFreeDirectory; dereffunc = file_deref_DBdirectory; - typename = "DBdirectory"; + type_name = "DBdirectory"; if (r_mem) goto done; } } @@ -2342,8 +2634,8 @@ * Add a null terminator just to be sure. Also make the data * a pointer to a string instead of the string itself. */ - char **s_ptr = malloc(sizeof(char*)); - *s_ptr = malloc(nelmts+1); + char **s_ptr = (char **)malloc(sizeof(char*)); + *s_ptr = (char *)malloc(nelmts+1); memcpy(*s_ptr, r_mem, nelmts); (*s_ptr)[nelmts] = '\0'; free(r_mem); @@ -2370,7 +2662,7 @@ } lex_in = lex_string(buf); - typename = NULL; + type_name = NULL; in = parse_stmt(lex_in, false); lex_in = lex_close(lex_in); type = obj_eval(in); @@ -2396,6 +2688,7 @@ browser_DBFreeSubarray(r_mem, type); r_mem = NULL; type = obj_dest(type); + DBFreeCompoundarray(ca); goto error; } else { r_mem = browser_DBGetSubarray(ca, j, &type); @@ -2407,6 +2700,7 @@ } if (r_mem) goto done; toc = DBGetToc(file); /*insure pointer is valid*/ + DBFreeCompoundarray(ca); } } @@ -2419,25 +2713,25 @@ loadfunc = (void*(*)(DBfile*, char*))DBGetFacelist; savefunc = NULL; freefunc = browser_DBFreeFacelist; - typename = "DBfacelist"; + type_name = "DBfacelist"; goto done; } else if (!strcmp(obj->type, "zonelist")) { loadfunc = (void*(*)(DBfile*, char*))DBGetZonelist; savefunc = NULL; freefunc = browser_DBFreeZonelist; - typename = "DBzonelist"; + type_name = "DBzonelist"; goto done; } else if (!strcmp(obj->type, "polyhedral-zonelist")) { loadfunc = (void*(*)(DBfile*, char*))DBGetPHZonelist; savefunc = NULL; freefunc = browser_DBFreePHZonelist; - typename = "DBphzonelist"; + type_name = "DBphzonelist"; goto done; } else if (!strcmp(obj->type, "csgzonelist")) { loadfunc = (void*(*)(DBfile*, char*))DBGetCSGZonelist; savefunc = NULL; freefunc = browser_DBFreeCSGZonelist; - typename = "DBcsgzonelist"; + type_name = "DBcsgzonelist"; goto done; } else if (!strcmp(obj->type, "edgelist")) { out_info("file_deref: edgelists are retrieved with DBGetObject() " @@ -2451,7 +2745,7 @@ */ DBShowErrors(DB_SUSPEND, NULL); r_mem = browser_DBGetObject(file, base, &type); - typename = NULL; + type_name = NULL; savefunc = browser_DBSaveObject; freefunc = browser_DBFreeObject; DBShowErrors(DB_RESUME, NULL); @@ -2482,7 +2776,7 @@ if (!r_mem) { if (Verbosity>=2) { out_info("file_deref: loading %s %s:%s", - typename?typename:"void type", self->name, name); + type_name?type_name:"void type", self->name, name); } r_mem = (loadfunc)(file, name); if (!r_mem) goto error; @@ -2493,8 +2787,8 @@ cwd, self->name); } - if (typename) { - in = obj_new(C_SYM, typename); + if (type_name) { + in = obj_new(C_SYM, type_name); type = obj_copy(tmp=sym_vboundp(in), DEEP); tmp = obj_dest(tmp); in = obj_dest(in); @@ -2638,6 +2932,8 @@ } break; case DIFF_REP_SUMMARY: + free(atoc); + free(btoc); return 1; } } else if (Verbosity>=2) { @@ -2672,6 +2968,8 @@ } break; case DIFF_REP_SUMMARY: + free(atoc); + free(btoc); return 1; } } else if (Verbosity>=2) { @@ -2710,7 +3008,12 @@ if (status) { ndiff++; - if (DIFF_REP_SUMMARY==DiffOpt.report) return 1; + if (DIFF_REP_SUMMARY==DiffOpt.report) + { + free(atoc); + free(btoc); + return 1; + } } } } else if (Verbosity>=2) { @@ -2760,6 +3063,8 @@ aobj = obj_dest (aobj); bobj = obj_dest (bobj); out_progress(NULL); + free(atoc); + free(btoc); return 1; } break; @@ -2776,12 +3081,14 @@ } out_progress (NULL); + free(atoc); + free(btoc); return ndiff ? 1 : 0; } /*------------------------------------------------------------------------- - * Function: file_rdonly + * Function: file_writeable * * Purpose: Determines if the file is read-only. * @@ -2798,9 +3105,9 @@ *------------------------------------------------------------------------- */ int -file_rdonly (obj_t _self) +file_writeable (obj_t _self) { obj_file_t *self = MYCLASS(_self); - return self->rdonly; + return self->writeable; } diff -Nru silo-llnl-4.10.2/tools/browser/func.c silo-llnl-4.10.2.real/tools/browser/func.c --- silo-llnl-4.10.2/tools/browser/func.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tools/browser/func.c 2018-02-15 17:25:43.000000000 +0000 @@ -781,9 +781,7 @@ V_exit (int argc, obj_t argv[]) { #if defined(HAVE_READLINE_HISTORY_H) && defined(HISTORY_FILE) && defined(HAVE_READLINE_HISTORY) - if (HistoryFile[0] && write_history (HistoryFile)) - ; - else + if (!(HistoryFile[0] && !write_history (HistoryFile))) { #ifdef HAVE_STRERROR out_errorn ("command history not saved in %s (%s)", @@ -858,6 +856,11 @@ * Robb Matzke, 2 Apr 1997 * If `$rdonly' is true then the file is open for reading only. * + * Mark C. Miller, Wed Dec 4 11:22:26 PST 2013 + * Replaced `$rdonly' behavior with `$writable' thereby swaping the + * default open behavior to be to open for write only when it is + * acutally requested. + * *------------------------------------------------------------------------- */ obj_t @@ -865,7 +868,7 @@ obj_t retval=NIL, filename=NIL; char *fname; - int rdonly = sym_bi_true("rdonly"); + int writeable = sym_bi_true("writeable"); if (1!=argc) { out_errorn ("file: wrong number of arguments"); @@ -882,7 +885,7 @@ } else if (NULL==(fname=obj_name(filename))) { out_errorn ("file: arg-1 is inappropriate"); - } else if (NIL==(retval=obj_new (C_FILE, fname, rdonly))) { + } else if (NIL==(retval=obj_new (C_FILE, fname, writeable))) { #if 0 /*error message already printed*/ out_errorn ("file: could not open `%s'", fname); #endif @@ -1396,7 +1399,7 @@ } /* Prune the table of contents based on the arguments supplied. */ - selected = calloc(nentries, sizeof(int)); + selected = (int *)calloc(nentries, sizeof(int)); if (first_arg==argc) { for (i=0; if = stream; f->prompt = LEX_PROMPT; @@ -213,7 +213,7 @@ lex_t * lex_stream(FILE *stream) { - lex_t *f = calloc(1, sizeof(lex_t)); + lex_t *f = (lex_t *)calloc(1, sizeof(lex_t)); assert (f); if (NULL==(f->f=fdopen(fileno(stream), "r"))) { @@ -256,7 +256,7 @@ lex_t * lex_string(const char *s) { - lex_t *f = calloc(1, sizeof(lex_t)); + lex_t *f = (lex_t *)calloc(1, sizeof(lex_t)); assert(f); f->s = safe_strdup(s?s:""); @@ -280,7 +280,7 @@ lex_t * lex_stack(void) { - lex_t *f = calloc(1, sizeof(lex_t)); + lex_t *f = (lex_t *)calloc(1, sizeof(lex_t)); if (!LEX_STDIN) LEX_STDIN = f; return f; } @@ -483,7 +483,7 @@ } else { /* Allocate a buffer for the pushback */ - f->s = malloc(2); + f->s = (char *)malloc(2); f->s[0] = c; f->s[1] = '\0'; f->at = 0; diff -Nru silo-llnl-4.10.2/tools/browser/Makefile.am silo-llnl-4.10.2.real/tools/browser/Makefile.am --- silo-llnl-4.10.2/tools/browser/Makefile.am 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tools/browser/Makefile.am 2018-02-15 17:25:43.000000000 +0000 @@ -81,12 +81,16 @@ else browser_LDADD = ../../src/libsilo.la endif +if JSON_NEEDED + browser_LDADD += ../json/json-c-0.10/libjson.la +endif browser_LDADD += $(READLINE_LIBS) info_TEXINFOS = browser.texi AM_MAKEINFOHTMLFLAGS = --no-split AM_CPPFLAGS = \ -I$(top_builddir)/src/silo \ + -I$(top_srcdir)/src/silo \ -I$(top_srcdir)/src/filters \ -I$(includedir) \ -DPUBLIC_INIT_FILE=\"$(includedir)/browser_rc\" \ diff -Nru silo-llnl-4.10.2/tools/browser/Makefile.in silo-llnl-4.10.2.real/tools/browser/Makefile.in --- silo-llnl-4.10.2/tools/browser/Makefile.in 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tools/browser/Makefile.in 2018-02-15 17:25:43.000000000 +0000 @@ -90,6 +90,7 @@ build_triplet = @build@ host_triplet = @host@ bin_PROGRAMS = browser$(EXEEXT) +@JSON_NEEDED_TRUE@am__append_1 = ../json/json-c-0.10/libjson.la subdir = tools/browser DIST_COMMON = $(dist_bin_SCRIPTS) $(noinst_HEADERS) \ $(srcdir)/Makefile.am $(srcdir)/Makefile.in @@ -120,9 +121,9 @@ browser_OBJECTS = $(am_browser_OBJECTS) am__DEPENDENCIES_1 = @HDF5_DRV_NEEDED_FALSE@browser_DEPENDENCIES = ../../src/libsilo.la \ -@HDF5_DRV_NEEDED_FALSE@ $(am__DEPENDENCIES_1) +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) $(am__DEPENDENCIES_1) @HDF5_DRV_NEEDED_TRUE@browser_DEPENDENCIES = ../../src/libsiloh5.la \ -@HDF5_DRV_NEEDED_TRUE@ $(am__DEPENDENCIES_1) +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) $(am__DEPENDENCIES_1) am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ @@ -235,6 +236,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +JSON = @JSON@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBM = @LIBM@ @@ -283,9 +285,6 @@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SILEX = @SILEX@ -SILO_DTYPPTR = @SILO_DTYPPTR@ -SILO_DTYPPTR1 = @SILO_DTYPPTR1@ -SILO_DTYPPTR2 = @SILO_DTYPPTR2@ SILO_VERS_MAJ = @SILO_VERS_MAJ@ SILO_VERS_MIN = @SILO_VERS_MIN@ SILO_VERS_PAT = @SILO_VERS_PAT@ @@ -367,13 +366,14 @@ @FPZIP_NEEDED_TRUE@@HDF5_DRV_NEEDED_TRUE@nodist_EXTRA_browser_SOURCES = dummy.cxx @HDF5_DRV_NEEDED_TRUE@@HZIP_NEEDED_TRUE@nodist_EXTRA_browser_SOURCES = dummy.cxx @HDF5_DRV_NEEDED_FALSE@browser_LDADD = ../../src/libsilo.la \ -@HDF5_DRV_NEEDED_FALSE@ $(READLINE_LIBS) +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) $(READLINE_LIBS) @HDF5_DRV_NEEDED_TRUE@browser_LDADD = ../../src/libsiloh5.la \ -@HDF5_DRV_NEEDED_TRUE@ $(READLINE_LIBS) +@HDF5_DRV_NEEDED_TRUE@ $(am__append_1) $(READLINE_LIBS) info_TEXINFOS = browser.texi AM_MAKEINFOHTMLFLAGS = --no-split AM_CPPFLAGS = \ -I$(top_builddir)/src/silo \ + -I$(top_srcdir)/src/silo \ -I$(top_srcdir)/src/filters \ -I$(includedir) \ -DPUBLIC_INIT_FILE=\"$(includedir)/browser_rc\" \ diff -Nru silo-llnl-4.10.2/tools/browser/num.c silo-llnl-4.10.2.real/tools/browser/num.c --- silo-llnl-4.10.2/tools/browser/num.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tools/browser/num.c 2018-02-15 17:25:43.000000000 +0000 @@ -108,10 +108,10 @@ class_t num_class (void) { - class_t cls = calloc (1, sizeof(*cls)); + class_t cls = (class_t)calloc (1, sizeof(*cls)); cls->name = safe_strdup ("NUM"); - cls->new = num_new; + cls->newobj = num_new; cls->dest = NULL; cls->copy = NULL; cls->print = num_print; @@ -143,7 +143,7 @@ static obj_t num_new (va_list ap) { - obj_num_t *self = calloc (1, sizeof(obj_num_t)); + obj_num_t *self = (obj_num_t *)calloc (1, sizeof(obj_num_t)); char *lexeme; lexeme = va_arg (ap, char*); diff -Nru silo-llnl-4.10.2/tools/browser/obj.c silo-llnl-4.10.2.real/tools/browser/obj.c --- silo-llnl-4.10.2/tools/browser/obj.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tools/browser/obj.c 2018-02-15 17:25:43.000000000 +0000 @@ -133,12 +133,12 @@ /* * Initialize the object if a constructor is defined. */ - if (cls->new) { + if (cls->newobj) { va_start (ap, cls); - self = (cls->new)(ap); + self = (cls->newobj)(ap); va_end (ap); } else { - self = calloc (1, sizeof(*self)); + self = (obj_t)calloc (1, sizeof(*self)); } /* @@ -175,32 +175,32 @@ obj_t obj_copy (obj_t self, int flag) { - obj_t new=NIL; + obj_t new_obj=NIL; int oldref; if (self) { oldref = self->pub.ref; if (self->pub.cls->copy) { - new = (self->pub.cls->copy)(self, flag); + new_obj = (self->pub.cls->copy)(self, flag); } else { assert (SHALLOW==flag); - new = self; + new_obj = self; } - if (new==self) { - assert (new->pub.ref==oldref); - new->pub.ref += 1; + if (new_obj==self) { + assert (new_obj->pub.ref==oldref); + new_obj->pub.ref += 1; } else { - assert (0==new->pub.ref || 1==new->pub.ref); - assert (NULL==new->pub.cls || self->pub.cls==new->pub.cls); - new->pub.cls = self->pub.cls; - new->pub.ref = 1; + assert (0==new_obj->pub.ref || 1==new_obj->pub.ref); + assert (NULL==new_obj->pub.cls || self->pub.cls==new_obj->pub.cls); + new_obj->pub.cls = self->pub.cls; + new_obj->pub.ref = 1; } } - if (new) NObjs++; - return new; + if (new_obj) NObjs++; + return new_obj; } diff -Nru silo-llnl-4.10.2/tools/browser/output.c silo-llnl-4.10.2.real/tools/browser/output.c --- silo-llnl-4.10.2/tools/browser/output.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tools/browser/output.c 2018-02-15 17:25:43.000000000 +0000 @@ -1223,7 +1223,7 @@ out_t * out_stream (FILE *stream) { - out_t *f = calloc (1, sizeof(out_t)); + out_t *f = (out_t *)calloc (1, sizeof(out_t)); assert (f); if (NULL==(f->f=fdopen(fileno(stream), "w"))) { diff -Nru silo-llnl-4.10.2/tools/browser/parse.c silo-llnl-4.10.2.real/tools/browser/parse.c --- silo-llnl-4.10.2/tools/browser/parse.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tools/browser/parse.c 2018-02-15 17:25:43.000000000 +0000 @@ -63,6 +63,7 @@ * *------------------------------------------------------------------------- */ +#include #include #include #include @@ -172,9 +173,9 @@ "use of this function is with the `ls' or `diff' functions which can " "take file objects as arguments. For instance, the command `ls " "(file curv2d.pdb)' opens the file, lists the root directory, and " - "then closes the file. The file is opened for read-write unless " - "the file has only read permission or the `$rdonly' variable is " - "non-zero and non-nil. See also `help open'."); + "then closes the file. The file is opened for read-only unless " + "the `$writable' variable is non-zero and non-nil and the file has " + "write permission. See also `help open'."); bif ("help", V_help, HOLDFIRST, "Show documentation.", diff -Nru silo-llnl-4.10.2/tools/browser/prim.c silo-llnl-4.10.2.real/tools/browser/prim.c --- silo-llnl-4.10.2/tools/browser/prim.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tools/browser/prim.c 2018-02-15 17:25:43.000000000 +0000 @@ -316,6 +316,24 @@ {-1, "not specified"}, {0, NULL}}; +prim_assoc_t PA_MISSING_VALUE[] = { + {PA_NAME, "missing value"}, + {DB_MISSING_VALUE_NOT_SET, "not set"}, + {0, NULL}}; + +prim_assoc_t PA_ZONETYPE[] = { + {PA_NAME, "zonetype"}, + {DB_ZONETYPE_BEAM, "BEAM"}, + {DB_ZONETYPE_POLYGON, "POLYGON"}, + {DB_ZONETYPE_TRIANGLE, "TRIANGLE"}, + {DB_ZONETYPE_QUAD, "QUAD"}, + {DB_ZONETYPE_POLYHEDRON, "POLYHEDRON"}, + {DB_ZONETYPE_TET, "TET"}, + {DB_ZONETYPE_PYRAMID, "PYRAMID"}, + {DB_ZONETYPE_PRISM, "PRISM"}, + {DB_ZONETYPE_HEX, "HEX"}, + {0, NULL}}; + /*------------------------------------------------------------------------- * Function: prim_class @@ -340,10 +358,10 @@ class_t prim_class (void) { - class_t cls = calloc (1, sizeof(*cls)); + class_t cls = (class_t)calloc (1, sizeof(*cls)); cls->name = safe_strdup ("PRIM"); - cls->new = prim_new; + cls->newobj = prim_new; cls->copy = prim_copy; cls->dest = prim_dest; cls->objname = prim_name; @@ -383,7 +401,7 @@ static obj_t prim_new (va_list ap) { - obj_prim_t *self = calloc (1, sizeof(obj_prim_t)); + obj_prim_t *self = (obj_prim_t *)calloc (1, sizeof(obj_prim_t)); char *s; assert (self); @@ -423,7 +441,7 @@ retval = self; } else { - retval = calloc (1, sizeof(obj_prim_t)); + retval = (obj_prim_t *)calloc (1, sizeof(obj_prim_t)); retval->name = safe_strdup (self->name); retval->tname = self->tname ? safe_strdup (self->tname) : NULL; retval->browser_type = self->browser_type; @@ -842,7 +860,12 @@ break; case BROWSER_DOUBLE: - if (16==obase) { + for (i=0; self->assoc && self->assoc[i].s; i++) { + if (*((double*)mem) == self->assoc[i].n) break; + } + if (self->assoc && self->assoc[i].s) { + out_printf(f, "%s", self->assoc[i].s); + } else if (16==obase) { for (i=0; inbytes = sizeof(double); break; + case DB_NOTYPE: + self->tname = safe_strdup ("notype"); + self->browser_type = BROWSER_INT; + self->nbytes = 0; + break; + default: out_errorn ("prim_bind: cannot resolve %s to a silo type", self->name); diff -Nru silo-llnl-4.10.2/tools/browser/ptr.c silo-llnl-4.10.2.real/tools/browser/ptr.c --- silo-llnl-4.10.2/tools/browser/ptr.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tools/browser/ptr.c 2018-02-15 17:25:43.000000000 +0000 @@ -109,10 +109,10 @@ class_t ptr_class (void) { - class_t cls = calloc (1, sizeof(*cls)); + class_t cls = (class_t)calloc (1, sizeof(*cls)); cls->name = safe_strdup ("POINTER"); - cls->new = ptr_new; + cls->newobj = ptr_new; cls->copy = ptr_copy; cls->dest = ptr_dest; cls->apply = ptr_apply; @@ -147,7 +147,7 @@ static obj_t ptr_new (va_list ap) { - obj_ptr_t *self = calloc (1, sizeof(obj_ptr_t)); + obj_ptr_t *self = (obj_ptr_t *)calloc (1, sizeof(obj_ptr_t)); assert (self); self->sub = va_arg (ap, obj_t); @@ -185,7 +185,7 @@ retval = self; } else { - retval = calloc (1, sizeof(obj_ptr_t)); + retval = (obj_ptr_t *)calloc (1, sizeof(obj_ptr_t)); retval->sub = obj_copy (self->sub, DEEP); } diff -Nru silo-llnl-4.10.2/tools/browser/range.c silo-llnl-4.10.2.real/tools/browser/range.c --- silo-llnl-4.10.2/tools/browser/range.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tools/browser/range.c 2018-02-15 17:25:43.000000000 +0000 @@ -102,10 +102,10 @@ class_t range_class (void) { - class_t cls = calloc (1, sizeof(*cls)); + class_t cls = (class_t)calloc (1, sizeof(*cls)); cls->name = safe_strdup ("RANGE"); - cls->new = range_new; + cls->newobj = range_new; cls->print = range_print; cls->diff = range_diff; return cls; @@ -133,7 +133,7 @@ static obj_t range_new (va_list ap) { - obj_range_t *self = calloc (1, sizeof(obj_range_t)); + obj_range_t *self = (obj_range_t *)calloc (1, sizeof(obj_range_t)); int tmp; self->lo = va_arg (ap, int); diff -Nru silo-llnl-4.10.2/tools/browser/sdo.c silo-llnl-4.10.2.real/tools/browser/sdo.c --- silo-llnl-4.10.2/tools/browser/sdo.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tools/browser/sdo.c 2018-02-15 17:25:43.000000000 +0000 @@ -142,10 +142,10 @@ class_t sdo_class (void) { - class_t cls = calloc (1, sizeof(*cls)); + class_t cls = (class_t)calloc (1, sizeof(*cls)); cls->name = safe_strdup ("SDO"); - cls->new = sdo_new; + cls->newobj = sdo_new; cls->dest = sdo_dest; cls->copy = sdo_copy; cls->print = sdo_print; @@ -263,10 +263,10 @@ */ if (!Sdo) { NSdos = 1024; - Sdo = calloc (NSdos, sizeof(sdo_t)); + Sdo = (sdo_t *)calloc (NSdos, sizeof(sdo_t)); unused = 0; } else { - Sdo = realloc (Sdo, (NSdos+1024) * sizeof(sdo_t)); + Sdo = (sdo_t *)realloc (Sdo, (NSdos+1024) * sizeof(sdo_t)); memset (Sdo+NSdos, 0, 1024*sizeof(sdo_t)); unused = NSdos; NSdos += 1024; @@ -300,7 +300,7 @@ } } - self = calloc (1, sizeof(obj_sdo_t)); + self = (obj_sdo_t *)calloc (1, sizeof(obj_sdo_t)); self->sdo = sdo; self->r_type = obj_copy(r_type, SHALLOW); self->c_mem = c_mem; @@ -869,7 +869,7 @@ obj_sdo_t *self = MYCLASS(_self); - if (file_rdonly(self->sdo->file)) { + if (!file_writeable(self->sdo->file)) { out_errorn ("file `%s' is read-only", obj_name(self->sdo->file)); return NIL; } diff -Nru silo-llnl-4.10.2/tools/browser/silodiff silo-llnl-4.10.2.real/tools/browser/silodiff --- silo-llnl-4.10.2/tools/browser/silodiff 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tools/browser/silodiff 2018-02-15 17:25:43.000000000 +0000 @@ -85,7 +85,7 @@ fi fi optError=0 -browserOptsDef="-l 0 -r" +browserOptsDef="-l 0" browserOpts="" arg1= arg2= @@ -153,7 +153,10 @@ fi fi fi - +sfexe=silofile +if test -x ${sddir}/silofile; then + sfexe=${sddir}/silofile +fi if test $optError = 1 -o -z "$arg1" -o -z "$arg2"; then echo "Usage: $0 " echo "" @@ -184,31 +187,59 @@ fi if test -d $arg1 -a -d $arg2; then # both are dirs - for f in $arg1/*; do - if test -d $f; then - df=`echo $f | rev | cut -d'/' -f1 | rev` - if test $recurse = 1; then - if test -d $arg2/$df; then - if test $verbose = 1; then - echo "Processing directory \"$df\"..." - $0 -recurse -verbose $browserOpts $f $arg2/$df - else - $0 -recurse $browserOpts $f $arg2/$df - fi - else - test $verbose = 1 && echo "Directory \"$df\" does not exist in \"$arg2\", skipping it." - fi + if test $recurse -eq 1 -a $verbose -eq 1; then + echo "Recursively diffing directories..." + fi + # Iterate through all members of dir $arg1 finding + # those in or not in common with dir $arg2 + arg1_files_tmp=`ls -1rt $arg1` + common_members="" + not_common_members="" + for f in $arg1_files_tmp; do + if test -d $arg1/$f -a -d $arg2/$f -a $recurse -eq 1; then + common_members="$f $common_members" + elif test -f $arg1/$f -a -f $arg2/$f; then + if test -n "$($sfexe $arg1/$f | grep PDB\\\|HDF)"; then + common_members="$f $common_members" else - test $verbose = 1 && echo "\"$df\" is a directory, skipping it. Use -recurse to process directories." + not_common_members="$arg1/$f $not_common_members" fi else - bf=`basename $f` - if test -e $arg2/$bf; then - test $verbose = 1 && echo "Processing file \"$bf\"..." - $brexe $browserOptsDef $browserOpts -e diff $f $arg2/$bf + if test $verbose -eq 1; then + not_common_members="$arg1/$f $not_common_members" + fi + fi + done + # If in verbose mode, continue to iterate through dir $arg2 + # finding everything else not in common with dir $arg1 + if test $verbose -eq 1; then + arg2_files_tmp=`ls -1rt $arg2` + for f in $arg2_files_tmp; do + if test -d $arg1/$f -a -d $arg2/$f -a $recurse -eq 1; then + true + elif test -f $arg1/$f -a -f $arg2/$f; then + true else - test $verbose = 1 && echo "File \"$bf\" does not exist in \"$arg2\", skipping it." + not_common_members="$arg2/$f $not_common_members" fi + done + for f in $not_common_members; do + echo " Skipping \"$f\"." + done + fi + for f in $common_members; do + if test -d $arg1/$f -a -d $arg2/$f -a $recurse -eq 1; then + if test $verbose -eq 1; then + echo "Recusively diffing directories \"$arg1/$f\" and \"$arg2/$f\"..." + $0 -recurse -verbose $browserOpts $arg1/$f $arg2/$f + else + $0 -recurse $browserOpts $arg1/$f $arg2/$f + fi + elif test -f $arg1/$f -a -f $arg2/$f; then + test $verbose -eq 1 && echo "Diffing files \"$arg1/$f\" and \"$arg2/$f\"..." + $brexe $browserOptsDef $browserOpts -e diff $arg1/$f $arg2/$f + else + true fi done elif test -d $arg1 -o -d $arg2; then # one is dir diff -Nru silo-llnl-4.10.2/tools/browser/silofile silo-llnl-4.10.2.real/tools/browser/silofile --- silo-llnl-4.10.2/tools/browser/silofile 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tools/browser/silofile 2018-02-15 17:25:43.000000000 +0000 @@ -65,24 +65,21 @@ # unknownFiles= for f in $*; do - headerBytes=$(od -c -N 10 $f) - if test -n "$(echo $headerBytes | tr -d ' ' | grep '<name = safe_strdup ("STRUCT"); - cls->new = stc_new; + cls->newobj = stc_new; cls->copy = stc_copy; cls->dest = stc_dest; cls->feval = stc_feval; @@ -213,7 +213,7 @@ static obj_t stc_new (va_list ap) { - obj_stc_t *self = calloc (1, sizeof(obj_stc_t)); + obj_stc_t *self = (obj_stc_t *)calloc (1, sizeof(obj_stc_t)); obj_t _self = (obj_t)self; obj_t sub; int offset; @@ -281,13 +281,13 @@ if (self->ncomps>=self->acomps) { self->acomps = MAX (2*self->acomps, 30); if (self->sub) { - self->offset = realloc (self->offset, self->acomps*sizeof(int)); - self->compname = realloc (self->compname, self->acomps*sizeof(char*)); - self->sub = realloc (self->sub, self->acomps*sizeof(obj_t)); + self->offset = (int *)realloc (self->offset, self->acomps*sizeof(int)); + self->compname = (char **)realloc (self->compname, self->acomps*sizeof(char*)); + self->sub = (obj_t *)realloc (self->sub, self->acomps*sizeof(obj_t)); } else { - self->offset = malloc (self->acomps*sizeof(int)); - self->compname = malloc (self->acomps*sizeof(char*)); - self->sub = malloc (self->acomps*sizeof(obj_t)); + self->offset = (int *)malloc (self->acomps*sizeof(int)); + self->compname = (char **)malloc (self->acomps*sizeof(char*)); + self->sub = (obj_t *)malloc (self->acomps*sizeof(obj_t)); } assert (self->offset); assert (self->compname); @@ -345,14 +345,14 @@ retval = self; } else { - retval = calloc (1, sizeof(obj_stc_t)); + retval = (obj_stc_t *)calloc (1, sizeof(obj_stc_t)); retval->walk1 = self->walk1; retval->walk2 = self->walk2; retval->name = safe_strdup (self->name); retval->acomps = self->ncomps; /*save some memory*/ - retval->sub = malloc (retval->acomps * sizeof(obj_t)); - retval->offset = malloc (retval->acomps * sizeof(int)); - retval->compname = malloc (retval->acomps * sizeof(char*)); + retval->sub = (obj_t *)malloc (retval->acomps * sizeof(obj_t)); + retval->offset = (int *)malloc (retval->acomps * sizeof(int)); + retval->compname = (char **)malloc (retval->acomps * sizeof(char*)); retval->ncomps = self->ncomps; for (i=0; incomps; i++) { @@ -737,7 +737,7 @@ p++; } - DBWalkMrgtree(tree, stc_walk1_outmrgtree, wdata, DB_PREORDER); + DBWalkMrgtree(tree, (DBmrgwalkcb) stc_walk1_outmrgtree, wdata, DB_PREORDER); return; } @@ -1014,16 +1014,6 @@ int nsame=0, ndiffer=0, nonlya=0, nonlyb=0; /* - * Clear the difference indicators by setting them each to -999. - * When A differs from B, a_diff will contain the index of B and - * b_diff will contain the index of A. - */ - a_diff = calloc (a->ncomps, sizeof(int)); - for (i=0; incomps; i++) a_diff[i] = -999; - b_diff = calloc (b->ncomps, sizeof(int)); - for (i=0; incomps; i++) b_diff[i] = -999; - - /* * If both types have localized their walk2 functions, then call that * function instead. */ @@ -1032,13 +1022,27 @@ } /* + * Clear the difference indicators by setting them each to -999. + * When A differs from B, a_diff will contain the index of B and + * b_diff will contain the index of A. + */ + a_diff = (int *)calloc (a->ncomps, sizeof(int)); + for (i=0; incomps; i++) a_diff[i] = -999; + b_diff = (int *)calloc (b->ncomps, sizeof(int)); + for (i=0; incomps; i++) b_diff[i] = -999; + + /* * Figure out which fields appear only in A (a_diff[i]==b->ncomps), * which appear only in B (b_diff[i]==a->ncomps), which appear in both * but differ (a_diff[i]=j, b_diff[j]=i, i>=0, j>=0), and which are * the same in both. */ for (i=0; incomps; i++) { - if (out_brokenpipe(f)) return -1; + if (out_brokenpipe(f)) { + free(a_diff); + free(b_diff); + return -1; + } for (j=0; jncomps; j++) { if (!strcmp(a->compname[i], b->compname[j])) { @@ -1061,6 +1065,8 @@ } break; case DIFF_REP_SUMMARY: + free(a_diff); + free(b_diff); return 1; } break; @@ -1079,7 +1085,11 @@ } break; case DIFF_REP_SUMMARY: - if (!DiffOpt.ignore_dels) return 2; + if (!DiffOpt.ignore_dels) { + free(a_diff); + free(b_diff); + return 2; + } nsame++; break; } @@ -1102,7 +1112,11 @@ } break; case DIFF_REP_SUMMARY: - if (!DiffOpt.ignore_adds) return 2; + if (!DiffOpt.ignore_adds) { + free(a_diff); + free(b_diff); + return 2; + } nsame++; break; } @@ -1111,7 +1125,11 @@ /* Print the A side of things */ for (i=na=0; incomps; i++) { - if (out_brokenpipe(f)) return -1; + if (out_brokenpipe(f)) { + free(a_diff); + free(b_diff); + return -1; + } if (a_diff[i]==b->ncomps && !DiffOpt.ignore_dels) { switch (DiffOpt.report) { case DIFF_REP_ALL: @@ -1136,6 +1154,8 @@ out_pop(f); break; case DIFF_REP_SUMMARY: + free(a_diff); + free(b_diff); return 2; } na++; @@ -1165,6 +1185,8 @@ out_pop(f); break; case DIFF_REP_SUMMARY: + free(a_diff); + free(b_diff); return 2; } na++; @@ -1173,7 +1195,11 @@ /* Print the B side of things */ for (i=nb=0; incomps; i++) { - if (out_brokenpipe(f)) return -1; + if (out_brokenpipe(f)) { + free(a_diff); + free(b_diff); + return -1; + } if (b_diff[i]==a->ncomps && !DiffOpt.ignore_adds) { switch (DiffOpt.report) { case DIFF_REP_ALL: @@ -1201,6 +1227,8 @@ out_pop(f); break; case DIFF_REP_SUMMARY: + free(a_diff); + free(b_diff); return 2; } nb++; @@ -1224,6 +1252,8 @@ case DIFF_REP_BRIEF: break; /*already printed*/ case DIFF_REP_SUMMARY: + free(a_diff); + free(b_diff); return 2; } nb++; @@ -1233,6 +1263,9 @@ out_line (f, "***************"); } + free(a_diff); + free(b_diff); + /* Return */ if (ndiffer) { if (DiffOpt.two_column) return 1; @@ -1590,6 +1623,10 @@ COMP (reference, "primitive 'string'"); COMP (guihide, "primitive 'int'"); IOASSOC (PA_BOOLEAN); + COMP (coord_sys, "primitive 'int'"); + IOASSOC (PA_COORDSYS); + COMP (missing_value, "primitive 'double'"); + IOASSOC (PA_MISSING_VALUE); COMP (x, "pointer (array 'self.npts' (primitive 'self.datatype'))"); COMP (y, @@ -1616,72 +1653,41 @@ COMP (id, "primitive 'int'"); COMP (nblocks, "primitive 'int'"); COMP (ngroups, "primitive 'int'"); - COMP (guihide, "primitive 'int'"); - IOASSOC (PA_BOOLEAN); + COMP (guihide, "primitive 'int'"); IOASSOC (PA_BOOLEAN); COMP (blockorigin, "primitive 'int'"); COMP (grouporigin, "primitive 'int'"); COMP (extentssize, "primitive 'int'"); COMP (mrgtree_name, "primitive 'string'"); COMP (tv_connectivity, "primitive 'int'"); COMP (disjoint_mode, "primitive 'int'"); - COMP (topo_dim, "primitive 'int'"); - IOASSOC (PA_TOPODIM); + COMP (topo_dim, "primitive 'int'"); IOASSOC (PA_TOPODIM); COMP (file_ns, "primitive 'string'"); COMP (block_ns, "primitive 'string'"); COMP (block_type, "primitive 'int'"); - COMP (repr_block_idx, "primitive 'int'"); - IOASSOC (PA_REPRBLOCK); + COMP (repr_block_idx, "primitive 'int'"); IOASSOC (PA_REPRBLOCK); + COMP (alt_nodenum_vars, "pointer (array 'SH5 0, self.alt_nodenum_vars' (primitive 'string'))"); + COMP (alt_zonenum_vars, "pointer (array 'SH5 0, self.alt_zonenum_vars' (primitive 'string'))"); COMP (empty_cnt, "primitive 'int'"); - COMP (empty_list, - "pointer (array 'self.empty_cnt' (primitive 'int'))"); - COMP (meshids, - "pointer (array 'self.nblocks' (primitive 'int'))"); - COMP (meshnames, - "pointer (array 'self.nblocks' (primitive 'string'))"); + COMP (empty_list, "pointer (array 'self.empty_cnt' (primitive 'int'))"); + COMP (meshids, "pointer (array 'self.nblocks' (primitive 'int'))"); + COMP (meshnames, "pointer (array 'self.nblocks' (primitive 'string'))"); tmp = obj_new (C_PRIM, "int"); prim_set_io_assoc (tmp, PA_OBJTYPE); tmp = obj_new (C_PTR, obj_new (C_ARY, "self.nblocks", tmp)); COMP3 (meshtypes, "meshtypes", tmp); - COMP (dirids, - "pointer (array 'self.nblocks' (primitive 'int'))"); - COMP (extents, - "pointer (array 'self.nblocks,self.extentssize' (primitive 'double'))"); - COMP (zonecounts, - "pointer (array 'self.nblocks' (primitive 'int'))"); - COMP (has_external_zones, - "pointer (array 'self.nblocks' (primitive 'int'))"); - COMP (lgroupings, "primitive 'int'"); - COMP (groupings, - "pointer (array 'self.lgroupings' (primitive 'int'))"); - COMP (groupnames, - "pointer (array 'self.lgroupings' (primitive 'string'))"); + COMP (dirids, "pointer (array 'self.nblocks' (primitive 'int'))"); + COMP (extents, "pointer (array 'self.nblocks,self.extentssize' (primitive 'double'))"); + COMP (zonecounts, "pointer (array 'self.nblocks' (primitive 'int'))"); + COMP (has_external_zones, "pointer (array 'self.nblocks' (primitive 'int'))"); + COMP (lgroupings, "primitive 'int'"); + COMP (groupings, "pointer (array 'self.lgroupings' (primitive 'int'))"); + COMP (groupnames, "pointer (array 'self.lgroupings' (primitive 'string'))"); } ESTRUCT; - STRUCT (DBmultimeshadj) { - COMP (nblocks, "primitive 'int'"); - COMP (blockorigin, "primitive 'int'"); - COMP (lneighbors, "primitive 'int'"); - COMP (totlnodelists, "primitive 'int'"); - COMP (totlzonelists, "primitive 'int'"); - - tmp = obj_new (C_PRIM, "int"); - prim_set_io_assoc (tmp, PA_OBJTYPE); - tmp = obj_new (C_PTR, obj_new (C_ARY, "self.nblocks", tmp)); - COMP3 (meshtypes, "meshtypes", tmp); - - COMP (nneighbors, - "pointer (array 'self.nblocks' (primitive 'int'))"); - COMP (neighbors, - "pointer (array 'self.lneighbors' (primitive 'int'))"); - COMP (back, - "pointer (array 'self.lneighbors' (primitive 'int'))"); - COMP (lnodelists, - "pointer (array 'self.lneighbors' (primitive 'int'))"); - COMP (lzonelists, - "pointer (array 'self.lneighbors' (primitive 'int'))"); - } ESTRUCT; + /* ThDBmultimeshadj object is handled specially in browser using the + browser_DBGetMultimesadj() function */ STRUCT (DBmultivar) { COMP (id, "primitive 'int'"); @@ -1702,6 +1708,8 @@ COMP (block_type, "primitive 'int'"); COMP (repr_block_idx, "primitive 'int'"); IOASSOC (PA_REPRBLOCK); + COMP (missing_value, "primitive 'double'"); + IOASSOC (PA_MISSING_VALUE); COMP (empty_cnt, "primitive 'int'"); COMP (empty_list, "pointer (array 'self.empty_cnt' (primitive 'int'))"); @@ -1788,45 +1796,36 @@ COMP (cycle, "primitive 'int'"); COMP (time, "primitive 'float'"); COMP (dtime, "primitive 'double'"); - COMP (coord_sys, "primitive 'int'"); - IOASSOC (PA_COORDSYS); - COMP (major_order, "primitive 'int'"); - IOASSOC (PA_ORDER); + COMP (coord_sys, "primitive 'int'"); IOASSOC (PA_COORDSYS); + COMP (major_order, "primitive 'int'"); IOASSOC (PA_ORDER); COMP (stride, "array 3 (primitive 'int')"); - COMP (coordtype, "primitive 'int'"); - IOASSOC (PA_COORDTYPE); - COMP (facetype, "primitive 'int'"); - IOASSOC (PA_FACETYPE); - COMP (planar, "primitive 'int'"); - IOASSOC (PA_PLANAR); + COMP (coordtype, "primitive 'int'"); IOASSOC (PA_COORDTYPE); + COMP (facetype, "primitive 'int'"); IOASSOC (PA_FACETYPE); + COMP (planar, "primitive 'int'"); IOASSOC (PA_PLANAR); COMP (ndims, "primitive 'int'"); COMP (nspace, "primitive 'int'"); COMP (nnodes, "primitive 'int'"); - COMP (dims, - "array 'SH3 3, self.ndims' (primitive 'int')"); - COMP (min_index, - "array 'SH3 3, self.ndims' (primitive 'int')"); - COMP (max_index, - "array 'SH3 3, self.ndims' (primitive 'int')"); + COMP (dims, "array 'SH3 3, self.ndims' (primitive 'int')"); + COMP (min_index, "array 'SH3 3, self.ndims' (primitive 'int')"); + COMP (max_index, "array 'SH3 3, self.ndims' (primitive 'int')"); COMP (origin, "primitive 'int'"); - COMP (datatype, "primitive 'int'"); - IOASSOC (PA_DATATYPE); - COMP (min_extents, - "array 'SH3 3, self.ndims' (primitive 'self.datatype')"); - COMP (max_extents, - "array 'SH3 3, self.ndims' (primitive 'self.datatype')"); - COMP (labels, - "array 'SH3 3, self.ndims' (primitive 'string')"); - COMP (units, - "array 'SH3 3, self.ndims' (primitive 'string')"); - COMP (guihide, "primitive 'int'"); - IOASSOC (PA_BOOLEAN); + COMP (datatype, "primitive 'int'"); IOASSOC (PA_DATATYPE); + COMP (min_extents, "array 'SH3 3, self.ndims' (primitive 'self.datatype')"); + COMP (max_extents, "array 'SH3 3, self.ndims' (primitive 'self.datatype')"); + COMP (labels, "array 'SH3 3, self.ndims' (primitive 'string')"); + COMP (units, "array 'SH3 3, self.ndims' (primitive 'string')"); + COMP (guihide, "primitive 'int'"); IOASSOC (PA_BOOLEAN); COMP (base_index, "array 3 (primitive 'int')"); + COMP (start_index, "array 3 (primitive 'int')"); + COMP (size_index, "array 3 (primitive 'int')"); COMP (mrgtree_name, "primitive 'string'"); - COMP (coords, - "array 'SH3 3, self.ndims' " + COMP (alt_nodenum_vars, "pointer (array 'SH5 0, self.alt_nodenum_vars' (primitive 'string'))"); + COMP (alt_zonenum_vars, "pointer (array 'SH5 0, self.alt_zonenum_vars' (primitive 'string'))"); + COMP (coords, "array 'SH3 3, self.ndims' " "(pointer (array 'SH1 self.coordtype, self.dims' " "(primitive 'self.datatype')))"); + COMP (ghost_node_labels, "pointer (array 'self.dims' (primitive 'int8'))"); + COMP (ghost_zone_labels, "pointer (array 'SH6 -1, self.dims' (primitive 'int8'))"); } ESTRUCT; STRUCT (DBquadvar) { @@ -1839,36 +1838,29 @@ COMP (time, "primitive 'float'"); COMP (dtime, "primitive 'double'"); COMP (meshid, "primitive 'int'"); - COMP (datatype, "primitive 'int'"); - IOASSOC (PA_DATATYPE); - COMP (centering, "primitive 'int'"); - IOASSOC (PA_CENTERING); + COMP (datatype, "primitive 'int'"); IOASSOC (PA_DATATYPE); + COMP (centering, "primitive 'int'"); IOASSOC (PA_CENTERING); COMP (nels, "primitive 'int'"); COMP (nvals, "primitive 'int'"); COMP (ndims, "primitive 'int'"); COMP (dims, "array 'SH3 3, self.ndims' (primitive 'int')"); - COMP (major_order, "primitive 'int'"); - IOASSOC (PA_ORDER); + COMP (major_order, "primitive 'int'"); IOASSOC (PA_ORDER); COMP (stride, "array 'SH3 3, self.ndims' (primitive 'int')"); COMP (min_index, "array 'SH3 3, self.ndims' (primitive 'int')"); COMP (max_index, "array 'SH3 3, self.ndims' (primitive 'int')"); COMP (origin, "primitive 'int'"); - COMP (align, - "array 'SH3 3, self.ndims' (primitive 'float')"); + COMP (align, "array 'SH3 3, self.ndims' (primitive 'float')"); COMP (mixlen, "primitive 'int'"); - COMP (use_specmf, "primitive 'int'"); - IOASSOC (PA_ONOFF); - COMP (ascii_labels, "primitive 'int'"); - IOASSOC (PA_BOOLEAN); - COMP (guihide, "primitive 'int'"); - IOASSOC (PA_BOOLEAN); + COMP (use_specmf, "primitive 'int'"); IOASSOC (PA_ONOFF); + COMP (ascii_labels, "primitive 'int'"); IOASSOC (PA_BOOLEAN); + COMP (guihide, "primitive 'int'"); IOASSOC (PA_BOOLEAN); COMP (conserved, "primitive 'int'"); COMP (extensive, "primitive 'int'"); - COMP (mixvals, - "pointer (array 'self.nvals' (pointer (array 'self.mixlen' " + COMP (missing_value, "primitive 'double'"); IOASSOC (PA_MISSING_VALUE); + COMP (region_pnames, "pointer (array 'SH5 0, self.region_pnames' (primitive 'string'))"); + COMP (mixvals, "pointer (array 'self.nvals' (pointer (array 'self.mixlen' " "(primitive 'self.datatype'))))"); - COMP (vals, - "pointer (array 'self.nvals' (pointer (array 'self.nels' " + COMP (vals, "pointer (array 'self.nvals' (pointer (array 'self.nels' " "(primitive 'self.datatype'))))"); } ESTRUCT; @@ -1879,21 +1871,20 @@ COMP (origin, "primitive 'int'"); COMP (min_index, "primitive 'int'"); COMP (max_index, "primitive 'int'"); - COMP (gnznodtype, "primitive 'int'"); - IOASSOC (PA_DATATYPE); + COMP (gnznodtype, "primitive 'int'"); IOASSOC (PA_DATATYPE); COMP (lnodelist, "primitive 'int'"); - COMP (shapecnt, - "pointer (array 'self.nshapes' (primitive 'int'))"); - COMP (shapesize, - "pointer (array 'self.nshapes' (primitive 'int'))"); - COMP (shapetype, - "pointer (array 'self.nshapes' (primitive 'int'))"); - COMP (nodelist, - "pointer (array 'self.lnodelist' (primitive 'int'))"); - COMP (zoneno, - "pointer (array 'self.nzones' (primitive 'int'))"); - COMP (gzoneno, - "pointer (array 'self.nzones' (primitive 'self.gnznodtype'))"); + COMP (shapecnt, "pointer (array 'self.nshapes' (primitive 'int'))"); + COMP (shapesize, "pointer (array 'self.nshapes' (primitive 'int'))"); + + tmp = obj_new (C_PRIM, "int"); + prim_set_io_assoc (tmp, PA_ZONETYPE); + tmp = obj_new (C_PTR, obj_new (C_ARY, "self.nshapes", tmp)); + COMP3 (shapetype, "shapetype", tmp); + + COMP (nodelist, "pointer (array 'self.lnodelist' (primitive 'int'))"); + COMP (zoneno, "pointer (array 'self.nzones' (primitive 'int'))"); + COMP (gzoneno, "pointer (array 'self.nzones' (primitive 'self.gnznodtype'))"); + COMP (ghost_zone_labels, "pointer (array 'self.nzones' (primitive 'int8'))"); } ESTRUCT; STRUCT (DBphzonelist) { @@ -1904,22 +1895,16 @@ COMP (hi_offset, "primitive 'int'"); COMP (lnodelist, "primitive 'int'"); COMP (lfacelist, "primitive 'int'"); - COMP (gnznodtype, "primitive 'int'"); - IOASSOC (PA_DATATYPE); - COMP (nodecnt, - "pointer (array 'self.nfaces' (primitive 'int'))"); - COMP (nodelist, - "pointer (array 'self.lnodelist' (primitive 'int'))"); - COMP (extface, - "pointer (array 'self.nfaces' (primitive 'int8'))"); - COMP (facecnt, - "pointer (array 'self.nzones' (primitive 'int'))"); - COMP (facelist, - "pointer (array 'self.lfacelist' (primitive 'int'))"); - COMP (zoneno, - "pointer (array 'self.nzones' (primitive 'int'))"); - COMP (gzoneno, - "pointer (array 'self.nzones' (primitive 'self.gnznodtype'))"); + COMP (gnznodtype, "primitive 'int'"); IOASSOC (PA_DATATYPE); + COMP (alt_zonenum_vars, "pointer (array 'SH5 0, self.alt_zonenum_vars' (primitive 'string'))"); + COMP (nodecnt, "pointer (array 'self.nfaces' (primitive 'int'))"); + COMP (nodelist, "pointer (array 'self.lnodelist' (primitive 'int'))"); + COMP (extface, "pointer (array 'self.nfaces' (primitive 'int8'))"); + COMP (facecnt, "pointer (array 'self.nzones' (primitive 'int'))"); + COMP (facelist, "pointer (array 'self.lfacelist' (primitive 'int'))"); + COMP (zoneno, "pointer (array 'self.nzones' (primitive 'int'))"); + COMP (gzoneno, "pointer (array 'self.nzones' (primitive 'self.gnznodtype'))"); + COMP (ghost_zone_labels, "pointer (array 'self.nzones' (primitive 'int8'))"); } ESTRUCT; STRUCT (DBcsgzonelist) { @@ -1930,6 +1915,7 @@ COMP (datatype, "primitive 'int'"); COMP (min_index, "primitive 'int'"); COMP (max_index, "primitive 'int'"); + COMP (alt_zonenum_vars, "pointer (array 'SH5 0, self.alt_zonenum_vars' (primitive 'string'))"); tmp = obj_new (C_PRIM, "int"); prim_set_io_assoc (tmp, PA_REGIONOP); @@ -2008,6 +1994,7 @@ COMP (disjoint_mode, "primitive 'int'"); COMP (lcoeffs, "primitive 'int'"); COMP (datatype, "primitive 'int'"); + COMP (alt_nodenum_vars, "pointer (array 'SH5 0, self.alt_nodenum_vars' (primitive 'string'))"); tmp = obj_new (C_PRIM, "int"); prim_set_io_assoc (tmp, PA_BOUNDARYTYPE); @@ -2045,6 +2032,9 @@ IOASSOC (PA_BOOLEAN); COMP (conserved, "primitive 'int'"); COMP (extensive, "primitive 'int'"); + COMP (missing_value, "primitive 'double'"); + IOASSOC (PA_MISSING_VALUE); + COMP (region_pnames, "pointer (array 'SH5 0, self.region_pnames' (primitive 'string'))"); COMP (vals, "pointer (array 'self.nvals' (pointer " "(array 'self.nels' (primitive 'self.datatype'))))"); @@ -2058,37 +2048,27 @@ COMP (cycle, "primitive 'int'"); COMP (time, "primitive 'float'"); COMP (dtime, "primitive 'double'"); - COMP (coord_sys, "primitive 'int'"); - IOASSOC (PA_COORDSYS); - COMP (topo_dim, "primitive 'int'"); - IOASSOC (PA_TOPODIM); + COMP (coord_sys, "primitive 'int'"); IOASSOC (PA_COORDSYS); + COMP (topo_dim, "primitive 'int'"); IOASSOC (PA_TOPODIM); COMP (ndims, "primitive 'int'"); COMP (nnodes, "primitive 'int'"); COMP (origin, "primitive 'int'"); - COMP (datatype, "primitive 'int'"); - IOASSOC (PA_DATATYPE); - COMP (units, - "array 'SH3 3, self.ndims' (primitive 'string')"); - COMP (labels, - "array 'SH3 3, self.ndims' (primitive 'string')"); - COMP (guihide, "primitive 'int'"); - IOASSOC (PA_BOOLEAN); - COMP (mrgtree_name, "primitive 'string'"); - COMP (tv_connectivity, "primitive 'int'"); - COMP (disjoint_mode, "primitive 'int'"); - COMP (gnznodtype, "primitive 'int'"); - IOASSOC (PA_DATATYPE); - COMP (min_extents, - "array 'SH3 3, self.ndims' (primitive 'self.datatype')"); - COMP (max_extents, - "array 'SH3 3, self.ndims' (primitive 'self.datatype')"); - COMP (coords, - "array 'SH3 3, self.ndims' (pointer (array 'self.nnodes' " + COMP (datatype, "primitive 'int'"); IOASSOC (PA_DATATYPE); + COMP (units, "array 'SH3 3, self.ndims' (primitive 'string')"); + COMP (labels, "array 'SH3 3, self.ndims' (primitive 'string')"); + COMP (guihide, "primitive 'int'"); IOASSOC (PA_BOOLEAN); + COMP (mrgtree_name, "primitive 'string'"); + COMP (tv_connectivity, "primitive 'int'"); + COMP (disjoint_mode, "primitive 'int'"); + COMP (gnznodtype, "primitive 'int'"); IOASSOC (PA_DATATYPE); + COMP (min_extents, "array 'SH3 3, self.ndims' (primitive 'self.datatype')"); + COMP (max_extents, "array 'SH3 3, self.ndims' (primitive 'self.datatype')"); + COMP (alt_nodenum_vars, "pointer (array 'SH5 0, self.alt_nodenum_vars' (primitive 'string'))"); + COMP (coords, "array 'SH3 3, self.ndims' (pointer (array 'self.nnodes' " "(primitive 'self.datatype')))"); - COMP (gnodeno, - "pointer (array 'self.nnodes' (primitive 'self.gnznodtype'))"); - COMP (nodeno, - "pointer (array 'self.nnodes' (primitive 'int'))"); + COMP (gnodeno, "pointer (array 'self.nnodes' (primitive 'self.gnznodtype'))"); + COMP (nodeno, "pointer (array 'self.nnodes' (primitive 'int'))"); + COMP (ghost_node_labels, "pointer (array 'self.nnodes' (primitive 'int8'))"); COMP (faces, "pointer 'DBfacelist'"); COMP (zones, "pointer 'DBzonelist'"); COMP (edges, "pointer 'DBedgelist'"); @@ -2122,6 +2102,9 @@ IOASSOC (PA_BOOLEAN); COMP (conserved, "primitive 'int'"); COMP (extensive, "primitive 'int'"); + COMP (missing_value, "primitive 'double'"); + IOASSOC (PA_MISSING_VALUE); + COMP (region_pnames, "pointer (array 'SH5 0, self.region_pnames' (primitive 'string'))"); COMP (vals, "pointer (array 'self.nvals' (pointer " "(array 'self.nels' (primitive 'self.datatype'))))"); @@ -2144,24 +2127,20 @@ COMP (ndims, "primitive 'int'"); COMP (nels, "primitive 'int'"); COMP (origin, "primitive 'int'"); - COMP (units, - "array 'SH3 3, self.ndims' (primitive 'string')"); - COMP (labels, - "array 'SH3 3, self.ndims' (primitive 'string')"); + COMP (units, "array 'SH3 3, self.ndims' (primitive 'string')"); + COMP (labels, "array 'SH3 3, self.ndims' (primitive 'string')"); COMP (guihide, "primitive 'int'"); IOASSOC (PA_BOOLEAN); COMP (mrgtree_name, "primitive 'string'"); COMP (gnznodtype, "primitive 'int'"); IOASSOC (PA_DATATYPE); - COMP (min_extents, - "array 'SH3 3, self.ndims' (primitive 'self.datatype')"); - COMP (max_extents, - "array 'SH3 3, self.ndims' (primitive 'self.datatype')"); - COMP (coords, - "array 'self.ndims' (pointer (array 'self.nels' " + COMP (min_extents, "array 'SH3 3, self.ndims' (primitive 'self.datatype')"); + COMP (max_extents, "array 'SH3 3, self.ndims' (primitive 'self.datatype')"); + COMP (alt_nodenum_vars, "pointer (array 'SH5 0, self.alt_nodenum_vars' (primitive 'string'))"); + COMP (coords, "array 'self.ndims' (pointer (array 'self.nels' " "(primitive 'self.datatype')))"); - COMP (gnodeno, - "pointer (array 'self.nels' (primitive 'self.gnznodtype'))"); + COMP (gnodeno, "pointer (array 'self.nels' (primitive 'self.gnznodtype'))"); + COMP (ghost_node_labels, "pointer (array 'self.nels' (primitive 'int8'))"); } ESTRUCT; STRUCT (DBmeshvar) { @@ -2183,27 +2162,24 @@ COMP (origin, "primitive 'int'"); COMP (centering, "primitive 'int'"); IOASSOC (PA_CENTERING); - COMP (align, - "array 'SH3 3, self.ndims' (primitive 'float')"); - COMP (dims, - "array 'SH3 3, self.ndims' (primitive 'int')"); + COMP (align, "array 'SH3 3, self.ndims' (primitive 'float')"); + COMP (dims, "array 'SH3 3, self.ndims' (primitive 'int')"); COMP (major_order, "primitive 'int'"); IOASSOC (PA_ORDER); - COMP (stride, - "array 'SH3 3, self.ndims' (primitive 'int')"); - COMP (min_index, - "array 'SH3 3, self.ndims' (primitive 'int')"); - COMP (max_index, - "array 'SH3 3, self.ndims' (primitive 'int')"); + COMP (stride, "array 'SH3 3, self.ndims' (primitive 'int')"); + COMP (min_index, "array 'SH3 3, self.ndims' (primitive 'int')"); + COMP (max_index, "array 'SH3 3, self.ndims' (primitive 'int')"); COMP (guihide, "primitive 'int'"); IOASSOC (PA_BOOLEAN); COMP (ascii_labels, "primitive 'int'"); IOASSOC (PA_BOOLEAN); COMP (conserved, "primitive 'int'"); COMP (extensive, "primitive 'int'"); - COMP (vals, - "pointer (array 'self.nvals' (pointer " - "(array 'self.nels' (primitive 'self.datatype'))))"); + COMP (missing_value, "primitive 'double'"); + IOASSOC (PA_MISSING_VALUE); + COMP (region_pnames, "pointer (array 'SH5 0, self.region_pnames' (primitive 'string'))"); + COMP (vals, "pointer (array 'self.nvals' (pointer " + "(array 'self.nels' (primitive 'self.datatype'))))"); } ESTRUCT; STRUCT (DBmaterial) { @@ -2212,19 +2188,14 @@ COMP (meshname, "primitive 'string'"); COMP (ndims, "primitive 'int'"); COMP (origin, "primitive 'int'"); - COMP (dims, - "array 'SH3 3, self.ndims' (primitive 'int')"); + COMP (dims, "array 'SH3 3, self.ndims' (primitive 'int')"); COMP (major_order, "primitive 'int'"); IOASSOC (PA_ORDER); - COMP (stride, - "array 'SH3 3, self.ndims' (primitive 'int')"); + COMP (stride, "array 'SH3 3, self.ndims' (primitive 'int')"); COMP (nmat, "primitive 'int'"); - COMP (matnos, - "pointer (array 'self.nmat' (primitive 'int'))"); - COMP (matnames, - "pointer (array 'self.nmat' (primitive 'string'))"); - COMP (matcolors, - "pointer (array 'self.nmat' (primitive 'string'))"); + COMP (matnos, "pointer (array 'self.nmat' (primitive 'int'))"); + COMP (matnames, "pointer (array 'self.nmat' (primitive 'string'))"); + COMP (matcolors, "pointer (array 'self.nmat' (primitive 'string'))"); COMP (allowmat0, "primitive 'int'"); IOASSOC (PA_BOOLEAN); COMP (guihide, "primitive 'int'"); @@ -2232,16 +2203,11 @@ COMP (mixlen, "primitive 'int'"); COMP (datatype, "primitive 'int'"); IOASSOC (PA_DATATYPE); - COMP (matlist, - "pointer (array 'SH2, self.dims' (primitive 'int'))"); - COMP (mix_vf, - "pointer (array 'self.mixlen' (primitive 'self.datatype'))"); - COMP (mix_next, - "pointer (array 'self.mixlen' (primitive 'int'))"); - COMP (mix_mat, - "pointer (array 'self.mixlen' (primitive 'int'))"); - COMP (mix_zone, - "pointer (array 'self.mixlen' (primitive 'int'))"); + COMP (matlist, "pointer (array 'SH2, self.dims' (primitive 'int'))"); + COMP (mix_vf, "pointer (array 'self.mixlen' (primitive 'self.datatype'))"); + COMP (mix_next, "pointer (array 'self.mixlen' (primitive 'int'))"); + COMP (mix_mat, "pointer (array 'self.mixlen' (primitive 'int'))"); + COMP (mix_zone, "pointer (array 'self.mixlen' (primitive 'int'))"); } ESTRUCT; STRUCT (DBmatspecies) { @@ -2276,20 +2242,8 @@ "pointer (array 'self.mixlen' (primitive 'int'))"); } ESTRUCT; - STRUCT (DBcompoundarray) { - COMP (id, "primitive 'int'"); - COMP (name, "primitive 'string'"); - COMP (nelems, "primitive 'int'"); - COMP (nvalues, "primitive 'int'"); - COMP (datatype, "primitive 'int'"); - IOASSOC (PA_DATATYPE); - COMP (elemnames, - "pointer (array 'self.nelems' (primitive 'string'))"); - COMP (elemlengths, - "pointer (array 'self.nelems' (primitive 'int'))"); - COMP (values, - "pointer (array 'self.nvalues' (primitive 'self.datatype'))"); - } ESTRUCT; + /* The DBcompoundarray object is handled specially in browser using the + browser_DBGetCompoundarray() function */ STRUCT (DBmrgtree) { WALK1 (stc_walk1_DBmrgtree); @@ -2300,30 +2254,8 @@ COMP (num_nodes, "primitive 'int'"); } ESTRUCT; - STRUCT(DBgroupelmap) { - COMP (name, "primitive 'string'"); - COMP (num_segments, "primitive 'int'"); - COMP (fracs_data_type, "primitive 'int'"); - IOASSOC (PA_DATATYPE); - COMP (segment_lengths, - "pointer (array 'self.num_segments' (primitive 'int'))"); - COMP (groupel_types, - "pointer (array 'self.num_segments' (primitive 'int'))"); - tmp = obj_new (C_PRIM, "int"); - prim_set_io_assoc (tmp, PA_CENTERING); - tmp = obj_new (C_PTR, obj_new (C_ARY, "self.num_segments", tmp)); - COMP3 (groupel_types, "groupel_types", tmp); - COMP (segment_ids, - "pointer (array 'self.num_segments' (primitive 'int'))"); - COMP (segment_data, - "pointer (array 'SH3 1000, self.num_segments' " - "(pointer (array 'SH1 DB_COLLINEAR, self.segment_lengths' " - "(primitive 'int'))))"); - COMP (segment_fracs, - "pointer (array 'SH3 1000, self.num_segments' " - "(pointer (array 'SH1 DB_COLLINEAR, self.segment_lengths' " - "(primitive 'self.fracs_data_type'))))"); - } ESTRUCT; + /* The DBgroupelmap object is handled specially in browser using the + browser_DBGroupelmap() function */ STRUCT (DBmrgvar) { COMP (name, "primitive 'string'"); @@ -2332,13 +2264,10 @@ COMP (nregns, "primitive 'int'"); COMP (datatype, "primitive 'int'"); IOASSOC (PA_DATATYPE); - COMP (compnames, - "pointer (array 'self.ncomps' (primitive 'string'))"); - COMP (reg_pnames, - "pointer (array '1' (primitive 'string'))"); - COMP (data, - "pointer (array 'self.ncomps' (pointer " - "(array 'self.nregns' (primitive 'self.datatype'))))"); + COMP (compnames, "pointer (array 'self.ncomps' (primitive 'string'))"); + COMP (reg_pnames, "pointer (array 'SH5 0, self.reg_pnames' (primitive 'string'))"); + COMP (data, "pointer (array 'self.ncomps' (pointer " + "(array 'self.nregns' (primitive 'self.datatype'))))"); } ESTRUCT; STRUCT (toc_t) { @@ -2351,14 +2280,12 @@ WALK1 (stc_walk1_DBdirectory); WALK2 (stc_walk2_DBdirectory); COMP (nsyms, "primitive 'int'"); - COMP (entry_ptr, - "pointer (array 'self.nsyms' (pointer 'toc_t'))"); + COMP (entry_ptr, "pointer (array 'self.nsyms' (pointer 'toc_t'))"); } ESTRUCT; STRUCT (DBtoc) { COMP (ncurve, "primitive 'int'"); - COMP (curve_names, - "pointer (array 'self.ncurve' (primitive 'string'))"); + COMP (curve_names, "pointer (array 'self.ncurve' (primitive 'string'))"); COMP (ndefvars, "primitive 'int'"); COMP (defvars_names, "pointer (array 'self.ndefvars' (primitive 'string'))"); diff -Nru silo-llnl-4.10.2/tools/browser/str.c silo-llnl-4.10.2.real/tools/browser/str.c --- silo-llnl-4.10.2/tools/browser/str.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tools/browser/str.c 2018-02-15 17:25:43.000000000 +0000 @@ -101,10 +101,10 @@ class_t str_class (void) { - class_t cls = calloc (1, sizeof(*cls)); + class_t cls = (class_t)calloc (1, sizeof(*cls)); cls->name = strdup ("STR"); - cls->new = str_new; + cls->newobj = str_new; cls->copy = str_copy; cls->dest = str_dest; cls->print = str_print; @@ -135,7 +135,7 @@ str_new (va_list ap) { char *s; - obj_str_t *self = calloc (1, sizeof(obj_str_t)); + obj_str_t *self = (obj_str_t *)calloc (1, sizeof(obj_str_t)); assert (self); s = va_arg (ap, char*); @@ -171,7 +171,7 @@ retval = self; } else { - retval = calloc (1, sizeof(obj_str_t)); + retval = (obj_str_t *)calloc (1, sizeof(obj_str_t)); retval->s = strdup (self->s); } return (obj_t)retval; diff -Nru silo-llnl-4.10.2/tools/browser/switch.c silo-llnl-4.10.2.real/tools/browser/switch.c --- silo-llnl-4.10.2/tools/browser/switch.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tools/browser/switch.c 2018-02-15 17:25:43.000000000 +0000 @@ -81,7 +81,7 @@ switches_t * switch_new(void) { - return calloc(1, sizeof(switches_t)); + return (switches_t *)calloc(1, sizeof(switches_t)); } /*--------------------------------------------------------------------------- @@ -111,7 +111,7 @@ } else { if (switches->nused+1>=switches->nalloc) { switches->nalloc = MAX(100, 2*switches->nalloc); - switches->sw = realloc(switches->sw, + switches->sw = (switch_t *)realloc(switches->sw, switches->nalloc*sizeof(switch_t)); } found = switches->sw + switches->nused++; @@ -155,7 +155,7 @@ void switch_doc(switch_t *sw, const char *doc_string) { - char *fulldoc = malloc(8192); + char *fulldoc = (char *)malloc(8192); /* Set switch info */ if (!sw) sw = switch_latest; diff -Nru silo-llnl-4.10.2/tools/browser/sym.c silo-llnl-4.10.2.real/tools/browser/sym.c --- silo-llnl-4.10.2/tools/browser/sym.c 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tools/browser/sym.c 2018-02-15 17:25:43.000000000 +0000 @@ -123,10 +123,10 @@ class_t sym_class (void) { - class_t cls = calloc (1, sizeof(*cls)); + class_t cls = (class_t)calloc (1, sizeof(*cls)); cls->name = safe_strdup ("SYM"); - cls->new = sym_new; + cls->newobj = sym_new; cls->dest = NULL; cls->copy = NULL; cls->print = sym_print; @@ -180,10 +180,10 @@ if (!sym && unused<0) { if (!Symbol) { NSymbols = 1024; - Symbol = calloc (NSymbols, sizeof(sym_t)); + Symbol = (sym_t*)calloc (NSymbols, sizeof(sym_t)); unused = 0; } else { - Symbol = realloc (Symbol, (NSymbols+1024) * sizeof(sym_t)); + Symbol = (sym_t*)realloc (Symbol, (NSymbols+1024) * sizeof(sym_t)); memset (Symbol+NSymbols, 0, 1024*sizeof(sym_t)); unused = NSymbols; NSymbols += 1024; @@ -195,7 +195,7 @@ sym->name = safe_strdup (name); } - self = calloc (1, sizeof(obj_sym_t)); + self = (obj_sym_t*)calloc (1, sizeof(obj_sym_t)); self->sym = sym; return (obj_t)self; } @@ -842,12 +842,12 @@ "`comp_names' or `pdb_names' arrays since the SILO DBobject " "is regenerated from the user-friendly fields before being " "saved back to the file."); - sym_bi_set("rdonly", "0", - "Open files for read-only access.", + sym_bi_set("writeable", "0", + "Open files for write access.", "If this variable has any true value (nil, zero, and the empty " "string are considered false) then the browser opens files in " - "read-only mode regardless of the file permissions. Editing " - "objects in a read-only file is not allowed."); + "write mode if the file permissions allow it. Editing " + "objects in a writeable file is allowed."); sym_bi_set("diff", NULL, "Influence behavior of `diff' function.", "This variable controls the details of the `diff' function. It " @@ -977,19 +977,19 @@ sym_bi_set("fmt_null", "(null)", "Null format", "This is a C printf() format string used to render null " "pointers in the browser output."); - sym_bi_set("fmt_int8", "(int8)%hhd", "Byte format", + sym_bi_set("fmt_int8", "%hhd", "Byte format", "This is a C printf() format string used to render byte " "values in the browser output."); - sym_bi_set("fmt_short", "(short)%hd", "Short format", + sym_bi_set("fmt_short", "%hd", "Short format", "This is a C printf() format string used to render short " "integer values in the browser output."); sym_bi_set("fmt_int", "%d", "Integer format", "This is a C printf() format string used to render integer " "values in the browser output."); - sym_bi_set("fmt_long", "(long)%ld", "Long format", + sym_bi_set("fmt_long", "%ld", "Long format", "This is a C printf() format string used to render long " "integer values in the browser output."); - sym_bi_set("fmt_long_long", "(long long)%lld", "Long long format", + sym_bi_set("fmt_long_long", "%lld", "Long long format", "This is a C printf() format string used to render long " "long integer values in the browser output."); Binary files /tmp/tmpZohf8j/6IWS13CO1K/silo-llnl-4.10.2/tools/json/json-c-0.10.tar.gz and /tmp/tmpZohf8j/Digj5fibl0/silo-llnl-4.10.2.real/tools/json/json-c-0.10.tar.gz differ diff -Nru silo-llnl-4.10.2/tools/json/jsonify_silo_example.c silo-llnl-4.10.2.real/tools/json/jsonify_silo_example.c --- silo-llnl-4.10.2/tools/json/jsonify_silo_example.c 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/tools/json/jsonify_silo_example.c 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,287 @@ +#include +#include +#include +#include +#include + +#include "json.h" +#include "parse_flags.h" + +#include + +static int sort_fn (const void *j1, const void *j2) +{ + json_object * const *jso1, * const *jso2; + int i1, i2; + + jso1 = j1; + jso2 = j2; + if (!*jso1 && !*jso2) { + return 0; + } + if (!*jso1) { + return -1; + } + if (!*jso2) { + return 1; + } + + i1 = json_object_get_int(*jso1); + i2 = json_object_get_int(*jso2); + + return i1 - i2; +} + +#ifdef TEST_FORMATTED +#define json_object_to_json_string(obj) json_object_to_json_string_ext(obj,sflags) +#else +/* no special define */ +#endif + +struct json_object *json_object_new_stringsafe(char const *s) +{ + if (!s || !*s) + return json_object_new_string(""); + else + return json_object_new_string(s); +} + +struct json_object *json_object_new_strptr(void *p) +{ + static char tmp[32]; + snprintf(tmp, sizeof(tmp), "%p", p); + return json_object_new_string(tmp); +} + +void *json_object_get_strptr(struct json_object *o) +{ + void *p; + char const *strptr = json_object_get_string(o); + sscanf(strptr, "%p", &p); + return p; +} + +int json_object_object_length(struct json_object *o) +{ + struct lh_table *t = json_object_get_object(o); + return t->count; +} + +extern char *db_GetDatatypeString(int); + +struct json_object *json_object_new_extptr(void *p, int ndims, int const *dims, int datatype) +{ + int i; + struct json_object *jobj = json_object_new_object(); + struct json_object *jarr = json_object_new_array(); + + for (i = 0; i < ndims; i++) + json_object_array_add(jarr, json_object_new_int(dims[i])); + + json_object_object_add(jobj, "ptr", json_object_new_strptr(p)); + json_object_object_add(jobj, "datatype", json_object_new_int(datatype)); + json_object_object_add(jobj, "ndims", json_object_new_int(ndims)); + json_object_object_add(jobj, "dims", jarr); + +#warning DO WE NEED TO DECRIMENT JARR REFS WITH PUT CALL + + return jobj; +} + +int DBWriteJsonObject(DBfile *dbfile, struct json_object *jobj) +{ + json_object *silo_type_obj = json_object_object_get(jobj, "silo_type"); + json_object *silo_name_obj = json_object_object_get(jobj, "silo_name"); + DBobject *sobj = DBMakeObject( + json_object_get_string(silo_name_obj), + json_object_get_int(silo_type_obj), + json_object_object_length(jobj)+10 + ); + struct json_object_iterator jiter = json_object_iter_begin(jobj); + struct json_object_iterator jend = json_object_iter_end(jobj); + while (!json_object_iter_equal(&jiter, &jend)) + { + struct json_object *mobj = json_object_iter_peek_value(&jiter); + char const *mname = json_object_iter_peek_name(&jiter); + json_type jtype = json_object_get_type(mobj); + + switch (jtype) + { + case json_type_array: + case json_type_null: break; + case json_type_boolean: + case json_type_int: + { + int val = 0; + if (jtype == json_type_boolean && json_object_get_boolean(mobj)) + val = 1; + else + val = json_object_get_int(mobj); + DBAddIntComponent(sobj, mname, val); + break; + } + case json_type_double: + { + DBAddDblComponent(sobj, mname, json_object_get_double(mobj)); + break; + } + case json_type_string: + { + if (strlen(json_object_get_string(mobj))) + DBAddStrComponent(sobj, mname, json_object_get_string(mobj)); + break; + } + case json_type_object: /* must be extptr array reference */ + { + int i; + long dims[32]; + void *p = json_object_get_strptr(json_object_object_get(mobj, "ptr")); + int datatype = json_object_get_int(json_object_object_get(mobj, "datatype")); + int ndims = json_object_get_int(json_object_object_get(mobj, "ndims")); + struct json_object *darr = json_object_object_get(mobj, "dims"); + for (i = 0; i < ndims; i++) + dims[i] = (long) json_object_get_int(json_object_array_get_idx(darr, i)); +printf("Writing component named \"%s\" to object named \"%s\"\n", mname, json_object_get_string(silo_name_obj)); + DBWriteComponent(dbfile, sobj, mname, json_object_get_string(silo_name_obj), + db_GetDatatypeString(datatype), p, ndims, dims); + break; + } + } + json_object_iter_next(&jiter); + } + return DBWriteObject(dbfile, sobj, 0); +} + + +int main(int argc, char **argv) +{ + json_object *my_string, *my_int, *my_object, *my_array, *jsilo_curve; + int i; +#ifdef TEST_FORMATTED + int sflags = 0; +#endif + + MC_SET_DEBUG(1); + +#ifdef TEST_FORMATTED + sflags = parse_flags(argc, argv); +#endif + + my_string = json_object_new_string("\t"); + printf("my_string=%s\n", json_object_get_string(my_string)); + printf("my_string.to_string()=%s\n", json_object_to_json_string(my_string)); + json_object_put(my_string); + + my_string = json_object_new_string("\\"); + printf("my_string=%s\n", json_object_get_string(my_string)); + printf("my_string.to_string()=%s\n", json_object_to_json_string(my_string)); + json_object_put(my_string); + + my_string = json_object_new_string("foo"); + printf("my_string=%s\n", json_object_get_string(my_string)); + printf("my_string.to_string()=%s\n", json_object_to_json_string(my_string)); + + my_int = json_object_new_int(9); + printf("my_int=%d\n", json_object_get_int(my_int)); + printf("my_int.to_string()=%s\n", json_object_to_json_string(my_int)); + + my_array = json_object_new_array(); + json_object_array_add(my_array, json_object_new_int(1)); + json_object_array_add(my_array, json_object_new_int(2)); + json_object_array_add(my_array, json_object_new_int(3)); + json_object_array_put_idx(my_array, 4, json_object_new_int(5)); + printf("my_array=\n"); + for(i=0; i < json_object_array_length(my_array); i++) { + json_object *obj = json_object_array_get_idx(my_array, i); + printf("\t[%d]=%s\n", i, json_object_to_json_string(obj)); + } + printf("my_array.to_string()=%s\n", json_object_to_json_string(my_array)); + + json_object_put(my_array); + + my_array = json_object_new_array(); + json_object_array_add(my_array, json_object_new_int(3)); + json_object_array_add(my_array, json_object_new_int(1)); + json_object_array_add(my_array, json_object_new_int(2)); + json_object_array_put_idx(my_array, 4, json_object_new_int(0)); + printf("my_array=\n"); + for(i=0; i < json_object_array_length(my_array); i++) { + json_object *obj = json_object_array_get_idx(my_array, i); + printf("\t[%d]=%s\n", i, json_object_to_json_string(obj)); + } + printf("my_array.to_string()=%s\n", json_object_to_json_string(my_array)); + json_object_array_sort(my_array, sort_fn); + printf("my_array=\n"); + for(i=0; i < json_object_array_length(my_array); i++) { + json_object *obj = json_object_array_get_idx(my_array, i); + printf("\t[%d]=%s\n", i, json_object_to_json_string(obj)); + } + printf("my_array.to_string()=%s\n", json_object_to_json_string(my_array)); + + my_object = json_object_new_object(); + json_object_object_add(my_object, "abc", json_object_new_int(12)); + json_object_object_add(my_object, "foo", json_object_new_string("bar")); + json_object_object_add(my_object, "bool0", json_object_new_boolean(0)); + json_object_object_add(my_object, "bool1", json_object_new_boolean(1)); + json_object_object_add(my_object, "baz", json_object_new_string("bang")); + json_object_object_add(my_object, "baz", json_object_new_string("fark")); + json_object_object_del(my_object, "baz"); + /*json_object_object_add(my_object, "arr", my_array);*/ + printf("my_object=\n"); + json_object_object_foreach(my_object, key, val) { + printf("\t%s: %s\n", key, json_object_to_json_string(val)); + } + printf("my_object.to_string()=%s\n", json_object_to_json_string(my_object)); + json_object_to_file("mark_tmp.json", my_object); + + json_object_put(my_string); + json_object_put(my_int); + json_object_put(my_object); + json_object_put(my_array); + + { + char tmp[32]; + DBfile *dbfile = DBOpen("curve.pdb", DB_UNKNOWN, DB_READ); + DBcurve *curve = DBGetCurve(dbfile, "sincurve"); + + jsilo_curve = json_object_new_object(); + + json_object_object_add(jsilo_curve, "silo_type", json_object_new_int(DB_CURVE)); +#warning BINDING OBJECT NAME HERE MANUALLY + json_object_object_add(jsilo_curve, "silo_name", json_object_new_string("sincurve")); + json_object_object_add(jsilo_curve, "id", json_object_new_int(curve->id)); + json_object_object_add(jsilo_curve, "datatype", json_object_new_int(curve->datatype)); + json_object_object_add(jsilo_curve, "origin", json_object_new_int(curve->origin)); + json_object_object_add(jsilo_curve, "npts", json_object_new_int(curve->npts)); + json_object_object_add(jsilo_curve, "guihide", json_object_new_boolean(curve->guihide)); + json_object_object_add(jsilo_curve, "title", json_object_new_stringsafe(curve->title)); + json_object_object_add(jsilo_curve, "xvarname", json_object_new_stringsafe(curve->xvarname)); + json_object_object_add(jsilo_curve, "yvarname", json_object_new_stringsafe(curve->yvarname)); + json_object_object_add(jsilo_curve, "xlabel", json_object_new_stringsafe(curve->xlabel)); + json_object_object_add(jsilo_curve, "ylabel", json_object_new_stringsafe(curve->ylabel)); + json_object_object_add(jsilo_curve, "xunits", json_object_new_stringsafe(curve->xunits)); + json_object_object_add(jsilo_curve, "yunits", json_object_new_stringsafe(curve->yunits)); + json_object_object_add(jsilo_curve, "reference", json_object_new_stringsafe(curve->reference)); + json_object_object_add(jsilo_curve, "xvals", json_object_new_extptr(curve->x, 1, &(curve->npts), curve->datatype)); + json_object_object_add(jsilo_curve, "yvals", json_object_new_extptr(curve->y, 1, &(curve->npts), curve->datatype)); + +#if 0 + json_object_object_add(jsilo_curve, "x", json_object_new_strptr(curve->x)); + json_object_object_add(jsilo_curve, "x-datatype", json_object_new_int(curve->datatype)); + json_object_object_add(jsilo_curve, "x-size", json_object_new_int(curve->npts)); + json_object_object_add(jsilo_curve, "y", json_object_new_strptr(curve->y)); + json_object_object_add(jsilo_curve, "y-datatype", json_object_new_int(curve->datatype)); + json_object_object_add(jsilo_curve, "y-size", json_object_new_int(curve->npts)); +#endif + + /*DBFreeCurve(curve); if we free it, we loose x and y members */ + DBClose(dbfile); + printf("jsilo_object.to_string()=%s\n", json_object_to_json_string(jsilo_curve)); + + dbfile = DBCreate("curve_from_json.pdb", DB_CLOBBER, DB_LOCAL, "test json output", DB_PDB); + DBWriteJsonObject(dbfile, jsilo_curve); + DBClose(dbfile); + } + + return 0; +} diff -Nru silo-llnl-4.10.2/tools/json/Makefile.am silo-llnl-4.10.2.real/tools/json/Makefile.am --- silo-llnl-4.10.2/tools/json/Makefile.am 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/tools/json/Makefile.am 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,58 @@ +# Copyright (c) 1994 - 2010, Lawrence Livermore National Security, LLC. +# LLNL-CODE-425250. +# All rights reserved. +# +# This file is part of Silo. For details, see silo.llnl.gov. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the disclaimer below. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the disclaimer (as noted +# below) in the documentation and/or other materials provided with +# the distribution. +# * Neither the name of the LLNS/LLNL nor the names of its +# contributors may be used to endorse or promote products derived +# from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL LAWRENCE +# LIVERMORE NATIONAL SECURITY, LLC, THE U.S. DEPARTMENT OF ENERGY OR +# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +# PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +# LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# +# This work was produced at Lawrence Livermore National Laboratory under +# Contract No. DE-AC52-07NA27344 with the DOE. +# +# Neither the United States Government nor Lawrence Livermore National +# Security, LLC nor any of their employees, makes any warranty, express +# or implied, or assumes any liability or responsibility for the +# accuracy, completeness, or usefulness of any information, apparatus, +# product, or process disclosed, or represents that its use would not +# infringe privately-owned rights. +# +# Any reference herein to any specific commercial products, process, or +# services by trade name, trademark, manufacturer or otherwise does not +# necessarily constitute or imply its endorsement, recommendation, or +# favoring by the United States Government or Lawrence Livermore +# National Security, LLC. The views and opinions of authors expressed +# herein do not necessarily state or reflect those of the United States +# Government or Lawrence Livermore National Security, LLC, and shall not +# be used for advertising or product endorsement purposes. +# +## Procss this file with automake to create Makefile.in + +EXTRA_DIST = json-c-0.10.tar.gz jsonify_silo_example.c + +distclean-local: + rm -rf json-c-0.10 diff -Nru silo-llnl-4.10.2/tools/json/Makefile.in silo-llnl-4.10.2.real/tools/json/Makefile.in --- silo-llnl-4.10.2/tools/json/Makefile.in 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/tools/json/Makefile.in 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,474 @@ +# Makefile.in generated by automake 1.11.1 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, +# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, +# Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ + +# Copyright (c) 1994 - 2010, Lawrence Livermore National Security, LLC. +# LLNL-CODE-425250. +# All rights reserved. +# +# This file is part of Silo. For details, see silo.llnl.gov. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the disclaimer below. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the disclaimer (as noted +# below) in the documentation and/or other materials provided with +# the distribution. +# * Neither the name of the LLNS/LLNL nor the names of its +# contributors may be used to endorse or promote products derived +# from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL LAWRENCE +# LIVERMORE NATIONAL SECURITY, LLC, THE U.S. DEPARTMENT OF ENERGY OR +# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +# PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +# LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# +# This work was produced at Lawrence Livermore National Laboratory under +# Contract No. DE-AC52-07NA27344 with the DOE. +# +# Neither the United States Government nor Lawrence Livermore National +# Security, LLC nor any of their employees, makes any warranty, express +# or implied, or assumes any liability or responsibility for the +# accuracy, completeness, or usefulness of any information, apparatus, +# product, or process disclosed, or represents that its use would not +# infringe privately-owned rights. +# +# Any reference herein to any specific commercial products, process, or +# services by trade name, trademark, manufacturer or otherwise does not +# necessarily constitute or imply its endorsement, recommendation, or +# favoring by the United States Government or Lawrence Livermore +# National Security, LLC. The views and opinions of authors expressed +# herein do not necessarily state or reflect those of the United States +# Government or Lawrence Livermore National Security, LLC, and shall not +# be used for advertising or product endorsement purposes. +# +VPATH = @srcdir@ +pkgdatadir = $(datadir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_triplet = @build@ +host_triplet = @host@ +subdir = tools/json +DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/config/ax_check_compiler_flags.m4 \ + $(top_srcdir)/config/ax_have_qt.m4 \ + $(top_srcdir)/config/libtool.m4 \ + $(top_srcdir)/config/ltoptions.m4 \ + $(top_srcdir)/config/ltsugar.m4 \ + $(top_srcdir)/config/ltversion.m4 \ + $(top_srcdir)/config/lt~obsolete.m4 \ + $(top_srcdir)/config/vl_lib_readline.m4 \ + $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +SOURCES = +DIST_SOURCES = +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +ACLOCAL = @ACLOCAL@ +AMTAR = @AMTAR@ +AR = @AR@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +BROWSER = @BROWSER@ +BUNDLE_TARGET = @BUNDLE_TARGET@ +CC = @CC@ +CCDEPMODE = @CCDEPMODE@ +CC_FULLPATH = @CC_FULLPATH@ +CFLAGS = @CFLAGS@ +CONFIG_CMD = @CONFIG_CMD@ +CONFIG_DATE = @CONFIG_DATE@ +CONFIG_USER = @CONFIG_USER@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +CXXDEPMODE = @CXXDEPMODE@ +CXXFLAGS = @CXXFLAGS@ +CXX_FULLPATH = @CXX_FULLPATH@ +CYGPATH_W = @CYGPATH_W@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +DSYMUTIL = @DSYMUTIL@ +DUMPBIN = @DUMPBIN@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +EXEEXT = @EXEEXT@ +F77 = @F77@ +FC = @FC@ +FCFLAGS = @FCFLAGS@ +FCLIBS = @FCLIBS@ +FC_FULLPATH = @FC_FULLPATH@ +FFLAGS = @FFLAGS@ +FGREP = @FGREP@ +FORTRAN = @FORTRAN@ +FPZIP = @FPZIP@ +GREP = @GREP@ +HDF5_DRV = @HDF5_DRV@ +HZIP = @HZIP@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +JSON = @JSON@ +LD = @LD@ +LDFLAGS = @LDFLAGS@ +LIBM = @LIBM@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ +LN_S = @LN_S@ +LTLIBOBJS = @LTLIBOBJS@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MKDIR_P = @MKDIR_P@ +NETCDF = @NETCDF@ +NM = @NM@ +NMEDIT = @NMEDIT@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +OTOOL = @OTOOL@ +OTOOL64 = @OTOOL64@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +PDBP_DRV = @PDBP_DRV@ +PDB_DRV = @PDB_DRV@ +PYTHON = @PYTHON@ +PYTHONMODULE = @PYTHONMODULE@ +PYTHON_CPPFLAGS = @PYTHON_CPPFLAGS@ +PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@ +PYTHON_PLATFORM = @PYTHON_PLATFORM@ +PYTHON_PREFIX = @PYTHON_PREFIX@ +PYTHON_VERSION = @PYTHON_VERSION@ +QT_CXXFLAGS = @QT_CXXFLAGS@ +QT_DIR = @QT_DIR@ +QT_LIBS = @QT_LIBS@ +QT_LRELEASE = @QT_LRELEASE@ +QT_LUPDATE = @QT_LUPDATE@ +QT_MOC = @QT_MOC@ +QT_UIC = @QT_UIC@ +RANLIB = @RANLIB@ +READLINE_LIBS = @READLINE_LIBS@ +SED = @SED@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +SILEX = @SILEX@ +SILO_VERS_MAJ = @SILO_VERS_MAJ@ +SILO_VERS_MIN = @SILO_VERS_MIN@ +SILO_VERS_PAT = @SILO_VERS_PAT@ +SILO_VERS_PRE = @SILO_VERS_PRE@ +SILO_VERS_TAG = @SILO_VERS_TAG@ +STRIP = @STRIP@ +TAURUS = @TAURUS@ +VERSION = @VERSION@ +XMKMF = @XMKMF@ +X_CFLAGS = @X_CFLAGS@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_LIBS = @X_LIBS@ +X_PRE_LIBS = @X_PRE_LIBS@ +ZLIB = @ZLIB@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_CXX = @ac_ct_CXX@ +ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ +ac_ct_F77 = @ac_ct_F77@ +ac_ct_FC = @ac_ct_FC@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +lt_ECHO = @lt_ECHO@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +pkgpyexecdir = @pkgpyexecdir@ +pkgpythondir = @pkgpythondir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +pyexecdir = @pyexecdir@ +pythondir = @pythondir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +EXTRA_DIST = json-c-0.10.tar.gz jsonify_silo_example.c +all: all-am + +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign tools/json/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --foreign tools/json/Makefile +.PRECIOUS: Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs +tags: TAGS +TAGS: + +ctags: CTAGS +CTAGS: + + +distdir: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ + else \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ + || exit 1; \ + fi; \ + done +check-am: all-am +check: check-am +all-am: Makefile +installdirs: +install: install-am +install-exec: install-exec-am +install-data: install-data-am +uninstall: uninstall-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + `test -z '$(STRIP)' || \ + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-am + +clean-am: clean-generic clean-libtool mostlyclean-am + +distclean: distclean-am + -rm -f Makefile +distclean-am: clean-am distclean-generic distclean-local + +dvi: dvi-am + +dvi-am: + +html: html-am + +html-am: + +info: info-am + +info-am: + +install-data-am: + +install-dvi: install-dvi-am + +install-dvi-am: + +install-exec-am: + +install-html: install-html-am + +install-html-am: + +install-info: install-info-am + +install-info-am: + +install-man: + +install-pdf: install-pdf-am + +install-pdf-am: + +install-ps: install-ps-am + +install-ps-am: + +installcheck-am: + +maintainer-clean: maintainer-clean-am + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-generic mostlyclean-libtool + +pdf: pdf-am + +pdf-am: + +ps: ps-am + +ps-am: + +uninstall-am: + +.MAKE: install-am install-strip + +.PHONY: all all-am check check-am clean clean-generic clean-libtool \ + distclean distclean-generic distclean-libtool distclean-local \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-info install-info-am install-man \ + install-pdf install-pdf-am install-ps install-ps-am \ + install-strip installcheck installcheck-am installdirs \ + maintainer-clean maintainer-clean-generic mostlyclean \ + mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ + uninstall uninstall-am + + +distclean-local: + rm -rf json-c-0.10 + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff -Nru silo-llnl-4.10.2/tools/Makefile.am silo-llnl-4.10.2.real/tools/Makefile.am --- silo-llnl-4.10.2/tools/Makefile.am 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tools/Makefile.am 2018-02-15 17:25:43.000000000 +0000 @@ -53,9 +53,9 @@ ## Procss this file with automake to create Makefile.in -TOOLS_DIR = +TOOLS_DIR = silock if BROWSER_NEEDED -TOOLS_DIR += browser silock +TOOLS_DIR += browser endif if PYTHON_NEEDED TOOLS_DIR += python @@ -63,6 +63,9 @@ if SILEX_NEEDED TOOLS_DIR += silex endif +if JSON_NEEDED +TOOLS_DIR += json +endif SUBDIRS = \ . \ $(TOOLS_DIR) @@ -71,4 +74,6 @@ browser \ python \ silex \ - silock + silock \ + mapred \ + json diff -Nru silo-llnl-4.10.2/tools/Makefile.in silo-llnl-4.10.2.real/tools/Makefile.in --- silo-llnl-4.10.2/tools/Makefile.in 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tools/Makefile.in 2018-02-15 17:25:43.000000000 +0000 @@ -86,9 +86,10 @@ POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ -@BROWSER_NEEDED_TRUE@am__append_1 = browser silock +@BROWSER_NEEDED_TRUE@am__append_1 = browser @PYTHON_NEEDED_TRUE@am__append_2 = python @SILEX_NEEDED_TRUE@am__append_3 = silex +@JSON_NEEDED_TRUE@am__append_4 = json subdir = tools DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 @@ -199,6 +200,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +JSON = @JSON@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBM = @LIBM@ @@ -247,9 +249,6 @@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SILEX = @SILEX@ -SILO_DTYPPTR = @SILO_DTYPPTR@ -SILO_DTYPPTR1 = @SILO_DTYPPTR1@ -SILO_DTYPPTR2 = @SILO_DTYPPTR2@ SILO_VERS_MAJ = @SILO_VERS_MAJ@ SILO_VERS_MIN = @SILO_VERS_MIN@ SILO_VERS_PAT = @SILO_VERS_PAT@ @@ -323,7 +322,8 @@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ -TOOLS_DIR = $(am__append_1) $(am__append_2) $(am__append_3) +TOOLS_DIR = silock $(am__append_1) $(am__append_2) $(am__append_3) \ + $(am__append_4) SUBDIRS = \ . \ $(TOOLS_DIR) @@ -333,7 +333,9 @@ browser \ python \ silex \ - silock + silock \ + mapred \ + json all: all-recursive diff -Nru silo-llnl-4.10.2/tools/mapred/Makefile.am silo-llnl-4.10.2.real/tools/mapred/Makefile.am --- silo-llnl-4.10.2/tools/mapred/Makefile.am 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/tools/mapred/Makefile.am 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,57 @@ +# Copyright (c) 1994 - 2010, Lawrence Livermore National Security, LLC. +# LLNL-CODE-425250. +# All rights reserved. +# +# This file is part of Silo. For details, see silo.llnl.gov. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the disclaimer below. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the disclaimer (as noted +# below) in the documentation and/or other materials provided with +# the distribution. +# * Neither the name of the LLNS/LLNL nor the names of its +# contributors may be used to endorse or promote products derived +# from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL LAWRENCE +# LIVERMORE NATIONAL SECURITY, LLC, THE U.S. DEPARTMENT OF ENERGY OR +# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +# PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +# LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# +# This work was produced at Lawrence Livermore National Laboratory under +# Contract No. DE-AC52-07NA27344 with the DOE. +# +# Neither the United States Government nor Lawrence Livermore National +# Security, LLC nor any of their employees, makes any warranty, express +# or implied, or assumes any liability or responsibility for the +# accuracy, completeness, or usefulness of any information, apparatus, +# product, or process disclosed, or represents that its use would not +# infringe privately-owned rights. +# +# Any reference herein to any specific commercial products, process, or +# services by trade name, trademark, manufacturer or otherwise does not +# necessarily constitute or imply its endorsement, recommendation, or +# favoring by the United States Government or Lawrence Livermore +# National Security, LLC. The views and opinions of authors expressed +# herein do not necessarily state or reflect those of the United States +# Government or Lawrence Livermore National Security, LLC, and shall not +# be used for advertising or product endorsement purposes. +# +## Procss this file with automake to create Makefile.in + +# See https://visitbugs.ornl.gov/projects/silo/wiki/Silo_Hadoop_and_VisIt + +EXTRA_DIST = mapper.py reducer.py stream_silo.c diff -Nru silo-llnl-4.10.2/tools/mapred/Makefile.in silo-llnl-4.10.2.real/tools/mapred/Makefile.in --- silo-llnl-4.10.2/tools/mapred/Makefile.in 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/tools/mapred/Makefile.in 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,472 @@ +# Makefile.in generated by automake 1.11.1 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, +# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, +# Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ + +# Copyright (c) 1994 - 2010, Lawrence Livermore National Security, LLC. +# LLNL-CODE-425250. +# All rights reserved. +# +# This file is part of Silo. For details, see silo.llnl.gov. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the disclaimer below. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the disclaimer (as noted +# below) in the documentation and/or other materials provided with +# the distribution. +# * Neither the name of the LLNS/LLNL nor the names of its +# contributors may be used to endorse or promote products derived +# from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL LAWRENCE +# LIVERMORE NATIONAL SECURITY, LLC, THE U.S. DEPARTMENT OF ENERGY OR +# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +# PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +# LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# +# This work was produced at Lawrence Livermore National Laboratory under +# Contract No. DE-AC52-07NA27344 with the DOE. +# +# Neither the United States Government nor Lawrence Livermore National +# Security, LLC nor any of their employees, makes any warranty, express +# or implied, or assumes any liability or responsibility for the +# accuracy, completeness, or usefulness of any information, apparatus, +# product, or process disclosed, or represents that its use would not +# infringe privately-owned rights. +# +# Any reference herein to any specific commercial products, process, or +# services by trade name, trademark, manufacturer or otherwise does not +# necessarily constitute or imply its endorsement, recommendation, or +# favoring by the United States Government or Lawrence Livermore +# National Security, LLC. The views and opinions of authors expressed +# herein do not necessarily state or reflect those of the United States +# Government or Lawrence Livermore National Security, LLC, and shall not +# be used for advertising or product endorsement purposes. +# + +# See https://visitbugs.ornl.gov/projects/silo/wiki/Silo_Hadoop_and_VisIt +VPATH = @srcdir@ +pkgdatadir = $(datadir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_triplet = @build@ +host_triplet = @host@ +subdir = tools/mapred +DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/config/ax_check_compiler_flags.m4 \ + $(top_srcdir)/config/ax_have_qt.m4 \ + $(top_srcdir)/config/libtool.m4 \ + $(top_srcdir)/config/ltoptions.m4 \ + $(top_srcdir)/config/ltsugar.m4 \ + $(top_srcdir)/config/ltversion.m4 \ + $(top_srcdir)/config/lt~obsolete.m4 \ + $(top_srcdir)/config/vl_lib_readline.m4 \ + $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +SOURCES = +DIST_SOURCES = +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +ACLOCAL = @ACLOCAL@ +AMTAR = @AMTAR@ +AR = @AR@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +BROWSER = @BROWSER@ +BUNDLE_TARGET = @BUNDLE_TARGET@ +CC = @CC@ +CCDEPMODE = @CCDEPMODE@ +CC_FULLPATH = @CC_FULLPATH@ +CFLAGS = @CFLAGS@ +CONFIG_CMD = @CONFIG_CMD@ +CONFIG_DATE = @CONFIG_DATE@ +CONFIG_USER = @CONFIG_USER@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +CXXDEPMODE = @CXXDEPMODE@ +CXXFLAGS = @CXXFLAGS@ +CXX_FULLPATH = @CXX_FULLPATH@ +CYGPATH_W = @CYGPATH_W@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +DSYMUTIL = @DSYMUTIL@ +DUMPBIN = @DUMPBIN@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +EXEEXT = @EXEEXT@ +F77 = @F77@ +FC = @FC@ +FCFLAGS = @FCFLAGS@ +FCLIBS = @FCLIBS@ +FC_FULLPATH = @FC_FULLPATH@ +FFLAGS = @FFLAGS@ +FGREP = @FGREP@ +FORTRAN = @FORTRAN@ +FPZIP = @FPZIP@ +GREP = @GREP@ +HDF5_DRV = @HDF5_DRV@ +HZIP = @HZIP@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +JSON = @JSON@ +LD = @LD@ +LDFLAGS = @LDFLAGS@ +LIBM = @LIBM@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ +LN_S = @LN_S@ +LTLIBOBJS = @LTLIBOBJS@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MKDIR_P = @MKDIR_P@ +NETCDF = @NETCDF@ +NM = @NM@ +NMEDIT = @NMEDIT@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +OTOOL = @OTOOL@ +OTOOL64 = @OTOOL64@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +PDBP_DRV = @PDBP_DRV@ +PDB_DRV = @PDB_DRV@ +PYTHON = @PYTHON@ +PYTHONMODULE = @PYTHONMODULE@ +PYTHON_CPPFLAGS = @PYTHON_CPPFLAGS@ +PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@ +PYTHON_PLATFORM = @PYTHON_PLATFORM@ +PYTHON_PREFIX = @PYTHON_PREFIX@ +PYTHON_VERSION = @PYTHON_VERSION@ +QT_CXXFLAGS = @QT_CXXFLAGS@ +QT_DIR = @QT_DIR@ +QT_LIBS = @QT_LIBS@ +QT_LRELEASE = @QT_LRELEASE@ +QT_LUPDATE = @QT_LUPDATE@ +QT_MOC = @QT_MOC@ +QT_UIC = @QT_UIC@ +RANLIB = @RANLIB@ +READLINE_LIBS = @READLINE_LIBS@ +SED = @SED@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +SILEX = @SILEX@ +SILO_VERS_MAJ = @SILO_VERS_MAJ@ +SILO_VERS_MIN = @SILO_VERS_MIN@ +SILO_VERS_PAT = @SILO_VERS_PAT@ +SILO_VERS_PRE = @SILO_VERS_PRE@ +SILO_VERS_TAG = @SILO_VERS_TAG@ +STRIP = @STRIP@ +TAURUS = @TAURUS@ +VERSION = @VERSION@ +XMKMF = @XMKMF@ +X_CFLAGS = @X_CFLAGS@ +X_EXTRA_LIBS = @X_EXTRA_LIBS@ +X_LIBS = @X_LIBS@ +X_PRE_LIBS = @X_PRE_LIBS@ +ZLIB = @ZLIB@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_CXX = @ac_ct_CXX@ +ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ +ac_ct_F77 = @ac_ct_F77@ +ac_ct_FC = @ac_ct_FC@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +lt_ECHO = @lt_ECHO@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +pkgpyexecdir = @pkgpyexecdir@ +pkgpythondir = @pkgpythondir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +pyexecdir = @pyexecdir@ +pythondir = @pythondir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +EXTRA_DIST = mapper.py reducer.py stream_silo.c +all: all-am + +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign tools/mapred/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --foreign tools/mapred/Makefile +.PRECIOUS: Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs +tags: TAGS +TAGS: + +ctags: CTAGS +CTAGS: + + +distdir: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ + else \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ + || exit 1; \ + fi; \ + done +check-am: all-am +check: check-am +all-am: Makefile +installdirs: +install: install-am +install-exec: install-exec-am +install-data: install-data-am +uninstall: uninstall-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + `test -z '$(STRIP)' || \ + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-am + +clean-am: clean-generic clean-libtool mostlyclean-am + +distclean: distclean-am + -rm -f Makefile +distclean-am: clean-am distclean-generic + +dvi: dvi-am + +dvi-am: + +html: html-am + +html-am: + +info: info-am + +info-am: + +install-data-am: + +install-dvi: install-dvi-am + +install-dvi-am: + +install-exec-am: + +install-html: install-html-am + +install-html-am: + +install-info: install-info-am + +install-info-am: + +install-man: + +install-pdf: install-pdf-am + +install-pdf-am: + +install-ps: install-ps-am + +install-ps-am: + +installcheck-am: + +maintainer-clean: maintainer-clean-am + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-generic mostlyclean-libtool + +pdf: pdf-am + +pdf-am: + +ps: ps-am + +ps-am: + +uninstall-am: + +.MAKE: install-am install-strip + +.PHONY: all all-am check check-am clean clean-generic clean-libtool \ + distclean distclean-generic distclean-libtool distdir dvi \ + dvi-am html html-am info info-am install install-am \ + install-data install-data-am install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + installcheck installcheck-am installdirs maintainer-clean \ + maintainer-clean-generic mostlyclean mostlyclean-generic \ + mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am + + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff -Nru silo-llnl-4.10.2/tools/mapred/mapper.py silo-llnl-4.10.2.real/tools/mapred/mapper.py --- silo-llnl-4.10.2/tools/mapred/mapper.py 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/tools/mapred/mapper.py 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,226 @@ +#!/usr/bin/env python + +import sys, os, re, math + +hot_colors = {0:[0,0,255,255], 0.25:[0,255,255,255], 0.5:[0,255,0,255], 0.75:[255,255,0,255], 1:[255,0,0,255]} + +# Va-Vb +def vecsub(Va,Vb): + return [Va[0]-Vb[0],Va[1]-Vb[1],Va[2]-Vb[2]] + +def vecmag(V): + return math.sqrt(V[0]*V[0]+V[1]*V[1]+V[2]*V[2]) + +def vecdot(Va,Vb): + return Va[0]*Vb[0]+Va[1]*Vb[1]+Va[2]*Vb[2] + +def normalize(V): + Vmag = vecmag(V) + return [V[0]/Vmag, V[1]/Vmag, V[2]/Vmag] + +def cross_prod(Va,Vb): + return [Va[1]*Vb[2]-Va[2]*Vb[1],-(Va[0]*Vb[2]-Va[2]*Vb[0]),Va[0]*Vb[1]-Va[1]*Vb[0]] + +def ray_tri_intersect(Pe, r, P1, P2, P3): + V21 = vecsub(P2,P1) + V32 = vecsub(P3,P2) + Tn = cross_prod(V21,V32) + tnum = Tn[0]*(P1[0]-Pe[0]) + Tn[1]*(P1[1]-Pe[1]) + Tn[2]*(P1[2]-Pe[2]) + tden = Tn[0]*r[0] + Tn[1]*r[1] + Tn[2]*r[2] + if (tden == 0): + return None + t = tnum / tden + # candidate point + Pc = [Pe[0]+r[0]*t,Pe[1]+r[1]*t,Pe[2]+r[2]*t] + + # Now, check in/out of triangle using barycentric method + V0 = vecsub(P3,P1) + V1 = vecsub(P2,P1) + V2 = vecsub(Pc,P1) + dot00 = vecdot(V0,V0) + dot01 = vecdot(V0,V1) + dot02 = vecdot(V0,V2) + dot11 = vecdot(V1,V1) + dot12 = vecdot(V1,V2) + invDenom = 1.0 / (dot00 * dot11 - dot01 * dot01) + u = (dot11 * dot02 - dot01 * dot12) * invDenom + v = (dot00 * dot12 - dot01 * dot02) * invDenom + + if u >= 0 and v >= 0 and (u+v) < 1: + return Pc, u, v + else: + return None, 0, 0 + +def interp_field(u, v, A, B, C): + return (1-u-v)*A + v*B + u*C + +def interp_color(fval, fmin, fmax): + ckeys = sorted(hot_colors.keys()) + cnum = len(ckeys) + crange = ckeys[cnum-1] - ckeys[0] + val = (fval-fmin)/(fmax-fmin) * crange + ckeys[0] + if val <= ckeys[0]: + return hot_colors[ckeys[0]] + if val > ckeys[cnum-1]: + return hot_colors[ckeys[cnum-1]] + for i in range(1,len(ckeys)): + if ckeys[i-1] <= val and val <= ckeys[i]: + cval = (val-ckeys[i-1])/(ckeys[i]-ckeys[i-1]) + c0 = hot_colors[ckeys[i-1]] + c1 = hot_colors[ckeys[i]] + cdiff = vecsub(c1,c0) + cdiff = [int(cdiff[0]*cval+c0[0]),int(cdiff[1]*cval+c0[1]),int(cdiff[2]*cval+c0[2])] + return cdiff + +def camera_params(LF, LA, VUP, FOV, W, H): + N = [LA[0]-LF[0],LA[1]-LF[1],LA[2]-LF[2]] + N = normalize(N) + + U = cross_prod(N,VUP) + U = normalize(U) + + V = cross_prod(U,N) + V = normalize(V) + + fova = math.tan(FOV/2) + Xinc = [2*fova*U[0]/W, 2*fova*U[1]/W, 2*fova*U[2]/W] + Yinc = [2*fova*V[0]/W, 2*fova*V[1]/W, 2*fova*V[2]/W] + + return N, U, V, Xinc, Yinc + +def send_rays(LF, LA, VUP, FOV, W, H, P0, P1, P2, VMIN, VMAX): + (N, U, V, Xinc, Yinc) = camera_params(LF, LA, VUP, FOV, W, H) + + for x in range(W): + for y in range(H): + R = [N[0] + 0.5*(2*y+1-H)*Yinc[0] + 0.5*(2*x+1-W)*Xinc[0],\ + N[1] + 0.5*(2*y+1-H)*Yinc[1] + 0.5*(2*x+1-W)*Xinc[1],\ + N[2] + 0.5*(2*y+1-H)*Yinc[2] + 0.5*(2*x+1-W)*Xinc[2]] + R = normalize(R) + ipoint_closests = None + for i in range(12): + (ipoint, u, v) = ray_tri_intersect(LF,R,P0[i],P1[i],P2[i]) + if ipoint != None: + if ipoint_closest != None: + if ipoint[2] > ipoint_closest[2]: + ipoint_closest = ipoint + fval = interp_field(u,v,P0[i][3],P1[i][3],P2[i][3]) + rgb = interp_color(fval, VMIN, VMAX) + print "%d:%d\t%d:%d:%d|%f"%(x,y,rgb[0],rgb[1],rgb[2],ipoint_closest[2]) + +def parse_zone_info(data): + nodes = [] + nodeids = data[0].split(':') + for n in nodeids: + nspec = n.split('=') + nodes.append(nspec[1]) + coords = [] + # data[1] = coords at each node + coordlist = data[1].split(':') + for coordval in coordlist: + ctuple = coordval.split('$') + coord = [] + for comp in ctuple: + compval = comp.split('=') + coord.append(compval[1]) + coords.append(coord) + # data[2] = variables (both nodal and zonal) + varlist = data[2].split(':') + zonevars = {} + nodevars = {} + for varspec in varlist: + vartuple = varspec.split('$') + v = [] + if len(vartuple) == 1: # zone-centered case + varvec = vartuple[0].split(';') + if len(varvec) > 1: # vector var + varval = varvec[0].split('=') + varname = re.search("([^0-9]*)([0-9]{1})",varval[0]) + varname = varname.group(1) + for varcomp in varvec: + varval = varcomp.split('=') + v.append(float(varval[1])) + else: # scalar var + varval = vartuple[0].split('=') + varname = re.search("([^0-9]*)([0-9]{1})",varval[0]) + if varname == None: + continue + varname = varname.group(1) + v.append(float(varval[1])) + zonevars[varname] = v + else: # node-centered case + for t in vartuple: + varvec = t.split(';') + if len(varvec) > 1: # vector var + varval = varvec[0].split('=') + varname = re.search("([^0-9]*)([0-9]{1})",varval[0]) + varname = varname.group(1) + for varcomp in varvec: + varval = varcomp.split('=') + v.append(float(varval[1])) + else: # scalar var + varval = varvec[0].split('=') + varname = re.search("([^0-9]*)([0-9]{1})",varval[0]) + varname = varname.group(1) + v.append(float(varval[1])) + nodevars[varname] = v + return nodes, coords, zonevars, nodevars + +def render_tri(coords, vals, na, nb, nc): + p0 = [float(coords[na][0]),float(coords[na][1]),float(coords[na][2]),float(vals[na])] + p1 = [float(coords[nb][0]),float(coords[nb][1]),float(coords[nb][2]),float(vals[nb])] + p2 = [float(coords[nc][0]),float(coords[nc][1]),float(coords[nc][2]),float(vals[nc])] + send_rays([0,0,10],[0,0,0],[0,1,0],0.5,20,20,p0,p1,p2,-10,10) + +def render_zone(coords, vals): + if len(coords) == 8: # hex + render_tri(coords, vals, 0, 1, 5) + render_tri(coords, vals, 0, 5, 4) + + render_tri(coords, vals, 0, 2, 1) + render_tri(coords, vals, 0, 3, 2) + + render_tri(coords, vals, 0, 4, 7) + render_tri(coords, vals, 0, 7, 3) + + render_tri(coords, vals, 1, 2, 6) + render_tri(coords, vals, 1, 6, 5) + + render_tri(coords, vals, 2, 3, 7) + render_tri(coords, vals, 2, 7, 6) + + render_tri(coords, vals, 4, 5, 6) + render_tri(coords, vals, 4, 6, 7) + +# input comes from STDIN (standard input) +for line in sys.stdin: + + # remove leading and trailing whitespace + line = line.strip() + + # split the line into words + (key, value) = line.split() + + data = value.split('|') # 1rst level split (nodes|coords|vars) sections + + (nodes, coords, zonevars, nodevars) = parse_zone_info(data) + + mode = os.environ['PLOTMODE'] + var = os.environ['PLOTVAR'] + + if mode == "threshold": + min = float(os.environ['THRESHOLD_MIN']) + max = float(os.environ['THRESHOLD_MAX']) + if var in nodevars: + nodevals = nodevars[var] + for val in nodevals: + if val >= min and val <= max: + render_zone(coords, nodevals) + continue + elif var in zonevars: + val = zonevars[var] + if val >= min and val <= max: + render_zone(coords, val) + continue + elif mode == "iso-contour": + isovals = os.eniron['ISOVALS'].split(':') diff -Nru silo-llnl-4.10.2/tools/mapred/reducer.py silo-llnl-4.10.2.real/tools/mapred/reducer.py --- silo-llnl-4.10.2/tools/mapred/reducer.py 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/tools/mapred/reducer.py 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,47 @@ +#!/usr/bin/env python + +from operator import itemgetter +import sys + +current_word = None +current_z = None +current_rgb = None +word = None + +# input comes from STDIN +for line in sys.stdin: + # remove leading and trailing whitespace + line = line.strip() + + # parse the input we got from mapper.py + word, pixval = line.split('\t', 1) + + rgbz = pixval.split('|') + rgb = rgbz[0] + z = rgbz[1] + + # convert count (currently a string) to int + try: + z = float(z) + except ValueError: + # count was not a number, so silently + # ignore/discard this line + continue + + # this IF-switch only works because Hadoop sorts map output + # by key (here: word) before it is passed to the reducer + if current_word == word: + if z < current_z: + current_z = z + curent_rgb = rgb + else: + if current_word: + # write result to STDOUT + print '%s\t%s' % (current_word, current_rgb) + current_word = word + current_rgb = rgb + current_z = z + +# do not forget to output the last word if needed! +if current_word == word: + print '%s\t%s' % (current_word, current_rgb) diff -Nru silo-llnl-4.10.2/tools/mapred/stream_silo.c silo-llnl-4.10.2.real/tools/mapred/stream_silo.c --- silo-llnl-4.10.2/tools/mapred/stream_silo.c 1970-01-01 00:00:00.000000000 +0000 +++ silo-llnl-4.10.2.real/tools/mapred/stream_silo.c 2018-02-15 17:25:43.000000000 +0000 @@ -0,0 +1,295 @@ +#include + +#include +#include +#include + +#include +#include + +using std::map; +using std::string; +using std::cout; +using std::endl; +using std::cerr; + +typedef map strmap_t; + +#define ARG_OPT(A) (!strncmp(argv[i],#A,sizeof(#A))) + +static void get_coord(DBucdmesh const *ucdm, int nid, double* x, double* y, double* z) +{ + if (ucdm->datatype == DB_DOUBLE) + { + *x = ((double*)(ucdm->coords[0]))[nid]; + *y = ((double*)(ucdm->coords[1]))[nid]; + *z = ((double*)(ucdm->coords[2]))[nid]; + } + else if (ucdm->datatype == DB_FLOAT) + { + *x = ((float*)(ucdm->coords[0]))[nid]; + *y = ((float*)(ucdm->coords[1]))[nid]; + *z = ((float*)(ucdm->coords[2]))[nid]; + } + else + { + assert(0); + } +} + +static unsigned long long get_zoneid(DBzonelist const *zl, int zidx) +{ + if (!zl->gzoneno) return (unsigned long long)-1; + + switch (zl->gnznodtype) + { + case DB_INT: {int *p = (int *) zl->gzoneno; return (unsigned long long) p[zidx]; } + case DB_LONG: { long *p = (long *) zl->gzoneno; return (unsigned long long) p[zidx]; } + case DB_LONG_LONG: { long long *p = (long long *) zl->gzoneno; return (unsigned long long) p[zidx]; } + default: assert(0); + } +} + +static double get_var_value(void *vdata, int datatype, int idx) +{ + switch (datatype) + { + case DB_INT: {int *p = (int*)vdata; return p[idx];} + case DB_FLOAT: {float *p = (float*)vdata; return p[idx];} + case DB_DOUBLE: {double *p = (double*)vdata; return p[idx];} + default: assert(0); + } +} + +static string genkey(DBucdmesh const* ucdm, string const& prefix, int dom, int zidx) +{ + unsigned long long gzoneno = get_zoneid(ucdm->zones, zidx); + char tmp[256]; + if (gzoneno != (unsigned long long)-1) + { + if (dom == -1) + sprintf(tmp, "%llx:%d", gzoneno, zidx); + else + sprintf(tmp, "%llx:%d:%d", gzoneno, dom, zidx); + } + else + { + if (dom == -1) + sprintf(tmp, "%d", zidx); + else + sprintf(tmp, "%d:%d", dom, zidx); + } + string zkey = prefix + ":" + string(tmp); + return zkey; +} + +static double retvals[256]; +static double *get_var_values(void **vdata, int nvars, int datatype, int idx) +{ + for (int i = 0; i < nvars; i++) + retvals[i] = get_var_value(vdata[i], datatype, idx); + return retvals; +} + +static void stream_ucdvar(DBucdmesh const *ucdm, DBucdvar const *ucdv, string const& prefix, int dom, strmap_t& fmap) +{ + if (ucdv->centering == DB_ZONECENT) + { + for (int i = 0; i < ucdm->zones->nzones; i++) + { + string zkey = genkey(ucdm, prefix, dom, i); + double *vals = get_var_values(ucdv->vals, ucdv->nvals, ucdv->datatype, i); + for (int j = 0; j < ucdv->nvals; j++) + { + char tmp[256]; + sprintf(tmp, "%s%1d=%f", ucdv->name, j, vals[j]); + fmap[zkey] += string(tmp); + if (j < ucdv->nvals-1) fmap[zkey] += ";"; + } + fmap[zkey] += ":"; + } + } + else if (ucdv->centering == DB_NODECENT) + { + int zlidx = 0; + int zidx = 0; + DBzonelist const *zl = ucdm->zones; + for (int i = 0; i < zl->nshapes; i++) + { + const int shapecnt = zl->shapecnt[i]; + const int shapesize = zl->shapesize[i]; + const int shapetype = zl->shapetype[i]; + for (int j = 0; j < shapecnt; j++) + { + char tmp[256]; + string zkey = genkey(ucdm, prefix, dom, zidx); + for (int k = 0; k < shapesize; k++) + { + int nodeid = zl->nodelist[zlidx+k]; + double *vals = get_var_values(ucdv->vals, ucdv->nvals, ucdv->datatype, nodeid); + for (int j = 0; j < ucdv->nvals; j++) + { + char tmp[256]; + sprintf(tmp, "%s%1d=%f", ucdv->name, j, vals[j]); + fmap[zkey] += string(tmp); + if (j < ucdv->nvals-1) fmap[zkey] += ";"; + } + if (k < shapesize-1) fmap[zkey] += "$"; + } + zlidx += shapesize; + zidx++; + fmap[zkey] += ":"; + } + } + } + else + { + assert(0); + } +} + +static void stream_ucdmesh(DBucdmesh const *ucdm, string const& prefix, int dom, strmap_t& fmap) +{ + int zlidx = 0; + int zidx = 0; + DBzonelist const *zl = ucdm->zones; + for (int i = 0; i < zl->nshapes; i++) + { + const int shapecnt = zl->shapecnt[i]; + const int shapesize = zl->shapesize[i]; + const int shapetype = zl->shapetype[i]; + for (int j = 0; j < shapecnt; j++) + { + // Zone key section + char tmp[256]; + string zkey = genkey(ucdm, prefix, dom, zidx); + fmap[zkey] = ""; + // nodes section (probaly not necessary) + for (int k = 0; k < shapesize; k++) + { + int nodeid = zl->nodelist[zlidx+k]; + sprintf(tmp, "n%1d=%d", k, nodeid); + fmap[zkey] += string(tmp); + if (k < shapesize-1) fmap[zkey] += ":"; + } + fmap[zkey] += "|"; + // coordinates section + for (int k = 0; k < shapesize; k++) + { + int nodeid = zl->nodelist[zlidx+k]; + double x, y, z; + get_coord(ucdm, nodeid, &x, &y, &z); + sprintf(tmp, "x%1d=%f$y%1d=%f$z%1d=%f", k, x, k, y, k, z); + fmap[zkey] += string(tmp); + if (k < shapesize-1) fmap[zkey] += ":"; + } + fmap[zkey] += "|"; + zlidx += shapesize; + zidx++; + } + } +} + +static void stream_cwdir(DBfile *dbfile, string prefix, int dom, strmap_t &fmap) +{ + DBtoc *toc = DBGetToc (dbfile); + + for (int i = 0; i < toc->nucdmesh; i++) + { + DBucdmesh *m = DBGetUcdmesh(dbfile, toc->ucdmesh_names[i]); + string newprefix = prefix + "/" + string(toc->ucdmesh_names[i]); + stream_ucdmesh(m, newprefix, dom, fmap); + long oldmask = DBGetDataReadMask(); + for (int j = 0; j < toc->nucdvar; j++) + { + DBSetDataReadMask(DBNone); + DBucdvar *v = DBGetUcdvar(dbfile, toc->ucdvar_names[j]); + if (!strcmp(v->meshname, toc->ucdmesh_names[i])) + { + DBFreeUcdvar(v); + DBSetDataReadMask(DBAll); + v = DBGetUcdvar(dbfile, toc->ucdvar_names[j]); + stream_ucdvar(m, v, newprefix, dom, fmap); + DBFreeUcdvar(v); + } + } + DBSetDataReadMask(oldmask); + DBFreeUcdmesh(m); + } + + if (!toc->ndir) return; + + // + // Copy relevant info from the toc. Otherwise, it'll get lost on + // successive calls to DBSetDir(). + // + int norigdir = toc->ndir; + char **origdir_names = new char*[norigdir]; + for (int i = 0 ; i < norigdir ; i++) + { + origdir_names[i] = new char[strlen(toc->dir_names[i])+1]; + strcpy(origdir_names[i], toc->dir_names[i]); + } + + for (int i = 0; i first << "\t" << cit->second << endl; +} + +int main(int argc, char **argv) +{ + char filename[1024]; + char varname[256]; + + filename[0] = '\0'; + varname[0] = '\0'; + for (int i = 0; i < argc; i++) + { + if (ARG_OPT(--fn)) + { + i++; + assert(strlen(argv[i])show(); + w->raise(); return a.exec(); } diff -Nru silo-llnl-4.10.2/tools/silex/Makefile.am silo-llnl-4.10.2.real/tools/silex/Makefile.am --- silo-llnl-4.10.2/tools/silex/Makefile.am 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tools/silex/Makefile.am 2018-02-15 17:25:43.000000000 +0000 @@ -61,6 +61,9 @@ else silex_LDADD = ../../src/libsilo.la $(QT_LDFLAGS) $(QT_LIBS) endif +if JSON_NEEDED + silex_LDADD += ../json/json-c-0.10/libjson.la +endif EXTRA_DIST = \ array.xpm \ @@ -76,6 +79,7 @@ AM_CXXFLAGS=$(QT_CXXFLAGS) AM_CPPFLAGS = \ -I$(top_builddir)/src/silo \ + -I$(top_srcdir)/src/silo \ -I$(includedir) noinst_HEADERS = \ @@ -115,7 +119,7 @@ CLEANFILES = $(FILES_MOC) -install-exec-hook: $(BUNDLE_TARGET) +install-exec-hook: silex.app silex.app: @if test -e $@; then \ @@ -126,7 +130,7 @@ mkdir $@/Contents; \ mkdir $@/Contents/MacOS; \ mkdir $@/Contents/Resources; \ - { + { \ echo ''; \ echo ''; \ echo ''; \ @@ -141,7 +145,7 @@ echo ' SILX'; \ echo ''; \ echo ''; \ - } > $@/Contents/Info.plist + } > $@/Contents/Info.plist; \ echo 'APPLSILX' > $@/Contents/PkgInfo .PHONY: silex.app diff -Nru silo-llnl-4.10.2/tools/silex/Makefile.in silo-llnl-4.10.2.real/tools/silex/Makefile.in --- silo-llnl-4.10.2/tools/silex/Makefile.in 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tools/silex/Makefile.in 2018-02-15 17:25:43.000000000 +0000 @@ -89,6 +89,7 @@ build_triplet = @build@ host_triplet = @host@ bin_PROGRAMS = silex$(EXEEXT) +@JSON_NEEDED_TRUE@am__append_1 = ../json/json-c-0.10/libjson.la subdir = tools/silex DIST_COMMON = $(noinst_HEADERS) $(srcdir)/Makefile.am \ $(srcdir)/Makefile.in @@ -123,9 +124,9 @@ silex_OBJECTS = $(am_silex_OBJECTS) $(nodist_silex_OBJECTS) am__DEPENDENCIES_1 = @HDF5_DRV_NEEDED_FALSE@silex_DEPENDENCIES = ../../src/libsilo.la \ -@HDF5_DRV_NEEDED_FALSE@ $(am__DEPENDENCIES_1) +@HDF5_DRV_NEEDED_FALSE@ $(am__DEPENDENCIES_1) $(am__append_1) @HDF5_DRV_NEEDED_TRUE@silex_DEPENDENCIES = ../../src/libsiloh5.la \ -@HDF5_DRV_NEEDED_TRUE@ $(am__DEPENDENCIES_1) +@HDF5_DRV_NEEDED_TRUE@ $(am__DEPENDENCIES_1) $(am__append_1) DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) depcomp = $(SHELL) $(top_srcdir)/config/depcomp am__depfiles_maybe = depfiles @@ -195,6 +196,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +JSON = @JSON@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBM = @LIBM@ @@ -243,9 +245,6 @@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SILEX = @SILEX@ -SILO_DTYPPTR = @SILO_DTYPPTR@ -SILO_DTYPPTR1 = @SILO_DTYPPTR1@ -SILO_DTYPPTR2 = @SILO_DTYPPTR2@ SILO_VERS_MAJ = @SILO_VERS_MAJ@ SILO_VERS_MIN = @SILO_VERS_MIN@ SILO_VERS_PAT = @SILO_VERS_PAT@ @@ -321,8 +320,11 @@ top_srcdir = @top_srcdir@ silex_SOURCES = $(FILES) nodist_silex_SOURCES = $(FILES_MOC) -@HDF5_DRV_NEEDED_FALSE@silex_LDADD = ../../src/libsilo.la $(QT_LDFLAGS) $(QT_LIBS) -@HDF5_DRV_NEEDED_TRUE@silex_LDADD = ../../src/libsiloh5.la $(QT_LDFLAGS) $(QT_LIBS) +@HDF5_DRV_NEEDED_FALSE@silex_LDADD = ../../src/libsilo.la \ +@HDF5_DRV_NEEDED_FALSE@ $(QT_LDFLAGS) $(QT_LIBS) \ +@HDF5_DRV_NEEDED_FALSE@ $(am__append_1) +@HDF5_DRV_NEEDED_TRUE@silex_LDADD = ../../src/libsiloh5.la \ +@HDF5_DRV_NEEDED_TRUE@ $(QT_LDFLAGS) $(QT_LIBS) $(am__append_1) EXTRA_DIST = \ array.xpm \ curve.xpm \ @@ -337,6 +339,7 @@ AM_CXXFLAGS = $(QT_CXXFLAGS) AM_CPPFLAGS = \ -I$(top_builddir)/src/silo \ + -I$(top_srcdir)/src/silo \ -I$(includedir) noinst_HEADERS = \ @@ -712,7 +715,7 @@ %_moc.cpp: %.h $(QT_MOC) -o $@ $< -install-exec-hook: $(BUNDLE_TARGET) +install-exec-hook: silex.app silex.app: @if test -e $@; then \ @@ -723,7 +726,7 @@ mkdir $@/Contents; \ mkdir $@/Contents/MacOS; \ mkdir $@/Contents/Resources; \ - { + { \ echo ''; \ echo ''; \ echo ''; \ @@ -738,7 +741,7 @@ echo ' SILX'; \ echo ''; \ echo ''; \ - } > $@/Contents/Info.plist + } > $@/Contents/Info.plist; \ echo 'APPLSILX' > $@/Contents/PkgInfo .PHONY: silex.app diff -Nru silo-llnl-4.10.2/tools/silex/SiloArrayView.cpp silo-llnl-4.10.2.real/tools/silex/SiloArrayView.cpp --- silo-llnl-4.10.2/tools/silex/SiloArrayView.cpp 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tools/silex/SiloArrayView.cpp 2018-02-15 17:25:43.000000000 +0000 @@ -96,6 +96,12 @@ // // Mark C. Miller, Wed Sep 12 15:34:28 PDT 2012 // Added logic to NOT cut DB_CHAR arrays shorter than 400 chars. +// +// Mark C. Miller, Thu Dec 12 13:46:12 PST 2013 +// Changed logic for DB_CHAR arrays to first check that all values are +// isprint() before treating as a printable string. If not, the DB_CHAR +// values are instead treated like all other types execpt as unsigned +// ints of size char. // **************************************************************************** SiloArrayViewWindow::SiloArrayViewWindow(SiloFile *s, const QString &n, QWidget *p) @@ -116,46 +122,20 @@ int type = silo->GetVarType(name); int len = silo->GetVarLength(name); - if (type != DB_CHAR) + bool isString= true; + if (type == DB_CHAR) { - // Just a bunch of numbers: one per line - for (int i=0; iaddItem(str); + if (!isprint(p[i])) + isString = false; } + if (p[len-1] != '\0') + isString = false; } - else + + if (type == DB_CHAR && isString) { // Guess how to split the string based on a heuristic: // - If the length is short, just stick it in @@ -249,6 +229,45 @@ delete[] str; } } + else + { + // Just a bunch of numbers: one per line + for (int i=0; iaddItem(str); + } + } free(var); } diff -Nru silo-llnl-4.10.2/tools/silex/SiloDirTreeView.cpp silo-llnl-4.10.2.real/tools/silex/SiloDirTreeView.cpp --- silo-llnl-4.10.2/tools/silex/SiloDirTreeView.cpp 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tools/silex/SiloDirTreeView.cpp 2018-02-15 17:25:43.000000000 +0000 @@ -108,7 +108,7 @@ item = new SiloDirTreeViewItem(d, parent, d->name); item->setIcon(0,*folder_pixmap); - for (unsigned int i=0; isubdir.size(); i++) + for (unsigned int i=0; isubdir.size(); i++) AddDir(d->subdir[i], item); return item; diff -Nru silo-llnl-4.10.2/tools/silex/SiloDirView.cpp silo-llnl-4.10.2.real/tools/silex/SiloDirView.cpp --- silo-llnl-4.10.2/tools/silex/SiloDirView.cpp 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tools/silex/SiloDirView.cpp 2018-02-15 17:25:43.000000000 +0000 @@ -154,7 +154,7 @@ { SiloDirViewItem *curve = new SiloDirViewItem(NULL,this, "Curves"); curve->setIcon(0, *curve_pixmap); - for (unsigned int i=0; icurve.size(); i++) + for (unsigned int i=0; icurve.size(); i++) new SiloDirViewItem(d,curve, d->curve[i]); curve->setExpanded(true); } @@ -163,7 +163,7 @@ { SiloDirViewItem *multimesh = new SiloDirViewItem(NULL,this, "MultiMeshes"); multimesh->setIcon(0, *mesh_pixmap); - for (unsigned int i=0; imultimesh.size(); i++) + for (unsigned int i=0; imultimesh.size(); i++) new SiloDirViewItem(d,multimesh, d->multimesh[i]); multimesh->setExpanded(true); expandVars = false; @@ -173,7 +173,7 @@ { SiloDirViewItem *multivar = new SiloDirViewItem(NULL,this, "MultiVars"); multivar->setIcon(0, *var_pixmap); - for (unsigned int i=0; imultivar.size(); i++) + for (unsigned int i=0; imultivar.size(); i++) new SiloDirViewItem(d,multivar, d->multivar[i]); multivar->setExpanded(true); expandVars = false; @@ -183,7 +183,7 @@ { SiloDirViewItem *multimeshadj = new SiloDirViewItem(NULL,this, "MultiMesheadjs"); multimeshadj->setIcon(0, *mesh_pixmap); - for (unsigned int i=0; imultimeshadj.size(); i++) + for (unsigned int i=0; imultimeshadj.size(); i++) new SiloDirViewItem(d,multimeshadj, d->multimeshadj[i]); multimeshadj->setExpanded(true); expandVars = false; @@ -194,7 +194,7 @@ { SiloDirViewItem *multimat = new SiloDirViewItem(NULL,this, "MultiMats"); multimat->setIcon(0, *mat_pixmap); - for (unsigned int i=0; imultimat.size(); i++) + for (unsigned int i=0; imultimat.size(); i++) new SiloDirViewItem(d,multimat, d->multimat[i]); multimat->setExpanded(true); expandVars = false; @@ -204,7 +204,7 @@ { SiloDirViewItem *multimatspecies = new SiloDirViewItem(NULL,this, "MultiSpecies"); multimatspecies->setIcon(0, *spec_pixmap); - for (unsigned int i=0; imultimatspecies.size(); i++) + for (unsigned int i=0; imultimatspecies.size(); i++) new SiloDirViewItem(d,multimatspecies, d->multimatspecies[i]); multimatspecies->setExpanded(true); expandVars = false; @@ -214,7 +214,7 @@ { SiloDirViewItem *qmesh = new SiloDirViewItem(NULL,this, "QuadMeshes"); qmesh->setIcon(0, *mesh_pixmap); - for (unsigned int i=0; iqmesh.size(); i++) + for (unsigned int i=0; iqmesh.size(); i++) new SiloDirViewItem(d,qmesh, d->qmesh[i]); qmesh->setExpanded(true); expandVars = false; @@ -224,7 +224,7 @@ { SiloDirViewItem *qvar = new SiloDirViewItem(NULL,this, "QuadVars"); qvar->setIcon(0, *var_pixmap); - for (unsigned int i=0; iqvar.size(); i++) + for (unsigned int i=0; iqvar.size(); i++) new SiloDirViewItem(d,qvar, d->qvar[i]); qvar->setExpanded(true); expandVars = false; @@ -234,7 +234,7 @@ { SiloDirViewItem *ucdmesh = new SiloDirViewItem(NULL,this, "UCDMeshes"); ucdmesh->setIcon(0, *mesh_pixmap); - for (unsigned int i=0; iucdmesh.size(); i++) + for (unsigned int i=0; iucdmesh.size(); i++) new SiloDirViewItem(d,ucdmesh, d->ucdmesh[i]); ucdmesh->setExpanded(true); expandVars = false; @@ -244,7 +244,7 @@ { SiloDirViewItem *ucdvar = new SiloDirViewItem(NULL,this, "UCDVars"); ucdvar->setIcon(0, *var_pixmap); - for (unsigned int i=0; iucdvar.size(); i++) + for (unsigned int i=0; iucdvar.size(); i++) new SiloDirViewItem(d,ucdvar, d->ucdvar[i]); ucdvar->setExpanded(true); expandVars = false; @@ -254,7 +254,7 @@ { SiloDirViewItem *ptmesh = new SiloDirViewItem(NULL,this, "PointMeshes"); ptmesh->setIcon(0, *mesh_pixmap); - for (unsigned int i=0; iptmesh.size(); i++) + for (unsigned int i=0; iptmesh.size(); i++) new SiloDirViewItem(d,ptmesh, d->ptmesh[i]); ptmesh->setExpanded(true); expandVars = false; @@ -264,7 +264,7 @@ { SiloDirViewItem *ptvar = new SiloDirViewItem(NULL,this, "PointVars"); ptvar->setIcon(0, *var_pixmap); - for (unsigned int i=0; iptvar.size(); i++) + for (unsigned int i=0; iptvar.size(); i++) new SiloDirViewItem(d,ptvar, d->ptvar[i]); ptvar->setExpanded(true); expandVars = false; @@ -274,7 +274,7 @@ { SiloDirViewItem *csgmesh = new SiloDirViewItem(NULL,this, "CSGMeshes"); csgmesh->setIcon(0, *mesh_pixmap); - for (unsigned int i=0; icsgmesh.size(); i++) + for (unsigned int i=0; icsgmesh.size(); i++) new SiloDirViewItem(d,csgmesh, d->csgmesh[i]); csgmesh->setExpanded(true); expandVars = false; @@ -284,7 +284,7 @@ { SiloDirViewItem *csgvar = new SiloDirViewItem(NULL,this, "CSGVars"); csgvar->setIcon(0, *var_pixmap); - for (unsigned int i=0; icsgvar.size(); i++) + for (unsigned int i=0; icsgvar.size(); i++) new SiloDirViewItem(d,csgvar, d->csgvar[i]); csgvar->setExpanded(true); expandVars = false; @@ -294,7 +294,7 @@ { SiloDirViewItem *mat = new SiloDirViewItem(NULL,this, "Materials"); mat->setIcon(0, *mat_pixmap); - for (unsigned int i=0; imat.size(); i++) + for (unsigned int i=0; imat.size(); i++) new SiloDirViewItem(d,mat, d->mat[i]); mat->setExpanded(true); expandVars = false; @@ -304,7 +304,7 @@ { SiloDirViewItem *matspecies = new SiloDirViewItem(NULL,this, "Species"); matspecies->setIcon(0, *spec_pixmap); - for (unsigned int i=0; imatspecies.size(); i++) + for (unsigned int i=0; imatspecies.size(); i++) new SiloDirViewItem(d,matspecies, d->matspecies[i]); matspecies->setExpanded(true); expandVars = false; @@ -314,7 +314,7 @@ { SiloDirViewItem *obj = new SiloDirViewItem(NULL,this, "Objects"); obj->setIcon(0, *obj_pixmap); - for (unsigned int i=0; iobj.size(); i++) + for (unsigned int i=0; iobj.size(); i++) new SiloDirViewItem(d,obj, d->obj[i]); obj->setExpanded(true); } @@ -323,7 +323,7 @@ { SiloDirViewItem *array = new SiloDirViewItem(NULL,this, "Arrays"); array->setIcon(0, *array_pixmap); - for (unsigned int i=0; iarray.size(); i++) + for (unsigned int i=0; iarray.size(); i++) new SiloDirViewItem(d,array, d->array[i]); array->setExpanded(true); } @@ -332,7 +332,7 @@ { SiloDirViewItem *var = new SiloDirViewItem(NULL,this, "Vars"); var->setIcon(0, *silovar_pixmap); - for (unsigned int i=0; ivar.size(); i++) + for (unsigned int i=0; ivar.size(); i++) new SiloDirViewItem(d,var, d->var[i]); if (expandVars) var->setExpanded(true); diff -Nru silo-llnl-4.10.2/tools/silex/SiloFile.cpp silo-llnl-4.10.2.real/tools/silex/SiloFile.cpp --- silo-llnl-4.10.2/tools/silex/SiloFile.cpp 2014-12-14 18:54:02.000000000 +0000 +++ silo-llnl-4.10.2.real/tools/silex/SiloFile.cpp 2018-02-15 17:25:43.000000000 +0000 @@ -156,7 +156,7 @@ for (i=0; ingroupelmap; i++) dir.push_back(toc->groupelmap_names[i]); - for (unsigned int i=0; i