GCC8 compatibility improvements. Cumulative improvment on gcc8 compliance. Added support for openmpi version 4.0.0 Updated cfMesh library to latest version. Author: Danial Khazaei
This commit is contained in:
commit
4311ba296a
677 changed files with 175807 additions and 169967 deletions
1
ThirdParty/AllClean.stage2
vendored
1
ThirdParty/AllClean.stage2
vendored
|
@ -57,6 +57,7 @@ uninstallPackage openmpi-1.5 $1
|
|||
uninstallPackage openmpi-1.6.5 $1
|
||||
uninstallPackage openmpi-1.8.4 $1
|
||||
uninstallPackage openmpi-3.1.0 $1
|
||||
uninstallPackage openmpi-4.0.0 $1
|
||||
|
||||
echo
|
||||
echo ========================================
|
||||
|
|
8
ThirdParty/AllMake.stage2
vendored
8
ThirdParty/AllMake.stage2
vendored
|
@ -113,6 +113,14 @@ then
|
|||
-f --define '_configureAdditionalArgs "$WM_THIRD_PARTY_USE_OPENMPI_311_ConfigureAdditionalArgs"')
|
||||
}
|
||||
|
||||
# openmpi 4.0.0
|
||||
#
|
||||
[ ! -z "$WM_THIRD_PARTY_USE_OPENMPI_400" ] && {
|
||||
echo "Building openmpi 4.0.0"
|
||||
( rpm_make -p openmpi-4.0.0 -s openmpi-4.0.0.spec -u https://www.open-mpi.org/software/ompi/v4.0/downloads/openmpi-4.0.0.tar.gz \
|
||||
-f --define '_configureAdditionalArgs "$WM_THIRD_PARTY_USE_OPENMPI_400_ConfigureAdditionalArgs"')
|
||||
}
|
||||
|
||||
# mvipich2-2.2
|
||||
#
|
||||
[ ! -z "$WM_THIRD_PARTY_USE_MVAPICH2_22" ] && {
|
||||
|
|
28
ThirdParty/rpmBuild/SOURCES/openmpi-3.1.1.patch
vendored
Normal file
28
ThirdParty/rpmBuild/SOURCES/openmpi-3.1.1.patch
vendored
Normal file
|
@ -0,0 +1,28 @@
|
|||
--- openmpi-3.1.1_orig/ompi/include/mpi.h.in 2018-06-29 20:38:13.000000000 +0430
|
||||
+++ openmpi-3.1.1/ompi/include/mpi.h.in 2019-01-30 22:03:31.021316632 +0330
|
||||
@@ -307,7 +307,11 @@
|
||||
* when building OMPI).
|
||||
*/
|
||||
#if !OMPI_BUILDING
|
||||
+#if defined(c_plusplus) || defined(__cplusplus)
|
||||
+#define OMPI_PREDEFINED_GLOBAL(type, global) (static_cast<type> (static_cast<void *> (&(global))))
|
||||
+#else
|
||||
#define OMPI_PREDEFINED_GLOBAL(type, global) ((type) ((void *) &(global)))
|
||||
+#endif
|
||||
#else
|
||||
#define OMPI_PREDEFINED_GLOBAL(type, global) ((type) &(global))
|
||||
#endif
|
||||
@@ -753,8 +757,13 @@
|
||||
*/
|
||||
#define MPI_INFO_ENV OMPI_PREDEFINED_GLOBAL(MPI_Info, ompi_mpi_info_env)
|
||||
|
||||
+#if defined(c_plusplus) || defined(__cplusplus)
|
||||
+#define MPI_STATUS_IGNORE (static_cast<MPI_Status *> (0))
|
||||
+#define MPI_STATUSES_IGNORE (static_cast<MPI_Status *> (0))
|
||||
+#else
|
||||
#define MPI_STATUS_IGNORE ((MPI_Status *) 0)
|
||||
#define MPI_STATUSES_IGNORE ((MPI_Status *) 0)
|
||||
+#endif
|
||||
|
||||
/*
|
||||
* Special MPI_T handles
|
28
ThirdParty/rpmBuild/SOURCES/openmpi-4.0.0.patch
vendored
Normal file
28
ThirdParty/rpmBuild/SOURCES/openmpi-4.0.0.patch
vendored
Normal file
|
@ -0,0 +1,28 @@
|
|||
--- openmpi-4.0.0_orig/ompi/include/mpi.h.in 2018-11-12 23:50:53.000000000 +0330
|
||||
+++ openmpi-4.0.0/ompi/include/mpi.h.in 2019-01-30 22:04:14.433503290 +0330
|
||||
@@ -325,7 +325,11 @@
|
||||
* when building OMPI).
|
||||
*/
|
||||
#if !OMPI_BUILDING
|
||||
+#if defined(c_plusplus) || defined(__cplusplus)
|
||||
+#define OMPI_PREDEFINED_GLOBAL(type, global) (static_cast<type> (static_cast<void *> (&(global))))
|
||||
+#else
|
||||
#define OMPI_PREDEFINED_GLOBAL(type, global) ((type) ((void *) &(global)))
|
||||
+#endif
|
||||
#else
|
||||
#define OMPI_PREDEFINED_GLOBAL(type, global) ((type) &(global))
|
||||
#endif
|
||||
@@ -765,8 +769,13 @@
|
||||
*/
|
||||
#define MPI_INFO_ENV OMPI_PREDEFINED_GLOBAL(MPI_Info, ompi_mpi_info_env)
|
||||
|
||||
+#if defined(c_plusplus) || defined(__cplusplus)
|
||||
+#define MPI_STATUS_IGNORE (static_cast<MPI_Status *> (0))
|
||||
+#define MPI_STATUSES_IGNORE (static_cast<MPI_Status *> (0))
|
||||
+#else
|
||||
#define MPI_STATUS_IGNORE ((MPI_Status *) 0)
|
||||
#define MPI_STATUSES_IGNORE ((MPI_Status *) 0)
|
||||
+#endif
|
||||
|
||||
/*
|
||||
* Special MPI_T handles
|
5
ThirdParty/rpmBuild/SPECS/openmpi-3.1.1.spec
vendored
5
ThirdParty/rpmBuild/SPECS/openmpi-3.1.1.spec
vendored
|
@ -72,10 +72,11 @@ License: Unkown
|
|||
Name: %{name}
|
||||
Version: %{version}
|
||||
Release: %{release}
|
||||
URL: http://www.open-mpi.org/software/ompi/v1.8/downloads
|
||||
URL: http://www.open-mpi.org/software/ompi/v3.0/downloads
|
||||
Source: %url/%{name}-%{version}.tar.gz
|
||||
Prefix: %{_prefix}
|
||||
Group: Development/Tools
|
||||
Patch0: openmpi-3.1.1.patch
|
||||
|
||||
|
||||
%define _installPrefix %{_prefix}/packages/%{name}-%{version}/platforms/%{_WM_OPTIONS}
|
||||
|
@ -95,6 +96,8 @@ Group: Development/Tools
|
|||
%prep
|
||||
%setup -q
|
||||
|
||||
%patch0 -p1
|
||||
|
||||
|
||||
%build
|
||||
# export WM settings in a form that GNU configure recognizes
|
||||
|
|
267
ThirdParty/rpmBuild/SPECS/openmpi-4.0.0.spec
vendored
Normal file
267
ThirdParty/rpmBuild/SPECS/openmpi-4.0.0.spec
vendored
Normal file
|
@ -0,0 +1,267 @@
|
|||
#------------------------------------------------------------------------------
|
||||
# ========= |
|
||||
# \\ / F ield | foam-extend: Open Source CFD
|
||||
# \\ / O peration |
|
||||
# \\ / A nd | For copyright notice see file Copyright
|
||||
# \\/ M anipulation |
|
||||
#------------------------------------------------------------------------------
|
||||
# License
|
||||
# This file is part of foam-extend.
|
||||
#
|
||||
# foam-extend is free software: you can redistribute it and/or modify it
|
||||
# under the terms of the GNU General Public License as published by the
|
||||
# Free Software Foundation, either version 3 of the License, or (at your
|
||||
# option) any later version.
|
||||
#
|
||||
# foam-extend is distributed in the hope that it will be useful, but
|
||||
# WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
# General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with foam-extend. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
# Script
|
||||
# RPM spec file for openmpi-4.0.0
|
||||
#
|
||||
# Description
|
||||
# RPM spec file for creating a relocatable RPM
|
||||
#
|
||||
# Author:
|
||||
# Martin Beaudoin, (2018)
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# We grab the value of WM_THIRD_PARTY and WM_OPTIONS from the environment variable
|
||||
%{expand:%%define _WM_THIRD_PARTY_DIR %(echo $WM_THIRD_PARTY_DIR)}
|
||||
%{expand:%%define _WM_OPTIONS %(echo $WM_OPTIONS)}
|
||||
|
||||
# Disable the generation of debuginfo packages
|
||||
%define debug_package %{nil}
|
||||
|
||||
# The topdir needs to point to the $WM_THIRD_PARTY/rpmbuild directory
|
||||
%define _topdir %{_WM_THIRD_PARTY_DIR}/rpmBuild
|
||||
%define _tmppath %{_topdir}/tmp
|
||||
|
||||
# Will install the package directly $WM_THIRD_PARTY_DIR
|
||||
# Some comments about package relocation:
|
||||
# By using this prefix for the Prefix: parameter in this file, you will make this
|
||||
# package relocatable.
|
||||
#
|
||||
# This is fine, as long as your software is itself relocatable.
|
||||
#
|
||||
# Simply take note that libraries built with libtool are not relocatable because the
|
||||
# prefix we specify will be hard-coded in the library .la files.
|
||||
# Ref: http://sourceware.org/autobook/autobook/autobook_80.html
|
||||
#
|
||||
# In that case, if you ever change the value of the $WM_THIRD_PARTY_DIR, you will
|
||||
# not be able to reutilize this RPM, even though it is relocatable. You will need to
|
||||
# regenerate the RPM.
|
||||
#
|
||||
%define _prefix %{_WM_THIRD_PARTY_DIR}
|
||||
|
||||
%define name openmpi
|
||||
%define release %{_WM_OPTIONS}
|
||||
%define version 4.0.0
|
||||
|
||||
%define buildroot %{_topdir}/BUILD/%{name}-%{version}-root
|
||||
|
||||
BuildRoot: %{buildroot}
|
||||
Summary: openmpi
|
||||
License: Unkown
|
||||
Name: %{name}
|
||||
Version: %{version}
|
||||
Release: %{release}
|
||||
URL: http://www.open-mpi.org/software/ompi/v4.0/downloads
|
||||
Source: %url/%{name}-%{version}.tar.gz
|
||||
Prefix: %{_prefix}
|
||||
Group: Development/Tools
|
||||
Patch0: openmpi-4.0.0.patch
|
||||
|
||||
|
||||
%define _installPrefix %{_prefix}/packages/%{name}-%{version}/platforms/%{_WM_OPTIONS}
|
||||
|
||||
#--------------------------------------------------------------------------
|
||||
#
|
||||
# Here, we define default compiling options for openmpi
|
||||
#
|
||||
# One can override the option on the commande line : --define='MACRO EXPR'
|
||||
#
|
||||
%{!?_configureAdditionalArgs: %define _configureAdditionalArgs Undefined}
|
||||
|
||||
|
||||
%description
|
||||
%{summary}
|
||||
|
||||
%prep
|
||||
%setup -q
|
||||
|
||||
%patch0 -p1
|
||||
|
||||
|
||||
%build
|
||||
# export WM settings in a form that GNU configure recognizes
|
||||
[ -n "$WM_CC" ] && export CC="$WM_CC"
|
||||
[ -n "$WM_CXX" ] && export CXX="$WM_CXX"
|
||||
[ -n "$WM_CFLAGS" ] && export CFLAGS="$WM_CFLAGS"
|
||||
[ -n "$WM_CXXFLAGS" ] && export CXXFLAGS="$WM_CXXFLAGS"
|
||||
[ -n "$WM_LDFLAGS" ] && export LDFLAGS="$WM_LDFLAGS"
|
||||
|
||||
set +x
|
||||
echo ""
|
||||
echo "Compilation options:"
|
||||
echo " _configureAdditionalArgs : %{_configureAdditionalArgs}"
|
||||
echo ""
|
||||
set -x
|
||||
|
||||
unset mpiWith
|
||||
# Enable GridEngine if it appears to be in use
|
||||
# If you don't want any integration with SGE, simply unset the SGE
|
||||
# environment variable
|
||||
if [ -n "$SGE_ROOT" ]
|
||||
then
|
||||
mpiWith="$mpiWith --with-sge"
|
||||
else
|
||||
mpiWith="$mpiWith --without-sge"
|
||||
mpiWith="$mpiWith --enable-mca-no-build=ras-gridengine,pls-gridengine"
|
||||
fi
|
||||
|
||||
# Infiniband support
|
||||
# Adjust according to your local paths
|
||||
# if [ -d /usr/local/ofed -a -d /usr/local/ofed/lib64 ]
|
||||
# then
|
||||
# mpiWith="$mpiWith --with-openib=/usr/local/ofed"
|
||||
# mpiWith="$mpiWith --with-openib-libdir=/usr/local/ofed/lib64"
|
||||
# fi
|
||||
|
||||
./configure \
|
||||
--prefix=%{_installPrefix} \
|
||||
--exec_prefix=%{_installPrefix} \
|
||||
--enable-mpirun-prefix-by-default \
|
||||
--enable-orterun-prefix-by-default \
|
||||
--enable-shared \
|
||||
--enable-mpi-cxx \
|
||||
--disable-static \
|
||||
--disable-mpi-fortran \
|
||||
--without-slurm \
|
||||
`echo %{?_configureAdditionalArgs}`
|
||||
|
||||
[ -z "$WM_NCOMPPROCS" ] && WM_NCOMPPROCS=1
|
||||
make -j $WM_NCOMPPROCS
|
||||
|
||||
%install
|
||||
make install DESTDIR=$RPM_BUILD_ROOT
|
||||
|
||||
# Creation of foam-extend specific .csh and .sh files"
|
||||
|
||||
echo ""
|
||||
echo "Generating foam-extend specific .csh and .sh files for the package %{name}-%{version}"
|
||||
echo ""
|
||||
#
|
||||
# Generate package specific .sh file for foam-extend
|
||||
#
|
||||
mkdir -p $RPM_BUILD_ROOT/%{_installPrefix}/etc
|
||||
cat << DOT_SH_EOF > $RPM_BUILD_ROOT/%{_installPrefix}/etc/%{name}-%{version}.sh
|
||||
# Load %{name}-%{version} libraries and binaries
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
export OPENMPI_DIR=\$WM_THIRD_PARTY_DIR/packages/%{name}-%{version}/platforms/\$WM_OPTIONS
|
||||
export OPENMPI_BIN_DIR=\$OPENMPI_DIR/bin
|
||||
export OPENMPI_LIB_DIR=\$OPENMPI_DIR/lib
|
||||
|
||||
# Enable access to the package runtime applications and libraries
|
||||
[ -d \$OPENMPI_BIN_DIR ] && _foamAddPath \$OPENMPI_BIN_DIR
|
||||
[ -d \$OPENMPI_LIB_DIR ] && _foamAddLib \$OPENMPI_LIB_DIR
|
||||
|
||||
export MPI_HOME=\$OPENMPI_DIR
|
||||
export MPI_ARCH_PATH=\$MPI_HOME
|
||||
export OPAL_PREFIX=\$MPI_ARCH_PATH
|
||||
|
||||
# We initialize the rest of the environment using mpicc --showme:
|
||||
export OPENMPI_INCLUDE_DIR="\`mpicc --showme:incdirs\`"
|
||||
export OPENMPI_COMPILE_FLAGS="\`mpicc --showme:compile\`"
|
||||
export OPENMPI_LINK_FLAGS="\`mpicc --showme:link\`"
|
||||
|
||||
# Set the foam-extend compilation flags
|
||||
export PINC=\$OPENMPI_COMPILE_FLAGS
|
||||
export PLIBS=\$OPENMPI_LINK_FLAGS
|
||||
|
||||
|
||||
if [ "\$FOAM_VERBOSE" -a "\$PS1" ]
|
||||
then
|
||||
echo " Environment variables defined for OpenMPI:"
|
||||
echo " OPENMPI_BIN_DIR : \$OPENMPI_BIN_DIR"
|
||||
echo " OPENMPI_LIB_DIR : \$OPENMPI_LIB_DIR"
|
||||
echo " OPENMPI_INCLUDE_DIR : \$OPENMPI_INCLUDE_DIR"
|
||||
echo " OPENMPI_COMPILE_FLAGS : \$OPENMPI_COMPILE_FLAGS"
|
||||
echo " OPENMPI_LINK_FLAGS : \$OPENMPI_LINK_FLAGS"
|
||||
echo ""
|
||||
echo " MPI_HOME : \$MPI_HOME"
|
||||
echo " MPI_ARCH_PATH : \$MPI_ARCH_PATH"
|
||||
echo " MPIRUN_OPTIONS : \$MPIRUN_OPTIONS"
|
||||
echo " OPAL_PREFIX : \$OPAL_PREFIX"
|
||||
echo " PINC : \$PINC"
|
||||
echo " PLIBS : \$PLIBS"
|
||||
fi
|
||||
DOT_SH_EOF
|
||||
|
||||
#
|
||||
# Generate package specific .csh file for foam-extend
|
||||
#
|
||||
cat << DOT_CSH_EOF > $RPM_BUILD_ROOT/%{_installPrefix}/etc/%{name}-%{version}.csh
|
||||
# Load %{name}-%{version} libraries and binaries
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
setenv OPENMPI_DIR \$WM_THIRD_PARTY_DIR/packages/%{name}-%{version}/platforms/\$WM_OPTIONS
|
||||
setenv OPENMPI_BIN_DIR \$OPENMPI_DIR/bin
|
||||
setenv OPENMPI_LIB_DIR \$OPENMPI_DIR/lib
|
||||
|
||||
# Enable access to the package runtime applications and libraries
|
||||
if ( -e \$OPENMPI_BIN_DIR ) then
|
||||
_foamAddPath \$OPENMPI_BIN_DIR
|
||||
endif
|
||||
|
||||
if ( -e \$OPENMPI_LIB_DIR ) then
|
||||
_foamAddLib \$OPENMPI_LIB_DIR
|
||||
endif
|
||||
|
||||
setenv MPI_HOME \$OPENMPI_DIR
|
||||
setenv MPI_ARCH_PATH \$MPI_HOME
|
||||
setenv OPAL_PREFIX \$MPI_ARCH_PATH
|
||||
|
||||
# We initialize the rest of the environment using mpicc --showme:
|
||||
setenv OPENMPI_INCLUDE_DIR "\`mpicc --showme:incdirs\`"
|
||||
setenv OPENMPI_COMPILE_FLAGS "\`mpicc --showme:compile\`"
|
||||
setenv OPENMPI_LINK_FLAGS "\`mpicc --showme:link\`"
|
||||
|
||||
# Set the foam-extend compilation flags
|
||||
setenv PINC "\$OPENMPI_COMPILE_FLAGS"
|
||||
setenv PLIBS "\$OPENMPI_LINK_FLAGS"
|
||||
|
||||
|
||||
if (\$?FOAM_VERBOSE && \$?prompt) then
|
||||
echo " Environment variables defined for OpenMPI:"
|
||||
echo " OPENMPI_BIN_DIR : \$OPENMPI_BIN_DIR"
|
||||
echo " OPENMPI_LIB_DIR : \$OPENMPI_LIB_DIR"
|
||||
echo " OPENMPI_INCLUDE_DIR : \$OPENMPI_INCLUDE_DIR"
|
||||
echo " OPENMPI_COMPILE_FLAGS : \$OPENMPI_COMPILE_FLAGS"
|
||||
echo " OPENMPI_LINK_FLAGS : \$OPENMPI_LINK_FLAGS"
|
||||
echo ""
|
||||
echo " MPI_HOME : \$MPI_HOME"
|
||||
echo " MPI_ARCH_PATH : \$MPI_ARCH_PATH"
|
||||
echo " MPIRUN_OPTIONS : \$MPIRUN_OPTIONS"
|
||||
echo " OPAL_PREFIX : \$OPAL_PREFIX"
|
||||
echo " PINC : \$PINC"
|
||||
echo " PLIBS : \$PLIBS"
|
||||
endif
|
||||
DOT_CSH_EOF
|
||||
|
||||
#finally, generate a .tgz file for systems where using rpm for installing packages
|
||||
# as a non-root user might be a problem.
|
||||
(mkdir -p %{_topdir}/TGZS/%{_target_cpu}; cd $RPM_BUILD_ROOT/%{_prefix}; tar -zcvf %{_topdir}/TGZS/%{_target_cpu}/%{name}-%{version}.tgz packages/%{name}-%{version})
|
||||
|
||||
|
||||
%clean
|
||||
rm -rf %{buildroot}
|
||||
|
||||
%files
|
||||
%defattr(-,root,root)
|
||||
%{_installPrefix}
|
|
@ -1,22 +1,25 @@
|
|||
/*---------------------------------------------------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | foam-extend: Open Source CFD
|
||||
\\ / O peration | Version: 3.2
|
||||
\\ / O peration | Version: 4.1
|
||||
\\ / A nd | Web: http://www.foam-extend.org
|
||||
\\/ M anipulation | For copyright notice see file Copyright
|
||||
-------------------------------------------------------------------------------
|
||||
Author | F.Juretic (franjo.juretic@c-fields.com)
|
||||
Copyright | Copyright (C) Creative Fields, Ltd.
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
This file is part of foam-extend.
|
||||
|
||||
foam-extend is free software: you can redistribute it and/or modify it
|
||||
foam-extend is free software; you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by the
|
||||
Free Software Foundation, either version 3 of the License, or (at your
|
||||
Free Software Foundation; either version 3 of the License, or (at your
|
||||
option) any later version.
|
||||
|
||||
foam-extend is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
foam-extend is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with foam-extend. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
@ -27,8 +30,6 @@ Description
|
|||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
#include "argList.H"
|
||||
#include "objectRegistry.H"
|
||||
#include "foamTime.H"
|
||||
#include "triSurf.H"
|
||||
#include "triSurfModifier.H"
|
||||
#include "triFaceList.H"
|
||||
|
|
|
@ -1,22 +1,25 @@
|
|||
/*---------------------------------------------------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | foam-extend: Open Source CFD
|
||||
\\ / O peration | Version: 3.2
|
||||
\\ / O peration | Version: 4.1
|
||||
\\ / A nd | Web: http://www.foam-extend.org
|
||||
\\/ M anipulation | For copyright notice see file Copyright
|
||||
-------------------------------------------------------------------------------
|
||||
Author | F.Juretic (franjo.juretic@c-fields.com)
|
||||
Copyright | Copyright (C) Creative Fields, Ltd.
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
This file is part of foam-extend.
|
||||
|
||||
foam-extend is free software: you can redistribute it and/or modify it
|
||||
foam-extend is free software; you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by the
|
||||
Free Software Foundation, either version 3 of the License, or (at your
|
||||
Free Software Foundation; either version 3 of the License, or (at your
|
||||
option) any later version.
|
||||
|
||||
foam-extend is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
foam-extend is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with foam-extend. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
@ -27,8 +30,6 @@ Description
|
|||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
#include "argList.H"
|
||||
#include "objectRegistry.H"
|
||||
#include "foamTime.H"
|
||||
#include "triSurf.H"
|
||||
#include "triSurfaceCopyParts.H"
|
||||
#include "demandDrivenData.H"
|
||||
|
|
|
@ -1,28 +1,31 @@
|
|||
/*---------------------------------------------------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | foam-extend: Open Source CFD
|
||||
\\ / O peration | Version: 3.2
|
||||
\\ / O peration | Version: 4.1
|
||||
\\ / A nd | Web: http://www.foam-extend.org
|
||||
\\/ M anipulation | For copyright notice see file Copyright
|
||||
-------------------------------------------------------------------------------
|
||||
Author | F.Juretic (franjo.juretic@c-fields.com)
|
||||
Copyright | Copyright (C) Creative Fields, Ltd.
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
This file is part of foam-extend.
|
||||
|
||||
foam-extend is free software: you can redistribute it and/or modify it
|
||||
foam-extend is free software; you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by the
|
||||
Free Software Foundation, either version 3 of the License, or (at your
|
||||
Free Software Foundation; either version 3 of the License, or (at your
|
||||
option) any later version.
|
||||
|
||||
foam-extend is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
foam-extend is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with foam-extend. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
Description
|
||||
cfMesh utility to convert a surface file to VTK multiblock dataset
|
||||
foam-extend utility to convert a surface file to VTK multiblock dataset
|
||||
format, including the patches, feature edges and surface features.
|
||||
|
||||
Author
|
||||
|
@ -45,7 +48,7 @@ using namespace Foam;
|
|||
void writePointsToVTK
|
||||
(
|
||||
const fileName& fn,
|
||||
const string& title,
|
||||
const string& /*title*/,
|
||||
const UList<point>& points
|
||||
)
|
||||
{
|
||||
|
@ -78,7 +81,7 @@ void writePointsToVTK
|
|||
const fileName& fn,
|
||||
const string& title,
|
||||
const UList<point>& points,
|
||||
unallocLabelList& addr
|
||||
UList<label>& addr
|
||||
)
|
||||
{
|
||||
// Create subaddressed points
|
||||
|
@ -102,7 +105,7 @@ void writePointsToVTK
|
|||
void writeEdgesToVTK
|
||||
(
|
||||
const fileName& fn,
|
||||
const string& title,
|
||||
const string& /*title*/,
|
||||
const UList<point>& points,
|
||||
const LongList<edge>& edges
|
||||
)
|
||||
|
@ -158,7 +161,7 @@ void writeEdgesToVTK
|
|||
const string& title,
|
||||
const UList<point>& points,
|
||||
const LongList<edge>& edges,
|
||||
const unallocLabelList& addr
|
||||
const UList<label>& addr
|
||||
)
|
||||
{
|
||||
// Remove unused points and create subaddressed edges
|
||||
|
@ -201,7 +204,7 @@ void writeEdgesToVTK
|
|||
void writeFacetsToVTK
|
||||
(
|
||||
const fileName& fn,
|
||||
const string& title,
|
||||
const string& /*title*/,
|
||||
const UList<point>& points,
|
||||
const LongList<labelledTri>& facets
|
||||
)
|
||||
|
@ -274,7 +277,7 @@ void writeFacetsToVTK
|
|||
const string& title,
|
||||
const pointField& points,
|
||||
const LongList<labelledTri>& facets,
|
||||
const unallocLabelList& addr
|
||||
const UList<label>& addr
|
||||
)
|
||||
{
|
||||
// Remove unused points and create subaddressed facets
|
||||
|
|
|
@ -1,9 +1,12 @@
|
|||
/*---------------------------------------------------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | foam-extend: Open Source CFD
|
||||
\\ / O peration | Version: 3.2
|
||||
\\ / O peration | Version: 4.1
|
||||
\\ / A nd | Web: http://www.foam-extend.org
|
||||
\\/ M anipulation | For copyright notice see file Copyright
|
||||
-------------------------------------------------------------------------------
|
||||
Author | F.Juretic (franjo.juretic@c-fields.com)
|
||||
Copyright | Copyright (C) Creative Fields, Ltd.
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
This file is part of foam-extend.
|
||||
|
|
|
@ -1,22 +1,25 @@
|
|||
/*---------------------------------------------------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | foam-extend: Open Source CFD
|
||||
\\ / O peration | Version: 3.2
|
||||
\\ / O peration | Version: 4.1
|
||||
\\ / A nd | Web: http://www.foam-extend.org
|
||||
\\/ M anipulation | For copyright notice see file Copyright
|
||||
-------------------------------------------------------------------------------
|
||||
Author | F.Juretic (franjo.juretic@c-fields.com)
|
||||
Copyright | Copyright (C) Creative Fields, Ltd.
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
This file is part of foam-extend.
|
||||
|
||||
foam-extend is free software: you can redistribute it and/or modify it
|
||||
foam-extend is free software; you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by the
|
||||
Free Software Foundation, either version 3 of the License, or (at your
|
||||
Free Software Foundation; either version 3 of the License, or (at your
|
||||
option) any later version.
|
||||
|
||||
foam-extend is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
foam-extend is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with foam-extend. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
@ -30,8 +33,6 @@ Description
|
|||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
#include "argList.H"
|
||||
#include "objectRegistry.H"
|
||||
#include "foamTime.H"
|
||||
#include "cartesian2DMeshGenerator.H"
|
||||
|
||||
using namespace Foam;
|
||||
|
|
|
@ -1,22 +1,25 @@
|
|||
/*---------------------------------------------------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | foam-extend: Open Source CFD
|
||||
\\ / O peration | Version: 3.2
|
||||
\\ / O peration | Version: 4.1
|
||||
\\ / A nd | Web: http://www.foam-extend.org
|
||||
\\/ M anipulation | For copyright notice see file Copyright
|
||||
-------------------------------------------------------------------------------
|
||||
Author | F.Juretic (franjo.juretic@c-fields.com)
|
||||
Copyright | Copyright (C) Creative Fields, Ltd.
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
This file is part of foam-extend.
|
||||
|
||||
foam-extend is free software: you can redistribute it and/or modify it
|
||||
foam-extend is free software; you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by the
|
||||
Free Software Foundation, either version 3 of the License, or (at your
|
||||
Free Software Foundation; either version 3 of the License, or (at your
|
||||
option) any later version.
|
||||
|
||||
foam-extend is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
foam-extend is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with foam-extend. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
@ -30,8 +33,6 @@ Description
|
|||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
#include "argList.H"
|
||||
#include "objectRegistry.H"
|
||||
#include "foamTime.H"
|
||||
#include "cartesianMeshGenerator.H"
|
||||
|
||||
using namespace Foam;
|
||||
|
|
|
@ -1,25 +1,28 @@
|
|||
/*---------------------------------------------------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | cfMesh: A library for mesh generation
|
||||
\\ / O peration |
|
||||
\\ / A nd | Author: Franjo Juretic (franjo.juretic@c-fields.com)
|
||||
\\/ M anipulation | Copyright (C) Creative Fields, Ltd.
|
||||
\\ / F ield | foam-extend: Open Source CFD
|
||||
\\ / O peration | Version: 4.1
|
||||
\\ / A nd | Web: http://www.foam-extend.org
|
||||
\\/ M anipulation | For copyright notice see file Copyright
|
||||
-------------------------------------------------------------------------------
|
||||
Author | F.Juretic (franjo.juretic@c-fields.com)
|
||||
Copyright | Copyright (C) Creative Fields, Ltd.
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
This file is part of cfMesh.
|
||||
This file is part of foam-extend.
|
||||
|
||||
cfMesh is free software; you can redistribute it and/or modify it
|
||||
foam-extend is free software; you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by the
|
||||
Free Software Foundation; either version 3 of the License, or (at your
|
||||
option) any later version.
|
||||
|
||||
cfMesh is distributed in the hope that it will be useful, but WITHOUT
|
||||
foam-extend is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with cfMesh. If not, see <http://www.gnu.org/licenses/>.
|
||||
along with foam-extend. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
Description
|
||||
Reads the specified surface and writes it in the fms format.
|
||||
|
|
|
@ -1,22 +1,25 @@
|
|||
/*---------------------------------------------------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | foam-extend: Open Source CFD
|
||||
\\ / O peration | Version: 3.2
|
||||
\\ / O peration | Version: 4.1
|
||||
\\ / A nd | Web: http://www.foam-extend.org
|
||||
\\/ M anipulation | For copyright notice see file Copyright
|
||||
-------------------------------------------------------------------------------
|
||||
Author | F.Juretic (franjo.juretic@c-fields.com)
|
||||
Copyright | Copyright (C) Creative Fields, Ltd.
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
This file is part of foam-extend.
|
||||
|
||||
foam-extend is free software: you can redistribute it and/or modify it
|
||||
foam-extend is free software; you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by the
|
||||
Free Software Foundation, either version 3 of the License, or (at your
|
||||
Free Software Foundation; either version 3 of the License, or (at your
|
||||
option) any later version.
|
||||
|
||||
foam-extend is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
foam-extend is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with foam-extend. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
|
|
@ -1,22 +1,25 @@
|
|||
/*---------------------------------------------------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | foam-extend: Open Source CFD
|
||||
\\ / O peration | Version: 3.2
|
||||
\\ / O peration | Version: 4.1
|
||||
\\ / A nd | Web: http://www.foam-extend.org
|
||||
\\/ M anipulation | For copyright notice see file Copyright
|
||||
-------------------------------------------------------------------------------
|
||||
Author | F.Juretic (franjo.juretic@c-fields.com)
|
||||
Copyright | Copyright (C) Creative Fields, Ltd.
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
This file is part of foam-extend.
|
||||
|
||||
foam-extend is free software: you can redistribute it and/or modify it
|
||||
foam-extend is free software; you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by the
|
||||
Free Software Foundation, either version 3 of the License, or (at your
|
||||
Free Software Foundation; either version 3 of the License, or (at your
|
||||
option) any later version.
|
||||
|
||||
foam-extend is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
foam-extend is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with foam-extend. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
@ -28,8 +31,6 @@ Description
|
|||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
#include "argList.H"
|
||||
#include "objectRegistry.H"
|
||||
#include "foamTime.H"
|
||||
#include "triSurf.H"
|
||||
#include "triSurfaceExtrude2DEdges.H"
|
||||
#include "demandDrivenData.H"
|
||||
|
|
|
@ -1,25 +1,28 @@
|
|||
/*---------------------------------------------------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | cfMesh: A library for mesh generation
|
||||
\\ / O peration |
|
||||
\\ / A nd | Author: Franjo Juretic (franjo.juretic@c-fields.com)
|
||||
\\/ M anipulation | Copyright (C) Creative Fields, Ltd.
|
||||
\\ / F ield | foam-extend: Open Source CFD
|
||||
\\ / O peration | Version: 4.1
|
||||
\\ / A nd | Web: http://www.foam-extend.org
|
||||
\\/ M anipulation | For copyright notice see file Copyright
|
||||
-------------------------------------------------------------------------------
|
||||
Author | F.Juretic (franjo.juretic@c-fields.com)
|
||||
Copyright | Copyright (C) Creative Fields, Ltd.
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
This file is part of cfMesh.
|
||||
This file is part of foam-extend.
|
||||
|
||||
cfMesh is free software; you can redistribute it and/or modify it
|
||||
foam-extend is free software; you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by the
|
||||
Free Software Foundation; either version 3 of the License, or (at your
|
||||
option) any later version.
|
||||
|
||||
cfMesh is distributed in the hope that it will be useful, but WITHOUT
|
||||
foam-extend is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with cfMesh. If not, see <http://www.gnu.org/licenses/>.
|
||||
along with foam-extend. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
Description
|
||||
Generates boundary layers in the existing mesh, based on the settings
|
||||
|
@ -28,8 +31,6 @@ Description
|
|||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
#include "argList.H"
|
||||
#include "objectRegistry.H"
|
||||
#include "foamTime.H"
|
||||
#include "polyMeshGenModifier.H"
|
||||
#include "meshOptimizer.H"
|
||||
#include "boundaryLayers.H"
|
||||
|
|
|
@ -1,22 +1,25 @@
|
|||
/*---------------------------------------------------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | foam-extend: Open Source CFD
|
||||
\\ / O peration | Version: 3.2
|
||||
\\ / O peration | Version: 4.1
|
||||
\\ / A nd | Web: http://www.foam-extend.org
|
||||
\\/ M anipulation | For copyright notice see file Copyright
|
||||
-------------------------------------------------------------------------------
|
||||
Author | F.Juretic (franjo.juretic@c-fields.com)
|
||||
Copyright | Copyright (C) Creative Fields, Ltd.
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
This file is part of foam-extend.
|
||||
|
||||
foam-extend is free software: you can redistribute it and/or modify it
|
||||
foam-extend is free software; you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by the
|
||||
Free Software Foundation, either version 3 of the License, or (at your
|
||||
Free Software Foundation; either version 3 of the License, or (at your
|
||||
option) any later version.
|
||||
|
||||
foam-extend is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
foam-extend is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with foam-extend. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
|
|
@ -1,25 +1,28 @@
|
|||
/*---------------------------------------------------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | cfMesh: A library for mesh generation
|
||||
\\ / O peration |
|
||||
\\ / A nd | Author: Franjo Juretic (franjo.juretic@c-fields.com)
|
||||
\\/ M anipulation | Copyright (C) Creative Fields, Ltd.
|
||||
\\ / F ield | foam-extend: Open Source CFD
|
||||
\\ / O peration | Version: 4.1
|
||||
\\ / A nd | Web: http://www.foam-extend.org
|
||||
\\/ M anipulation | For copyright notice see file Copyright
|
||||
-------------------------------------------------------------------------------
|
||||
Author | F.Juretic (franjo.juretic@c-fields.com)
|
||||
Copyright | Copyright (C) Creative Fields, Ltd.
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
This file is part of cfMesh.
|
||||
This file is part of foam-extend.
|
||||
|
||||
cfMesh is free software; you can redistribute it and/or modify it
|
||||
foam-extend is free software; you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by the
|
||||
Free Software Foundation; either version 3 of the License, or (at your
|
||||
option) any later version.
|
||||
|
||||
cfMesh is distributed in the hope that it will be useful, but WITHOUT
|
||||
foam-extend is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with cfMesh. If not, see <http://www.gnu.org/licenses/>.
|
||||
along with foam-extend. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
Description
|
||||
Performs point relocations in the mesh (smoothing) in order to
|
||||
|
@ -28,8 +31,6 @@ Description
|
|||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
#include "argList.H"
|
||||
#include "objectRegistry.H"
|
||||
#include "foamTime.H"
|
||||
#include "polyMeshGenModifier.H"
|
||||
#include "meshOptimizer.H"
|
||||
|
||||
|
|
|
@ -1,22 +1,25 @@
|
|||
/*---------------------------------------------------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | foam-extend: Open Source CFD
|
||||
\\ / O peration | Version: 3.2
|
||||
\\ / O peration | Version: 4.1
|
||||
\\ / A nd | Web: http://www.foam-extend.org
|
||||
\\/ M anipulation | For copyright notice see file Copyright
|
||||
-------------------------------------------------------------------------------
|
||||
Author | F.Juretic (franjo.juretic@c-fields.com)
|
||||
Copyright | Copyright (C) Creative Fields, Ltd.
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
This file is part of foam-extend.
|
||||
|
||||
foam-extend is free software: you can redistribute it and/or modify it
|
||||
foam-extend is free software; you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by the
|
||||
Free Software Foundation, either version 3 of the License, or (at your
|
||||
Free Software Foundation; either version 3 of the License, or (at your
|
||||
option) any later version.
|
||||
|
||||
foam-extend is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
foam-extend is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with foam-extend. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
@ -28,8 +31,6 @@ Description
|
|||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
#include "argList.H"
|
||||
#include "objectRegistry.H"
|
||||
#include "foamTime.H"
|
||||
#include "polyMeshGenModifier.H"
|
||||
#include "symmetryPlaneOptimisation.H"
|
||||
|
||||
|
|
|
@ -1,28 +1,31 @@
|
|||
/*---------------------------------------------------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | foam-extend: Open Source CFD
|
||||
\\ / O peration | Version: 3.2
|
||||
\\ / O peration | Version: 4.1
|
||||
\\ / A nd | Web: http://www.foam-extend.org
|
||||
\\/ M anipulation | For copyright notice see file Copyright
|
||||
-------------------------------------------------------------------------------
|
||||
Author | F.Juretic (franjo.juretic@c-fields.com)
|
||||
Copyright | Copyright (C) Creative Fields, Ltd.
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
This file is part of foam-extend.
|
||||
|
||||
foam-extend is free software: you can redistribute it and/or modify it
|
||||
foam-extend is free software; you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by the
|
||||
Free Software Foundation, either version 3 of the License, or (at your
|
||||
Free Software Foundation; either version 3 of the License, or (at your
|
||||
option) any later version.
|
||||
|
||||
foam-extend is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
foam-extend is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with foam-extend. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
Description
|
||||
cfMesh utility to merge the supplied list of patches onto a single
|
||||
foam-extend utility to merge the supplied list of patches onto a single
|
||||
patch.
|
||||
|
||||
Author
|
||||
|
@ -31,8 +34,6 @@ Author
|
|||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
#include "argList.H"
|
||||
#include "objectRegistry.H"
|
||||
#include "foamTime.H"
|
||||
#include "autoPtr.H"
|
||||
#include "triSurf.H"
|
||||
#include "triSurfModifier.H"
|
||||
|
@ -211,7 +212,7 @@ autoPtr<triSurf> mergeSurfacePatches
|
|||
label faceI = 0;
|
||||
forAll(patchAddr, patchI)
|
||||
{
|
||||
const unallocLabelList& addr = patchAddr[patchI];
|
||||
const UList<label>& addr = patchAddr[patchI];
|
||||
|
||||
if(addr.size())
|
||||
{
|
||||
|
|
|
@ -1,22 +1,25 @@
|
|||
/*---------------------------------------------------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | foam-extend: Open Source CFD
|
||||
\\ / O peration | Version: 3.2
|
||||
\\ / O peration | Version: 4.1
|
||||
\\ / A nd | Web: http://www.foam-extend.org
|
||||
\\/ M anipulation | For copyright notice see file Copyright
|
||||
-------------------------------------------------------------------------------
|
||||
Author | F.Juretic (franjo.juretic@c-fields.com)
|
||||
Copyright | Copyright (C) Creative Fields, Ltd.
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
This file is part of foam-extend.
|
||||
|
||||
foam-extend is free software: you can redistribute it and/or modify it
|
||||
foam-extend is free software; you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by the
|
||||
Free Software Foundation, either version 3 of the License, or (at your
|
||||
Free Software Foundation; either version 3 of the License, or (at your
|
||||
option) any later version.
|
||||
|
||||
foam-extend is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
foam-extend is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with foam-extend. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
@ -27,8 +30,6 @@ Description
|
|||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
#include "argList.H"
|
||||
#include "objectRegistry.H"
|
||||
#include "foamTime.H"
|
||||
#include "polyMeshGenModifier.H"
|
||||
#include "writeMeshFPMA.H"
|
||||
|
||||
|
|
|
@ -1,25 +1,28 @@
|
|||
/*---------------------------------------------------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | cfMesh: A library for mesh generation
|
||||
\\ / O peration |
|
||||
\\ / A nd | Author: Franjo Juretic (franjo.juretic@c-fields.com)
|
||||
\\/ M anipulation | Copyright (C) Creative Fields, Ltd.
|
||||
\\ / F ield | foam-extend: Open Source CFD
|
||||
\\ / O peration | Version: 4.1
|
||||
\\ / A nd | Web: http://www.foam-extend.org
|
||||
\\/ M anipulation | For copyright notice see file Copyright
|
||||
-------------------------------------------------------------------------------
|
||||
Author | F.Juretic (franjo.juretic@c-fields.com)
|
||||
Copyright | Copyright (C) Creative Fields, Ltd.
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
This file is part of cfMesh.
|
||||
This file is part of foam-extend.
|
||||
|
||||
cfMesh is free software; you can redistribute it and/or modify it
|
||||
foam-extend is free software; you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by the
|
||||
Free Software Foundation; either version 3 of the License, or (at your
|
||||
option) any later version.
|
||||
|
||||
cfMesh is distributed in the hope that it will be useful, but WITHOUT
|
||||
foam-extend is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with cfMesh. If not, see <http://www.gnu.org/licenses/>.
|
||||
along with foam-extend. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
Application
|
||||
Generates polyhedral mesh
|
||||
|
@ -30,8 +33,6 @@ Description
|
|||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
#include "argList.H"
|
||||
#include "objectRegistry.H"
|
||||
#include "foamTime.H"
|
||||
#include "voronoiMeshGenerator.H"
|
||||
|
||||
using namespace Foam;
|
||||
|
|
|
@ -1,22 +1,25 @@
|
|||
/*---------------------------------------------------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | foam-extend: Open Source CFD
|
||||
\\ / O peration | Version: 3.2
|
||||
\\ / O peration | Version: 4.1
|
||||
\\ / A nd | Web: http://www.foam-extend.org
|
||||
\\/ M anipulation | For copyright notice see file Copyright
|
||||
-------------------------------------------------------------------------------
|
||||
Author | F.Juretic (franjo.juretic@c-fields.com)
|
||||
Copyright | Copyright (C) Creative Fields, Ltd.
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
This file is part of foam-extend.
|
||||
|
||||
foam-extend is free software: you can redistribute it and/or modify it
|
||||
foam-extend is free software; you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by the
|
||||
Free Software Foundation, either version 3 of the License, or (at your
|
||||
Free Software Foundation; either version 3 of the License, or (at your
|
||||
option) any later version.
|
||||
|
||||
foam-extend is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
foam-extend is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with foam-extend. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
@ -27,8 +30,6 @@ Description
|
|||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
#include "argList.H"
|
||||
#include "objectRegistry.H"
|
||||
#include "foamTime.H"
|
||||
#include "triSurf.H"
|
||||
#include "triFaceList.H"
|
||||
#include "labelLongList.H"
|
||||
|
|
|
@ -1,22 +1,25 @@
|
|||
/*---------------------------------------------------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | foam-extend: Open Source CFD
|
||||
\\ / O peration | Version: 3.2
|
||||
\\ / O peration | Version: 4.1
|
||||
\\ / A nd | Web: http://www.foam-extend.org
|
||||
\\/ M anipulation | For copyright notice see file Copyright
|
||||
-------------------------------------------------------------------------------
|
||||
Author | F.Juretic (franjo.juretic@c-fields.com)
|
||||
Copyright | Copyright (C) Creative Fields, Ltd.
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
This file is part of foam-extend.
|
||||
|
||||
foam-extend is free software: you can redistribute it and/or modify it
|
||||
foam-extend is free software; you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by the
|
||||
Free Software Foundation, either version 3 of the License, or (at your
|
||||
Free Software Foundation; either version 3 of the License, or (at your
|
||||
option) any later version.
|
||||
|
||||
foam-extend is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
foam-extend is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with foam-extend. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
@ -30,8 +33,7 @@ Description
|
|||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
#include "argList.H"
|
||||
#include "objectRegistry.H"
|
||||
#include "foamTime.H"
|
||||
#include "polyMeshGen.H"
|
||||
|
||||
#include <sstream>
|
||||
|
||||
|
@ -83,16 +85,13 @@ int main(int argc, char *argv[])
|
|||
file += ss.str();
|
||||
Info << "Creating " << file << endl;
|
||||
|
||||
// create a directory for processor data
|
||||
//- create a directory for processor data
|
||||
mkDir(runTime.path()/file);
|
||||
|
||||
// generate constant directories
|
||||
mkDir(runTime.path()/"constant");
|
||||
|
||||
// copy the contents of the const directory into processor*
|
||||
//- copy the contents of the const directory into processor*
|
||||
cp(runTime.path()/"constant", runTime.path()/file);
|
||||
|
||||
// generate 0 directories
|
||||
//- generate 0 directories for
|
||||
mkDir(runTime.path()/file/"0");
|
||||
}
|
||||
|
||||
|
|
|
@ -1,22 +1,25 @@
|
|||
/*---------------------------------------------------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | foam-extend: Open Source CFD
|
||||
\\ / O peration | Version: 3.2
|
||||
\\ / O peration | Version: 4.1
|
||||
\\ / A nd | Web: http://www.foam-extend.org
|
||||
\\/ M anipulation | For copyright notice see file Copyright
|
||||
-------------------------------------------------------------------------------
|
||||
Author | F.Juretic (franjo.juretic@c-fields.com)
|
||||
Copyright | Copyright (C) Creative Fields, Ltd.
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
This file is part of foam-extend.
|
||||
|
||||
foam-extend is free software: you can redistribute it and/or modify it
|
||||
foam-extend is free software; you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by the
|
||||
Free Software Foundation, either version 3 of the License, or (at your
|
||||
Free Software Foundation; either version 3 of the License, or (at your
|
||||
option) any later version.
|
||||
|
||||
foam-extend is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
foam-extend is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with foam-extend. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
@ -28,8 +31,6 @@ Description
|
|||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
#include "argList.H"
|
||||
#include "objectRegistry.H"
|
||||
#include "foamTime.H"
|
||||
#include "triSurf.H"
|
||||
#include "triSurfaceRemoveFacets.H"
|
||||
|
||||
|
|
|
@ -1,25 +1,28 @@
|
|||
/*---------------------------------------------------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | cfMesh: A library for mesh generation
|
||||
\\ / O peration |
|
||||
\\ / A nd | Author: Franjo Juretic (franjo.juretic@c-fields.com)
|
||||
\\/ M anipulation | Copyright (C) Creative Fields, Ltd.
|
||||
\\ / F ield | foam-extend: Open Source CFD
|
||||
\\ / O peration | Version: 4.1
|
||||
\\ / A nd | Web: http://www.foam-extend.org
|
||||
\\/ M anipulation | For copyright notice see file Copyright
|
||||
-------------------------------------------------------------------------------
|
||||
Author | F.Juretic (franjo.juretic@c-fields.com)
|
||||
Copyright | Copyright (C) Creative Fields, Ltd.
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
This file is part of cfMesh.
|
||||
This file is part of foam-extend.
|
||||
|
||||
cfMesh is free software; you can redistribute it and/or modify it
|
||||
foam-extend is free software; you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by the
|
||||
Free Software Foundation; either version 3 of the License, or (at your
|
||||
option) any later version.
|
||||
|
||||
cfMesh is distributed in the hope that it will be useful, but WITHOUT
|
||||
foam-extend is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with cfMesh. If not, see <http://www.gnu.org/licenses/>.
|
||||
along with foam-extend. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
Description
|
||||
Scales the mesh into other units.
|
||||
|
|
|
@ -1,25 +1,28 @@
|
|||
/*---------------------------------------------------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | cfMesh: A library for mesh generation
|
||||
\\ / O peration |
|
||||
\\ / A nd | Author: Franjo Juretic (franjo.juretic@c-fields.com)
|
||||
\\/ M anipulation | Copyright (C) Creative Fields, Ltd.
|
||||
\\ / F ield | foam-extend: Open Source CFD
|
||||
\\ / O peration | Version: 4.1
|
||||
\\ / A nd | Web: http://www.foam-extend.org
|
||||
\\/ M anipulation | For copyright notice see file Copyright
|
||||
-------------------------------------------------------------------------------
|
||||
Author | F.Juretic (franjo.juretic@c-fields.com)
|
||||
Copyright | Copyright (C) Creative Fields, Ltd.
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
This file is part of cfMesh.
|
||||
This file is part of foam-extend.
|
||||
|
||||
cfMesh is free software; you can redistribute it and/or modify it
|
||||
foam-extend is free software; you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by the
|
||||
Free Software Foundation; either version 3 of the License, or (at your
|
||||
option) any later version.
|
||||
|
||||
cfMesh is distributed in the hope that it will be useful, but WITHOUT
|
||||
foam-extend is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with cfMesh. If not, see <http://www.gnu.org/licenses/>.
|
||||
along with foam-extend. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
Description
|
||||
Scales surface vertices by a precribed factor.
|
||||
|
|
|
@ -1,22 +1,25 @@
|
|||
/*---------------------------------------------------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | foam-extend: Open Source CFD
|
||||
\\ / O peration | Version: 3.2
|
||||
\\ / O peration | Version: 4.1
|
||||
\\ / A nd | Web: http://www.foam-extend.org
|
||||
\\/ M anipulation | For copyright notice see file Copyright
|
||||
-------------------------------------------------------------------------------
|
||||
Author | F.Juretic (franjo.juretic@c-fields.com)
|
||||
Copyright | Copyright (C) Creative Fields, Ltd.
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
This file is part of foam-extend.
|
||||
|
||||
foam-extend is free software: you can redistribute it and/or modify it
|
||||
foam-extend is free software; you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by the
|
||||
Free Software Foundation, either version 3 of the License, or (at your
|
||||
Free Software Foundation; either version 3 of the License, or (at your
|
||||
option) any later version.
|
||||
|
||||
foam-extend is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
foam-extend is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with foam-extend. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
@ -27,8 +30,6 @@ Description
|
|||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
#include "argList.H"
|
||||
#include "objectRegistry.H"
|
||||
#include "foamTime.H"
|
||||
#include "triSurf.H"
|
||||
#include "demandDrivenData.H"
|
||||
|
||||
|
|
|
@ -1,22 +1,25 @@
|
|||
/*---------------------------------------------------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | foam-extend: Open Source CFD
|
||||
\\ / O peration | Version: 3.2
|
||||
\\ / O peration | Version: 4.1
|
||||
\\ / A nd | Web: http://www.foam-extend.org
|
||||
\\/ M anipulation | For copyright notice see file Copyright
|
||||
-------------------------------------------------------------------------------
|
||||
Author | F.Juretic (franjo.juretic@c-fields.com)
|
||||
Copyright | Copyright (C) Creative Fields, Ltd.
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
This file is part of foam-extend.
|
||||
|
||||
foam-extend is free software: you can redistribute it and/or modify it
|
||||
foam-extend is free software; you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by the
|
||||
Free Software Foundation, either version 3 of the License, or (at your
|
||||
Free Software Foundation; either version 3 of the License, or (at your
|
||||
option) any later version.
|
||||
|
||||
foam-extend is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
foam-extend is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with foam-extend. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
|
|
@ -1,22 +1,25 @@
|
|||
/*---------------------------------------------------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | foam-extend: Open Source CFD
|
||||
\\ / O peration | Version: 3.2
|
||||
\\ / O peration | Version: 4.1
|
||||
\\ / A nd | Web: http://www.foam-extend.org
|
||||
\\/ M anipulation | For copyright notice see file Copyright
|
||||
-------------------------------------------------------------------------------
|
||||
Author | F.Juretic (franjo.juretic@c-fields.com)
|
||||
Copyright | Copyright (C) Creative Fields, Ltd.
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
This file is part of foam-extend.
|
||||
|
||||
foam-extend is free software: you can redistribute it and/or modify it
|
||||
foam-extend is free software; you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by the
|
||||
Free Software Foundation, either version 3 of the License, or (at your
|
||||
Free Software Foundation; either version 3 of the License, or (at your
|
||||
option) any later version.
|
||||
|
||||
foam-extend is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
foam-extend is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with foam-extend. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
@ -29,14 +32,14 @@ Description
|
|||
#include "argList.H"
|
||||
#include "IFstream.H"
|
||||
#include "fileName.H"
|
||||
#include "triSurf.H"
|
||||
#include "triSurfModifier.H"
|
||||
#include "boundBox.H"
|
||||
#include "OFstream.H"
|
||||
|
||||
#include <cstdlib>
|
||||
#include <sstream>
|
||||
|
||||
#include "triSurfaceDetectFeatureEdges.H"
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
// Main program:
|
||||
using namespace Foam;
|
||||
|
@ -121,12 +124,12 @@ int main(int argc, char *argv[])
|
|||
//- generate bounding bound triangles
|
||||
const label nTriangles = origSurface.size();
|
||||
LongList<labelledTri>& newTriangles = sMod.facetsAccess();
|
||||
newTriangles.setSize(nTriangles + 12);
|
||||
newTriangles.setSize(nTriangles+12);
|
||||
|
||||
//- create patches
|
||||
geometricSurfacePatchList& newPatches = sMod.patchesAccess();
|
||||
const label nPatches = origSurface.patches().size();
|
||||
newPatches.setSize(nPatches + 6);
|
||||
newPatches.setSize(nPatches+6);
|
||||
|
||||
newPatches[nPatches].name() = "xMin";
|
||||
newPatches[nPatches+1].name() = "xMax";
|
||||
|
|
|
@ -1,22 +1,25 @@
|
|||
/*---------------------------------------------------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | foam-extend: Open Source CFD
|
||||
\\ / O peration | Version: 3.2
|
||||
\\ / O peration | Version: 4.1
|
||||
\\ / A nd | Web: http://www.foam-extend.org
|
||||
\\/ M anipulation | For copyright notice see file Copyright
|
||||
-------------------------------------------------------------------------------
|
||||
Author | F.Juretic (franjo.juretic@c-fields.com)
|
||||
Copyright | Copyright (C) Creative Fields, Ltd.
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
This file is part of foam-extend.
|
||||
|
||||
foam-extend is free software: you can redistribute it and/or modify it
|
||||
foam-extend is free software; you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by the
|
||||
Free Software Foundation, either version 3 of the License, or (at your
|
||||
Free Software Foundation; either version 3 of the License, or (at your
|
||||
option) any later version.
|
||||
|
||||
foam-extend is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
foam-extend is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with foam-extend. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
|
|
@ -1,22 +1,25 @@
|
|||
/*---------------------------------------------------------------------------*\
|
||||
========= |
|
||||
\\ / F ield | foam-extend: Open Source CFD
|
||||
\\ / O peration | Version: 3.2
|
||||
\\ / O peration | Version: 4.1
|
||||
\\ / A nd | Web: http://www.foam-extend.org
|
||||
\\/ M anipulation | For copyright notice see file Copyright
|
||||
-------------------------------------------------------------------------------
|
||||
Author | F.Juretic (franjo.juretic@c-fields.com)
|
||||
Copyright | Copyright (C) Creative Fields, Ltd.
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
This file is part of foam-extend.
|
||||
|
||||
foam-extend is free software: you can redistribute it and/or modify it
|
||||
foam-extend is free software; you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by the
|
||||
Free Software Foundation, either version 3 of the License, or (at your
|
||||
Free Software Foundation; either version 3 of the License, or (at your
|
||||
option) any later version.
|
||||
|
||||
foam-extend is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
foam-extend is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with foam-extend. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
@ -30,8 +33,6 @@ Description
|
|||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
#include "argList.H"
|
||||
#include "objectRegistry.H"
|
||||
#include "foamTime.H"
|
||||
#include "tetMeshGenerator.H"
|
||||
|
||||
using namespace Foam;
|
||||
|
|
|
@ -962,11 +962,12 @@ void Foam::ensightMesh::writeAllFacePrims
|
|||
{
|
||||
if (nPrims)
|
||||
{
|
||||
const labelList* pPrims = &prims;
|
||||
if (Pstream::master())
|
||||
{
|
||||
ensightGeometryFile << key << nl << setw(10) << nPrims << nl;
|
||||
|
||||
if (&prims != nullptr)
|
||||
if (pPrims != nullptr)
|
||||
{
|
||||
writeFacePrims
|
||||
(
|
||||
|
@ -993,7 +994,7 @@ void Foam::ensightMesh::writeAllFacePrims
|
|||
}
|
||||
}
|
||||
}
|
||||
else if (&prims != nullptr)
|
||||
else if (pPrims != nullptr)
|
||||
{
|
||||
OPstream toMaster(Pstream::scheduled, Pstream::masterNo());
|
||||
toMaster<< ensMap(patchFaces, prims);
|
||||
|
@ -1050,10 +1051,11 @@ void Foam::ensightMesh::writeAllNSided
|
|||
<< "nsided" << nl << setw(10) << nPrims << nl;
|
||||
}
|
||||
|
||||
const labelList* pPrims = &prims;
|
||||
// Number of points for each face
|
||||
if (Pstream::master())
|
||||
{
|
||||
if (&prims != nullptr)
|
||||
if (pPrims != nullptr)
|
||||
{
|
||||
writeNSidedNPointsPerFace
|
||||
(
|
||||
|
@ -1078,7 +1080,7 @@ void Foam::ensightMesh::writeAllNSided
|
|||
}
|
||||
}
|
||||
}
|
||||
else if (&prims != nullptr)
|
||||
else if (pPrims != nullptr)
|
||||
{
|
||||
OPstream toMaster(Pstream::scheduled, Pstream::masterNo());
|
||||
toMaster<< ensMap(patchFaces, prims);
|
||||
|
@ -1087,7 +1089,7 @@ void Foam::ensightMesh::writeAllNSided
|
|||
// List of points id for each face
|
||||
if (Pstream::master())
|
||||
{
|
||||
if (&prims != nullptr)
|
||||
if (pPrims != nullptr)
|
||||
{
|
||||
writeNSidedPoints
|
||||
(
|
||||
|
@ -1114,7 +1116,7 @@ void Foam::ensightMesh::writeAllNSided
|
|||
}
|
||||
}
|
||||
}
|
||||
else if (&prims != nullptr)
|
||||
else if (pPrims != nullptr)
|
||||
{
|
||||
OPstream toMaster(Pstream::scheduled, Pstream::masterNo());
|
||||
toMaster<< ensMap(patchFaces, prims);
|
||||
|
@ -1174,10 +1176,11 @@ void Foam::ensightMesh::writeAllNSidedBinary
|
|||
writeEnsDataBinary(nPrims,ensightGeometryFile);
|
||||
}
|
||||
|
||||
const labelList* pPrims = &prims;
|
||||
// Number of points for each face
|
||||
if (Pstream::master())
|
||||
{
|
||||
if (&prims != nullptr)
|
||||
if (pPrims != nullptr)
|
||||
{
|
||||
writeNSidedNPointsPerFaceBinary
|
||||
(
|
||||
|
@ -1202,7 +1205,7 @@ void Foam::ensightMesh::writeAllNSidedBinary
|
|||
}
|
||||
}
|
||||
}
|
||||
else if (&prims != nullptr)
|
||||
else if (pPrims != nullptr)
|
||||
{
|
||||
OPstream toMaster(Pstream::scheduled, Pstream::masterNo());
|
||||
toMaster<< ensMap(patchFaces, prims);
|
||||
|
@ -1211,7 +1214,7 @@ void Foam::ensightMesh::writeAllNSidedBinary
|
|||
// List of points id for each face
|
||||
if (Pstream::master())
|
||||
{
|
||||
if (&prims != nullptr)
|
||||
if (pPrims != nullptr)
|
||||
{
|
||||
writeNSidedPointsBinary
|
||||
(
|
||||
|
@ -1238,7 +1241,7 @@ void Foam::ensightMesh::writeAllNSidedBinary
|
|||
}
|
||||
}
|
||||
}
|
||||
else if (&prims != nullptr)
|
||||
else if (pPrims != nullptr)
|
||||
{
|
||||
OPstream toMaster(Pstream::scheduled, Pstream::masterNo());
|
||||
toMaster<< ensMap(patchFaces, prims);
|
||||
|
@ -1260,12 +1263,13 @@ void Foam::ensightMesh::writeAllFacePrimsBinary
|
|||
{
|
||||
if (nPrims)
|
||||
{
|
||||
const labelList* pPrims = &prims;
|
||||
if (Pstream::master())
|
||||
{
|
||||
writeEnsDataBinary(key,ensightGeometryFile);
|
||||
writeEnsDataBinary(nPrims,ensightGeometryFile);
|
||||
|
||||
if (&prims != nullptr)
|
||||
if (pPrims != nullptr)
|
||||
{
|
||||
writeFacePrimsBinary
|
||||
(
|
||||
|
@ -1292,7 +1296,7 @@ void Foam::ensightMesh::writeAllFacePrimsBinary
|
|||
}
|
||||
}
|
||||
}
|
||||
else if (&prims != nullptr)
|
||||
else if (pPrims != nullptr)
|
||||
{
|
||||
OPstream toMaster(Pstream::scheduled, Pstream::masterNo());
|
||||
toMaster<< ensMap(patchFaces, prims);
|
||||
|
|
|
@ -1,4 +1,3 @@
|
|||
#!/bin/sh
|
||||
|
||||
MAKEWHAT=
|
||||
EXTRAFLAGS=
|
||||
|
@ -15,7 +14,7 @@ if test $# -ge 1 ; then
|
|||
elif test "$1" = "-skipcompile" ; then
|
||||
skipcompile=y
|
||||
elif test "$1" = "-tecio" ; then
|
||||
MAKEWHAT=tecio.a
|
||||
MAKEWHAT=libtecio.a
|
||||
else
|
||||
EXTRAFLAGS="$EXTRAFLAGS $1"
|
||||
fi
|
||||
|
@ -25,7 +24,7 @@ else
|
|||
echo "Choose platform:"
|
||||
echo " "
|
||||
echo " macux.104"
|
||||
echo " macix64.105"
|
||||
echo " macix64.106"
|
||||
echo " sgix.62"
|
||||
echo " sgix3.62"
|
||||
echo " sgix.65"
|
||||
|
@ -45,23 +44,24 @@ else
|
|||
echo " hp7xx64.11"
|
||||
echo " hpi64.11"
|
||||
echo " linux.24"
|
||||
echo " linuxi64.24"
|
||||
echo " linux64.26"
|
||||
echo " linux.22"
|
||||
echo " linuxa.22"
|
||||
echo " linuxg248x64.26"
|
||||
echo " linuxg27x64.26"
|
||||
echo " linux32-centos4.8"
|
||||
echo " linux64-sled10.4"
|
||||
echo " linuxg29x64.26"
|
||||
echo " crayc90"
|
||||
echo "->\c"
|
||||
read Platname
|
||||
|
||||
echo "Choose:"
|
||||
echo " 1. Make tecio.a only"
|
||||
echo " 2. Make tecio.a and pltview"
|
||||
echo " 1. Make libtecio.a only"
|
||||
echo " 2. Make libtecio.a and pltview"
|
||||
|
||||
read choice
|
||||
|
||||
if test $choice -eq 1 ;then
|
||||
MAKEWHAT=tecio.a
|
||||
MAKEWHAT=libtecio.a
|
||||
fi
|
||||
fi
|
||||
|
||||
|
@ -72,18 +72,32 @@ AR=ar
|
|||
ARFLAGS=qv
|
||||
DISTSUBDIR2=
|
||||
|
||||
#
|
||||
# The blah-64 platforms are 64-bit builds of tecio, typically on 32-bit
|
||||
# platforms.
|
||||
#
|
||||
case $Platname in
|
||||
mac*) CCOMP=g++
|
||||
FINALCFLAGS="-arch ppc -arch i386 -arch ppc64 -arch x86_64 -DDARWIN -DLONGIS64 -I/usr/X11R6/include"
|
||||
macix64*) CCOMP=g++
|
||||
FINALCFLAGS="-arch x86_64 -DDARWIN -DMAC64 -I/usr/X11R6/include"
|
||||
STRIPFLAG=-Wl,-x
|
||||
LINKFLAGS="-arch ppc -arch i386 -arch ppc64 -arch x86_64"
|
||||
LINKFLAGS="-arch x86_64"
|
||||
;;
|
||||
macux*-64) CCOMP=g++
|
||||
FINALCFLAGS="-arch ppc64 -arch x86_64 -DDARWIN -DMAC64 -I/usr/X11R6/include"
|
||||
STRIPFLAG=-Wl,-x
|
||||
LINKFLAGS="-arch ppc64 -arch x86_64"
|
||||
;;
|
||||
macux*) CCOMP=g++
|
||||
FINALCFLAGS="-arch ppc -arch i386 -DDARWIN -I/usr/X11R6/include"
|
||||
STRIPFLAG=-Wl,-x
|
||||
LINKFLAGS="-arch ppc -arch i386"
|
||||
;;
|
||||
sgix.65-64) CCOMP=CC
|
||||
FINALCFLAGS="-DIRISX -DLONGIS64 -mips4 -64"
|
||||
FINALCFLAGS="-DIRISX -mips4 -64"
|
||||
LINKFLAGS="-mips4 -64"
|
||||
;;
|
||||
sgix64.65) CCOMP=CC
|
||||
FINALCFLAGS="-DIRISX -DLONGIS64 -mips4 -64"
|
||||
FINALCFLAGS="-DIRISX -mips4 -64"
|
||||
LINKFLAGS="-mips4 -64"
|
||||
;;
|
||||
sgix.65) CCOMP=CC
|
||||
|
@ -95,7 +109,7 @@ case $Platname in
|
|||
LINKFLAGS="-o32"
|
||||
;;
|
||||
sgix.62-64) CCOMP=CC
|
||||
FINALCFLAGS="-DIRISX -DIRIX62 -DLONGIS64 -mips4 -64"
|
||||
FINALCFLAGS="-DIRISX -DIRIX62 -mips4 -64"
|
||||
LINKFLAGS="-mips4 -64"
|
||||
;;
|
||||
sgix.62) CCOMP=CC
|
||||
|
@ -114,7 +128,7 @@ case $Platname in
|
|||
FINALCFLAGS=-DIBMRS6000X
|
||||
;;
|
||||
ibmx64.*) CCOMP=xlC
|
||||
FINALCFLAGS="-DIBMRS6000X -DLONGIS64 -q64"
|
||||
FINALCFLAGS="-DIBMRS6000X -q64"
|
||||
ARFLAGS="-X64 qv"
|
||||
;;
|
||||
compaq.51) CCOMP=cxx
|
||||
|
@ -124,15 +138,15 @@ case $Platname in
|
|||
FINALCFLAGS="-DDECALPHAX -I/usr/include -ieee_with_inexact"
|
||||
;;
|
||||
hp7xx.*-64) CCOMP=aCC
|
||||
FINALCFLAGS="+DD64 +DS2.0 -AA -DHPX -DLONGIS64 -I/usr/include/X11R6 -I/usr/include/Motif2.1"
|
||||
FINALCFLAGS="+DD64 +DS2.0 -AA -DHPX -I/usr/include/X11R6 -I/usr/include/Motif2.1"
|
||||
LINKFLAGS="+DA2.0W +DD64 +DS2.0W"
|
||||
;;
|
||||
hp7xx64.11) CCOMP=aCC
|
||||
FINALCFLAGS="+DA2.0W +DD64 +DS2.0W -AA -DHPX -DLONGIS64 -I/usr/include/X11R6 -I/usr/include/Motif2.1"
|
||||
FINALCFLAGS="+DA2.0W +DD64 +DS2.0W -AA -DHPX -I/usr/include/X11R6 -I/usr/include/Motif2.1"
|
||||
LINKFLAGS="+DA2.0W +DD64 +DS2.0W"
|
||||
;;
|
||||
hpi64.11) CCOMP=aCC
|
||||
FINALCFLAGS="+DD64 -AA -DHPX -DLONGIS64 -I/usr/include/X11R6 -I/usr/include/Motif2.1"
|
||||
FINALCFLAGS="+DD64 -AA -DHPX -I/usr/include/X11R6 -I/usr/include/Motif2.1"
|
||||
LINKFLAGS="+DD64"
|
||||
;;
|
||||
hp7xx.11) CCOMP=aCC
|
||||
|
@ -142,10 +156,13 @@ case $Platname in
|
|||
crayc90) CCOMP=cc
|
||||
FINALCFLAGS="-DCRAY -DUNIXX"
|
||||
;;
|
||||
linux*i64.*)CCOMP=g++
|
||||
FINALCFLAGS="-fPIC -DLINUX -DLINUXI64"
|
||||
;;
|
||||
linux*64.*) CCOMP=g++
|
||||
linux.64-gcc4.2.4.26) #
|
||||
# Special custom build for synopsys. Run Runmake directly on satsop.
|
||||
#
|
||||
CCOMP=/usr/local/gcc-4.2.2/bin/g++
|
||||
FINALCFLAGS="-fPIC -DLINUX -DLINUX64"
|
||||
;;
|
||||
linux*64*) CCOMP=g++
|
||||
FINALCFLAGS="-fPIC -DLINUX -DLINUX64"
|
||||
;;
|
||||
linux*) CCOMP=g++
|
||||
|
@ -173,21 +190,21 @@ case $Platname in
|
|||
ARFLAGS="-xar -o"
|
||||
;;
|
||||
sun4.57-64) CCOMP=/opt/SUNWspro/bin/CC
|
||||
FINALCFLAGS="-DSUNSOLARISX -DLONGIS64 -KPIC -xarch=v9 -I/usr/openwin/include -I/usr/dt/include -library=libC -library=Cstd -library=no%rwtools7 -library=no%rwtools7_dbg -xO1"
|
||||
FINALCFLAGS="-DSUNSOLARISX -KPIC -xarch=v9 -I/usr/openwin/include -I/usr/dt/include -library=libC -library=Cstd -library=no%rwtools7 -library=no%rwtools7_dbg -xO1"
|
||||
LINKFLAGS="-KPIC -xarch=v9 -library=libC -library=Cstd -library=no%rwtools7 -library=no%rwtools7_dbg"
|
||||
MAKECMD=/usr/ccs/bin/make
|
||||
AR=/opt/SUNWspro/bin/CC
|
||||
ARFLAGS="-xar -o"
|
||||
;;
|
||||
sun464.57) CCOMP=/opt/SUNWspro/bin/CC
|
||||
FINALCFLAGS="-DSUNSOLARISX -DLONGIS64 -KPIC -xarch=v9 -I/usr/openwin/include -I/usr/dt/include -library=libC -library=Cstd -library=no%rwtools7 -library=no%rwtools7_dbg -xO1"
|
||||
FINALCFLAGS="-DSUNSOLARISX -KPIC -xarch=v9 -I/usr/openwin/include -I/usr/dt/include -library=libC -library=Cstd -library=no%rwtools7 -library=no%rwtools7_dbg -xO1"
|
||||
LINKFLAGS="-KPIC -xarch=v9 -library=libC -library=Cstd -library=no%rwtools7 -library=no%rwtools7_dbg"
|
||||
MAKECMD=/usr/ccs/bin/make
|
||||
AR=/opt/SUNWspro/bin/CC
|
||||
ARFLAGS="-xar -o"
|
||||
;;
|
||||
sun464.59) CCOMP=/opt/SUNWspro/bin/CC
|
||||
FINALCFLAGS="-DSUNSOLARISX -DLONGIS64 -KPIC -m64 -xarch=generic -I/usr/openwin/include -I/usr/dt/include -library=libC -library=Cstd -library=no%rwtools7 -library=no%rwtools7_dbg -xO1"
|
||||
FINALCFLAGS="-DSUNSOLARISX -KPIC -m64 -xarch=generic -I/usr/openwin/include -I/usr/dt/include -library=libC -library=Cstd -library=no%rwtools7 -library=no%rwtools7_dbg -xO1"
|
||||
LINKFLAGS="-KPIC -m64 -xarch=generic -library=libC -library=Cstd -library=no%rwtools7 -library=no%rwtools7_dbg"
|
||||
MAKECMD=/usr/ccs/bin/make
|
||||
AR=/opt/SUNWspro/bin/CC
|
||||
|
@ -260,18 +277,18 @@ cd ..
|
|||
pwd
|
||||
|
||||
|
||||
echo "$AR $ARFLAGS tecio.a $OBJLIST"
|
||||
$AR $ARFLAGS tecio.a $OBJLIST
|
||||
echo "$AR $ARFLAGS libtecio.a $OBJLIST"
|
||||
$AR $ARFLAGS libtecio.a $OBJLIST
|
||||
if test -f /bin/ranlib ; then
|
||||
/bin/ranlib tecio.a;
|
||||
/bin/ranlib libtecio.a;
|
||||
elif test -f /usr/bin/ranlib ; then
|
||||
/usr/bin/ranlib tecio.a;
|
||||
/usr/bin/ranlib libtecio.a;
|
||||
elif test -f /usr/ucb/ranlib ; then
|
||||
/usr/ucb/ranlib tecio.a;
|
||||
/usr/ucb/ranlib libtecio.a;
|
||||
fi
|
||||
|
||||
echo "$CCOMP -I./tecsrc -DMAKEARCHIVE $FINALCFLAGS -c pltview.cpp"
|
||||
$CCOMP -I./tecsrc -DMAKEARCHIVE $FINALCFLAGS -c pltview.cpp
|
||||
|
||||
echo "$CCOMP $FINALCFLAGS pltview.o tecio.a $LINKFLAGS $LINKLIBS $STRIPFLAG -lm -o pltview"
|
||||
$CCOMP $FINALCFLAGS pltview.o tecio.a $LINKFLAGS $LINKLIBS $STRIPFLAG -lm -o pltview
|
||||
echo "$CCOMP $FINALCFLAGS pltview.o libtecio.a $LINKFLAGS $LINKLIBS $STRIPFLAG -lm -o pltview"
|
||||
$CCOMP $FINALCFLAGS pltview.o libtecio.a $LINKFLAGS $LINKLIBS $STRIPFLAG -lm -o pltview
|
||||
|
|
|
@ -1,11 +0,0 @@
|
|||
# Set to appropriate C++ compiler
|
||||
CPP=g++
|
||||
CPPFLAGS=-I../../tecsrc ../../tecio.a
|
||||
EXECUTABLE=arrow
|
||||
FILES=$(EXECUTABLE).cpp
|
||||
|
||||
build:
|
||||
$(CPP) $(FILES) $(CPPFLAGS) -o $(EXECUTABLE)
|
||||
|
||||
clean:
|
||||
rm -f $(EXECUTABLE)
|
|
@ -31,10 +31,8 @@ int main()
|
|||
&FileType,
|
||||
&Debug,
|
||||
&VIsDouble);
|
||||
|
||||
/* DOCEND */
|
||||
|
||||
|
||||
/* After TECINI is called, call TECZNE to create one or more
|
||||
* zones for your data file. In this example, Zone 1 contains a
|
||||
* single rectangular solid created as a face-based finite-element
|
||||
|
@ -106,7 +104,6 @@ int main()
|
|||
ValueLocation,
|
||||
NULL,
|
||||
&SharConn);
|
||||
|
||||
/* DOCEND */
|
||||
|
||||
/* DOCSTART:arrow_tecdat_rect.txt*/
|
||||
|
@ -137,7 +134,6 @@ int main()
|
|||
|
||||
P_Rect[0] = 10;
|
||||
|
||||
|
||||
INTEGER4 IsDouble = 1;
|
||||
I = TECDAT112(&NumPts_Rect, X_Rect, &IsDouble);
|
||||
I = TECDAT112(&NumPts_Rect, Y_Rect, &IsDouble);
|
||||
|
@ -146,7 +142,6 @@ int main()
|
|||
/* DOCEND */
|
||||
|
||||
/* DOCSTART:arrow_facenodes_rect.txt*/
|
||||
|
||||
/* The FaceNodeCounts array is used to describe the number of
|
||||
* nodes in each face of the zone. The first value in the array
|
||||
* is the number of nodes in Face 1, the second value is the
|
||||
|
@ -160,21 +155,21 @@ int main()
|
|||
FaceNodeCounts_Rect[ii] = 4;
|
||||
|
||||
/* The FaceNodes array is used to specify the nodes that compose
|
||||
* each face. For each face (n of N), the number of nodes used
|
||||
* to define the face is specified by the nth value in the
|
||||
* FaceNodeCounts array. For example, if the first value in the
|
||||
* FaceNodeCounts array is 4 (indicating Face 1 is composed of
|
||||
* four nodes), the first four values in the FaceNodes array are
|
||||
* the node numbers of the nodes in Face 1.
|
||||
*
|
||||
* ------------
|
||||
* WARNING
|
||||
* When providing the node numbers for each face, you must
|
||||
* provide the node numbers in a consistent order (either
|
||||
* clockwise or counter-clockwise. Providing the node numbers
|
||||
* out of order results in contorted faces.
|
||||
* ------------
|
||||
*/
|
||||
* each face. For each face (n of N), the number of nodes used
|
||||
* to define the face is specified by the nth value in the
|
||||
* FaceNodeCounts array. For example, if the first value in the
|
||||
* FaceNodeCounts array is 4 (indicating Face 1 is composed of
|
||||
* four nodes), the first four values in the FaceNodes array are
|
||||
* the node numbers of the nodes in Face 1.
|
||||
*
|
||||
* ------------
|
||||
* WARNING
|
||||
* When providing the node numbers for each face, you must
|
||||
* provide the node numbers in a consistent order (either
|
||||
* clockwise or counter-clockwise. Providing the node numbers
|
||||
* out of order results in contorted faces.
|
||||
* ------------
|
||||
*/
|
||||
|
||||
INTEGER4 *FaceNodes_Rect = new INTEGER4[TotalNumFaceNodes_Rect];
|
||||
|
||||
|
@ -202,7 +197,7 @@ int main()
|
|||
FaceNodes_Rect[14] = 7;
|
||||
FaceNodes_Rect[15] = 3;
|
||||
|
||||
//Nodes for Face 5
|
||||
//Nodes for Face 5
|
||||
FaceNodes_Rect[16] = 6;
|
||||
FaceNodes_Rect[17] = 2;
|
||||
FaceNodes_Rect[18] = 1;
|
||||
|
@ -247,6 +242,12 @@ int main()
|
|||
* in Zone 5.
|
||||
*/
|
||||
FaceLeftElems_Rect[3] = -1;
|
||||
|
||||
I = TECPOLYFACE112(&NumFaces_Rect,
|
||||
FaceNodeCounts_Rect,
|
||||
FaceNodes_Rect,
|
||||
FaceLeftElems_Rect,
|
||||
FaceRightElems_Rect);
|
||||
/* DOCEND */
|
||||
|
||||
/* DOCSTART:arrow_tecpoly_rect.txt*/
|
||||
|
@ -276,13 +277,10 @@ int main()
|
|||
FaceBndryConnElems_Rect[0] = 1;
|
||||
FaceBndryConnZones_Rect[0] = 2;
|
||||
|
||||
I = TECPOLY112(FaceNodeCounts_Rect,
|
||||
FaceNodes_Rect,
|
||||
FaceLeftElems_Rect,
|
||||
FaceRightElems_Rect,
|
||||
FaceBndryConnCounts_Rect,
|
||||
FaceBndryConnElems_Rect,
|
||||
FaceBndryConnZones_Rect);
|
||||
I = TECPOLYBCONN112(&NumConnBndryFaces_Rect,
|
||||
FaceBndryConnCounts_Rect,
|
||||
FaceBndryConnElems_Rect,
|
||||
FaceBndryConnZones_Rect);
|
||||
|
||||
/* cleanup */
|
||||
delete X_Rect;
|
||||
|
@ -359,13 +357,10 @@ int main()
|
|||
/* DOCEND */
|
||||
|
||||
/* DOCSTART:arrow_tecdat_prism.txt*/
|
||||
|
||||
|
||||
double *X_Prism = new double[NumPts_Prism];
|
||||
double *Y_Prism = new double[NumPts_Prism];
|
||||
double *Z_Prism = new double[NumPts_Prism];
|
||||
|
||||
|
||||
/* Set the X and Y variable values, one z-plane at a time */
|
||||
double ZVal = 0;
|
||||
for (INTEGER4 ii = 0; ii < 2; ii++)
|
||||
|
@ -438,7 +433,7 @@ int main()
|
|||
FaceNodes_Prism[13] = 4;
|
||||
FaceNodes_Prism[14] = 6;
|
||||
|
||||
//Nodes for Face 5
|
||||
//Nodes for Face 5
|
||||
FaceNodes_Prism[15] = 1;
|
||||
FaceNodes_Prism[16] = 2;
|
||||
FaceNodes_Prism[17] = 3;
|
||||
|
@ -470,10 +465,15 @@ int main()
|
|||
* element and zone for a face.
|
||||
*/
|
||||
FaceLeftElems_Prism[0] = -1;
|
||||
|
||||
I = TECPOLYFACE112(&NumFaces_Prism,
|
||||
FaceNodeCounts_Prism,
|
||||
FaceNodes_Prism,
|
||||
FaceLeftElems_Prism,
|
||||
FaceRightElems_Prism);
|
||||
/* DOCEND */
|
||||
|
||||
/* DOCSTART:arrow_tecpoly_prism.txt*/
|
||||
|
||||
INTEGER4 *FaceBndryConnCounts_Prism = new INTEGER4[NumConnBndryFaces_Prism];
|
||||
FaceBndryConnCounts_Prism[0] = 2;
|
||||
|
||||
|
@ -500,13 +500,10 @@ int main()
|
|||
FaceBndryConnElems_Prism[1] = 1;
|
||||
FaceBndryConnZones_Prism[1] = 1;
|
||||
|
||||
I = TECPOLY112(FaceNodeCounts_Prism,
|
||||
FaceNodes_Prism,
|
||||
FaceLeftElems_Prism,
|
||||
FaceRightElems_Prism,
|
||||
FaceBndryConnCounts_Prism,
|
||||
FaceBndryConnElems_Prism,
|
||||
FaceBndryConnZones_Prism);
|
||||
I = TECPOLYBCONN112(&NumConnBndryFaces_Prism,
|
||||
FaceBndryConnCounts_Prism,
|
||||
FaceBndryConnElems_Prism,
|
||||
FaceBndryConnZones_Prism);
|
||||
|
||||
/* cleanup */
|
||||
delete X_Prism;
|
||||
|
|
|
@ -1,11 +0,0 @@
|
|||
# Set to appropriate C++ compiler
|
||||
CPP=g++
|
||||
CPPFLAGS=-I../../tecsrc ../../tecio.a
|
||||
EXECUTABLE=comtest
|
||||
FILES=$(EXECUTABLE).c
|
||||
|
||||
build:
|
||||
$(CPP) $(FILES) $(CPPFLAGS) -o $(EXECUTABLE)
|
||||
|
||||
clean:
|
||||
rm -f $(EXECUTABLE)
|
|
@ -19,6 +19,11 @@ C 11. Close file 2.
|
|||
C
|
||||
Program ComplexTest
|
||||
|
||||
C This code was written for FORTRAN77 compilers. If you are using a
|
||||
C FORTRAN90/95 compiler, we recommend using the .f90 source code files.
|
||||
C Otherwise, you will need to alter the include statement below to include
|
||||
C tecio.for instead of tecio.inc.
|
||||
|
||||
Include "tecio.inc"
|
||||
|
||||
REAL*4 X(4,5), Y(4,5), P(4,5)
|
||||
|
|
|
@ -102,7 +102,7 @@
|
|||
SolTime = 10.0
|
||||
StrandID = 1
|
||||
ParentZn = 0
|
||||
I = TECZNE112('Ordered Zone 1'//NULCHAR, &
|
||||
I = TECZNE112('Ordered Zone 1'//NULCHAR, &
|
||||
0, & ! ZONETYPE
|
||||
IMax, &
|
||||
JMax, &
|
||||
|
|
|
@ -6,19 +6,19 @@
|
|||
<Configuration Name="Debug|Win32" OutputDirectory="$(SolutionDir)$(PlatformName)/$(ConfigurationName)" IntermediateDirectory="$(SolutionDir)$(PlatformName)/$(ConfigurationName)" DeleteExtensionsOnClean="*.obj;*.mod;*.pdb;*.asm;*.map;*.dyn;*.dpi;*.tmp;*.log;*.ilk;*.exe;$(TargetPath)">
|
||||
<Tool Name="VFMidlTool" SuppressStartupBanner="true" HeaderFileName="$(InputName).h" TypeLibraryName="$(IntDir)/$(InputName).tlb"/>
|
||||
<Tool Name="VFPreBuildEventTool"/>
|
||||
<Tool Name="VFFortranCompilerTool" SuppressStartupBanner="true" DebugInformationFormat="debugEnabled" Optimization="optimizeDisabled" AdditionalIncludeDirectories="$(TEC_360_2009)/Include" ModulePath="$(INTDIR)/" ObjectFile="$(INTDIR)/" Traceback="true" BoundsCheck="true" RuntimeLibrary="rtMultiThreadedDebug" CompileOnly="true"/>
|
||||
<Tool Name="VFFortranCompilerTool" SuppressStartupBanner="true" DebugInformationFormat="debugEnabled" Optimization="optimizeDisabled" AdditionalIncludeDirectories="$(TEC_360_2013R1)/Include" ModulePath="$(INTDIR)/" ObjectFile="$(INTDIR)/" Traceback="true" BoundsCheck="true" RuntimeLibrary="rtMultiThreadedDebug" CompileOnly="true"/>
|
||||
<Tool Name="VFPostBuildEventTool"/>
|
||||
<Tool Name="VFCustomBuildTool"/>
|
||||
<Tool Name="VFLinkerTool" OutputFile="$(OUTDIR)/comtestf.exe" LinkIncremental="linkIncrementalNo" SuppressStartupBanner="true" AdditionalLibraryDirectories="$(TEC_360_2009)/Bin" GenerateDebugInformation="true" ProgramDatabaseFile="$(OUTDIR)/comtestf.pdb" SubSystem="subSystemConsole" AdditionalDependencies="tecio.lib"/>
|
||||
<Tool Name="VFLinkerTool" OutputFile="$(OUTDIR)/comtestf.exe" LinkIncremental="linkIncrementalNo" SuppressStartupBanner="true" AdditionalLibraryDirectories="$(TEC_360_2013R1)/Bin" GenerateDebugInformation="true" ProgramDatabaseFile="$(OUTDIR)/comtestf.pdb" SubSystem="subSystemConsole" AdditionalDependencies="tecio.lib"/>
|
||||
<Tool Name="VFResourceCompilerTool" ResourceOutputFileName="$(IntDir)/$(InputName).res"/>
|
||||
<Tool Name="VFPreLinkEventTool"/></Configuration>
|
||||
<Configuration Name="Release|Win32" OutputDirectory="$(SolutionDir)$(PlatformName)/$(ConfigurationName)" IntermediateDirectory="$(SolutionDir)$(PlatformName)/$(ConfigurationName)" DeleteExtensionsOnClean="*.obj;*.mod;*.pdb;*.asm;*.map;*.dyn;*.dpi;*.tmp;*.log;*.ilk;*.exe;$(TargetPath)" MustRebuild="true">
|
||||
<Tool Name="VFMidlTool" SwitchesHaveChanged="true" SuppressStartupBanner="true" HeaderFileName="$(InputName).h" TypeLibraryName="$(IntDir)/$(InputName).tlb"/>
|
||||
<Tool Name="VFPreBuildEventTool"/>
|
||||
<Tool Name="VFFortranCompilerTool" SwitchesHaveChanged="true" SuppressStartupBanner="true" AdditionalIncludeDirectories="$(TEC_360_2009)/Include" ModulePath="$(INTDIR)/" ObjectFile="$(INTDIR)/" RuntimeLibrary="rtMultiThreaded" CompileOnly="true"/>
|
||||
<Tool Name="VFFortranCompilerTool" SwitchesHaveChanged="true" SuppressStartupBanner="true" AdditionalIncludeDirectories="$(TEC_360_2013R1)/Include" ModulePath="$(INTDIR)/" ObjectFile="$(INTDIR)/" RuntimeLibrary="rtMultiThreaded" CompileOnly="true"/>
|
||||
<Tool Name="VFPostBuildEventTool"/>
|
||||
<Tool Name="VFCustomBuildTool"/>
|
||||
<Tool Name="VFLinkerTool" SwitchesHaveChanged="true" MustRebuild="true" OutputFile="$(OUTDIR)/comtestf.exe" LinkIncremental="linkIncrementalNo" SuppressStartupBanner="true" AdditionalLibraryDirectories="$(TEC_360_2009)/Bin" SubSystem="subSystemConsole" AdditionalDependencies="tecio.lib"/>
|
||||
<Tool Name="VFLinkerTool" SwitchesHaveChanged="true" MustRebuild="true" OutputFile="$(OUTDIR)/comtestf.exe" LinkIncremental="linkIncrementalNo" SuppressStartupBanner="true" AdditionalLibraryDirectories="$(TEC_360_2013R1)/Bin" SubSystem="subSystemConsole" AdditionalDependencies="tecio.lib"/>
|
||||
<Tool Name="VFResourceCompilerTool" SwitchesHaveChanged="true" ResourceOutputFileName="$(IntDir)/$(InputName).res"/>
|
||||
<Tool Name="VFPreLinkEventTool"/></Configuration></Configurations>
|
||||
<Files>
|
||||
|
|
|
@ -1,11 +0,0 @@
|
|||
# Set to appropriate C++ compiler
|
||||
CPP=g++
|
||||
CPPFLAGS=-I../../tecsrc ../../tecio.a
|
||||
EXECUTABLE=faceneighbors
|
||||
FILES=$(EXECUTABLE).cpp
|
||||
|
||||
build:
|
||||
$(CPP) $(FILES) $(CPPFLAGS) -o $(EXECUTABLE)
|
||||
|
||||
clean:
|
||||
rm -f $(EXECUTABLE)
|
|
@ -1,11 +0,0 @@
|
|||
# Set to appropriate C++ compiler
|
||||
CPP=g++
|
||||
CPPFLAGS=-I../../tecsrc ../../tecio.a
|
||||
EXECUTABLE=gridsolution
|
||||
FILES=$(EXECUTABLE).cpp
|
||||
|
||||
build:
|
||||
$(CPP) $(FILES) $(CPPFLAGS) -o $(EXECUTABLE)
|
||||
|
||||
clean:
|
||||
rm -f $(EXECUTABLE)
|
|
@ -89,7 +89,6 @@ int main()
|
|||
/* DOCEND */
|
||||
|
||||
/* DOCSTART:gridsolution_grid_tecdat.txt*/
|
||||
|
||||
/* TECDAT Parameters */
|
||||
double Phi = 0.5 * (1.0 + sqrt(5.0));
|
||||
double Pi = 3.141592653578;
|
||||
|
@ -130,11 +129,10 @@ int main()
|
|||
delete X;
|
||||
delete Y;
|
||||
delete Z;
|
||||
|
||||
/* DOCEND */
|
||||
|
||||
/* DOCSTART:gridsolution_grid_facenodes.txt*/
|
||||
/* TecPoly Parameters */
|
||||
/* TecPolyFace Parameters */
|
||||
|
||||
/* Create a FaceNodes array, dimensioned by the total number
|
||||
* of face nodes in the zone.
|
||||
|
@ -225,7 +223,6 @@ int main()
|
|||
FaceNodes[n++] = 9;
|
||||
FaceNodes[n++] = 13;
|
||||
FaceNodes[n++] = 17;
|
||||
|
||||
/* DOCEND */
|
||||
|
||||
/* Specify the number of nodes for each face, and the right and
|
||||
|
@ -277,21 +274,17 @@ int main()
|
|||
FaceLeftElems[10] = 0;
|
||||
FaceLeftElems[11] = 1;
|
||||
|
||||
I = TECPOLY112(FaceNodeCounts,
|
||||
FaceNodes,
|
||||
FaceLeftElems,
|
||||
FaceRightElems,
|
||||
NULL, /* No boundary connections. */
|
||||
NULL,
|
||||
NULL);
|
||||
I = TECPOLYFACE112(&NumFaces,
|
||||
FaceNodeCounts,
|
||||
FaceNodes,
|
||||
FaceLeftElems,
|
||||
FaceRightElems);
|
||||
|
||||
delete FaceNodes;
|
||||
delete FaceLeftElems;
|
||||
delete FaceRightElems;
|
||||
|
||||
/* DOCEND */
|
||||
|
||||
|
||||
/* DOCSTART:gridsolution_grid_tecend.txt*/
|
||||
I = TECEND112();
|
||||
/* DOCEND */
|
||||
|
@ -348,7 +341,6 @@ int main()
|
|||
/* DOCEND */
|
||||
|
||||
/* DOCSTART:gridsolution_solution_tecdat.txt*/
|
||||
|
||||
/* TECDAT Parameters */
|
||||
double *P = new double[NumPts];
|
||||
double *T = new double[NumPts];
|
||||
|
@ -364,7 +356,6 @@ int main()
|
|||
|
||||
delete P;
|
||||
delete T;
|
||||
|
||||
/* DOCEND */
|
||||
|
||||
/* DOCSTART:gridsolution_solution_tecend.txt*/
|
||||
|
|
|
@ -1,11 +0,0 @@
|
|||
# Set to appropriate C++ compiler
|
||||
CPP=g++
|
||||
CPPFLAGS=-I../../tecsrc ../../tecio.a
|
||||
EXECUTABLE=ij_ordered
|
||||
FILES=$(EXECUTABLE).cpp
|
||||
|
||||
build:
|
||||
$(CPP) $(FILES) $(CPPFLAGS) -o $(EXECUTABLE)
|
||||
|
||||
clean:
|
||||
rm -f $(EXECUTABLE)
|
|
@ -1,11 +0,0 @@
|
|||
# Set to appropriate C++ compiler
|
||||
CPP=g++
|
||||
CPPFLAGS=-I../../tecsrc ../../tecio.a
|
||||
EXECUTABLE=multiplefiles
|
||||
FILES=$(EXECUTABLE).cpp
|
||||
|
||||
build:
|
||||
$(CPP) $(FILES) $(CPPFLAGS) -o $(EXECUTABLE)
|
||||
|
||||
clean:
|
||||
rm -f $(EXECUTABLE)
|
Binary file not shown.
|
@ -1,11 +0,0 @@
|
|||
# Set to appropriate C++ compiler
|
||||
CPP=g++
|
||||
CPPFLAGS=-I../../tecsrc ../../tecio.a
|
||||
EXECUTABLE=multiplepolygons
|
||||
FILES=$(EXECUTABLE).cpp
|
||||
|
||||
build:
|
||||
$(CPP) $(FILES) $(CPPFLAGS) -o $(EXECUTABLE)
|
||||
|
||||
clean:
|
||||
rm -f $(EXECUTABLE)
|
|
@ -1,6 +1,6 @@
|
|||
/* This example illustrates using TecPoly to create two polygonal
|
||||
* zones. The first zone contains six hexagons, and the second
|
||||
* zone contains a hexagon and an octagon. Refer to the Data
|
||||
/* This example illustrates using TecPolyFace and TecPolyBConn to create
|
||||
* two polygonal zones. The first zone contains six hexagons, and the
|
||||
* second zone contains a hexagon and an octagon. Refer to the Data
|
||||
* Format Guide for a picture of the configuration, including node
|
||||
* and face numbers.
|
||||
*/
|
||||
|
@ -38,12 +38,12 @@ int main()
|
|||
/* TECZNE Parameters */
|
||||
INTEGER4 ZoneType = 6; /* FE Polygon */
|
||||
INTEGER4 NumPts_Z1 = 13; /* the number of unique
|
||||
* nodes in the zone.
|
||||
*/
|
||||
* nodes in the zone.
|
||||
*/
|
||||
INTEGER4 NumElems_Z1 = 3;
|
||||
INTEGER4 NumFaces_Z1 = 15; /* the number of unique
|
||||
* faces in the zone.
|
||||
*/
|
||||
* faces in the zone.
|
||||
*/
|
||||
INTEGER4 ICellMax = 0; /* not used */
|
||||
INTEGER4 JCellMax = 0; /* not used */
|
||||
INTEGER4 KCellMax = 0; /* not used */
|
||||
|
@ -71,13 +71,13 @@ int main()
|
|||
INTEGER4 TotalNumBndryFaces_Z1 = 3;
|
||||
|
||||
/* Each boundary face has one or more boundary connections. A
|
||||
* boundary connection is defined as another element in another
|
||||
* zone. Face 9 has a boundary connection with Element 1 in
|
||||
* Zone 2. In this example, each boundary face is connected to
|
||||
* one other element, so the total number of boundary
|
||||
* connections is equivalent to the total number of boundary
|
||||
* faces (3).
|
||||
*/
|
||||
* boundary connection is defined as another element in another
|
||||
* zone. Face 9 has a boundary connection with Element 1 in
|
||||
* Zone 2. In this example, each boundary face is connected to
|
||||
* one other element, so the total number of boundary
|
||||
* connections is equivalent to the total number of boundary
|
||||
* faces (3).
|
||||
*/
|
||||
INTEGER4 TotalNumBndryConns_Z1 = 3;
|
||||
|
||||
I = TECZNE112((char*)"Zone 1: 3 Hexagons", /* Specifies the name of
|
||||
|
@ -110,7 +110,6 @@ int main()
|
|||
/* DOCEND */
|
||||
|
||||
/* DOCSTART:hexagons_zone1_tecdat.txt*/
|
||||
|
||||
/* TECDAT Parameters */
|
||||
double *X_Z1 = new double[NumPts_Z1];
|
||||
double *Y_Z1 = new double[NumPts_Z1];
|
||||
|
@ -154,13 +153,11 @@ int main()
|
|||
X_Z1[12] = 0;
|
||||
Y_Z1[12] = 3;
|
||||
|
||||
|
||||
double *P_Z1 = new double[NumElems_Z1];
|
||||
P_Z1[0] = 2;
|
||||
P_Z1[1] = 4;
|
||||
P_Z1[2] = 5;
|
||||
|
||||
|
||||
INTEGER4 IsDouble = 1;
|
||||
I = TECDAT112(&NumPts_Z1, X_Z1, &IsDouble);
|
||||
I = TECDAT112(&NumPts_Z1, Y_Z1, &IsDouble);
|
||||
|
@ -171,7 +168,7 @@ int main()
|
|||
/* DOCEND */
|
||||
|
||||
/* DOCSTART:hexagons_zone1_facenodes.txt*/
|
||||
/* TecPoly Parameters */
|
||||
/* TecPolyFace Parameters */
|
||||
|
||||
/* Create a FaceNodes array, dimensioned by the total number
|
||||
* of face nodes in the zone.
|
||||
|
@ -225,7 +222,6 @@ int main()
|
|||
|
||||
FaceNodes_Z1[28] = 13;
|
||||
FaceNodes_Z1[29] = 5;
|
||||
|
||||
/* DOCEND */
|
||||
|
||||
/* Specify the right and left neighboring elements.
|
||||
|
@ -259,7 +255,7 @@ int main()
|
|||
FaceLeftElems_Z1[7] = 0;
|
||||
FaceLeftElems_Z1[8] = -1;
|
||||
FaceLeftElems_Z1[9] = -2;
|
||||
FaceLeftElems_Z1[10] = 2;
|
||||
FaceLeftElems_Z1[10] = 3;
|
||||
|
||||
/* Left Face Elems for Element 3 */
|
||||
FaceLeftElems_Z1[11] = -3;
|
||||
|
@ -274,14 +270,25 @@ int main()
|
|||
for (INTEGER4 ii = 0; ii < 6; ii++)
|
||||
FaceRightElems_Z1[ii] = 1;
|
||||
|
||||
for (INTEGER4 ii = 6; ii < 10; ii++)
|
||||
for (INTEGER4 ii = 6; ii < 11; ii++)
|
||||
FaceRightElems_Z1[ii] = 2;
|
||||
|
||||
for (INTEGER4 ii = 10; ii <= 14; ii++)
|
||||
for (INTEGER4 ii = 11; ii <= 14; ii++)
|
||||
FaceRightElems_Z1[ii] = 3;
|
||||
|
||||
I = TECPOLYFACE112(&NumFaces_Z1,
|
||||
NULL, /* Not used for polygon zones */
|
||||
FaceNodes_Z1,
|
||||
FaceLeftElems_Z1,
|
||||
FaceRightElems_Z1);
|
||||
|
||||
delete FaceNodes_Z1;
|
||||
delete FaceLeftElems_Z1;
|
||||
delete FaceRightElems_Z1;
|
||||
/* DOCEND */
|
||||
|
||||
/* DOCSTART:hexagons_zone1_tecpoly.txt */
|
||||
/* TecPolyBConn Parameters */
|
||||
|
||||
/* The FaceBndryConnectionCounts array is used to define the
|
||||
* number of boundary connections for each face that has a
|
||||
|
@ -308,31 +315,22 @@ int main()
|
|||
INTEGER4 FaceBndryConnectionElems_Z1[3] = {1, 2, 2};
|
||||
INTEGER4 FaceBndryConnectionZones_Z1[3] = {2, 2, 2};
|
||||
|
||||
|
||||
I = TECPOLY112(NULL, /* Not used for polygon zones */
|
||||
FaceNodes_Z1,
|
||||
FaceLeftElems_Z1,
|
||||
FaceRightElems_Z1,
|
||||
FaceBndryConnectionCounts_Z1,
|
||||
FaceBndryConnectionElems_Z1,
|
||||
FaceBndryConnectionZones_Z1);
|
||||
|
||||
delete FaceNodes_Z1;
|
||||
delete FaceLeftElems_Z1;
|
||||
delete FaceRightElems_Z1;
|
||||
|
||||
I = TECPOLYBCONN112(&TotalNumBndryFaces_Z1,
|
||||
FaceBndryConnectionCounts_Z1,
|
||||
FaceBndryConnectionElems_Z1,
|
||||
FaceBndryConnectionZones_Z1);
|
||||
/* DOCEND */
|
||||
|
||||
/* Define Zone 2. Zone 2 contains an octagon and a hexagon. */
|
||||
/* TECZNE Parameters */
|
||||
/* DOCSTART:hexagons_zone2_teczne.txt*/
|
||||
INTEGER4 NumPts_Z2 = 12; /* number of unique
|
||||
* nodes in the zone
|
||||
*/
|
||||
* nodes in the zone
|
||||
*/
|
||||
INTEGER4 NumElems_Z2 = 2;
|
||||
INTEGER4 NumFaces_Z2 = 13; /* number of unique
|
||||
* faces in the zone
|
||||
*/
|
||||
* faces in the zone
|
||||
*/
|
||||
INTEGER4 NumFaceConnections_Z2 = 0;
|
||||
/* In polygonal zones, each face has exactly two nodes */
|
||||
INTEGER4 TotalNumFaceNodes_Z2 = NumFaces_Z2 * 2;
|
||||
|
@ -397,7 +395,6 @@ int main()
|
|||
X_Z2[5] = 4;
|
||||
Y_Z2[5] = 3;
|
||||
|
||||
|
||||
X_Z2[6] = 3;
|
||||
Y_Z2[6] = 3;
|
||||
|
||||
|
@ -433,7 +430,7 @@ int main()
|
|||
delete P_Z2;
|
||||
/* DOCEND */
|
||||
|
||||
/* TecPoly Parameters */
|
||||
/* TecPolyFace Parameters */
|
||||
/* DOCSTART:hexagons_zone2_facemap.txt*/
|
||||
INTEGER4 *FaceNodes_Z2;
|
||||
FaceNodes_Z2 = new INTEGER4[TotalNumFaceNodes_Z2];
|
||||
|
@ -457,7 +454,6 @@ int main()
|
|||
FaceNodes_Z2[10] = 6;
|
||||
FaceNodes_Z2[11] = 1;
|
||||
|
||||
|
||||
/* Face Nodes for Element 2 */
|
||||
FaceNodes_Z2[12] = 7;
|
||||
FaceNodes_Z2[13] = 6;
|
||||
|
@ -481,8 +477,7 @@ int main()
|
|||
FaceNodes_Z2[25] = 7;
|
||||
/* DOCEND */
|
||||
|
||||
|
||||
/* DOCSTART:hexagons_zone2_tecpoly.txt*/
|
||||
/* DOCSTART:hexagons_zone2_tecpolyface.txt*/
|
||||
/* Specify the right and left neighboring elements.
|
||||
* The neighboring elements can be determined using the
|
||||
* right-hand rule. For each face, place your right-hand along
|
||||
|
@ -525,6 +520,16 @@ int main()
|
|||
|
||||
for (INTEGER4 ii = 6; ii < 13; ii++)
|
||||
FaceRightElems_Z2[ii] = 2;
|
||||
|
||||
I = TECPOLYFACE112(&NumFaces_Z2,
|
||||
NULL,
|
||||
FaceNodes_Z2,
|
||||
FaceLeftElems_Z2,
|
||||
FaceRightElems_Z2);
|
||||
|
||||
delete FaceNodes_Z2;
|
||||
delete FaceLeftElems_Z2;
|
||||
delete FaceRightElems_Z2;
|
||||
/* DOCEND */
|
||||
|
||||
/* DOCSTART:hexagons_zone2_tecpoly.txt*/
|
||||
|
@ -548,17 +553,10 @@ int main()
|
|||
INTEGER4 FaceBndryConnectionElems_Z2[3] = {2, 3, 3};
|
||||
INTEGER4 FaceBndryConnectionZones_Z2[3] = {1, 1, 1};
|
||||
|
||||
I = TECPOLY112(NULL,
|
||||
FaceNodes_Z2,
|
||||
FaceLeftElems_Z2,
|
||||
FaceRightElems_Z2,
|
||||
FaceBndryConnectionCounts_Z2,
|
||||
FaceBndryConnectionElems_Z2,
|
||||
FaceBndryConnectionZones_Z2);
|
||||
|
||||
delete FaceNodes_Z2;
|
||||
delete FaceLeftElems_Z2;
|
||||
delete FaceRightElems_Z2;
|
||||
I = TECPOLYBCONN112(&TotalNumBndryFaces_Z2,
|
||||
FaceBndryConnectionCounts_Z2,
|
||||
FaceBndryConnectionElems_Z2,
|
||||
FaceBndryConnectionZones_Z2);
|
||||
/* DOCEND */
|
||||
|
||||
/* DOCSTART:hexagons_tecend.txt*/
|
||||
|
|
|
@ -1,11 +0,0 @@
|
|||
# Set to appropriate C++ compiler
|
||||
CPP=g++
|
||||
CPPFLAGS=-I../../tecsrc ../../tecio.a
|
||||
EXECUTABLE=octagon
|
||||
FILES=$(EXECUTABLE).cpp
|
||||
|
||||
build:
|
||||
$(CPP) $(FILES) $(CPPFLAGS) -o $(EXECUTABLE)
|
||||
|
||||
clean:
|
||||
rm -f $(EXECUTABLE)
|
|
@ -90,9 +90,9 @@ int main()
|
|||
&NumBConnections,
|
||||
NULL,
|
||||
NULL, /* When Value Location is not specified,
|
||||
* Tecplot will treat all variables as
|
||||
* nodal variables.
|
||||
*/
|
||||
* Tecplot will treat all variables as
|
||||
* nodal variables.
|
||||
*/
|
||||
NULL,
|
||||
&ShrConn);
|
||||
/* DOCEND */
|
||||
|
@ -110,7 +110,7 @@ int main()
|
|||
* It is important that you refer to node numbers consistently.
|
||||
* The node numbers will be used later to define the
|
||||
* connectivity for each element.
|
||||
*/
|
||||
*/
|
||||
|
||||
/* TECDAT Variables */
|
||||
/* Set up the variable values. The variable values will be
|
||||
|
@ -195,7 +195,6 @@ int main()
|
|||
FaceNodes[2*ii+1] = ii + 2;
|
||||
}
|
||||
FaceNodes[15] = 1;
|
||||
|
||||
/* DOCEND */
|
||||
/* Define the right and left elements of each face.
|
||||
|
||||
|
@ -228,13 +227,11 @@ int main()
|
|||
/* DOCEND */
|
||||
/* Write the polyhedral data to the file. */
|
||||
/* DOCSTART:octagon_tecpoly.txt*/
|
||||
I = TECPOLY112(NULL,
|
||||
FaceNodes,
|
||||
FaceLeftElems,
|
||||
FaceRightElems,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL);
|
||||
I = TECPOLYFACE112(&NumFaces,
|
||||
NULL,
|
||||
FaceNodes,
|
||||
FaceLeftElems,
|
||||
FaceRightElems);
|
||||
|
||||
delete FaceNodes;
|
||||
delete FaceLeftElems;
|
||||
|
|
|
@ -1,11 +0,0 @@
|
|||
# Set to appropriate C++ compiler
|
||||
CPP=g++
|
||||
CPPFLAGS=-I../../tecsrc ../../tecio.a
|
||||
EXECUTABLE=pyramid
|
||||
FILES=$(EXECUTABLE).cpp
|
||||
|
||||
build:
|
||||
$(CPP) $(FILES) $(CPPFLAGS) -o $(EXECUTABLE)
|
||||
|
||||
clean:
|
||||
rm -f $(EXECUTABLE)
|
|
@ -20,7 +20,6 @@ int main()
|
|||
&(Debug),
|
||||
&(VIsDouble));
|
||||
|
||||
|
||||
/* Call TECZNE112 */
|
||||
INTEGER4 ZoneType = 7; /* 7 for FEPolyhedron */
|
||||
INTEGER4 NumNodes = 5; /* number of unique nodes */
|
||||
|
@ -117,7 +116,7 @@ int main()
|
|||
delete Z;
|
||||
|
||||
/* Define the Face Nodes.
|
||||
|
||||
*
|
||||
* The FaceNodes array is used to indicate which nodes define
|
||||
* which face. As mentioned earlier, the number of the nodes is
|
||||
* implicitly defined by the order in which the nodal data is
|
||||
|
@ -201,14 +200,12 @@ int main()
|
|||
FaceRightElems[3] = 1;
|
||||
FaceRightElems[4] = 1;
|
||||
|
||||
/* Write the face map (created above) using TECPOLY112. */
|
||||
I = TECPOLY112(FaceNodeCounts, /* The face node counts array */
|
||||
FaceNodes, /* The face nodes array */
|
||||
FaceLeftElems, /* The left elements array */
|
||||
FaceRightElems, /* The right elements array */
|
||||
NULL, /* No boundary connection counts */
|
||||
NULL, /* No boundary connection elements */
|
||||
NULL); /* No boundary connection zones */
|
||||
/* Write the face map (created above) using TECPOLYFACE112. */
|
||||
I = TECPOLYFACE112(&NumFaces,
|
||||
FaceNodeCounts, /* The face node counts array */
|
||||
FaceNodes, /* The face nodes array */
|
||||
FaceLeftElems, /* The left elements array */
|
||||
FaceRightElems); /* The right elements array */
|
||||
|
||||
delete FaceNodeCounts;
|
||||
delete FaceNodes;
|
||||
|
@ -218,5 +215,4 @@ int main()
|
|||
I = TECEND112();
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* DOCEND */
|
||||
|
|
|
@ -1,11 +0,0 @@
|
|||
# Set to appropriate C++ compiler
|
||||
CPP=g++
|
||||
CPPFLAGS=-I../../tecsrc ../../tecio.a
|
||||
EXECUTABLE=simtest
|
||||
FILES=$(EXECUTABLE).c
|
||||
|
||||
build:
|
||||
$(CPP) $(FILES) $(CPPFLAGS) -o $(EXECUTABLE)
|
||||
|
||||
clean:
|
||||
rm -f $(EXECUTABLE)
|
|
@ -11,6 +11,11 @@ C
|
|||
C
|
||||
program test
|
||||
|
||||
C This code was written for FORTRAN77 compilers. If you are using a
|
||||
C FORTRAN90/95 compiler, we recommend using the .f90 source code files.
|
||||
C Otherwise, you will need to alter the include statement below to include
|
||||
C tecio.for instead of tecio.inc.
|
||||
|
||||
INCLUDE 'tecio.inc'
|
||||
|
||||
character*1 NULLCHR
|
||||
|
|
|
@ -7,18 +7,18 @@
|
|||
<Tool Name="VFMidlTool" SuppressStartupBanner="true" HeaderFileName="$(InputName).h" TypeLibraryName="$(IntDir)/$(InputName).tlb"/>
|
||||
<Tool Name="VFPreBuildEventTool"/>
|
||||
<Tool Name="VFPostBuildEventTool"/>
|
||||
<Tool Name="VFFortranCompilerTool" SuppressStartupBanner="true" DebugInformationFormat="debugEnabled" Optimization="optimizeDisabled" AdditionalIncludeDirectories="$(TEC_360_2009)/Include" ModulePath="$(INTDIR)/" ObjectFile="$(INTDIR)/" Traceback="true" BoundsCheck="true" RuntimeLibrary="rtMultiThreadedDebug" CompileOnly="true"/>
|
||||
<Tool Name="VFFortranCompilerTool" SuppressStartupBanner="true" DebugInformationFormat="debugEnabled" Optimization="optimizeDisabled" AdditionalIncludeDirectories="$(TEC_360_2013R1)/Include" ModulePath="$(INTDIR)/" ObjectFile="$(INTDIR)/" Traceback="true" BoundsCheck="true" RuntimeLibrary="rtMultiThreadedDebug" CompileOnly="true"/>
|
||||
<Tool Name="VFCustomBuildTool"/>
|
||||
<Tool Name="VFLinkerTool" OutputFile="$(OUTDIR)/simtestf.exe" LinkIncremental="linkIncrementalNo" SuppressStartupBanner="true" AdditionalLibraryDirectories="$(TEC_360_2009)/Bin" GenerateDebugInformation="true" ProgramDatabaseFile="$(OUTDIR)/simtestf.pdb" SubSystem="subSystemConsole" AdditionalDependencies="tecio.lib"/>
|
||||
<Tool Name="VFLinkerTool" OutputFile="$(OUTDIR)/simtestf.exe" LinkIncremental="linkIncrementalNo" SuppressStartupBanner="true" AdditionalLibraryDirectories="$(TEC_360_2013R1)/Bin" GenerateDebugInformation="true" ProgramDatabaseFile="$(OUTDIR)/simtestf.pdb" SubSystem="subSystemConsole" AdditionalDependencies="tecio.lib"/>
|
||||
<Tool Name="VFPreLinkEventTool"/>
|
||||
<Tool Name="VFResourceCompilerTool" ResourceOutputFileName="$(IntDir)/$(InputName).res"/></Configuration>
|
||||
<Configuration Name="Release|Win32" OutputDirectory="$(SolutionDir)$(PlatformName)/$(ConfigurationName)" IntermediateDirectory="$(SolutionDir)$(PlatformName)/$(ConfigurationName)" DeleteExtensionsOnClean="*.obj;*.mod;*.pdb;*.asm;*.map;*.dyn;*.dpi;*.tmp;*.log;*.ilk;*.exe;$(TargetPath)">
|
||||
<Tool Name="VFMidlTool" SuppressStartupBanner="true" HeaderFileName="$(InputName).h" TypeLibraryName="$(IntDir)/$(InputName).tlb"/>
|
||||
<Tool Name="VFPreBuildEventTool"/>
|
||||
<Tool Name="VFPostBuildEventTool"/>
|
||||
<Tool Name="VFFortranCompilerTool" SuppressStartupBanner="true" AdditionalIncludeDirectories="$(TEC_360_2009)/Include" ModulePath="$(INTDIR)/" ObjectFile="$(INTDIR)/" RuntimeLibrary="rtMultiThreaded" CompileOnly="true"/>
|
||||
<Tool Name="VFFortranCompilerTool" SuppressStartupBanner="true" AdditionalIncludeDirectories="$(TEC_360_2013R1)/Include" ModulePath="$(INTDIR)/" ObjectFile="$(INTDIR)/" RuntimeLibrary="rtMultiThreaded" CompileOnly="true"/>
|
||||
<Tool Name="VFCustomBuildTool"/>
|
||||
<Tool Name="VFLinkerTool" OutputFile="$(OUTDIR)/simtestf.exe" LinkIncremental="linkIncrementalNo" SuppressStartupBanner="true" AdditionalLibraryDirectories="$(TEC_360_2009)/Bin" SubSystem="subSystemConsole" AdditionalDependencies="tecio.lib"/>
|
||||
<Tool Name="VFLinkerTool" OutputFile="$(OUTDIR)/simtestf.exe" LinkIncremental="linkIncrementalNo" SuppressStartupBanner="true" AdditionalLibraryDirectories="$(TEC_360_2013R1)/Bin" SubSystem="subSystemConsole" AdditionalDependencies="tecio.lib"/>
|
||||
<Tool Name="VFPreLinkEventTool"/>
|
||||
<Tool Name="VFResourceCompilerTool" ResourceOutputFileName="$(IntDir)/$(InputName).res"/></Configuration></Configurations>
|
||||
<Files>
|
||||
|
|
|
@ -1,11 +0,0 @@
|
|||
# Set to appropriate C++ compiler
|
||||
CPP=g++
|
||||
CPPFLAGS=-I../../tecsrc ../../tecio.a
|
||||
EXECUTABLE=squares
|
||||
FILES=$(EXECUTABLE).cpp
|
||||
|
||||
build:
|
||||
$(CPP) $(FILES) $(CPPFLAGS) -o $(EXECUTABLE)
|
||||
|
||||
clean:
|
||||
rm -f $(EXECUTABLE)
|
|
@ -1,11 +0,0 @@
|
|||
# Set to appropriate C++ compiler
|
||||
CPP=g++
|
||||
CPPFLAGS=-I../../tecsrc ../../tecio.a
|
||||
EXECUTABLE=text
|
||||
FILES=$(EXECUTABLE).cpp
|
||||
|
||||
build:
|
||||
$(CPP) $(FILES) $(CPPFLAGS) -o $(EXECUTABLE)
|
||||
|
||||
clean:
|
||||
rm -f $(EXECUTABLE)
|
|
@ -1,26 +1,3 @@
|
|||
/*
|
||||
* NOTICE and LICENSE for Tecplot Input/Output Library (TecIO) - OpenFOAM
|
||||
*
|
||||
* Copyright (C) 1988-2009 Tecplot, Inc. All rights reserved worldwide.
|
||||
*
|
||||
* Tecplot hereby grants OpenCFD limited authority to distribute without
|
||||
* alteration the source code to the Tecplot Input/Output library, known
|
||||
* as TecIO, as part of its distribution of OpenFOAM and the
|
||||
* OpenFOAM_to_Tecplot converter. Users of this converter are also hereby
|
||||
* granted access to the TecIO source code, and may redistribute it for the
|
||||
* purpose of maintaining the converter. However, no authority is granted
|
||||
* to alter the TecIO source code in any form or manner.
|
||||
*
|
||||
* This limited grant of distribution does not supersede Tecplot, Inc.'s
|
||||
* copyright in TecIO. Contact Tecplot, Inc. for further information.
|
||||
*
|
||||
* Tecplot, Inc.
|
||||
* 3535 Factoria Blvd, Ste. 550
|
||||
* Bellevue, WA 98006, USA
|
||||
* Phone: +1 425 653 1200
|
||||
* http://www.tecplot.com/
|
||||
*
|
||||
*/
|
||||
/*
|
||||
*****************************************************************
|
||||
*****************************************************************
|
||||
|
@ -66,7 +43,7 @@ END CODELOG
|
|||
#if defined ADDON
|
||||
#include "TECADDON.h"
|
||||
#include "GUIDEFS.h"
|
||||
#include "GUI.h"
|
||||
#include "TECGUI.h"
|
||||
#define READTEC TecUtilReadBinaryData
|
||||
#define SHOWINFO(S) TecGUITextAppendString(Output_T_D1,S);
|
||||
#define ERRMSG(S) TecUtilDialogErrMsg(S)
|
||||
|
@ -75,6 +52,12 @@ END CODELOG
|
|||
#define STRINGLISTGETSTRING(S,N) TecUtilStringListGetString(S,N)
|
||||
#define STRINGLISTGETCOUNT(S) TecUtilStringListGetCount(S)
|
||||
#define STRINGLISTDEALLOC(S) TecUtilStringListDealloc(S)
|
||||
|
||||
#define AUXDATADEALLOC(S) TecUtilAuxDataDealloc(S)
|
||||
#define AUXDATAGETNUMITEMS(S) TecUtilAuxDataGetNumItems(S)
|
||||
#define AUXDATAGETITEMBYINDEX(S,Index,Name,Value,Type,Retain) \
|
||||
TecUtilAuxDataGetItemByIndex(S,(Index),Name,Value,Type,Retain)
|
||||
|
||||
#else
|
||||
#include "MASTER.h"
|
||||
#include "GLOBAL.h"
|
||||
|
@ -83,22 +66,21 @@ END CODELOG
|
|||
#define FREE_ARRAY(N,S) TecFree((void *)N)
|
||||
#include "ARRLIST.h"
|
||||
#include "STRLIST.h"
|
||||
#include "AUXDATA.h"
|
||||
#include "DATAUTIL.h"
|
||||
|
||||
/*
|
||||
#include "TECADDON.h"
|
||||
#include "TECXXX.h"
|
||||
#include "DATAUTIL.h"
|
||||
#include "STRLIST.h"
|
||||
*/
|
||||
|
||||
#define READTEC ReadTec
|
||||
#define SHOWINFO(S) printf("%s",S);
|
||||
#define ERRMSG(S) printf("Err: %s\n",S);
|
||||
#define STRINGLISTGETSTRING(S,N) StringListGetString(S,(N)-1)
|
||||
#define STRINGLISTGETCOUNT(S) StringListCount(S)
|
||||
#define STRINGLISTDEALLOC(S) StringListDealloc(S)
|
||||
#define MaxCharsUserRec 500
|
||||
|
||||
#define AUXDATADEALLOC(S) AuxDataDealloc(S)
|
||||
#define AUXDATAGETNUMITEMS(S) AuxDataGetNumItems(S)
|
||||
#define AUXDATAGETITEMBYINDEX(S,Index,Name,Value,Type,Retain) \
|
||||
AuxDataGetItemByIndex(S,(Index)-1,Name,Value,Type,Retain)
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
|
@ -144,7 +126,8 @@ static void DeallocHeaderInfo(char **DataSetTitle,
|
|||
LgIndex_t **NumPtsJ,
|
||||
LgIndex_t **NumPtsK,
|
||||
ZoneType_e **ZoneType,
|
||||
StringList_pa *UserRec)
|
||||
StringList_pa *UserRec,
|
||||
AuxData_pa *DatasetAuxData)
|
||||
{
|
||||
if (*DataSetTitle)
|
||||
FREE_ARRAY(*DataSetTitle, "data set title");
|
||||
|
@ -162,6 +145,8 @@ static void DeallocHeaderInfo(char **DataSetTitle,
|
|||
FREE_ARRAY(*ZoneType, "ZoneType Array");
|
||||
if (*UserRec)
|
||||
STRINGLISTDEALLOC(UserRec);
|
||||
if (*DatasetAuxData)
|
||||
AUXDATADEALLOC(DatasetAuxData);
|
||||
|
||||
*DataSetTitle = NULL;
|
||||
*VarNames = NULL;
|
||||
|
@ -173,10 +158,56 @@ static void DeallocHeaderInfo(char **DataSetTitle,
|
|||
*UserRec = NULL;
|
||||
}
|
||||
|
||||
|
||||
|
||||
#define MAXCHARSINFOLINE 5000
|
||||
|
||||
void ShowDatasetAuxData(AuxData_pa DatasetAuxData, char* InfoLine)
|
||||
{
|
||||
REQUIRE(VALID_REF(InfoLine));
|
||||
if (DatasetAuxData != NULL)
|
||||
{
|
||||
SHOWINFO("Dataset Auxiliary Data:\n");
|
||||
SHOWINFO("-----------------------\n");
|
||||
LgIndex_t NumItems = AUXDATAGETNUMITEMS(DatasetAuxData);
|
||||
for (LgIndex_t ii = 0; ii < NumItems; ++ii)
|
||||
{
|
||||
#if defined ADDON
|
||||
char* Name;
|
||||
#else
|
||||
const char* Name;
|
||||
#endif
|
||||
ArbParam_t Value;
|
||||
AuxDataType_e Type;
|
||||
Boolean_t Retain;
|
||||
AUXDATAGETITEMBYINDEX(DatasetAuxData,
|
||||
ii+1,
|
||||
&Name,
|
||||
&Value,
|
||||
&Type,
|
||||
&Retain);
|
||||
sprintf(InfoLine, " Name: %s\n", Name);
|
||||
SHOWINFO(InfoLine);
|
||||
#if defined ADDON
|
||||
// The TecUtil layer returns copies which must be deallocated
|
||||
TecUtilStringDealloc(&Name);
|
||||
#endif
|
||||
if (Type == AuxDataType_String)
|
||||
{
|
||||
char* ValueString = reinterpret_cast<char*>(Value);
|
||||
sprintf(InfoLine, " Value : %s\n", ValueString);
|
||||
SHOWINFO(InfoLine);
|
||||
SHOWINFO(" Type : String\n");
|
||||
#if defined ADDON
|
||||
// The TecUtil layer returns copies which must be deallocated
|
||||
TecUtilStringDealloc(&ValueString);
|
||||
#endif
|
||||
}
|
||||
sprintf(InfoLine, " Retain: %s\n", Retain ? "True" : "False");
|
||||
SHOWINFO(InfoLine);
|
||||
}
|
||||
SHOWINFO("\n");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void ReportFileInfo(char *FName,
|
||||
Boolean_t LoadRawData,
|
||||
|
@ -185,14 +216,15 @@ void ReportFileInfo(char *FName,
|
|||
short IVersion;
|
||||
EntIndex_t NumZones;
|
||||
EntIndex_t NumVars;
|
||||
char *DataSetTitle = NULL;
|
||||
StringList_pa VarNames = NULL;
|
||||
StringList_pa ZoneNames = NULL;
|
||||
LgIndex_t *NumPtsI = NULL;
|
||||
LgIndex_t *NumPtsJ = NULL;
|
||||
LgIndex_t *NumPtsK = NULL;
|
||||
ZoneType_e *ZoneType = NULL;
|
||||
StringList_pa UserRec = NULL;
|
||||
char *DataSetTitle = NULL;
|
||||
StringList_pa VarNames = NULL;
|
||||
StringList_pa ZoneNames = NULL;
|
||||
LgIndex_t *NumPtsI = NULL;
|
||||
LgIndex_t *NumPtsJ = NULL;
|
||||
LgIndex_t *NumPtsK = NULL;
|
||||
ZoneType_e *ZoneType = NULL;
|
||||
StringList_pa UserRec = NULL;
|
||||
AuxData_pa DatasetAuxData = NULL;
|
||||
int CZ, CV;
|
||||
char InfoLine[MAXCHARSINFOLINE+1];
|
||||
double **VDataBase = NULL;
|
||||
|
@ -215,6 +247,7 @@ void ReportFileInfo(char *FName,
|
|||
&NumPtsK,
|
||||
&ZoneType,
|
||||
&UserRec,
|
||||
&DatasetAuxData,
|
||||
FALSE,
|
||||
(NodeMap_t ***)NULL,
|
||||
(double ***)NULL))
|
||||
|
@ -272,7 +305,8 @@ void ReportFileInfo(char *FName,
|
|||
&NumPtsJ,
|
||||
&NumPtsK,
|
||||
&ZoneType,
|
||||
&UserRec);
|
||||
&UserRec,
|
||||
&DatasetAuxData);
|
||||
|
||||
/*
|
||||
* Reread the datafile. This time load in the header AND the raw data
|
||||
|
@ -292,6 +326,7 @@ void ReportFileInfo(char *FName,
|
|||
&NumPtsK,
|
||||
&ZoneType,
|
||||
&UserRec,
|
||||
&DatasetAuxData,
|
||||
AllocateRawDataSpaceLocally,
|
||||
&NodeMap,
|
||||
&VDataBase))
|
||||
|
@ -368,6 +403,9 @@ void ReportFileInfo(char *FName,
|
|||
|
||||
sprintf(InfoLine, "DataSetTitle: %s\n", DataSetTitle ? DataSetTitle : " ");
|
||||
SHOWINFO(InfoLine);
|
||||
|
||||
ShowDatasetAuxData(DatasetAuxData, InfoLine);
|
||||
|
||||
sprintf(InfoLine, "NumZones : %d\n", (int)NumZones);
|
||||
SHOWINFO(InfoLine);
|
||||
sprintf(InfoLine, "NumVars : %d\n", (int)NumVars);
|
||||
|
@ -534,7 +572,8 @@ void ReportFileInfo(char *FName,
|
|||
&NumPtsJ,
|
||||
&NumPtsK,
|
||||
&ZoneType,
|
||||
&UserRec);
|
||||
&UserRec,
|
||||
&DatasetAuxData);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -2,10 +2,10 @@
|
|||
** README **
|
||||
***********************************************
|
||||
|
||||
To build the TecIO library and/or the pltview utility
|
||||
To build the TecIO library and/or the pltview utility,
|
||||
simply run the Runmake script in this directory.
|
||||
|
||||
If customization is needed it will most likely be done
|
||||
If customization is needed, it will most likely be done
|
||||
in GLOBAL.h (to identify machine as 64 bit) and/or in
|
||||
dataio4.c. Just look for CRAY in dataio4.c and you
|
||||
will find most of the critical areas. Note that the
|
||||
|
@ -18,34 +18,13 @@ the variables at the top of the Makefile for your platform.
|
|||
|
||||
ReadTec()
|
||||
|
||||
The ReadTec() is included in the tecio library but is
|
||||
not supported by Tecplot, Inc. ReadTec is used
|
||||
The ReadTec() function is included in the tecio library
|
||||
but is not supported by Tecplot, Inc. ReadTec is used
|
||||
to read Tecplot binary data files (all versions at or
|
||||
older than the Tecplot version providing the tecio
|
||||
library). See tecsrc/DATAUTIL.h for more information.
|
||||
|
||||
The pltview example app gives an example of using ReadTec
|
||||
The pltview example app gives an example of using ReadTec
|
||||
to read just the header from a file as well as loading all
|
||||
field data from a file./*
|
||||
* NOTICE and LICENSE for Tecplot Input/Output Library (TecIO) - OpenFOAM
|
||||
*
|
||||
* Copyright (C) 1988-2009 Tecplot, Inc. All rights reserved worldwide.
|
||||
*
|
||||
* Tecplot hereby grants OpenCFD limited authority to distribute without
|
||||
* alteration the source code to the Tecplot Input/Output library, known
|
||||
* as TecIO, as part of its distribution of OpenFOAM and the
|
||||
* OpenFOAM_to_Tecplot converter. Users of this converter are also hereby
|
||||
* granted access to the TecIO source code, and may redistribute it for the
|
||||
* purpose of maintaining the converter. However, no authority is granted
|
||||
* to alter the TecIO source code in any form or manner.
|
||||
*
|
||||
* This limited grant of distribution does not supersede Tecplot, Inc.'s
|
||||
* copyright in TecIO. Contact Tecplot, Inc. for further information.
|
||||
*
|
||||
* Tecplot, Inc.
|
||||
* 3535 Factoria Blvd, Ste. 550
|
||||
* Bellevue, WA 98006, USA
|
||||
* Phone: +1 425 653 1200
|
||||
* http://www.tecplot.com/
|
||||
*
|
||||
*/
|
||||
field data from a file.
|
||||
|
||||
|
|
|
@ -1,31 +1,8 @@
|
|||
/*
|
||||
* NOTICE and LICENSE for Tecplot Input/Output Library (TecIO) - OpenFOAM
|
||||
*
|
||||
* Copyright (C) 1988-2009 Tecplot, Inc. All rights reserved worldwide.
|
||||
*
|
||||
* Tecplot hereby grants OpenCFD limited authority to distribute without
|
||||
* alteration the source code to the Tecplot Input/Output library, known
|
||||
* as TecIO, as part of its distribution of OpenFOAM and the
|
||||
* OpenFOAM_to_Tecplot converter. Users of this converter are also hereby
|
||||
* granted access to the TecIO source code, and may redistribute it for the
|
||||
* purpose of maintaining the converter. However, no authority is granted
|
||||
* to alter the TecIO source code in any form or manner.
|
||||
*
|
||||
* This limited grant of distribution does not supersede Tecplot, Inc.'s
|
||||
* copyright in TecIO. Contact Tecplot, Inc. for further information.
|
||||
*
|
||||
* Tecplot, Inc.
|
||||
* 3535 Factoria Blvd, Ste. 550
|
||||
* Bellevue, WA 98006, USA
|
||||
* Phone: +1 425 653 1200
|
||||
* http://www.tecplot.com/
|
||||
*
|
||||
*/
|
||||
/*
|
||||
******************************************************************
|
||||
******************************************************************
|
||||
******* ********
|
||||
****** (C) 1988-2009 Tecplot, Inc. *******
|
||||
****** (C) 1988-2010 Tecplot, Inc. *******
|
||||
******* ********
|
||||
******************************************************************
|
||||
******************************************************************
|
||||
|
@ -69,7 +46,7 @@ extern void getMemoryUsage(size_t* memoryInUse,
|
|||
* ALLOC_ITEM and ALLOC_ARRAY that expect a return value of
|
||||
* NULL on failure instead of the exception. 2008-05-08 CAM
|
||||
*/
|
||||
#if defined MSWIN && defined _DEBUG
|
||||
#if defined MSWIN && defined _DEBUG && defined TRACK_MEMORY_USAGE
|
||||
template <typename T>
|
||||
inline T *nonExceptionNew(size_t numItems,
|
||||
const char* fileName,
|
||||
|
@ -88,7 +65,7 @@ inline T *nonExceptionNew(size_t numItems,
|
|||
#endif
|
||||
result = new(fileName, lineNumber) T[numItems];
|
||||
#ifdef USING_DEBUG_NEW
|
||||
#define new DEBUG_NEW
|
||||
//#define new DEBUG_NEW
|
||||
#undef USING_DEBUG_NEW
|
||||
#endif
|
||||
#else
|
||||
|
@ -172,7 +149,7 @@ inline void nonExceptionDelete(T* &ptr)
|
|||
* NOTE: the pointer is set to 0xFFFF after the free for asserted
|
||||
* builds in the hopes of catching invalid pointer usage
|
||||
*/
|
||||
ptr = (T*)(void*)0xFFFF;
|
||||
ptr = static_cast<T*>(reinterpret_cast<void*>(0xFFFF));
|
||||
#endif
|
||||
}
|
||||
#define FREE_ARRAY(ptr,str) nonExceptionDelete((ptr))
|
||||
|
|
|
@ -1,31 +1,10 @@
|
|||
/*
|
||||
* NOTICE and LICENSE for Tecplot Input/Output Library (TecIO) - OpenFOAM
|
||||
*
|
||||
* Copyright (C) 1988-2009 Tecplot, Inc. All rights reserved worldwide.
|
||||
*
|
||||
* Tecplot hereby grants OpenCFD limited authority to distribute without
|
||||
* alteration the source code to the Tecplot Input/Output library, known
|
||||
* as TecIO, as part of its distribution of OpenFOAM and the
|
||||
* OpenFOAM_to_Tecplot converter. Users of this converter are also hereby
|
||||
* granted access to the TecIO source code, and may redistribute it for the
|
||||
* purpose of maintaining the converter. However, no authority is granted
|
||||
* to alter the TecIO source code in any form or manner.
|
||||
*
|
||||
* This limited grant of distribution does not supersede Tecplot, Inc.'s
|
||||
* copyright in TecIO. Contact Tecplot, Inc. for further information.
|
||||
*
|
||||
* Tecplot, Inc.
|
||||
* 3535 Factoria Blvd, Ste. 550
|
||||
* Bellevue, WA 98006, USA
|
||||
* Phone: +1 425 653 1200
|
||||
* http://www.tecplot.com/
|
||||
*
|
||||
*/
|
||||
#include "stdafx.h"
|
||||
#include "MASTER.h"
|
||||
/*
|
||||
*****************************************************************
|
||||
*****************************************************************
|
||||
******* ********
|
||||
****** Copyright (C) 1988-2008 Tecplot, Inc. *******
|
||||
****** Copyright (C) 1988-2010 Tecplot, Inc. *******
|
||||
******* ********
|
||||
*****************************************************************
|
||||
*****************************************************************
|
||||
|
@ -42,6 +21,10 @@
|
|||
# define EXTERN extern
|
||||
#endif
|
||||
|
||||
#if !defined TECPLOTKERNEL
|
||||
typedef struct _ArrayList_s* ArrayList_pa;
|
||||
#endif
|
||||
|
||||
typedef enum
|
||||
{
|
||||
ArrayListType_UnsignedChar,
|
||||
|
@ -85,52 +68,45 @@ typedef enum
|
|||
|
||||
typedef union
|
||||
{
|
||||
unsigned char UnsignedChar;
|
||||
unsigned short UnsignedShort;
|
||||
unsigned int UnsignedInt;
|
||||
unsigned long UnsignedLong;
|
||||
Int64_t Int64;
|
||||
char Char;
|
||||
short Short;
|
||||
int Int;
|
||||
long Long;
|
||||
float Float;
|
||||
double Double;
|
||||
LgIndex_t LgIndex;
|
||||
EntIndex_t EntIndex;
|
||||
SmInteger_t SmInteger;
|
||||
Boolean_t BBoolean; /* X-Windows uses Boolean */
|
||||
ArbParam_t ArbParam;
|
||||
unsigned char *UnsignedCharPtr;
|
||||
unsigned short *UnsignedShortPtr;
|
||||
unsigned int *UnsignedIntPtr;
|
||||
unsigned long *UnsignedLongPtr;
|
||||
Int64_t *Int64Ptr;
|
||||
char *CharPtr;
|
||||
short *ShortPtr;
|
||||
int *IntPtr;
|
||||
long *LongPtr;
|
||||
float *FloatPtr;
|
||||
double *DoublePtr;
|
||||
LgIndex_t *LgIndexPtr;
|
||||
EntIndex_t *EntIndexPtr;
|
||||
SmInteger_t *SmIntegerPtr;
|
||||
Boolean_t *BooleanPtr;
|
||||
ArbParam_t *ArbParamPtr;
|
||||
void *VoidPtr;
|
||||
unsigned char UnsignedChar;
|
||||
unsigned short UnsignedShort;
|
||||
unsigned int UnsignedInt;
|
||||
unsigned long UnsignedLong;
|
||||
Int64_t Int64;
|
||||
char Char;
|
||||
short Short;
|
||||
int Int;
|
||||
long Long;
|
||||
float Float;
|
||||
double Double;
|
||||
LgIndex_t LgIndex;
|
||||
EntIndex_t EntIndex;
|
||||
SmInteger_t SmInteger;
|
||||
Boolean_t BBoolean; /* X-Windows uses Boolean */
|
||||
ArbParam_t ArbParam;
|
||||
unsigned char* UnsignedCharPtr;
|
||||
unsigned short* UnsignedShortPtr;
|
||||
unsigned int* UnsignedIntPtr;
|
||||
unsigned long* UnsignedLongPtr;
|
||||
Int64_t* Int64Ptr;
|
||||
char* CharPtr;
|
||||
short* ShortPtr;
|
||||
int* IntPtr;
|
||||
long* LongPtr;
|
||||
float* FloatPtr;
|
||||
double* DoublePtr;
|
||||
LgIndex_t* LgIndexPtr;
|
||||
EntIndex_t* EntIndexPtr;
|
||||
SmInteger_t* SmIntegerPtr;
|
||||
Boolean_t* BooleanPtr;
|
||||
ArbParam_t* ArbParamPtr;
|
||||
void* VoidPtr;
|
||||
void (*FunctionPtr)(void);
|
||||
} ArrayListItem_u;
|
||||
|
||||
/**
|
||||
* NULL array list item for added convenience of inserting a NULL item without
|
||||
* having to declare and assign one. Can be used as follows:
|
||||
*
|
||||
* IsOk = ArrayListInsertItem(SomeArrayList, SomeIndex, ArrayListNumItem);
|
||||
*
|
||||
* NOTE: This value must be set to zero before Tecplot uses array lists.
|
||||
* memset(&ArrayListNullItem, 0, sizeof(ArrayListType_Any));
|
||||
*/
|
||||
EXTERN ArrayListItem_u ArrayListNullItem;
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#endif
|
||||
|
||||
/**
|
||||
* Visitor for traversing an array list. An iterator may not perform any
|
||||
|
@ -147,7 +123,7 @@ EXTERN ArrayListItem_u ArrayListNullItem;
|
|||
* TRUE to continue visiting items, otherwise
|
||||
* FALSE to discontinue visiting
|
||||
*/
|
||||
typedef Boolean_t (*ArrayListItemVisitor_pf)(void *ItemRef,
|
||||
typedef Boolean_t (*ArrayListItemVisitor_pf)(void* ItemRef,
|
||||
ArbParam_t ClientData);
|
||||
#if 0 /* use this stub as a starting place */
|
||||
{
|
||||
|
@ -155,7 +131,7 @@ typedef Boolean_t (*ArrayListItemVisitor_pf)(void *ItemRef,
|
|||
REQUIRE(VALID_REF(*TypeRef) || *TypeRef == NULL);
|
||||
|
||||
Boolean_t DoContinue = TRUE;
|
||||
<type> *TypeRef = (<type> *)ItemRef;
|
||||
<type>* TypeRef = static_cast<<type>*>(ItemRef);
|
||||
|
||||
ENSURE(VALID_BOOLEAN(DoContinue));
|
||||
return DoContinue;
|
||||
|
@ -200,8 +176,8 @@ typedef ArrayListItemVisitor_pf ArrayListItemDestructor_pf;
|
|||
* is the client's responsibility to cleanup any
|
||||
* partial duplication
|
||||
*/
|
||||
typedef Boolean_t (*ArrayListItemDuplicator_pf)(void *TargetItemRef,
|
||||
void *SourceItemRef,
|
||||
typedef Boolean_t (*ArrayListItemDuplicator_pf)(void* TargetItemRef,
|
||||
void* SourceItemRef,
|
||||
ArbParam_t ClientData);
|
||||
#if 0 /* use this stub as a starting place */
|
||||
{
|
||||
|
@ -210,8 +186,8 @@ typedef Boolean_t (*ArrayListItemDuplicator_pf)(void *TargetItemRef,
|
|||
REQUIRE(VALID_REF(*SourceTypeRef) || *SourceTypeRef == NULL);
|
||||
|
||||
Boolean_t IsOk = TRUE;
|
||||
<type> *TargetTypeRef = (<type> *)TargetItemRef;
|
||||
<type> *SourceTypeRef = (<type> *)SourceItemRef;
|
||||
<type>* TargetTypeRef = static_cast<<type>*>(TargetItemRef);
|
||||
<type>* SourceTypeRef = static_cast<<type>*>(SourceItemRef);
|
||||
|
||||
ENSURE(VALID_BOOLEAN(IsOk));
|
||||
return IsOk;
|
||||
|
@ -260,7 +236,7 @@ typedef LgIndex_t (*ArrayListCapacityRequestAdjuster_pf)(ArrayList_pa ArrayList,
|
|||
/* private ArrayList structure: only exposed so STRUTIL can use it */
|
||||
typedef struct _ArrayList_s
|
||||
{
|
||||
char *Array; /* byte array for holding the items */
|
||||
char* Array; /* byte array for holding the items */
|
||||
ArrayListType_e Type; /* type of array items */
|
||||
SmInteger_t ItemSize; /* byte size of an individual item */
|
||||
LgIndex_t Count; /* number of items in the array */
|
||||
|
@ -297,23 +273,24 @@ EXTERN Boolean_t ArrayListEnlargeCapacity(ArrayList_pa ArrayList,
|
|||
LgIndex_t RequestedCapacity);
|
||||
EXTERN ArrayList_pa ArrayListAlloc(LgIndex_t EstimatedCapacity,
|
||||
ArrayListType_e Type,
|
||||
ArrayListCapacityRequestAdjuster_pf CapacityRequestAdjuster,
|
||||
ArbParam_t CapacityRequestAdjusterClientData);
|
||||
EXTERN void ArrayListDealloc(ArrayList_pa *ArrayList,
|
||||
ArrayListItemDestructor_pf ItemDestructor,
|
||||
ArbParam_t ClientData);
|
||||
ArrayListCapacityRequestAdjuster_pf CapacityRequestAdjuster = 0,
|
||||
ArbParam_t CapacityRequestAdjusterClientData = 0);
|
||||
EXTERN void ArrayListDealloc(ArrayList_pa* ArrayList,
|
||||
ArrayListItemDestructor_pf ItemDestructor = 0,
|
||||
ArbParam_t ClientData = 0);
|
||||
EXTERN void ArrayListClear(ArrayList_pa ArrayList);
|
||||
EXTERN void ArrayListDeleteAllItems(ArrayList_pa ArrayList,
|
||||
ArrayListItemDestructor_pf ItemDestructor,
|
||||
ArbParam_t ClientData);
|
||||
ArrayListItemDestructor_pf ItemDestructor = 0,
|
||||
ArbParam_t ClientData = 0);
|
||||
EXTERN void ArrayListDeleteItems(ArrayList_pa ArrayList,
|
||||
LgIndex_t ItemOffset,
|
||||
LgIndex_t Count,
|
||||
ArrayListItemDestructor_pf ItemDestructor,
|
||||
ArbParam_t ClientData);
|
||||
ArrayListItemDestructor_pf ItemDestructor = 0,
|
||||
ArbParam_t ClientData = 0);
|
||||
EXTERN void ArrayListDeleteItem(ArrayList_pa ArrayList,
|
||||
LgIndex_t ItemOffset,
|
||||
ArrayListItemDestructor_pf ItemDestructor,
|
||||
ArbParam_t ClientData);
|
||||
ArrayListItemDestructor_pf ItemDestructor = 0,
|
||||
ArbParam_t ClientData = 0);
|
||||
EXTERN ArrayList_pa ArrayListRemoveItems(ArrayList_pa ArrayList,
|
||||
LgIndex_t ItemOffset,
|
||||
LgIndex_t Count);
|
||||
|
@ -338,35 +315,32 @@ EXTERN ArrayListItem_u ArrayListGetItem(ArrayList_pa ArrayList,
|
|||
EXTERN Boolean_t ArrayListSetItem(ArrayList_pa ArrayList,
|
||||
LgIndex_t ItemOffset,
|
||||
ArrayListItem_u Item,
|
||||
ArrayListItemDestructor_pf ItemDestructor,
|
||||
ArbParam_t ClientData);
|
||||
ArrayListItemDestructor_pf ItemDestructor = 0,
|
||||
ArbParam_t ClientData = 0);
|
||||
EXTERN Boolean_t ArrayListAppendItem(ArrayList_pa ArrayList,
|
||||
ArrayListItem_u Item);
|
||||
EXTERN Boolean_t ArrayListAppend(ArrayList_pa Target,
|
||||
ArrayList_pa Source);
|
||||
EXTERN ArrayList_pa ArrayListCopy(ArrayList_pa ArrayList,
|
||||
ArrayListItemDuplicator_pf ItemDuplicator,
|
||||
ArbParam_t ClientData);
|
||||
EXTERN void *ArrayListToArray(ArrayList_pa ArrayList,
|
||||
ArrayListItemDuplicator_pf ItemDuplicator = 0,
|
||||
ArbParam_t ClientData = 0);
|
||||
EXTERN void* ArrayListToArray(ArrayList_pa ArrayList,
|
||||
ArrayListItemDuplicator_pf ItemDuplicator,
|
||||
ArbParam_t ClientData);
|
||||
EXTERN ArrayList_pa ArrayListFromArray(void *Source,
|
||||
EXTERN ArrayList_pa ArrayListFromArray(void* Source,
|
||||
LgIndex_t Count,
|
||||
ArrayListType_e Type,
|
||||
ArrayListItemDuplicator_pf ItemDuplicator,
|
||||
ArbParam_t ClientData);
|
||||
ArrayListItemDuplicator_pf ItemDuplicator = 0,
|
||||
ArbParam_t ClientData = 0);
|
||||
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#endif
|
||||
EXTERN void ArrayListQSort(ArrayList_pa ArrayList,
|
||||
ArrayListItemComparator_pf Comparator,
|
||||
ArbParam_t ClientData);
|
||||
EXTERN Boolean_t ArrayListBSearch(ArrayList_pa ArrayList,
|
||||
ArrayListItem_u Item,
|
||||
ArrayListItemComparator_pf Comparator,
|
||||
ArbParam_t ClientData,
|
||||
LgIndex_t *ItemIndex);
|
||||
EXTERN Boolean_t ArrayListBSearch(ArrayList_pa ArrayList,
|
||||
ArrayListItem_u Item,
|
||||
ArrayListItemComparator_pf Comparator,
|
||||
ArbParam_t ClientData,
|
||||
LgIndex_t* ItemIndex = 0);
|
||||
|
||||
#if defined USE_MACROS_FOR_FUNCTIONS
|
||||
/**
|
||||
|
@ -429,76 +403,76 @@ EXTERN Boolean_t ArrayListBSearch(ArrayList_pa ArrayList,
|
|||
# define ArrayListGetSmInteger(ArrayList, ItemOffset) ArrayListGetTypedItem(ArrayList, ItemOffset, SmInteger_t)
|
||||
# define ArrayListGetBoolean(ArrayList, ItemOffset) ArrayListGetTypedItem(ArrayList, ItemOffset, Boolean_t)
|
||||
# define ArrayListGetArbParam(ArrayList, ItemOffset) ArrayListGetTypedItem(ArrayList, ItemOffset, ArbParam_t)
|
||||
# define ArrayListGetUnsignedCharPtr(ArrayList, ItemOffset) ArrayListGetTypedItem(ArrayList, ItemOffset, unsigned char *)
|
||||
# define ArrayListGetUnsignedShortPtr(ArrayList, ItemOffset) ArrayListGetTypedItem(ArrayList, ItemOffset, unsigned short *)
|
||||
# define ArrayListGetUnsignedIntPtr(ArrayList, ItemOffset) ArrayListGetTypedItem(ArrayList, ItemOffset, unsigned int *)
|
||||
# define ArrayListGetUnsignedLongPtr(ArrayList, ItemOffset) ArrayListGetTypedItem(ArrayList, ItemOffset, unsigned long *)
|
||||
# define ArrayListGetInt64Ptr(ArrayList, ItemOffset) ArrayListGetTypedItem(ArrayList, ItemOffset, Int64_t *)
|
||||
# define ArrayListGetCharPtr(ArrayList, ItemOffset) ArrayListGetTypedItem(ArrayList, ItemOffset, char *)
|
||||
# define ArrayListGetShortPtr(ArrayList, ItemOffset) ArrayListGetTypedItem(ArrayList, ItemOffset, short *)
|
||||
# define ArrayListGetIntPtr(ArrayList, ItemOffset) ArrayListGetTypedItem(ArrayList, ItemOffset, int *)
|
||||
# define ArrayListGetLongPtr(ArrayList, ItemOffset) ArrayListGetTypedItem(ArrayList, ItemOffset, long *)
|
||||
# define ArrayListGetFloatPtr(ArrayList, ItemOffset) ArrayListGetTypedItem(ArrayList, ItemOffset, float *)
|
||||
# define ArrayListGetDoublePtr(ArrayList, ItemOffset) ArrayListGetTypedItem(ArrayList, ItemOffset, double *)
|
||||
# define ArrayListGetLgIndexPtr(ArrayList, ItemOffset) ArrayListGetTypedItem(ArrayList, ItemOffset, LgIndex_t *)
|
||||
# define ArrayListGetEntIndexPtr(ArrayList, ItemOffset) ArrayListGetTypedItem(ArrayList, ItemOffset, EntIndex_t *)
|
||||
# define ArrayListGetSmIntegerPtr(ArrayList, ItemOffset) ArrayListGetTypedItem(ArrayList, ItemOffset, SmInteger_t *)
|
||||
# define ArrayListGetBooleanPtr(ArrayList, ItemOffset) ArrayListGetTypedItem(ArrayList, ItemOffset, Boolean_t *)
|
||||
# define ArrayListGetArbParamPtr(ArrayList, ItemOffset) ArrayListGetTypedItem(ArrayList, ItemOffset, ArbParam_t *)
|
||||
# define ArrayListGetVoidPtr(ArrayList, ItemOffset) ArrayListGetTypedItem(ArrayList, ItemOffset, void *)
|
||||
# define ArrayListGetUnsignedCharPtr(ArrayList, ItemOffset) ArrayListGetTypedItem(ArrayList, ItemOffset, unsigned char*)
|
||||
# define ArrayListGetUnsignedShortPtr(ArrayList, ItemOffset) ArrayListGetTypedItem(ArrayList, ItemOffset, unsigned short*)
|
||||
# define ArrayListGetUnsignedIntPtr(ArrayList, ItemOffset) ArrayListGetTypedItem(ArrayList, ItemOffset, unsigned int*)
|
||||
# define ArrayListGetUnsignedLongPtr(ArrayList, ItemOffset) ArrayListGetTypedItem(ArrayList, ItemOffset, unsigned long*)
|
||||
# define ArrayListGetInt64Ptr(ArrayList, ItemOffset) ArrayListGetTypedItem(ArrayList, ItemOffset, Int64_t*)
|
||||
# define ArrayListGetCharPtr(ArrayList, ItemOffset) ArrayListGetTypedItem(ArrayList, ItemOffset, char*)
|
||||
# define ArrayListGetShortPtr(ArrayList, ItemOffset) ArrayListGetTypedItem(ArrayList, ItemOffset, short*)
|
||||
# define ArrayListGetIntPtr(ArrayList, ItemOffset) ArrayListGetTypedItem(ArrayList, ItemOffset, int*)
|
||||
# define ArrayListGetLongPtr(ArrayList, ItemOffset) ArrayListGetTypedItem(ArrayList, ItemOffset, long*)
|
||||
# define ArrayListGetFloatPtr(ArrayList, ItemOffset) ArrayListGetTypedItem(ArrayList, ItemOffset, float*)
|
||||
# define ArrayListGetDoublePtr(ArrayList, ItemOffset) ArrayListGetTypedItem(ArrayList, ItemOffset, double*)
|
||||
# define ArrayListGetLgIndexPtr(ArrayList, ItemOffset) ArrayListGetTypedItem(ArrayList, ItemOffset, LgIndex_t*)
|
||||
# define ArrayListGetEntIndexPtr(ArrayList, ItemOffset) ArrayListGetTypedItem(ArrayList, ItemOffset, EntIndex_t*)
|
||||
# define ArrayListGetSmIntegerPtr(ArrayList, ItemOffset) ArrayListGetTypedItem(ArrayList, ItemOffset, SmInteger_t*)
|
||||
# define ArrayListGetBooleanPtr(ArrayList, ItemOffset) ArrayListGetTypedItem(ArrayList, ItemOffset, Boolean_t*)
|
||||
# define ArrayListGetArbParamPtr(ArrayList, ItemOffset) ArrayListGetTypedItem(ArrayList, ItemOffset, ArbParam_t*)
|
||||
# define ArrayListGetVoidPtr(ArrayList, ItemOffset) ArrayListGetTypedItem(ArrayList, ItemOffset, void*)
|
||||
# define ArrayListGetFunctionPtr(ArrayList, ItemOffset) ArrayListGetTypedItem(ArrayList, ItemOffset, (**)(void))
|
||||
#else
|
||||
# define ArrayListGetInternalRef ArrayListGetInternalRef_FUNC
|
||||
# define ArrayListGetItemInternalRef ArrayListGetItemInternalRef_FUNC
|
||||
# define ArrayListGetCount ArrayListGetCount_FUNC
|
||||
|
||||
# define ArrayListGetUnsignedChar(ArrayList, ItemOffset) (*((unsigned char *)ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))
|
||||
# define ArrayListGetUnsignedShort(ArrayList, ItemOffset) (*((unsigned short *)ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))
|
||||
# define ArrayListGetUnsignedInt(ArrayList, ItemOffset) (*((unsigned int *)ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))
|
||||
# define ArrayListGetUnsignedLong(ArrayList, ItemOffset) (*((unsigned long *)ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))
|
||||
# define ArrayListGetInt64(ArrayList, ItemOffset) (*((Int64_t *)ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))
|
||||
# define ArrayListGetChar(ArrayList, ItemOffset) (*((char *)ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))
|
||||
# define ArrayListGetShort(ArrayList, ItemOffset) (*((short *)ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))
|
||||
# define ArrayListGetInt(ArrayList, ItemOffset) (*((int *)ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))
|
||||
# define ArrayListGetLong(ArrayList, ItemOffset) (*((long *)ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))
|
||||
# define ArrayListGetFloat(ArrayList, ItemOffset) (*((float *)ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))
|
||||
# define ArrayListGetDouble(ArrayList, ItemOffset) (*((double *)ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))
|
||||
# define ArrayListGetLgIndex(ArrayList, ItemOffset) (*((LgIndex_t *)ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))
|
||||
# define ArrayListGetEntIndex(ArrayList, ItemOffset) (*((EntIndex_t *)ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))
|
||||
# define ArrayListGetSmInteger(ArrayList, ItemOffset) (*((SmInteger_t *)ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))
|
||||
# define ArrayListGetBoolean(ArrayList, ItemOffset) (*((Boolean_t *)ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))
|
||||
# define ArrayListGetArbParam(ArrayList, ItemOffset) (*((ArbParam_t *)ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))
|
||||
# define ArrayListGetUnsignedCharPtr(ArrayList, ItemOffset) (*((unsigned char * *)ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))
|
||||
# define ArrayListGetUnsignedShortPtr(ArrayList, ItemOffset) (*((unsigned short * *)ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))
|
||||
# define ArrayListGetUnsignedIntPtr(ArrayList, ItemOffset) (*((unsigned int * *)ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))
|
||||
# define ArrayListGetUnsignedLongPtr(ArrayList, ItemOffset) (*((unsigned long * *)ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))
|
||||
# define ArrayListGetInt64Ptr(ArrayList, ItemOffset) (*((Int64_t * *)ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))
|
||||
# define ArrayListGetCharPtr(ArrayList, ItemOffset) (*((char * *)ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))
|
||||
# define ArrayListGetShortPtr(ArrayList, ItemOffset) (*((short * *)ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))
|
||||
# define ArrayListGetIntPtr(ArrayList, ItemOffset) (*((int * *)ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))
|
||||
# define ArrayListGetLongPtr(ArrayList, ItemOffset) (*((long * *)ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))
|
||||
# define ArrayListGetFloatPtr(ArrayList, ItemOffset) (*((float * *)ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))
|
||||
# define ArrayListGetDoublePtr(ArrayList, ItemOffset) (*((double * *)ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))
|
||||
# define ArrayListGetLgIndexPtr(ArrayList, ItemOffset) (*((LgIndex_t * *)ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))
|
||||
# define ArrayListGetEntIndexPtr(ArrayList, ItemOffset) (*((EntIndex_t * *)ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))
|
||||
# define ArrayListGetSmIntegerPtr(ArrayList, ItemOffset) (*((SmInteger_t * *)ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))
|
||||
# define ArrayListGetBooleanPtr(ArrayList, ItemOffset) (*((Boolean_t * *)ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))
|
||||
# define ArrayListGetArbParamPtr(ArrayList, ItemOffset) (*((ArbParam_t * *)ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))
|
||||
# define ArrayListGetVoidPtr(ArrayList, ItemOffset) (*((void * *)ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))
|
||||
# define ArrayListGetFunctionPtr(ArrayList, ItemOffset) (*(((**)(void) *)ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))
|
||||
# define ArrayListGetUnsignedChar(ArrayList, ItemOffset) (*(static_cast<unsigned char*>(const_cast<void*>(ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))))
|
||||
# define ArrayListGetUnsignedShort(ArrayList, ItemOffset) (*(static_cast<unsigned short*>(const_cast<void*>(ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))))
|
||||
# define ArrayListGetUnsignedInt(ArrayList, ItemOffset) (*(static_cast<unsigned int*>(const_cast<void*>(ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))))
|
||||
# define ArrayListGetUnsignedLong(ArrayList, ItemOffset) (*(static_cast<unsigned long*>(const_cast<void*>(ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))))
|
||||
# define ArrayListGetInt64(ArrayList, ItemOffset) (*(static_cast<Int64_t*>(const_cast<void*>(ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))))
|
||||
# define ArrayListGetChar(ArrayList, ItemOffset) (*(static_cast<char*>(const_cast<void*>(ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))))
|
||||
# define ArrayListGetShort(ArrayList, ItemOffset) (*(static_cast<short*>(const_cast<void*>(ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))))
|
||||
# define ArrayListGetInt(ArrayList, ItemOffset) (*(static_cast<int*>(const_cast<void*>(ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))))
|
||||
# define ArrayListGetLong(ArrayList, ItemOffset) (*(static_cast<long*>(const_cast<void*>(ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))))
|
||||
# define ArrayListGetFloat(ArrayList, ItemOffset) (*(static_cast<float*>(const_cast<void*>(ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))))
|
||||
# define ArrayListGetDouble(ArrayList, ItemOffset) (*(static_cast<double*>(const_cast<void*>(ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))))
|
||||
# define ArrayListGetLgIndex(ArrayList, ItemOffset) (*(static_cast<LgIndex_t*>(const_cast<void*>(ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))))
|
||||
# define ArrayListGetEntIndex(ArrayList, ItemOffset) (*(static_cast<EntIndex_t*>(const_cast<void*>(ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))))
|
||||
# define ArrayListGetSmInteger(ArrayList, ItemOffset) (*(static_cast<SmInteger_t*>(const_cast<void*>(ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))))
|
||||
# define ArrayListGetBoolean(ArrayList, ItemOffset) (*(static_cast<Boolean_t*>(const_cast<void*>(ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))))
|
||||
# define ArrayListGetArbParam(ArrayList, ItemOffset) (*(static_cast<ArbParam_t*>(const_cast<void*>(ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))))
|
||||
# define ArrayListGetUnsignedCharPtr(ArrayList, ItemOffset) (*(static_cast<unsigned char**>(const_cast<void*>(ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))))
|
||||
# define ArrayListGetUnsignedShortPtr(ArrayList, ItemOffset) (*(static_cast<unsigned short**>(const_cast<void*>(ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))))
|
||||
# define ArrayListGetUnsignedIntPtr(ArrayList, ItemOffset) (*(static_cast<unsigned int**>(const_cast<void*>(ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))))
|
||||
# define ArrayListGetUnsignedLongPtr(ArrayList, ItemOffset) (*(static_cast<unsigned long**>(const_cast<void*>(ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))))
|
||||
# define ArrayListGetInt64Ptr(ArrayList, ItemOffset) (*(static_cast<Int64_t**>(const_cast<void*>(ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))))
|
||||
# define ArrayListGetCharPtr(ArrayList, ItemOffset) (*(static_cast<char**>(const_cast<void*>(ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))))
|
||||
# define ArrayListGetShortPtr(ArrayList, ItemOffset) (*(static_cast<short**>(const_cast<void*>(ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))))
|
||||
# define ArrayListGetIntPtr(ArrayList, ItemOffset) (*(static_cast<int**>(const_cast<void*>(ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))))
|
||||
# define ArrayListGetLongPtr(ArrayList, ItemOffset) (*(static_cast<long**>(const_cast<void*>(ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))))
|
||||
# define ArrayListGetFloatPtr(ArrayList, ItemOffset) (*(static_cast<float**>(const_cast<void*>(ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))))
|
||||
# define ArrayListGetDoublePtr(ArrayList, ItemOffset) (*(static_cast<double**>(const_cast<void*>(ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))))
|
||||
# define ArrayListGetLgIndexPtr(ArrayList, ItemOffset) (*(static_cast<LgIndex_t**>(const_cast<void*>(ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))))
|
||||
# define ArrayListGetEntIndexPtr(ArrayList, ItemOffset) (*(static_cast<EntIndex_t**>(const_cast<void*>(ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))))
|
||||
# define ArrayListGetSmIntegerPtr(ArrayList, ItemOffset) (*(static_cast<SmInteger_t**>(const_cast<void*>(ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))))
|
||||
# define ArrayListGetBooleanPtr(ArrayList, ItemOffset) (*(static_cast<Boolean_t**>(const_cast<void*>(ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))))
|
||||
# define ArrayListGetArbParamPtr(ArrayList, ItemOffset) (*(static_cast<ArbParam_t**>(const_cast<void*>(ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))))
|
||||
# define ArrayListGetVoidPtr(ArrayList, ItemOffset) (*(static_cast<void**>(const_cast<void*>(ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))))
|
||||
# define ArrayListGetFunctionPtr(ArrayList, ItemOffset) (*(static_cast<**(void)*>(const_cast<void*>(ArrayListGetItemInternalRef_FUNC(ArrayList, ItemOffset)))))
|
||||
#endif
|
||||
|
||||
#if !defined USE_MACROS_FOR_FUNCTIONS
|
||||
EXTERN const void *ArrayListGetInternalRef_FUNC(ArrayList_pa ArrayList);
|
||||
EXTERN const void *ArrayListGetItemInternalRef_FUNC(ArrayList_pa ArrayList,
|
||||
EXTERN void const* ArrayListGetInternalRef_FUNC(ArrayList_pa ArrayList);
|
||||
EXTERN void const* ArrayListGetItemInternalRef_FUNC(ArrayList_pa ArrayList,
|
||||
LgIndex_t ItemOffset);
|
||||
EXTERN LgIndex_t ArrayListGetCount_FUNC(ArrayList_pa ArrayList);
|
||||
#endif
|
||||
|
||||
#define ArrayListGetInternalRef_MACRO(ArrayList) ((const void *)((ArrayList)->Array))
|
||||
#define ArrayListGetItemInternalRef_MACRO(ArrayList, ItemOffset) ((const void *)&((ArrayList)->Array[(ItemOffset)*(ArrayList)->ItemSize]))
|
||||
#define ArrayListGetInternalRef_MACRO(ArrayList) static_cast<void const*>((ArrayList)->Array)
|
||||
#define ArrayListGetItemInternalRef_MACRO(ArrayList, ItemOffset) static_cast<void const*>(&((ArrayList)->Array[(ItemOffset)*(ArrayList)->ItemSize]))
|
||||
#define ArrayListGetCount_MACRO(ArrayList) ((ArrayList)->Count)
|
||||
#define ArrayListGetTypedArrayRef(ArrayList, NativeType) ((NativeType *)((ArrayList)->Array))
|
||||
#define ArrayListGetTypedArrayRef(ArrayList, NativeType) reinterpret_cast<NativeType*>((ArrayList)->Array)
|
||||
#define ArrayListGetTypedItem(ArrayList, ItemOffset, NativeType) (ArrayListGetTypedArrayRef(ArrayList,NativeType)[ItemOffset])
|
||||
|
||||
/**
|
||||
|
@ -542,85 +516,112 @@ EXTERN LgIndex_t ArrayListGetCount_FUNC(ArrayList_pa ArrayList);
|
|||
#define ArrayListSetTypedItem(ArrayList, ItemOffset, Item, NativeType) \
|
||||
((ArrayListOffsetWithinCapacity((ArrayList), (ItemOffset)) || \
|
||||
ArrayListEnlargeCapacity((ArrayList), (ItemOffset)+1)) \
|
||||
? (((((NativeType *)((ArrayList)->Array))[(ItemOffset)]) = (Item)), \
|
||||
? ((void)((ArrayListGetTypedArrayRef((ArrayList),NativeType)[(ItemOffset)]) = (Item)), \
|
||||
(((ItemOffset)+1 > (ArrayList)->Count) \
|
||||
? (((ArrayList)->Count = (ItemOffset)+1), TRUE) \
|
||||
: (TRUE))) \
|
||||
: (FALSE))
|
||||
|
||||
/**
|
||||
* Appends the item to the end of the list. This is similar to ArrayListSetTypedItem however it
|
||||
* needs not perform a bounds check which is always one beyond the end. This macro was added
|
||||
* primarily to remove compiler warnings caused by a comparison of the array list ArrayList->Count+1
|
||||
* always returning true when tested if larger than ArrayList->Count which occurs if you use the
|
||||
* ArrayListSetTypedItem as ArrayListSetTypedItem(ArrayList, (ArrayList)->Count, Item, NativeType).
|
||||
*
|
||||
* This is the workhorse of the append convenience macros that follow.
|
||||
*
|
||||
* param ArrayList
|
||||
* Array list target in which to set the item.
|
||||
* param Item
|
||||
* Item to append to the end of the array. Its native type must
|
||||
* match 'NativeType'
|
||||
* param NativeType
|
||||
* Native type of 'Item'.
|
||||
*
|
||||
* return
|
||||
* TRUE if sufficient memory permitted the operation, otherwise FALSE.
|
||||
*/
|
||||
#define ArrayListAppendTypedItem(ArrayList, Item, NativeType) \
|
||||
((ArrayListOffsetWithinCapacity((ArrayList), (ArrayList)->Count) || \
|
||||
ArrayListEnlargeCapacity((ArrayList), (ArrayList)->Count+1)) \
|
||||
? ((void)((ArrayListGetTypedArrayRef((ArrayList),NativeType)[(ArrayList)->Count]) = (Item)), \
|
||||
(((ArrayList)->Count = (ArrayList)->Count+1), TRUE)) \
|
||||
: (FALSE))
|
||||
|
||||
/**
|
||||
* This section provides macros for high speed setting and appending to an
|
||||
* array list of a known type. The only additional overhead incurred versus just
|
||||
* using a simple array is the cost of testing the array list capacity.
|
||||
*/
|
||||
#define ArrayListSetUnsignedChar(ArrayList, ItemOffset, Item) ArrayListSetTypedItem(ArrayList, ItemOffset, Item, unsigned char)
|
||||
#define ArrayListSetUnsignedShort(ArrayList, ItemOffset, Item) ArrayListSetTypedItem(ArrayList, ItemOffset, Item, unsigned short)
|
||||
#define ArrayListSetUnsignedInt(ArrayList, ItemOffset, Item) ArrayListSetTypedItem(ArrayList, ItemOffset, Item, unsigned int)
|
||||
#define ArrayListSetUnsignedLong(ArrayList, ItemOffset, Item) ArrayListSetTypedItem(ArrayList, ItemOffset, Item, unsigned long)
|
||||
#define ArrayListSetInt64(ArrayList, ItemOffset, Item) ArrayListSetTypedItem(ArrayList, ItemOffset, Item, Int64_t)
|
||||
#define ArrayListSetChar(ArrayList, ItemOffset, Item) ArrayListSetTypedItem(ArrayList, ItemOffset, Item, char)
|
||||
#define ArrayListSetShort(ArrayList, ItemOffset, Item) ArrayListSetTypedItem(ArrayList, ItemOffset, Item, short)
|
||||
#define ArrayListSetInt(ArrayList, ItemOffset, Item) ArrayListSetTypedItem(ArrayList, ItemOffset, Item, int)
|
||||
#define ArrayListSetLong(ArrayList, ItemOffset, Item) ArrayListSetTypedItem(ArrayList, ItemOffset, Item, long)
|
||||
#define ArrayListSetFloat(ArrayList, ItemOffset, Item) ArrayListSetTypedItem(ArrayList, ItemOffset, Item, float)
|
||||
#define ArrayListSetDouble(ArrayList, ItemOffset, Item) ArrayListSetTypedItem(ArrayList, ItemOffset, Item, double)
|
||||
#define ArrayListSetLgIndex(ArrayList, ItemOffset, Item) ArrayListSetTypedItem(ArrayList, ItemOffset, Item, LgIndex_t)
|
||||
#define ArrayListSetEntIndex(ArrayList, ItemOffset, Item) ArrayListSetTypedItem(ArrayList, ItemOffset, Item, EntIndex_t)
|
||||
#define ArrayListSetSmInteger(ArrayList, ItemOffset, Item) ArrayListSetTypedItem(ArrayList, ItemOffset, Item, SmInteger_t)
|
||||
#define ArrayListSetBoolean(ArrayList, ItemOffset, Item) ArrayListSetTypedItem(ArrayList, ItemOffset, Item, Boolean_t)
|
||||
#define ArrayListSetArbParam(ArrayList, ItemOffset, Item) ArrayListSetTypedItem(ArrayList, ItemOffset, Item, ArbParam_t)
|
||||
#define ArrayListSetUnsignedCharPtr(ArrayList, ItemOffset, Item) ArrayListSetTypedItem(ArrayList, ItemOffset, Item, unsigned char *)
|
||||
#define ArrayListSetUnsignedShortPtr(ArrayList, ItemOffset, Item) ArrayListSetTypedItem(ArrayList, ItemOffset, Item, unsigned short *)
|
||||
#define ArrayListSetUnsignedIntPtr(ArrayList, ItemOffset, Item) ArrayListSetTypedItem(ArrayList, ItemOffset, Item, unsigned int *)
|
||||
#define ArrayListSetUnsignedLongPtr(ArrayList, ItemOffset, Item) ArrayListSetTypedItem(ArrayList, ItemOffset, Item, unsigned long *)
|
||||
#define ArrayListSetInt64Ptr(ArrayList, ItemOffset, Item) ArrayListSetTypedItem(ArrayList, ItemOffset, Item, Int64_t *)
|
||||
#define ArrayListSetCharPtr(ArrayList, ItemOffset, Item) ArrayListSetTypedItem(ArrayList, ItemOffset, Item, char *)
|
||||
#define ArrayListSetShortPtr(ArrayList, ItemOffset, Item) ArrayListSetTypedItem(ArrayList, ItemOffset, Item, short *)
|
||||
#define ArrayListSetIntPtr(ArrayList, ItemOffset, Item) ArrayListSetTypedItem(ArrayList, ItemOffset, Item, int *)
|
||||
#define ArrayListSetLongPtr(ArrayList, ItemOffset, Item) ArrayListSetTypedItem(ArrayList, ItemOffset, Item, long *)
|
||||
#define ArrayListSetFloatPtr(ArrayList, ItemOffset, Item) ArrayListSetTypedItem(ArrayList, ItemOffset, Item, float *)
|
||||
#define ArrayListSetDoublePtr(ArrayList, ItemOffset, Item) ArrayListSetTypedItem(ArrayList, ItemOffset, Item, double *)
|
||||
#define ArrayListSetLgIndexPtr(ArrayList, ItemOffset, Item) ArrayListSetTypedItem(ArrayList, ItemOffset, Item, LgIndex_t *)
|
||||
#define ArrayListSetEntIndexPtr(ArrayList, ItemOffset, Item) ArrayListSetTypedItem(ArrayList, ItemOffset, Item, EntIndex_t *)
|
||||
#define ArrayListSetSmIntegerPtr(ArrayList, ItemOffset, Item) ArrayListSetTypedItem(ArrayList, ItemOffset, Item, SmInteger_t *)
|
||||
#define ArrayListSetBooleanPtr(ArrayList, ItemOffset, Item) ArrayListSetTypedItem(ArrayList, ItemOffset, Item, Boolean_t *)
|
||||
#define ArrayListSetArbParamPtr(ArrayList, ItemOffset, Item) ArrayListSetTypedItem(ArrayList, ItemOffset, Item, ArbParam_t *)
|
||||
#define ArrayListSetVoidPtr(ArrayList, ItemOffset, Item) ArrayListSetTypedItem(ArrayList, ItemOffset, Item, void *)
|
||||
#define ArrayListSetFunctionPtr(ArrayList, ItemOffset, Item) ArrayListSetTypedItem(ArrayList, ItemOffset, Item, (**)(void))
|
||||
#define ArrayListSetUnsignedChar(ArrayList, ItemOffset, Item) ArrayListSetTypedItem((ArrayList),(ItemOffset),(Item),unsigned char)
|
||||
#define ArrayListSetUnsignedShort(ArrayList, ItemOffset, Item) ArrayListSetTypedItem((ArrayList),(ItemOffset),(Item),unsigned short)
|
||||
#define ArrayListSetUnsignedInt(ArrayList, ItemOffset, Item) ArrayListSetTypedItem((ArrayList),(ItemOffset),(Item),unsigned int)
|
||||
#define ArrayListSetUnsignedLong(ArrayList, ItemOffset, Item) ArrayListSetTypedItem((ArrayList),(ItemOffset),(Item),unsigned long)
|
||||
#define ArrayListSetInt64(ArrayList, ItemOffset, Item) ArrayListSetTypedItem((ArrayList),(ItemOffset),(Item),Int64_t)
|
||||
#define ArrayListSetChar(ArrayList, ItemOffset, Item) ArrayListSetTypedItem((ArrayList),(ItemOffset),(Item),char)
|
||||
#define ArrayListSetShort(ArrayList, ItemOffset, Item) ArrayListSetTypedItem((ArrayList),(ItemOffset),(Item),short)
|
||||
#define ArrayListSetInt(ArrayList, ItemOffset, Item) ArrayListSetTypedItem((ArrayList),(ItemOffset),(Item),int)
|
||||
#define ArrayListSetLong(ArrayList, ItemOffset, Item) ArrayListSetTypedItem((ArrayList),(ItemOffset),(Item),long)
|
||||
#define ArrayListSetFloat(ArrayList, ItemOffset, Item) ArrayListSetTypedItem((ArrayList),(ItemOffset),(Item),float)
|
||||
#define ArrayListSetDouble(ArrayList, ItemOffset, Item) ArrayListSetTypedItem((ArrayList),(ItemOffset),(Item),double)
|
||||
#define ArrayListSetLgIndex(ArrayList, ItemOffset, Item) ArrayListSetTypedItem((ArrayList),(ItemOffset),(Item),LgIndex_t)
|
||||
#define ArrayListSetEntIndex(ArrayList, ItemOffset, Item) ArrayListSetTypedItem((ArrayList),(ItemOffset),(Item),EntIndex_t)
|
||||
#define ArrayListSetSmInteger(ArrayList, ItemOffset, Item) ArrayListSetTypedItem((ArrayList),(ItemOffset),(Item),SmInteger_t)
|
||||
#define ArrayListSetBoolean(ArrayList, ItemOffset, Item) ArrayListSetTypedItem((ArrayList),(ItemOffset),(Item),Boolean_t)
|
||||
#define ArrayListSetArbParam(ArrayList, ItemOffset, Item) ArrayListSetTypedItem((ArrayList),(ItemOffset),(Item),ArbParam_t)
|
||||
#define ArrayListSetUnsignedCharPtr(ArrayList, ItemOffset, Item) ArrayListSetTypedItem((ArrayList),(ItemOffset),(Item),unsigned char*)
|
||||
#define ArrayListSetUnsignedShortPtr(ArrayList, ItemOffset, Item) ArrayListSetTypedItem((ArrayList),(ItemOffset),(Item),unsigned short*)
|
||||
#define ArrayListSetUnsignedIntPtr(ArrayList, ItemOffset, Item) ArrayListSetTypedItem((ArrayList),(ItemOffset),(Item),unsigned int*)
|
||||
#define ArrayListSetUnsignedLongPtr(ArrayList, ItemOffset, Item) ArrayListSetTypedItem((ArrayList),(ItemOffset),(Item),unsigned long*)
|
||||
#define ArrayListSetInt64Ptr(ArrayList, ItemOffset, Item) ArrayListSetTypedItem((ArrayList),(ItemOffset),(Item),Int64_t*)
|
||||
#define ArrayListSetCharPtr(ArrayList, ItemOffset, Item) ArrayListSetTypedItem((ArrayList),(ItemOffset),(Item),char*)
|
||||
#define ArrayListSetShortPtr(ArrayList, ItemOffset, Item) ArrayListSetTypedItem((ArrayList),(ItemOffset),(Item),short*)
|
||||
#define ArrayListSetIntPtr(ArrayList, ItemOffset, Item) ArrayListSetTypedItem((ArrayList),(ItemOffset),(Item),int*)
|
||||
#define ArrayListSetLongPtr(ArrayList, ItemOffset, Item) ArrayListSetTypedItem((ArrayList),(ItemOffset),(Item),long*)
|
||||
#define ArrayListSetFloatPtr(ArrayList, ItemOffset, Item) ArrayListSetTypedItem((ArrayList),(ItemOffset),(Item),float*)
|
||||
#define ArrayListSetDoublePtr(ArrayList, ItemOffset, Item) ArrayListSetTypedItem((ArrayList),(ItemOffset),(Item),double*)
|
||||
#define ArrayListSetLgIndexPtr(ArrayList, ItemOffset, Item) ArrayListSetTypedItem((ArrayList),(ItemOffset),(Item),LgIndex_t*)
|
||||
#define ArrayListSetEntIndexPtr(ArrayList, ItemOffset, Item) ArrayListSetTypedItem((ArrayList),(ItemOffset),(Item),EntIndex_t*)
|
||||
#define ArrayListSetSmIntegerPtr(ArrayList, ItemOffset, Item) ArrayListSetTypedItem((ArrayList),(ItemOffset),(Item),SmInteger_t*)
|
||||
#define ArrayListSetBooleanPtr(ArrayList, ItemOffset, Item) ArrayListSetTypedItem((ArrayList),(ItemOffset),(Item),Boolean_t*)
|
||||
#define ArrayListSetArbParamPtr(ArrayList, ItemOffset, Item) ArrayListSetTypedItem((ArrayList),(ItemOffset),(Item),ArbParam_t*)
|
||||
#define ArrayListSetVoidPtr(ArrayList, ItemOffset, Item) ArrayListSetTypedItem((ArrayList),(ItemOffset),(Item),void*)
|
||||
#define ArrayListSetFunctionPtr(ArrayList, ItemOffset, Item) ArrayListSetTypedItem((ArrayList),(ItemOffset),(Item),(**)(void))
|
||||
|
||||
#define ArrayListAppendUnsignedChar(ArrayList, Item) ArrayListSetTypedItem(ArrayList, (ArrayList)->Count, Item, unsigned char)
|
||||
#define ArrayListAppendUnsignedShort(ArrayList, Item) ArrayListSetTypedItem(ArrayList, (ArrayList)->Count, Item, unsigned short)
|
||||
#define ArrayListAppendUnsignedInt(ArrayList, Item) ArrayListSetTypedItem(ArrayList, (ArrayList)->Count, Item, unsigned int)
|
||||
#define ArrayListAppendUnsignedLong(ArrayList, Item) ArrayListSetTypedItem(ArrayList, (ArrayList)->Count, Item, unsigned long)
|
||||
#define ArrayListAppendInt64(ArrayList, Item) ArrayListSetTypedItem(ArrayList, (ArrayList)->Count, Item, Int64_t)
|
||||
#define ArrayListAppendChar(ArrayList, Item) ArrayListSetTypedItem(ArrayList, (ArrayList)->Count, Item, char)
|
||||
#define ArrayListAppendShort(ArrayList, Item) ArrayListSetTypedItem(ArrayList, (ArrayList)->Count, Item, short)
|
||||
#define ArrayListAppendInt(ArrayList, Item) ArrayListSetTypedItem(ArrayList, (ArrayList)->Count, Item, int)
|
||||
#define ArrayListAppendLong(ArrayList, Item) ArrayListSetTypedItem(ArrayList, (ArrayList)->Count, Item, long)
|
||||
#define ArrayListAppendFloat(ArrayList, Item) ArrayListSetTypedItem(ArrayList, (ArrayList)->Count, Item, float)
|
||||
#define ArrayListAppendDouble(ArrayList, Item) ArrayListSetTypedItem(ArrayList, (ArrayList)->Count, Item, double)
|
||||
#define ArrayListAppendLgIndex(ArrayList, Item) ArrayListSetTypedItem(ArrayList, (ArrayList)->Count, Item, LgIndex_t)
|
||||
#define ArrayListAppendEntIndex(ArrayList, Item) ArrayListSetTypedItem(ArrayList, (ArrayList)->Count, Item, EntIndex_t)
|
||||
#define ArrayListAppendSmInteger(ArrayList, Item) ArrayListSetTypedItem(ArrayList, (ArrayList)->Count, Item, SmInteger_t)
|
||||
#define ArrayListAppendBoolean(ArrayList, Item) ArrayListSetTypedItem(ArrayList, (ArrayList)->Count, Item, Boolean_t)
|
||||
#define ArrayListAppendArbParam(ArrayList, Item) ArrayListSetTypedItem(ArrayList, (ArrayList)->Count, Item, ArbParam_t)
|
||||
#define ArrayListAppendUnsignedCharPtr(ArrayList, Item) ArrayListSetTypedItem(ArrayList, (ArrayList)->Count, Item, unsigned char *)
|
||||
#define ArrayListAppendUnsignedShortPtr(ArrayList, Item) ArrayListSetTypedItem(ArrayList, (ArrayList)->Count, Item, unsigned short *)
|
||||
#define ArrayListAppendUnsignedIntPtr(ArrayList, Item) ArrayListSetTypedItem(ArrayList, (ArrayList)->Count, Item, unsigned int *)
|
||||
#define ArrayListAppendUnsignedLongPtr(ArrayList, Item) ArrayListSetTypedItem(ArrayList, (ArrayList)->Count, Item, unsigned long *)
|
||||
#define ArrayListAppendInt64Ptr(ArrayList, Item) ArrayListSetTypedItem(ArrayList, (ArrayList)->Count, Item, Int64_t *)
|
||||
#define ArrayListAppendCharPtr(ArrayList, Item) ArrayListSetTypedItem(ArrayList, (ArrayList)->Count, Item, char *)
|
||||
#define ArrayListAppendShortPtr(ArrayList, Item) ArrayListSetTypedItem(ArrayList, (ArrayList)->Count, Item, short *)
|
||||
#define ArrayListAppendIntPtr(ArrayList, Item) ArrayListSetTypedItem(ArrayList, (ArrayList)->Count, Item, int *)
|
||||
#define ArrayListAppendLongPtr(ArrayList, Item) ArrayListSetTypedItem(ArrayList, (ArrayList)->Count, Item, long *)
|
||||
#define ArrayListAppendFloatPtr(ArrayList, Item) ArrayListSetTypedItem(ArrayList, (ArrayList)->Count, Item, float *)
|
||||
#define ArrayListAppendDoublePtr(ArrayList, Item) ArrayListSetTypedItem(ArrayList, (ArrayList)->Count, Item, double *)
|
||||
#define ArrayListAppendLgIndexPtr(ArrayList, Item) ArrayListSetTypedItem(ArrayList, (ArrayList)->Count, Item, LgIndex_t *)
|
||||
#define ArrayListAppendEntIndexPtr(ArrayList, Item) ArrayListSetTypedItem(ArrayList, (ArrayList)->Count, Item, EntIndex_t *)
|
||||
#define ArrayListAppendSmIntegerPtr(ArrayList, Item) ArrayListSetTypedItem(ArrayList, (ArrayList)->Count, Item, SmInteger_t *)
|
||||
#define ArrayListAppendBooleanPtr(ArrayList, Item) ArrayListSetTypedItem(ArrayList, (ArrayList)->Count, Item, Boolean_t *)
|
||||
#define ArrayListAppendArbParamPtr(ArrayList, Item) ArrayListSetTypedItem(ArrayList, (ArrayList)->Count, Item, ArbParam_t *)
|
||||
#define ArrayListAppendVoidPtr(ArrayList, Item) ArrayListSetTypedItem(ArrayList, (ArrayList)->Count, Item, void *)
|
||||
#define ArrayListAppendFunctionPtr(ArrayList, Item) ArrayListSetTypedItem(ArrayList, (ArrayList)->Count, Item, (**)(void))
|
||||
#define ArrayListAppendUnsignedChar(ArrayList, Item) ArrayListAppendTypedItem((ArrayList),(Item),unsigned char)
|
||||
#define ArrayListAppendUnsignedShort(ArrayList, Item) ArrayListAppendTypedItem((ArrayList),(Item),unsigned short)
|
||||
#define ArrayListAppendUnsignedInt(ArrayList, Item) ArrayListAppendTypedItem((ArrayList),(Item),unsigned int)
|
||||
#define ArrayListAppendUnsignedLong(ArrayList, Item) ArrayListAppendTypedItem((ArrayList),(Item),unsigned long)
|
||||
#define ArrayListAppendInt64(ArrayList, Item) ArrayListAppendTypedItem((ArrayList),(Item),Int64_t)
|
||||
#define ArrayListAppendChar(ArrayList, Item) ArrayListAppendTypedItem((ArrayList),(Item),char)
|
||||
#define ArrayListAppendShort(ArrayList, Item) ArrayListAppendTypedItem((ArrayList),(Item),short)
|
||||
#define ArrayListAppendInt(ArrayList, Item) ArrayListAppendTypedItem((ArrayList),(Item),int)
|
||||
#define ArrayListAppendLong(ArrayList, Item) ArrayListAppendTypedItem((ArrayList),(Item),long)
|
||||
#define ArrayListAppendFloat(ArrayList, Item) ArrayListAppendTypedItem((ArrayList),(Item),float)
|
||||
#define ArrayListAppendDouble(ArrayList, Item) ArrayListAppendTypedItem((ArrayList),(Item),double)
|
||||
#define ArrayListAppendLgIndex(ArrayList, Item) ArrayListAppendTypedItem((ArrayList),(Item),LgIndex_t)
|
||||
#define ArrayListAppendEntIndex(ArrayList, Item) ArrayListAppendTypedItem((ArrayList),(Item),EntIndex_t)
|
||||
#define ArrayListAppendSmInteger(ArrayList, Item) ArrayListAppendTypedItem((ArrayList),(Item),SmInteger_t)
|
||||
#define ArrayListAppendBoolean(ArrayList, Item) ArrayListAppendTypedItem((ArrayList),(Item),Boolean_t)
|
||||
#define ArrayListAppendArbParam(ArrayList, Item) ArrayListAppendTypedItem((ArrayList),(Item),ArbParam_t)
|
||||
#define ArrayListAppendUnsignedCharPtr(ArrayList, Item) ArrayListAppendTypedItem((ArrayList),(Item),unsigned char*)
|
||||
#define ArrayListAppendUnsignedShortPtr(ArrayList, Item) ArrayListAppendTypedItem((ArrayList),(Item),unsigned short*)
|
||||
#define ArrayListAppendUnsignedIntPtr(ArrayList, Item) ArrayListAppendTypedItem((ArrayList),(Item),unsigned int*)
|
||||
#define ArrayListAppendUnsignedLongPtr(ArrayList, Item) ArrayListAppendTypedItem((ArrayList),(Item),unsigned long*)
|
||||
#define ArrayListAppendInt64Ptr(ArrayList, Item) ArrayListAppendTypedItem((ArrayList),(Item),Int64_t*)
|
||||
#define ArrayListAppendCharPtr(ArrayList, Item) ArrayListAppendTypedItem((ArrayList),(Item),char*)
|
||||
#define ArrayListAppendShortPtr(ArrayList, Item) ArrayListAppendTypedItem((ArrayList),(Item),short*)
|
||||
#define ArrayListAppendIntPtr(ArrayList, Item) ArrayListAppendTypedItem((ArrayList),(Item),int*)
|
||||
#define ArrayListAppendLongPtr(ArrayList, Item) ArrayListAppendTypedItem((ArrayList),(Item),long*)
|
||||
#define ArrayListAppendFloatPtr(ArrayList, Item) ArrayListAppendTypedItem((ArrayList),(Item),float*)
|
||||
#define ArrayListAppendDoublePtr(ArrayList, Item) ArrayListAppendTypedItem((ArrayList),(Item),double*)
|
||||
#define ArrayListAppendLgIndexPtr(ArrayList, Item) ArrayListAppendTypedItem((ArrayList),(Item),LgIndex_t*)
|
||||
#define ArrayListAppendEntIndexPtr(ArrayList, Item) ArrayListAppendTypedItem((ArrayList),(Item),EntIndex_t*)
|
||||
#define ArrayListAppendSmIntegerPtr(ArrayList, Item) ArrayListAppendTypedItem((ArrayList),(Item),SmInteger_t*)
|
||||
#define ArrayListAppendBooleanPtr(ArrayList, Item) ArrayListAppendTypedItem((ArrayList),(Item),Boolean_t*)
|
||||
#define ArrayListAppendArbParamPtr(ArrayList, Item) ArrayListAppendTypedItem((ArrayList),(Item),ArbParam_t*)
|
||||
#define ArrayListAppendVoidPtr(ArrayList, Item) ArrayListAppendTypedItem((ArrayList),(Item),void*)
|
||||
#define ArrayListAppendFunctionPtr(ArrayList, Item) ArrayListAppendTypedItem((ArrayList),(Item),(**)(void))
|
||||
|
||||
#endif /* ARRLIST_h */
|
||||
|
|
|
@ -1,31 +1,8 @@
|
|||
/*
|
||||
* NOTICE and LICENSE for Tecplot Input/Output Library (TecIO) - OpenFOAM
|
||||
*
|
||||
* Copyright (C) 1988-2009 Tecplot, Inc. All rights reserved worldwide.
|
||||
*
|
||||
* Tecplot hereby grants OpenCFD limited authority to distribute without
|
||||
* alteration the source code to the Tecplot Input/Output library, known
|
||||
* as TecIO, as part of its distribution of OpenFOAM and the
|
||||
* OpenFOAM_to_Tecplot converter. Users of this converter are also hereby
|
||||
* granted access to the TecIO source code, and may redistribute it for the
|
||||
* purpose of maintaining the converter. However, no authority is granted
|
||||
* to alter the TecIO source code in any form or manner.
|
||||
*
|
||||
* This limited grant of distribution does not supersede Tecplot, Inc.'s
|
||||
* copyright in TecIO. Contact Tecplot, Inc. for further information.
|
||||
*
|
||||
* Tecplot, Inc.
|
||||
* 3535 Factoria Blvd, Ste. 550
|
||||
* Bellevue, WA 98006, USA
|
||||
* Phone: +1 425 653 1200
|
||||
* http://www.tecplot.com/
|
||||
*
|
||||
*/
|
||||
/*
|
||||
*****************************************************************
|
||||
*****************************************************************
|
||||
******* ********
|
||||
****** Copyright (C) 1988-2008 Tecplot, Inc. *******
|
||||
****** Copyright (C) 1988-2010 Tecplot, Inc. *******
|
||||
******* ********
|
||||
*****************************************************************
|
||||
*****************************************************************
|
||||
|
@ -42,6 +19,27 @@
|
|||
# define EXTERN extern
|
||||
#endif
|
||||
|
||||
/*
|
||||
* For building pltview.exe under Windows, we use
|
||||
* tecio.dll (which is linked to pltview).
|
||||
* Since pltview.exe uses a few of the
|
||||
* functions here, they need to be exported into
|
||||
* the tecio.dll, thus "TECXXX.h" is included for the
|
||||
* LIBFUNCTION & LIBCALL keywords. They are not
|
||||
* documented with the other TECXXX() functions,
|
||||
* however.
|
||||
*
|
||||
* If pltview requires other AuxData functions
|
||||
* in the future, they can be added to the dll
|
||||
* by adding LIBFUNCTION & LIBCALL as in
|
||||
* AuxDataDealloc(), etc. below.
|
||||
*
|
||||
* When building the tecplot kernel, LIBFUNCTION
|
||||
* and LIBCALL are nop's.
|
||||
*
|
||||
*/
|
||||
#include "TECXXX.h"
|
||||
|
||||
/**
|
||||
*/
|
||||
EXTERN Boolean_t AuxDataIsValidNameChar(char Char,
|
||||
|
@ -52,11 +50,11 @@ EXTERN Boolean_t AuxDataIsValidName(const char *Name);
|
|||
|
||||
/**
|
||||
*/
|
||||
EXTERN AuxData_pa AuxDataAlloc(void);
|
||||
EXTERN AuxData_pa AuxDataAlloc(ArbParam_t Owner);
|
||||
|
||||
/**
|
||||
*/
|
||||
EXTERN void AuxDataDealloc(AuxData_pa *AuxData);
|
||||
LIBFUNCTION void LIBCALL AuxDataDealloc(AuxData_pa *AuxData);
|
||||
|
||||
/**
|
||||
*/
|
||||
|
@ -69,7 +67,7 @@ EXTERN AuxData_pa AuxDataCopy(AuxData_pa AuxData,
|
|||
|
||||
/**
|
||||
*/
|
||||
EXTERN LgIndex_t AuxDataGetNumItems(AuxData_pa AuxData);
|
||||
LIBFUNCTION LgIndex_t LIBCALL AuxDataGetNumItems(AuxData_pa AuxData);
|
||||
|
||||
/**
|
||||
*/
|
||||
|
@ -78,12 +76,12 @@ EXTERN Boolean_t AuxDataGetItemIndex(AuxData_pa AuxData,
|
|||
LgIndex_t *ItemIndex);
|
||||
/**
|
||||
*/
|
||||
EXTERN void AuxDataGetItemByIndex(AuxData_pa AuxData,
|
||||
LgIndex_t Index,
|
||||
const char **Name,
|
||||
ArbParam_t *Value,
|
||||
AuxDataType_e *Type,
|
||||
Boolean_t *Retain);
|
||||
LIBFUNCTION void LIBCALL AuxDataGetItemByIndex(AuxData_pa AuxData,
|
||||
LgIndex_t Index,
|
||||
const char **Name,
|
||||
ArbParam_t *Value,
|
||||
AuxDataType_e *Type,
|
||||
Boolean_t *Retain);
|
||||
|
||||
/**
|
||||
*/
|
||||
|
@ -104,7 +102,7 @@ EXTERN Boolean_t AuxDataGetBooleanItemByName(AuxData_pa AuxData,
|
|||
/**
|
||||
*/
|
||||
EXTERN Boolean_t AuxDataSetItem(AuxData_pa AuxData,
|
||||
const char *Name,
|
||||
char const* Name,
|
||||
ArbParam_t Value,
|
||||
AuxDataType_e Type,
|
||||
Boolean_t Retain);
|
||||
|
|
|
@ -0,0 +1,254 @@
|
|||
#ifndef TECPLOT_CHARTYPE
|
||||
#define TECPLOT_CHARTYPE
|
||||
/*
|
||||
******************************************************************
|
||||
******************************************************************
|
||||
******* ********
|
||||
****** (C) 1988-2010 Tecplot, Inc. *******
|
||||
******* ********
|
||||
******************************************************************
|
||||
******************************************************************
|
||||
*/
|
||||
|
||||
#if defined EXTERN
|
||||
#undef EXTERN
|
||||
#endif
|
||||
#if defined CHARTYPEMODULE
|
||||
#define EXTERN
|
||||
#else
|
||||
#define EXTERN extern
|
||||
#endif
|
||||
|
||||
|
||||
/**
|
||||
*/
|
||||
namespace tecplot
|
||||
{
|
||||
|
||||
/**
|
||||
* Same as std::isspace() with the classic default C locale for portable
|
||||
* comparisons.
|
||||
*/
|
||||
template <typename CHAR_TYPE>
|
||||
inline bool isspace(CHAR_TYPE ch,
|
||||
std::locale const& loc = std::locale::classic())
|
||||
{
|
||||
#if defined SUNX
|
||||
REQUIRE(loc == std::locale::classic());
|
||||
return ::isspace(static_cast<int>(ch));
|
||||
#else
|
||||
REQUIRE(std::has_facet<std::ctype<wchar_t> >(loc));
|
||||
return std::use_facet<std::ctype<wchar_t> >(loc).is(std::ctype_base::space, static_cast<wchar_t>(ch));
|
||||
#endif
|
||||
}
|
||||
|
||||
/**
|
||||
* Same as std::isprint() with the classic default C locale for portable
|
||||
* comparisons.
|
||||
*/
|
||||
template <typename CHAR_TYPE>
|
||||
inline bool isprint(CHAR_TYPE ch,
|
||||
std::locale const& loc = std::locale::classic())
|
||||
{
|
||||
#if defined SUNX
|
||||
REQUIRE(loc == std::locale::classic());
|
||||
return ::isprint(static_cast<int>(ch));
|
||||
#else
|
||||
REQUIRE(std::has_facet<std::ctype<wchar_t> >(loc));
|
||||
return std::use_facet<std::ctype<wchar_t> >(loc).is(std::ctype_base::print, static_cast<wchar_t>(ch));
|
||||
#endif
|
||||
}
|
||||
|
||||
/**
|
||||
* Same as std::iscntrl() with the classic default C locale for portable
|
||||
* comparisons.
|
||||
*/
|
||||
template <typename CHAR_TYPE>
|
||||
inline bool iscntrl(CHAR_TYPE ch,
|
||||
std::locale const& loc = std::locale::classic())
|
||||
{
|
||||
#if defined SUNX
|
||||
REQUIRE(loc == std::locale::classic());
|
||||
return ::iscntrl(static_cast<int>(ch));
|
||||
#else
|
||||
REQUIRE(std::has_facet<std::ctype<wchar_t> >(loc));
|
||||
return std::use_facet<std::ctype<wchar_t> >(loc).is(std::ctype_base::cntrl, static_cast<wchar_t>(ch));
|
||||
#endif
|
||||
}
|
||||
|
||||
/**
|
||||
* Same as std::isupper() with the classic default C locale for portable
|
||||
* comparisons.
|
||||
*/
|
||||
template <typename CHAR_TYPE>
|
||||
inline bool isupper(CHAR_TYPE ch,
|
||||
std::locale const& loc = std::locale::classic())
|
||||
{
|
||||
#if defined SUNX
|
||||
REQUIRE(loc == std::locale::classic());
|
||||
return ::isupper(static_cast<int>(ch));
|
||||
#else
|
||||
REQUIRE(std::has_facet<std::ctype<wchar_t> >(loc));
|
||||
return std::use_facet<std::ctype<wchar_t> >(loc).is(std::ctype_base::upper, static_cast<wchar_t>(ch));
|
||||
#endif
|
||||
}
|
||||
|
||||
/**
|
||||
* Same as std::islower() with the classic default C locale for portable
|
||||
* comparisons.
|
||||
*/
|
||||
template <typename CHAR_TYPE>
|
||||
inline bool islower(CHAR_TYPE ch,
|
||||
std::locale const& loc = std::locale::classic())
|
||||
{
|
||||
#if defined SUNX
|
||||
REQUIRE(loc == std::locale::classic());
|
||||
return ::islower(static_cast<int>(ch));
|
||||
#else
|
||||
REQUIRE(std::has_facet<std::ctype<wchar_t> >(loc));
|
||||
return std::use_facet<std::ctype<wchar_t> >(loc).is(std::ctype_base::lower, static_cast<wchar_t>(ch));
|
||||
#endif
|
||||
}
|
||||
|
||||
/**
|
||||
* Same as std::isalpha() with the classic default C locale for portable
|
||||
* comparisons.
|
||||
*/
|
||||
template <typename CHAR_TYPE>
|
||||
inline bool isalpha(CHAR_TYPE ch,
|
||||
std::locale const& loc = std::locale::classic())
|
||||
{
|
||||
#if defined SUNX
|
||||
REQUIRE(loc == std::locale::classic());
|
||||
return ::isalpha(static_cast<int>(ch));
|
||||
#else
|
||||
REQUIRE(std::has_facet<std::ctype<wchar_t> >(loc));
|
||||
return std::use_facet<std::ctype<wchar_t> >(loc).is(std::ctype_base::alpha, static_cast<wchar_t>(ch));
|
||||
#endif
|
||||
}
|
||||
|
||||
/**
|
||||
* Same as std::isdigit() with the classic default C locale for portable
|
||||
* comparisons.
|
||||
*/
|
||||
template <typename CHAR_TYPE>
|
||||
inline bool isdigit(CHAR_TYPE ch,
|
||||
std::locale const& loc = std::locale::classic())
|
||||
{
|
||||
#if defined SUNX
|
||||
REQUIRE(loc == std::locale::classic());
|
||||
return ::isdigit(static_cast<int>(ch));
|
||||
#else
|
||||
REQUIRE(std::has_facet<std::ctype<wchar_t> >(loc));
|
||||
return std::use_facet<std::ctype<wchar_t> >(loc).is(std::ctype_base::digit, static_cast<wchar_t>(ch));
|
||||
#endif
|
||||
}
|
||||
|
||||
/**
|
||||
* Same as std::ispunct() with the classic default C locale for portable
|
||||
* comparisons.
|
||||
*/
|
||||
template <typename CHAR_TYPE>
|
||||
inline bool ispunct(CHAR_TYPE ch,
|
||||
std::locale const& loc = std::locale::classic())
|
||||
{
|
||||
#if defined SUNX
|
||||
REQUIRE(loc == std::locale::classic());
|
||||
return ::ispunct(static_cast<int>(ch));
|
||||
#else
|
||||
REQUIRE(std::has_facet<std::ctype<wchar_t> >(loc));
|
||||
return std::use_facet<std::ctype<wchar_t> >(loc).is(std::ctype_base::punct, static_cast<wchar_t>(ch));
|
||||
#endif
|
||||
}
|
||||
|
||||
/**
|
||||
* Same as std::isxdigit() with the classic default C locale for portable
|
||||
* comparisons.
|
||||
*/
|
||||
template <typename CHAR_TYPE>
|
||||
inline bool isxdigit(CHAR_TYPE ch,
|
||||
std::locale const& loc = std::locale::classic())
|
||||
{
|
||||
#if defined SUNX
|
||||
REQUIRE(loc == std::locale::classic());
|
||||
return ::isxdigit(static_cast<int>(ch));
|
||||
#else
|
||||
REQUIRE(std::has_facet<std::ctype<wchar_t> >(loc));
|
||||
return std::use_facet<std::ctype<wchar_t> >(loc).is(std::ctype_base::xdigit, static_cast<wchar_t>(ch));
|
||||
#endif
|
||||
}
|
||||
|
||||
/**
|
||||
* Same as std::isalnum() with the classic default C locale for portable
|
||||
* comparisons.
|
||||
*/
|
||||
template <typename CHAR_TYPE>
|
||||
inline bool isalnum(CHAR_TYPE ch,
|
||||
std::locale const& loc = std::locale::classic())
|
||||
{
|
||||
#if defined SUNX
|
||||
REQUIRE(loc == std::locale::classic());
|
||||
return ::isalnum(static_cast<int>(ch));
|
||||
#else
|
||||
REQUIRE(std::has_facet<std::ctype<wchar_t> >(loc));
|
||||
return std::use_facet<std::ctype<wchar_t> >(loc).is(std::ctype_base::alnum, static_cast<wchar_t>(ch));
|
||||
#endif
|
||||
}
|
||||
|
||||
/**
|
||||
* Same as std::isgraph() with the classic default C locale for portable
|
||||
* comparisons.
|
||||
*/
|
||||
template <typename CHAR_TYPE>
|
||||
inline bool isgraph(CHAR_TYPE ch,
|
||||
std::locale const& loc = std::locale::classic())
|
||||
{
|
||||
#if defined SUNX
|
||||
REQUIRE(loc == std::locale::classic());
|
||||
return ::isgraph(static_cast<int>(ch));
|
||||
#else
|
||||
REQUIRE(std::has_facet<std::ctype<wchar_t> >(loc));
|
||||
return std::use_facet<std::ctype<wchar_t> >(loc).is(std::ctype_base::graph, static_cast<wchar_t>(ch));
|
||||
#endif
|
||||
}
|
||||
|
||||
/**
|
||||
* Same as std::toupper() with the classic default C locale for portable
|
||||
* comparisons.
|
||||
*/
|
||||
template <typename CHAR_TYPE>
|
||||
inline CHAR_TYPE toupper(CHAR_TYPE ch,
|
||||
std::locale const& loc = std::locale::classic())
|
||||
{
|
||||
#if defined SUNX
|
||||
REQUIRE(loc == std::locale::classic());
|
||||
return static_cast<CHAR_TYPE>(::toupper(static_cast<int>(ch)));
|
||||
#else
|
||||
REQUIRE(std::has_facet<std::ctype<wchar_t> >(loc));
|
||||
return static_cast<CHAR_TYPE>(
|
||||
std::use_facet<std::ctype<wchar_t> >(loc).toupper(static_cast<wchar_t>(ch)));
|
||||
#endif
|
||||
}
|
||||
|
||||
/**
|
||||
* Same as std::tolower() with the classic default C locale for portable
|
||||
* comparisons.
|
||||
*/
|
||||
template <typename CHAR_TYPE>
|
||||
inline CHAR_TYPE tolower(CHAR_TYPE ch,
|
||||
std::locale const& loc = std::locale::classic())
|
||||
{
|
||||
#if defined SUNX
|
||||
REQUIRE(loc == std::locale::classic());
|
||||
return static_cast<CHAR_TYPE>(::tolower(static_cast<int>(ch)));
|
||||
#else
|
||||
REQUIRE(std::has_facet<std::ctype<wchar_t> >(loc));
|
||||
return static_cast<CHAR_TYPE>(
|
||||
std::use_facet<std::ctype<wchar_t> >(loc).tolower(static_cast<wchar_t>(ch)));
|
||||
#endif
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
#endif
|
||||
|
|
@ -1,26 +1,3 @@
|
|||
/*
|
||||
* NOTICE and LICENSE for Tecplot Input/Output Library (TecIO) - OpenFOAM
|
||||
*
|
||||
* Copyright (C) 1988-2009 Tecplot, Inc. All rights reserved worldwide.
|
||||
*
|
||||
* Tecplot hereby grants OpenCFD limited authority to distribute without
|
||||
* alteration the source code to the Tecplot Input/Output library, known
|
||||
* as TecIO, as part of its distribution of OpenFOAM and the
|
||||
* OpenFOAM_to_Tecplot converter. Users of this converter are also hereby
|
||||
* granted access to the TecIO source code, and may redistribute it for the
|
||||
* purpose of maintaining the converter. However, no authority is granted
|
||||
* to alter the TecIO source code in any form or manner.
|
||||
*
|
||||
* This limited grant of distribution does not supersede Tecplot, Inc.'s
|
||||
* copyright in TecIO. Contact Tecplot, Inc. for further information.
|
||||
*
|
||||
* Tecplot, Inc.
|
||||
* 3535 Factoria Blvd, Ste. 550
|
||||
* Bellevue, WA 98006, USA
|
||||
* Phone: +1 425 653 1200
|
||||
* http://www.tecplot.com/
|
||||
*
|
||||
*/
|
||||
#if defined EXTERN
|
||||
#undef EXTERN
|
||||
#endif
|
||||
|
@ -47,6 +24,7 @@ EXTERN Boolean_t ReadDataFileHeader(FileStream_s *FileStream,
|
|||
StringList_pa **CustomLabelBase,
|
||||
StringList_pa *UserRec,
|
||||
AuxData_pa *DataSetAuxData,
|
||||
ArbParam_t AuxDataOwner,
|
||||
Set_pa **IsVarCellCentered,
|
||||
Boolean_t *HasText,
|
||||
Boolean_t *HasGeoms,
|
||||
|
|
|
@ -1,33 +1,10 @@
|
|||
/*
|
||||
* NOTICE and LICENSE for Tecplot Input/Output Library (TecIO) - OpenFOAM
|
||||
*
|
||||
* Copyright (C) 1988-2009 Tecplot, Inc. All rights reserved worldwide.
|
||||
*
|
||||
* Tecplot hereby grants OpenCFD limited authority to distribute without
|
||||
* alteration the source code to the Tecplot Input/Output library, known
|
||||
* as TecIO, as part of its distribution of OpenFOAM and the
|
||||
* OpenFOAM_to_Tecplot converter. Users of this converter are also hereby
|
||||
* granted access to the TecIO source code, and may redistribute it for the
|
||||
* purpose of maintaining the converter. However, no authority is granted
|
||||
* to alter the TecIO source code in any form or manner.
|
||||
*
|
||||
* This limited grant of distribution does not supersede Tecplot, Inc.'s
|
||||
* copyright in TecIO. Contact Tecplot, Inc. for further information.
|
||||
*
|
||||
* Tecplot, Inc.
|
||||
* 3535 Factoria Blvd, Ste. 550
|
||||
* Bellevue, WA 98006, USA
|
||||
* Phone: +1 425 653 1200
|
||||
* http://www.tecplot.com/
|
||||
*
|
||||
*/
|
||||
#ifndef DATAIO4_H
|
||||
#define DATAIO4_H
|
||||
/*
|
||||
******************************************************************
|
||||
******************************************************************
|
||||
******* ********
|
||||
****** (C) 1988-2008 Tecplot, Inc. *******
|
||||
****** (C) 1988-2010 Tecplot, Inc. *******
|
||||
******* ********
|
||||
******************************************************************
|
||||
******************************************************************
|
||||
|
@ -117,6 +94,7 @@ EXTERN Boolean_t ReadInZoneHeader(FileStream_s *FileStream,
|
|||
ZoneSpec_s *ZoneSpec,
|
||||
Set_pa IsVarCellCentered,
|
||||
EntIndex_t NumVars,
|
||||
ArbParam_t AuxDataOwner,
|
||||
Boolean_t *IsRawFNAvailable,
|
||||
LgIndex_t *FNNumBndryConns);
|
||||
EXTERN Boolean_t ReadInCustomLabels(FileStream_s *FileStream,
|
||||
|
|
|
@ -1,26 +1,3 @@
|
|||
/*
|
||||
* NOTICE and LICENSE for Tecplot Input/Output Library (TecIO) - OpenFOAM
|
||||
*
|
||||
* Copyright (C) 1988-2009 Tecplot, Inc. All rights reserved worldwide.
|
||||
*
|
||||
* Tecplot hereby grants OpenCFD limited authority to distribute without
|
||||
* alteration the source code to the Tecplot Input/Output library, known
|
||||
* as TecIO, as part of its distribution of OpenFOAM and the
|
||||
* OpenFOAM_to_Tecplot converter. Users of this converter are also hereby
|
||||
* granted access to the TecIO source code, and may redistribute it for the
|
||||
* purpose of maintaining the converter. However, no authority is granted
|
||||
* to alter the TecIO source code in any form or manner.
|
||||
*
|
||||
* This limited grant of distribution does not supersede Tecplot, Inc.'s
|
||||
* copyright in TecIO. Contact Tecplot, Inc. for further information.
|
||||
*
|
||||
* Tecplot, Inc.
|
||||
* 3535 Factoria Blvd, Ste. 550
|
||||
* Bellevue, WA 98006, USA
|
||||
* Phone: +1 425 653 1200
|
||||
* http://www.tecplot.com/
|
||||
*
|
||||
*/
|
||||
#ifndef DATASET_h__
|
||||
#define DATASET_h__
|
||||
|
||||
|
@ -28,7 +5,7 @@
|
|||
******************************************************************
|
||||
******************************************************************
|
||||
******* ********
|
||||
****** (C) 1988-2008 Tecplot, Inc. *******
|
||||
****** (C) 1988-2010 Tecplot, Inc. *******
|
||||
******* ********
|
||||
******************************************************************
|
||||
******************************************************************
|
||||
|
@ -76,11 +53,11 @@ void SetZoneSpecDefaults(ZoneSpec_s *ZoneSpec);
|
|||
#endif
|
||||
#endif
|
||||
|
||||
#define GetZoneSpec(ZoneSpecList,Zone) ((ZoneSpec_s *)ArrayListGetVoidPtr(ZoneSpecList,Zone))
|
||||
#define GetZoneSpec(ZoneSpecList,Zone) (static_cast<ZoneSpec_s *>(ArrayListGetVoidPtr(ZoneSpecList,Zone)))
|
||||
#define GetZoneAuxData(DataSet, Zone) (GetZoneSpec((DataSet)->ZoneSpecList, (Zone))->AuxData)
|
||||
#define GetVarSpec(VarSpecList,Var) ((VarSpec_s *)ArrayListGetVoidPtr(VarSpecList,Var))
|
||||
#define GetVarSpec(VarSpecList,Var) (static_cast<VarSpec_s *>(ArrayListGetVoidPtr(VarSpecList,Var)))
|
||||
#define GetVarAuxData(DataSet, Var) (GetVarSpec((DataSet)->VarSpecList, (Var))->AuxData)
|
||||
#define GetStrandInfo(StrandInfoList, StrandID) ((StrandInfo_s *)ArrayListGetVoidPtr(StrandInfoList,StrandID))
|
||||
#define GetStrandInfo(StrandInfoList, StrandID) (static_cast<StrandInfo_s *>(ArrayListGetVoidPtr(StrandInfoList,StrandID)))
|
||||
|
||||
|
||||
#if defined TECPLOTKERNEL
|
||||
|
|
|
@ -1,26 +1,3 @@
|
|||
/*
|
||||
* NOTICE and LICENSE for Tecplot Input/Output Library (TecIO) - OpenFOAM
|
||||
*
|
||||
* Copyright (C) 1988-2009 Tecplot, Inc. All rights reserved worldwide.
|
||||
*
|
||||
* Tecplot hereby grants OpenCFD limited authority to distribute without
|
||||
* alteration the source code to the Tecplot Input/Output library, known
|
||||
* as TecIO, as part of its distribution of OpenFOAM and the
|
||||
* OpenFOAM_to_Tecplot converter. Users of this converter are also hereby
|
||||
* granted access to the TecIO source code, and may redistribute it for the
|
||||
* purpose of maintaining the converter. However, no authority is granted
|
||||
* to alter the TecIO source code in any form or manner.
|
||||
*
|
||||
* This limited grant of distribution does not supersede Tecplot, Inc.'s
|
||||
* copyright in TecIO. Contact Tecplot, Inc. for further information.
|
||||
*
|
||||
* Tecplot, Inc.
|
||||
* 3535 Factoria Blvd, Ste. 550
|
||||
* Bellevue, WA 98006, USA
|
||||
* Phone: +1 425 653 1200
|
||||
* http://www.tecplot.com/
|
||||
*
|
||||
*/
|
||||
#if defined EXTERN
|
||||
#undef EXTERN
|
||||
#endif
|
||||
|
@ -34,19 +11,20 @@
|
|||
******************************************************************
|
||||
******************************************************************
|
||||
******* ********
|
||||
****** (C) 1988-2008 Tecplot, Inc. *******
|
||||
****** (C) 1988-2010 Tecplot, Inc. *******
|
||||
******* ********
|
||||
******************************************************************
|
||||
******************************************************************
|
||||
*/
|
||||
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#endif
|
||||
|
||||
namespace tecplot
|
||||
{
|
||||
namespace io
|
||||
{
|
||||
class File;
|
||||
}
|
||||
}
|
||||
|
||||
EXTERN void OutOfMemoryMsg(void);
|
||||
|
||||
|
@ -64,22 +42,23 @@ EXTERN void OutOfMemoryMsg(void);
|
|||
struct _FieldData_a
|
||||
{
|
||||
void *Data; /* ...placed first in the structure for fastest access */
|
||||
# if defined TECPLOTKERNEL
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
# else
|
||||
#else
|
||||
void *GetValueCallback[1]; /* ...this field is for TecIO only */
|
||||
void *SetValueCallback[1]; /* ...this field is for TecIO only */
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/* PRIVATE */
|
||||
FieldDataType_e Type;
|
||||
ValueLocation_e ValueLocation;
|
||||
LgIndex_t RefCount;
|
||||
LgIndex_t VarShareRefCount;
|
||||
LgIndex_t NumValues;
|
||||
# if defined TECPLOTKERNEL /* TecIO doesn't require these features yet. */
|
||||
#if defined TECPLOTKERNEL /* TecIO doesn't require these features yet. */
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
# endif
|
||||
#endif
|
||||
LgIndex_t NumValues;
|
||||
#if defined TECPLOTKERNEL /* TecIO doesn't require these features yet. */
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#endif
|
||||
};
|
||||
|
||||
|
||||
|
@ -119,8 +98,8 @@ struct _FieldData_a
|
|||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#else /* ...for TecIO only */
|
||||
#define GetFieldDataGetFunction_MACRO(FieldData) ((FieldValueGetFunction_pf)(FieldData)->GetValueCallback[0])
|
||||
#define GetFieldDataSetFunction_MACRO(FieldData) ((FieldValueSetFunction_pf)(FieldData)->SetValueCallback[0])
|
||||
#define GetFieldDataGetFunction_MACRO(FieldData) (reinterpret_cast<FieldValueGetFunction_pf>((FieldData)->GetValueCallback[0]))
|
||||
#define GetFieldDataSetFunction_MACRO(FieldData) (reinterpret_cast<FieldValueSetFunction_pf>((FieldData)->SetValueCallback[0]))
|
||||
#endif
|
||||
#define GetFieldDataNumValues_MACRO(FieldData) ((FieldData)->NumValues)
|
||||
#define GetFieldDataValueLocation_MACRO(FieldData) ((FieldData)->ValueLocation)
|
||||
|
@ -202,21 +181,21 @@ typedef UInt64_t Int64Rev_t;
|
|||
#define GetFieldDataVoidPtr GetFieldDataVoidPtr_FUNC /*danger:see above*/
|
||||
#endif
|
||||
|
||||
#define GetFieldDataFloatPtr_MACRO(FieldData) ((float *)((FieldData)->Data))
|
||||
#define GetFieldDataFloatRevPtr_MACRO(FieldData) ((FloatRev_t *)((FieldData)->Data))
|
||||
#define GetFieldDataDoublePtr_MACRO(FieldData) ((double *)((FieldData)->Data))
|
||||
#define GetFieldDataDoubleRevPtr_MACRO(FieldData) ((DoubleRev_t *)((FieldData)->Data))
|
||||
#define GetFieldDataInt64Ptr_MACRO(FieldData) ((Int64_t *)((FieldData)->Data))
|
||||
#define GetFieldDataInt64RevPtr_MACRO(FieldData) ((Int64Rev_t *)((FieldData)->Data))
|
||||
#define GetFieldDataInt32Ptr_MACRO(FieldData) ((Int32_t *)((FieldData)->Data))
|
||||
#define GetFieldDataInt32RevPtr_MACRO(FieldData) ((Int32Rev_t *)((FieldData)->Data))
|
||||
#define GetFieldDataInt16Ptr_MACRO(FieldData) ((Int16_t *)((FieldData)->Data))
|
||||
#define GetFieldDataInt16RevPtr_MACRO(FieldData) ((Int16Rev_t *)((FieldData)->Data))
|
||||
#define GetFieldDataBytePtr_MACRO(FieldData) ((Byte_t *)((FieldData)->Data))
|
||||
#define GetFieldData2BytePtr_MACRO(FieldData) ((UInt16_t *)((FieldData)->Data))
|
||||
#define GetFieldData4BytePtr_MACRO(FieldData) ((UInt32_t *)((FieldData)->Data))
|
||||
#define GetFieldData8BytePtr_MACRO(FieldData) ((UInt64_t *)((FieldData)->Data))
|
||||
#define GetFieldDataVoidPtr_MACRO(FieldData) ((void *)((FieldData)->Data)) /*danger:see above*/
|
||||
#define GetFieldDataFloatPtr_MACRO(FieldData) (static_cast<float *>((FieldData)->Data))
|
||||
#define GetFieldDataFloatRevPtr_MACRO(FieldData) (static_cast<FloatRev_t *>((FieldData)->Data))
|
||||
#define GetFieldDataDoublePtr_MACRO(FieldData) (static_cast<double *>((FieldData)->Data))
|
||||
#define GetFieldDataDoubleRevPtr_MACRO(FieldData) (static_cast<DoubleRev_t *>((FieldData)->Data))
|
||||
#define GetFieldDataInt64Ptr_MACRO(FieldData) (static_cast<Int64_t *>((FieldData)->Data))
|
||||
#define GetFieldDataInt64RevPtr_MACRO(FieldData) (static_cast<Int64Rev_t *>((FieldData)->Data))
|
||||
#define GetFieldDataInt32Ptr_MACRO(FieldData) (static_cast<Int32_t *>((FieldData)->Data))
|
||||
#define GetFieldDataInt32RevPtr_MACRO(FieldData) (static_cast<Int32Rev_t *>((FieldData)->Data))
|
||||
#define GetFieldDataInt16Ptr_MACRO(FieldData) (static_cast<Int16_t *>((FieldData)->Data))
|
||||
#define GetFieldDataInt16RevPtr_MACRO(FieldData) (static_cast<Int16Rev_t *>((FieldData)->Data))
|
||||
#define GetFieldDataBytePtr_MACRO(FieldData) (static_cast<Byte_t *>((FieldData)->Data))
|
||||
#define GetFieldData2BytePtr_MACRO(FieldData) (static_cast<UInt16_t *>((FieldData)->Data))
|
||||
#define GetFieldData4BytePtr_MACRO(FieldData) (static_cast<UInt32_t *>((FieldData)->Data))
|
||||
#define GetFieldData8BytePtr_MACRO(FieldData) (static_cast<UInt64_t *>((FieldData)->Data))
|
||||
#define GetFieldDataVoidPtr_MACRO(FieldData) (static_cast<void *>((FieldData)->Data)) /*danger:see above*/
|
||||
|
||||
#if !defined USE_MACROS_FOR_FIELD_DATA_FUNCTIONS
|
||||
EXTERN float *GetFieldDataFloatPtr_FUNC(FieldData_pa fd);
|
||||
|
@ -296,6 +275,8 @@ EXTERN void SwapBytesInUnalignedTypedValueArray(FieldDataType_e ValueType,
|
|||
/*
|
||||
* Copies values from "src" to "dst". "src" or "dst" may
|
||||
* be differing types. Either or both may be V3D data pointers.
|
||||
*
|
||||
* NOTE: We allow src_end to be one less than src_start and is treated as a noop.
|
||||
*/
|
||||
EXTERN void CopyFieldDataRange(FieldData_pa dst,
|
||||
LgIndex_t dst_start,
|
||||
|
@ -317,6 +298,9 @@ EXTERN void CopyFieldValue(FieldData_pa dst,
|
|||
FieldData_pa src,
|
||||
LgIndex_t srcindex);
|
||||
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#endif
|
||||
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
|
|
|
@ -1,70 +0,0 @@
|
|||
/*
|
||||
* NOTICE and LICENSE for Tecplot Input/Output Library (TecIO) - OpenFOAM
|
||||
*
|
||||
* Copyright (C) 1988-2009 Tecplot, Inc. All rights reserved worldwide.
|
||||
*
|
||||
* Tecplot hereby grants OpenCFD limited authority to distribute without
|
||||
* alteration the source code to the Tecplot Input/Output library, known
|
||||
* as TecIO, as part of its distribution of OpenFOAM and the
|
||||
* OpenFOAM_to_Tecplot converter. Users of this converter are also hereby
|
||||
* granted access to the TecIO source code, and may redistribute it for the
|
||||
* purpose of maintaining the converter. However, no authority is granted
|
||||
* to alter the TecIO source code in any form or manner.
|
||||
*
|
||||
* This limited grant of distribution does not supersede Tecplot, Inc.'s
|
||||
* copyright in TecIO. Contact Tecplot, Inc. for further information.
|
||||
*
|
||||
* Tecplot, Inc.
|
||||
* 3535 Factoria Blvd, Ste. 550
|
||||
* Bellevue, WA 98006, USA
|
||||
* Phone: +1 425 653 1200
|
||||
* http://www.tecplot.com/
|
||||
*
|
||||
*/
|
||||
#if defined EXTERN
|
||||
#undef EXTERN
|
||||
#endif
|
||||
#if defined DATASHRMODULE
|
||||
#define EXTERN
|
||||
#else
|
||||
#define EXTERN extern
|
||||
#endif
|
||||
|
||||
/*
|
||||
*****************************************************************
|
||||
*****************************************************************
|
||||
******* ********
|
||||
****** Copyright (C) 1988-2008 Tecplot, Inc. *******
|
||||
******* ********
|
||||
*****************************************************************
|
||||
*****************************************************************
|
||||
*/
|
||||
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#endif /* TECPLOTKERNEL */
|
||||
|
||||
/*
|
||||
* General set of macros for reference count mananagement.
|
||||
*/
|
||||
#define IncStructureReference(V) ((V)->RefCount++)
|
||||
#define DecStructureReference(V) ((V)->RefCount--)
|
||||
#define IsStructureShared(V) ((V)->RefCount > 1)
|
||||
#define IsStructureReferenced(V) ((V)->RefCount > 0)
|
||||
|
||||
/*
|
||||
* Special set of macros for field data that is having variable sharing between
|
||||
* zones tracked. Field data maintains two reference counts: The first,
|
||||
* RefCount, is used to keep track of when the field data needs to be
|
||||
* deallocated; the second, VarShareRefCount, is used to track variable sharing
|
||||
* between zones.
|
||||
*/
|
||||
#define IncVarStructureReference(V) ((V)->VarShareRefCount++)
|
||||
#define DecVarStructureReference(V) ((V)->VarShareRefCount--)
|
||||
#define IsVarStructureShared(V) ((V)->VarShareRefCount > 1)
|
||||
#define IsVarStructureReferenced(V) ((V)->VarShareRefCount > 0)
|
||||
|
||||
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#endif /* TECPLOTKERNEL */
|
|
@ -1,26 +1,3 @@
|
|||
/*
|
||||
* NOTICE and LICENSE for Tecplot Input/Output Library (TecIO) - OpenFOAM
|
||||
*
|
||||
* Copyright (C) 1988-2009 Tecplot, Inc. All rights reserved worldwide.
|
||||
*
|
||||
* Tecplot hereby grants OpenCFD limited authority to distribute without
|
||||
* alteration the source code to the Tecplot Input/Output library, known
|
||||
* as TecIO, as part of its distribution of OpenFOAM and the
|
||||
* OpenFOAM_to_Tecplot converter. Users of this converter are also hereby
|
||||
* granted access to the TecIO source code, and may redistribute it for the
|
||||
* purpose of maintaining the converter. However, no authority is granted
|
||||
* to alter the TecIO source code in any form or manner.
|
||||
*
|
||||
* This limited grant of distribution does not supersede Tecplot, Inc.'s
|
||||
* copyright in TecIO. Contact Tecplot, Inc. for further information.
|
||||
*
|
||||
* Tecplot, Inc.
|
||||
* 3535 Factoria Blvd, Ste. 550
|
||||
* Bellevue, WA 98006, USA
|
||||
* Phone: +1 425 653 1200
|
||||
* http://www.tecplot.com/
|
||||
*
|
||||
*/
|
||||
/*
|
||||
* DATAUTIL.h : COPYRIGHT (C)1987-2002 Tecplot, Inc.
|
||||
* ALL RIGHTS RESERVED
|
||||
|
@ -76,6 +53,10 @@ extern void InitInputSpecs(void);
|
|||
* @param UserRec
|
||||
* Allocates space for and returns the user records.
|
||||
*
|
||||
* @param DatasetAuxData
|
||||
* Allocates space for and returns Dataset Auxiliary Data. This must be
|
||||
* deallocated with AuxDataDealloc.
|
||||
*
|
||||
* @param RawDataspaceAllocated
|
||||
* Only used if GetHeaderInfoOnly is FALSE. TRUE = calling program has alloced space for
|
||||
* the raw data. FALSE= let ReadTec allocate space for the raw data.
|
||||
|
@ -104,6 +85,7 @@ LIBFUNCTION Boolean_t STDCALL ReadTec(Boolean_t GetHeaderInfoOnly,
|
|||
LgIndex_t **NumPtsK,
|
||||
ZoneType_e **ZoneType,
|
||||
StringList_pa *UserRec,
|
||||
AuxData_pa *DatasetAuxData,
|
||||
Boolean_t RawDataspaceAllocated,
|
||||
NodeMap_t ***NodeMap,
|
||||
double ***VDataBase);
|
||||
|
|
|
@ -1,31 +1,8 @@
|
|||
/*
|
||||
* NOTICE and LICENSE for Tecplot Input/Output Library (TecIO) - OpenFOAM
|
||||
*
|
||||
* Copyright (C) 1988-2009 Tecplot, Inc. All rights reserved worldwide.
|
||||
*
|
||||
* Tecplot hereby grants OpenCFD limited authority to distribute without
|
||||
* alteration the source code to the Tecplot Input/Output library, known
|
||||
* as TecIO, as part of its distribution of OpenFOAM and the
|
||||
* OpenFOAM_to_Tecplot converter. Users of this converter are also hereby
|
||||
* granted access to the TecIO source code, and may redistribute it for the
|
||||
* purpose of maintaining the converter. However, no authority is granted
|
||||
* to alter the TecIO source code in any form or manner.
|
||||
*
|
||||
* This limited grant of distribution does not supersede Tecplot, Inc.'s
|
||||
* copyright in TecIO. Contact Tecplot, Inc. for further information.
|
||||
*
|
||||
* Tecplot, Inc.
|
||||
* 3535 Factoria Blvd, Ste. 550
|
||||
* Bellevue, WA 98006, USA
|
||||
* Phone: +1 425 653 1200
|
||||
* http://www.tecplot.com/
|
||||
*
|
||||
*/
|
||||
/*
|
||||
******************************************************************
|
||||
******************************************************************
|
||||
******* ********
|
||||
****** (C) 1988-2008 Tecplot, Inc. *******
|
||||
****** (C) 1988-2010 Tecplot, Inc. *******
|
||||
******* ********
|
||||
******************************************************************
|
||||
******************************************************************
|
||||
|
@ -112,7 +89,8 @@ EXTERN FaceObscuration_e GetFaceObscuration(CZInfo_s const* CZInfo,
|
|||
LgIndex_t FOffset,
|
||||
Boolean_t ConsiderValueBlanking,
|
||||
Boolean_t ConsiderIJKBlanking,
|
||||
Boolean_t ConsiderDepthBlanking);
|
||||
Boolean_t ConsiderDepthBlanking,
|
||||
Boolean_t ConsiderClipBlanking);
|
||||
|
||||
EXTERN EntIndex_t GetNodesPerElementFace(ZoneType_e ZoneType);
|
||||
|
||||
|
@ -121,6 +99,20 @@ EXTERN EntIndex_t GetFacesPerElement(ZoneType_e ZoneType,
|
|||
LgIndex_t JMax,
|
||||
LgIndex_t KMax);
|
||||
|
||||
/**
|
||||
* @param Points must have MAX_NODES_PER_FACE elements.
|
||||
* @param UniquePoints must have MAX_NODES_PER_FACE elements.
|
||||
* This array is populated with the unique points
|
||||
* from the input Points array. Values beyond NumUniquePoints-1 may
|
||||
* be uninitialized and should not be accessed.
|
||||
* @param NumUniquePoints - This value is populated the number of unique
|
||||
* points that were placed in the UniquePoints array.
|
||||
* @param Is3D is used to help determine if two points are coincident.
|
||||
*/
|
||||
EXTERN void GetUniquePoints(XYZ_s const Points[],
|
||||
XYZ_s UniquePoints[],
|
||||
SmInteger_t& NumUniquePoints,
|
||||
Boolean_t Is3D);
|
||||
EXTERN CollapsedStatus_e GetSurfaceCellCollapsedStatus(CZInfo_s const* CZInfo,
|
||||
CZData_s const* CZData,
|
||||
tecplot::kernel::SubElemValueProducerInterface* SubElemValueProducer);
|
||||
|
|
|
@ -1,31 +1,8 @@
|
|||
/*
|
||||
* NOTICE and LICENSE for Tecplot Input/Output Library (TecIO) - OpenFOAM
|
||||
*
|
||||
* Copyright (C) 1988-2009 Tecplot, Inc. All rights reserved worldwide.
|
||||
*
|
||||
* Tecplot hereby grants OpenCFD limited authority to distribute without
|
||||
* alteration the source code to the Tecplot Input/Output library, known
|
||||
* as TecIO, as part of its distribution of OpenFOAM and the
|
||||
* OpenFOAM_to_Tecplot converter. Users of this converter are also hereby
|
||||
* granted access to the TecIO source code, and may redistribute it for the
|
||||
* purpose of maintaining the converter. However, no authority is granted
|
||||
* to alter the TecIO source code in any form or manner.
|
||||
*
|
||||
* This limited grant of distribution does not supersede Tecplot, Inc.'s
|
||||
* copyright in TecIO. Contact Tecplot, Inc. for further information.
|
||||
*
|
||||
* Tecplot, Inc.
|
||||
* 3535 Factoria Blvd, Ste. 550
|
||||
* Bellevue, WA 98006, USA
|
||||
* Phone: +1 425 653 1200
|
||||
* http://www.tecplot.com/
|
||||
*
|
||||
*/
|
||||
/*
|
||||
*****************************************************************
|
||||
*****************************************************************
|
||||
******* ********
|
||||
****** Copyright (C) 1988-2008 Tecplot, Inc. *******
|
||||
****** Copyright (C) 1988-2010 Tecplot, Inc. *******
|
||||
******* ********
|
||||
*****************************************************************
|
||||
*****************************************************************
|
||||
|
|
|
@ -1,31 +1,8 @@
|
|||
/*
|
||||
* NOTICE and LICENSE for Tecplot Input/Output Library (TecIO) - OpenFOAM
|
||||
*
|
||||
* Copyright (C) 1988-2009 Tecplot, Inc. All rights reserved worldwide.
|
||||
*
|
||||
* Tecplot hereby grants OpenCFD limited authority to distribute without
|
||||
* alteration the source code to the Tecplot Input/Output library, known
|
||||
* as TecIO, as part of its distribution of OpenFOAM and the
|
||||
* OpenFOAM_to_Tecplot converter. Users of this converter are also hereby
|
||||
* granted access to the TecIO source code, and may redistribute it for the
|
||||
* purpose of maintaining the converter. However, no authority is granted
|
||||
* to alter the TecIO source code in any form or manner.
|
||||
*
|
||||
* This limited grant of distribution does not supersede Tecplot, Inc.'s
|
||||
* copyright in TecIO. Contact Tecplot, Inc. for further information.
|
||||
*
|
||||
* Tecplot, Inc.
|
||||
* 3535 Factoria Blvd, Ste. 550
|
||||
* Bellevue, WA 98006, USA
|
||||
* Phone: +1 425 653 1200
|
||||
* http://www.tecplot.com/
|
||||
*
|
||||
*/
|
||||
/*
|
||||
*****************************************************************
|
||||
*****************************************************************
|
||||
******* ********
|
||||
****** Copyright (C) 1988-2008 Tecplot, Inc. *******
|
||||
****** Copyright (C) 1988-2010 Tecplot, Inc. *******
|
||||
******* ********
|
||||
*****************************************************************
|
||||
*****************************************************************
|
||||
|
|
|
@ -1,31 +1,8 @@
|
|||
/*
|
||||
* NOTICE and LICENSE for Tecplot Input/Output Library (TecIO) - OpenFOAM
|
||||
*
|
||||
* Copyright (C) 1988-2009 Tecplot, Inc. All rights reserved worldwide.
|
||||
*
|
||||
* Tecplot hereby grants OpenCFD limited authority to distribute without
|
||||
* alteration the source code to the Tecplot Input/Output library, known
|
||||
* as TecIO, as part of its distribution of OpenFOAM and the
|
||||
* OpenFOAM_to_Tecplot converter. Users of this converter are also hereby
|
||||
* granted access to the TecIO source code, and may redistribute it for the
|
||||
* purpose of maintaining the converter. However, no authority is granted
|
||||
* to alter the TecIO source code in any form or manner.
|
||||
*
|
||||
* This limited grant of distribution does not supersede Tecplot, Inc.'s
|
||||
* copyright in TecIO. Contact Tecplot, Inc. for further information.
|
||||
*
|
||||
* Tecplot, Inc.
|
||||
* 3535 Factoria Blvd, Ste. 550
|
||||
* Bellevue, WA 98006, USA
|
||||
* Phone: +1 425 653 1200
|
||||
* http://www.tecplot.com/
|
||||
*
|
||||
*/
|
||||
/*
|
||||
*****************************************************************
|
||||
*****************************************************************
|
||||
******* ********
|
||||
****** Copyright (C) 1988-2008 Tecplot, Inc. *******
|
||||
****** Copyright (C) 1988-2010 Tecplot, Inc. *******
|
||||
******* ********
|
||||
*****************************************************************
|
||||
*****************************************************************
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -1,31 +1,8 @@
|
|||
/*
|
||||
* NOTICE and LICENSE for Tecplot Input/Output Library (TecIO) - OpenFOAM
|
||||
*
|
||||
* Copyright (C) 1988-2009 Tecplot, Inc. All rights reserved worldwide.
|
||||
*
|
||||
* Tecplot hereby grants OpenCFD limited authority to distribute without
|
||||
* alteration the source code to the Tecplot Input/Output library, known
|
||||
* as TecIO, as part of its distribution of OpenFOAM and the
|
||||
* OpenFOAM_to_Tecplot converter. Users of this converter are also hereby
|
||||
* granted access to the TecIO source code, and may redistribute it for the
|
||||
* purpose of maintaining the converter. However, no authority is granted
|
||||
* to alter the TecIO source code in any form or manner.
|
||||
*
|
||||
* This limited grant of distribution does not supersede Tecplot, Inc.'s
|
||||
* copyright in TecIO. Contact Tecplot, Inc. for further information.
|
||||
*
|
||||
* Tecplot, Inc.
|
||||
* 3535 Factoria Blvd, Ste. 550
|
||||
* Bellevue, WA 98006, USA
|
||||
* Phone: +1 425 653 1200
|
||||
* http://www.tecplot.com/
|
||||
*
|
||||
*/
|
||||
/*
|
||||
*****************************************************************
|
||||
*****************************************************************
|
||||
******* ********
|
||||
****** Copyright (C) 1988-2008 Tecplot, Inc. *******
|
||||
****** Copyright (C) 1988-2010 Tecplot, Inc. *******
|
||||
******* ********
|
||||
*****************************************************************
|
||||
*****************************************************************
|
||||
|
@ -85,6 +62,7 @@ EXTERN InputSpec_s /*X*/ AboveZeroElapsedTimeInputSpec;
|
|||
EXTERN InputSpec_s /*X*/ SurfaceTranslucencyInputSpec;
|
||||
EXTERN InputSpec_s /*X*/ MaxDepthBufferSizeInputSpec;
|
||||
EXTERN InputSpec_s /*X*/ MaxMultiSamplesInputSpec;
|
||||
EXTERN InputSpec_s /*X*/ MaxAccumBufferSizeInputSpec;
|
||||
EXTERN InputSpec_s /*X*/ MinBitsPerRGBPlaneInputSpec;
|
||||
EXTERN InputSpec_s /*X*/ AnimationSpeedInputSpec;
|
||||
EXTERN InputSpec_s /*X*/ AnimationNumStepsInputSpec;
|
||||
|
|
|
@ -1,30 +1,7 @@
|
|||
/*
|
||||
* NOTICE and LICENSE for Tecplot Input/Output Library (TecIO) - OpenFOAM
|
||||
*
|
||||
* Copyright (C) 1988-2009 Tecplot, Inc. All rights reserved worldwide.
|
||||
*
|
||||
* Tecplot hereby grants OpenCFD limited authority to distribute without
|
||||
* alteration the source code to the Tecplot Input/Output library, known
|
||||
* as TecIO, as part of its distribution of OpenFOAM and the
|
||||
* OpenFOAM_to_Tecplot converter. Users of this converter are also hereby
|
||||
* granted access to the TecIO source code, and may redistribute it for the
|
||||
* purpose of maintaining the converter. However, no authority is granted
|
||||
* to alter the TecIO source code in any form or manner.
|
||||
*
|
||||
* This limited grant of distribution does not supersede Tecplot, Inc.'s
|
||||
* copyright in TecIO. Contact Tecplot, Inc. for further information.
|
||||
*
|
||||
* Tecplot, Inc.
|
||||
* 3535 Factoria Blvd, Ste. 550
|
||||
* Bellevue, WA 98006, USA
|
||||
* Phone: +1 425 653 1200
|
||||
* http://www.tecplot.com/
|
||||
*
|
||||
*/
|
||||
/*****************************************************************
|
||||
*****************************************************************
|
||||
******* ********
|
||||
****** Copyright (C) 1988-2008 Tecplot, Inc. *******
|
||||
****** Copyright (C) 1988-2010 Tecplot, Inc. *******
|
||||
******* ********
|
||||
*****************************************************************
|
||||
*****************************************************************/
|
||||
|
@ -220,8 +197,8 @@
|
|||
|
||||
#include "stdafx.h"
|
||||
|
||||
#if defined MSWIN
|
||||
#include "W__BASE.h"
|
||||
#if defined MSWIN && defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#endif
|
||||
|
||||
#include <string>
|
||||
|
@ -271,8 +248,8 @@
|
|||
#if defined NO_ASSERTS
|
||||
#undef NO_ASSERTS
|
||||
#endif
|
||||
#if defined NDEBUG
|
||||
#undef NDEBUG
|
||||
#if !defined NDEBUG
|
||||
#define NDEBUG
|
||||
#endif
|
||||
#else /* RELEASE */
|
||||
#if !defined NDEBUG
|
||||
|
@ -373,7 +350,7 @@
|
|||
#define SYSV
|
||||
#endif
|
||||
|
||||
#if defined DECX || defined LINUX || defined IBMRS6000X || defined COMPAQX || defined DARWIN || defined darwin
|
||||
#if defined DECX || defined LINUX || defined IBMRS6000X || defined COMPAQX || defined DARWIN
|
||||
#define UNIXX
|
||||
#endif
|
||||
|
||||
|
@ -505,6 +482,10 @@
|
|||
/* OPENGL currently a must have */
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#if 0 /* including GLEW header file is currently defining GLAPI to "extern" which causes problems with a kludged Mesa header GLwDrawA.h external glwMDrawingAreaWidgetClass */
|
||||
#if defined USE_VBOs
|
||||
#endif
|
||||
#endif
|
||||
# if !defined ENGINE
|
||||
# if defined UNIXX
|
||||
# endif
|
||||
|
@ -524,11 +505,7 @@
|
|||
# if XmVERSION == 1 && XmREVISION == 0
|
||||
# endif
|
||||
# else
|
||||
# ifndef darwin
|
||||
# include <X11/Intrinsic.h>
|
||||
# else
|
||||
typedef void *Widget;
|
||||
# endif
|
||||
# include <X11/Intrinsic.h>
|
||||
# endif
|
||||
#endif
|
||||
|
||||
|
@ -658,12 +635,14 @@ typedef Widget GridWidget_t;
|
|||
* also be a release build (NDEBUG)
|
||||
*/
|
||||
#if defined MSWIN && defined CHECKED_BUILD && !defined NDEBUG
|
||||
# error "CHECKED_BUILDS must also be release builds"
|
||||
# error "CHECKED_BUILDS must also be release builds! NDEBUG should be defined but isn't."
|
||||
#endif
|
||||
|
||||
|
||||
#if defined NO_ASSERTS
|
||||
# define USE_MACROS_FOR_FUNCTIONS
|
||||
# if !defined USE_MACROS_FOR_FUNCTIONS
|
||||
# define USE_MACROS_FOR_FUNCTIONS
|
||||
# endif
|
||||
#endif
|
||||
/* ENDREMOVEFROMADDON */
|
||||
|
||||
|
@ -683,6 +662,21 @@ typedef Widget GridWidget_t;
|
|||
#define DISALLOW_OFFSCREEN_EXPORT_IN_BATCH
|
||||
#endif
|
||||
|
||||
/* indentify the platforms capable of using FFMPEG for encoding video formats */
|
||||
#if defined MSWIN || defined LINUX || defined DARWIN
|
||||
#define HAVE_FFMPEG
|
||||
#endif
|
||||
/* ENDREMOVEFROMADDON */
|
||||
|
||||
/* In windows min and max are being redefined in windef.h.
|
||||
* As we want to use the ones provided by the STL we undefined them
|
||||
*/
|
||||
#if defined MSWIN && defined max
|
||||
# undef max
|
||||
#endif
|
||||
|
||||
#if defined MSWIN && defined min
|
||||
# undef min
|
||||
#endif
|
||||
|
||||
#endif /* _MASTER_H_ */
|
||||
|
|
|
@ -1,33 +1,10 @@
|
|||
/*
|
||||
* NOTICE and LICENSE for Tecplot Input/Output Library (TecIO) - OpenFOAM
|
||||
*
|
||||
* Copyright (C) 1988-2009 Tecplot, Inc. All rights reserved worldwide.
|
||||
*
|
||||
* Tecplot hereby grants OpenCFD limited authority to distribute without
|
||||
* alteration the source code to the Tecplot Input/Output library, known
|
||||
* as TecIO, as part of its distribution of OpenFOAM and the
|
||||
* OpenFOAM_to_Tecplot converter. Users of this converter are also hereby
|
||||
* granted access to the TecIO source code, and may redistribute it for the
|
||||
* purpose of maintaining the converter. However, no authority is granted
|
||||
* to alter the TecIO source code in any form or manner.
|
||||
*
|
||||
* This limited grant of distribution does not supersede Tecplot, Inc.'s
|
||||
* copyright in TecIO. Contact Tecplot, Inc. for further information.
|
||||
*
|
||||
* Tecplot, Inc.
|
||||
* 3535 Factoria Blvd, Ste. 550
|
||||
* Bellevue, WA 98006, USA
|
||||
* Phone: +1 425 653 1200
|
||||
* http://www.tecplot.com/
|
||||
*
|
||||
*/
|
||||
#ifndef Q_MSG_H
|
||||
#define Q_MSG_H
|
||||
/*
|
||||
******************************************************************
|
||||
******************************************************************
|
||||
******* ********
|
||||
****** (C) 1988-2008 Tecplot, Inc. *******
|
||||
****** (C) 1988-2010 Tecplot, Inc. *******
|
||||
******* ********
|
||||
******************************************************************
|
||||
******************************************************************
|
||||
|
@ -47,12 +24,12 @@
|
|||
|
||||
EXTERN Boolean_t WrapString(const char *OldString,
|
||||
char **NewString);
|
||||
EXTERN void Warning(tecplot::strutil::TranslatedString Format,
|
||||
EXTERN void Warning(tecplot::strutil::TranslatedString format,
|
||||
...); /* zero or more arguments */
|
||||
# if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#endif
|
||||
EXTERN void ErrMsg(tecplot::strutil::TranslatedString Format,
|
||||
EXTERN void ErrMsg(tecplot::strutil::TranslatedString format,
|
||||
...); /* zero or more arguments */
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
|
|
|
@ -1,31 +1,8 @@
|
|||
/*
|
||||
* NOTICE and LICENSE for Tecplot Input/Output Library (TecIO) - OpenFOAM
|
||||
*
|
||||
* Copyright (C) 1988-2009 Tecplot, Inc. All rights reserved worldwide.
|
||||
*
|
||||
* Tecplot hereby grants OpenCFD limited authority to distribute without
|
||||
* alteration the source code to the Tecplot Input/Output library, known
|
||||
* as TecIO, as part of its distribution of OpenFOAM and the
|
||||
* OpenFOAM_to_Tecplot converter. Users of this converter are also hereby
|
||||
* granted access to the TecIO source code, and may redistribute it for the
|
||||
* purpose of maintaining the converter. However, no authority is granted
|
||||
* to alter the TecIO source code in any form or manner.
|
||||
*
|
||||
* This limited grant of distribution does not supersede Tecplot, Inc.'s
|
||||
* copyright in TecIO. Contact Tecplot, Inc. for further information.
|
||||
*
|
||||
* Tecplot, Inc.
|
||||
* 3535 Factoria Blvd, Ste. 550
|
||||
* Bellevue, WA 98006, USA
|
||||
* Phone: +1 425 653 1200
|
||||
* http://www.tecplot.com/
|
||||
*
|
||||
*/
|
||||
/*
|
||||
******************************************************************
|
||||
******************************************************************
|
||||
******* ********
|
||||
****** (C) 1988-2008 Tecplot, Inc. *******
|
||||
****** (C) 1988-2010 Tecplot, Inc. *******
|
||||
******* ********
|
||||
******************************************************************
|
||||
******************************************************************
|
||||
|
@ -50,40 +27,44 @@ namespace strutil
|
|||
{
|
||||
|
||||
// functions
|
||||
Boolean_t IsValidUtf8LeadByte(Byte_t ch);
|
||||
Boolean_t IsValidUtf8ContinuingByte(Byte_t ch);
|
||||
Boolean_t IsValidUtf8Byte(Byte_t ch);
|
||||
EXTERN Boolean_t IsValidUtf8LeadByte(Byte_t ch);
|
||||
EXTERN Boolean_t IsValidUtf8ContinuingByte(Byte_t ch);
|
||||
EXTERN Boolean_t IsValidUtf8Byte(Byte_t ch);
|
||||
|
||||
Boolean_t IsValidUtf8String(const char *str);
|
||||
Boolean_t ShouldConvertWideStringToUtf8String(const wchar_t *str);
|
||||
void InitTranslatedStrings();
|
||||
void CleanUpTranslatedStrings();
|
||||
EXTERN Boolean_t IsPrintable8BitAsciiChar(wchar_t wChar);
|
||||
|
||||
Boolean_t IsNullOrZeroLengthString(const char *S);
|
||||
Boolean_t IsNullOrZeroLengthString(tecplot::strutil::TranslatedString TS);
|
||||
EXTERN Boolean_t IsValidUtf8String(const char *str);
|
||||
EXTERN Boolean_t ShouldConvertWideStringToUtf8String(const wchar_t *str);
|
||||
EXTERN void InitTranslatedStrings();
|
||||
EXTERN void CleanUpTranslatedStrings();
|
||||
|
||||
Boolean_t IsEmptyString(const char *S);
|
||||
Boolean_t IsEmptyString(tecplot::strutil::TranslatedString S);
|
||||
Boolean_t IsEmptyString(const wchar_t* S);
|
||||
EXTERN Boolean_t IsNullOrZeroLengthString(const char *S);
|
||||
EXTERN Boolean_t IsNullOrZeroLengthString(tecplot::strutil::TranslatedString TS);
|
||||
|
||||
EXTERN Boolean_t IsEmptyString(const char *S);
|
||||
EXTERN Boolean_t IsEmptyString(tecplot::strutil::TranslatedString S);
|
||||
EXTERN Boolean_t IsEmptyString(const wchar_t* S);
|
||||
|
||||
EXTERN std::string AsciiToUtf8String(unsigned char asciiChar);
|
||||
|
||||
#if defined MSWIN
|
||||
|
||||
std::string LookUpTranslation(std::string& strEnglish);
|
||||
void MsWinInitTranslatedStrings();
|
||||
EXTERN std::string LookUpTranslation(std::string& strEnglish);
|
||||
EXTERN void MsWinInitTranslatedStrings();
|
||||
|
||||
std::string WStringToString(std::wstring str);
|
||||
std::wstring StringToWString(std::string str);
|
||||
EXTERN std::string WStringToString(std::wstring str);
|
||||
EXTERN std::wstring StringToWString(std::string str);
|
||||
|
||||
std::wstring MultiByteToWideChar(const char *Utf8Str,
|
||||
unsigned int CodePage);
|
||||
EXTERN std::wstring MultiByteToWideChar(const char* Utf8Str,
|
||||
unsigned int CodePage);
|
||||
|
||||
std::string WideCharToMultiByte(const wchar_t *WideStr,
|
||||
unsigned int CodePage);
|
||||
EXTERN std::string WideCharToMultiByte(const wchar_t* WideStr,
|
||||
unsigned int CodePage);
|
||||
|
||||
// Conversion
|
||||
std::string WideCharToUtf8(const wchar_t* str);
|
||||
std::wstring Utf8ToWideChar(const char *str);
|
||||
char *getenv(const char *str);
|
||||
EXTERN std::string WideCharToUtf8(const wchar_t* str);
|
||||
EXTERN std::wstring Utf8ToWideChar(const char *str);
|
||||
EXTERN char *getenv(const char *str);
|
||||
|
||||
#endif
|
||||
|
||||
|
|
|
@ -1,26 +1,3 @@
|
|||
/*
|
||||
* NOTICE and LICENSE for Tecplot Input/Output Library (TecIO) - OpenFOAM
|
||||
*
|
||||
* Copyright (C) 1988-2009 Tecplot, Inc. All rights reserved worldwide.
|
||||
*
|
||||
* Tecplot hereby grants OpenCFD limited authority to distribute without
|
||||
* alteration the source code to the Tecplot Input/Output library, known
|
||||
* as TecIO, as part of its distribution of OpenFOAM and the
|
||||
* OpenFOAM_to_Tecplot converter. Users of this converter are also hereby
|
||||
* granted access to the TecIO source code, and may redistribute it for the
|
||||
* purpose of maintaining the converter. However, no authority is granted
|
||||
* to alter the TecIO source code in any form or manner.
|
||||
*
|
||||
* This limited grant of distribution does not supersede Tecplot, Inc.'s
|
||||
* copyright in TecIO. Contact Tecplot, Inc. for further information.
|
||||
*
|
||||
* Tecplot, Inc.
|
||||
* 3535 Factoria Blvd, Ste. 550
|
||||
* Bellevue, WA 98006, USA
|
||||
* Phone: +1 425 653 1200
|
||||
* http://www.tecplot.com/
|
||||
*
|
||||
*/
|
||||
#if defined EXTERN
|
||||
#undef EXTERN
|
||||
#endif
|
||||
|
@ -37,15 +14,18 @@
|
|||
*****************************************************************
|
||||
*****************************************************************
|
||||
******* ********
|
||||
****** Copyright (C) 1988-2008 Tecplot, Inc. *******
|
||||
****** Copyright (C) 1988-2010 Tecplot, Inc. *******
|
||||
******* ********
|
||||
*****************************************************************
|
||||
*****************************************************************
|
||||
*/
|
||||
|
||||
#define PadOut(X,Y) ((int)(((X)-1)/(Y)+1)*(Y))
|
||||
#include <vector>
|
||||
#include <algorithm>
|
||||
|
||||
#define PadOut(X,Y) (static_cast<int>(((X)-1)/(Y)+1)*(Y))
|
||||
#define SetBitSize (8*sizeof(SetData_t))
|
||||
#define SetLastBit (((unsigned long)1)<<(SetBitSize-1))
|
||||
#define SetLastBit ((static_cast<unsigned long>(1))<<(SetBitSize-1))
|
||||
|
||||
#if defined _DEBUG
|
||||
# define USE_FUNCTIONS_FOR_SETS
|
||||
|
@ -150,7 +130,7 @@ inline Boolean_t AddToSet(Set_pa Set,
|
|||
ExpandSet(Set, member + 1, show_error_msg)))
|
||||
{
|
||||
SetIndex_t word = member / SetBitSize;
|
||||
SetData_t bit = (SetData_t)1 << (member % SetBitSize);
|
||||
SetData_t bit = static_cast<SetData_t>(1) << (member % SetBitSize);
|
||||
Set->data[word] |= bit;
|
||||
return TRUE;
|
||||
}
|
||||
|
@ -193,7 +173,7 @@ inline Boolean_t InSet(Set_pa Set,
|
|||
if (Set && (0 <= member && member < Set->size))
|
||||
{
|
||||
SetIndex_t word = member / SetBitSize;
|
||||
SetData_t bit = (SetData_t)1 << (member % SetBitSize);
|
||||
SetData_t bit = static_cast<SetData_t>(1) << (member % SetBitSize);
|
||||
return (Set->data[word]&bit) != 0;
|
||||
}
|
||||
else
|
||||
|
@ -280,4 +260,76 @@ EXTERN void ShiftSet(Set_pa Set,
|
|||
Member != BAD_SET_VALUE; \
|
||||
Member = GetPrevMember((Set), (Member)))
|
||||
|
||||
namespace tecplot
|
||||
{
|
||||
|
||||
/**
|
||||
* Converts a set into a vector of set offsets.
|
||||
* @templateparam T
|
||||
* Type item in the set.
|
||||
* @param itemSet
|
||||
* Set of items to convert into a vector of set offsets.
|
||||
* @return
|
||||
* Vector of set offsets.
|
||||
* @throws std::bad_alloc if insufficient resources are available to made the copy
|
||||
*/
|
||||
template <typename T>
|
||||
std::vector<T> toVector(Set_pa itemSet)
|
||||
{
|
||||
REQUIRE(VALID_REF(itemSet) || itemSet == 0);
|
||||
|
||||
std::vector<T> result;
|
||||
size_t const count = MemberCount(itemSet);
|
||||
if (count != 0)
|
||||
{
|
||||
result.reserve(count);
|
||||
SetIndex_t item;
|
||||
ForAllMembersInSet(item,itemSet)
|
||||
result.push_back(static_cast<T>(item));
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Converts a vector into a set offsets.
|
||||
* @templateparam T
|
||||
* Type item in the set.
|
||||
* @param items
|
||||
* Vector of elements of type T to convert to the set of offsets.
|
||||
* @return
|
||||
* Allocated Set of items with the elements converted from the vector.
|
||||
* @throws std::bad_alloc if insufficient resources are available to made the copy
|
||||
*/
|
||||
template <typename T>
|
||||
Set_pa toSet(std::vector<T> const& items)
|
||||
{
|
||||
Set_pa result = AllocSet(FALSE);
|
||||
if (result == NULL)
|
||||
throw std::bad_alloc();
|
||||
|
||||
if (!items.empty())
|
||||
{
|
||||
// locate the largest element, O(n)
|
||||
typename std::vector<T>::const_iterator largest = std::max_element(items.begin(), items.end());
|
||||
|
||||
if (!ExpandSet(result, *largest + 1, FALSE))
|
||||
{
|
||||
DeallocSet(&result);
|
||||
throw std::bad_alloc();
|
||||
}
|
||||
|
||||
for (typename std::vector<T>::const_iterator item = items.begin();item != items.end();++item)
|
||||
{
|
||||
if (!AddToSet(result,static_cast<SetIndex_t>(*item),FALSE))
|
||||
throw std::bad_alloc();
|
||||
}
|
||||
}
|
||||
|
||||
ENSURE(VALID_REF(result));
|
||||
return result;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
#endif // _SET_H_INCLUDED
|
||||
|
|
|
@ -1,31 +1,8 @@
|
|||
/*
|
||||
* NOTICE and LICENSE for Tecplot Input/Output Library (TecIO) - OpenFOAM
|
||||
*
|
||||
* Copyright (C) 1988-2009 Tecplot, Inc. All rights reserved worldwide.
|
||||
*
|
||||
* Tecplot hereby grants OpenCFD limited authority to distribute without
|
||||
* alteration the source code to the Tecplot Input/Output library, known
|
||||
* as TecIO, as part of its distribution of OpenFOAM and the
|
||||
* OpenFOAM_to_Tecplot converter. Users of this converter are also hereby
|
||||
* granted access to the TecIO source code, and may redistribute it for the
|
||||
* purpose of maintaining the converter. However, no authority is granted
|
||||
* to alter the TecIO source code in any form or manner.
|
||||
*
|
||||
* This limited grant of distribution does not supersede Tecplot, Inc.'s
|
||||
* copyright in TecIO. Contact Tecplot, Inc. for further information.
|
||||
*
|
||||
* Tecplot, Inc.
|
||||
* 3535 Factoria Blvd, Ste. 550
|
||||
* Bellevue, WA 98006, USA
|
||||
* Phone: +1 425 653 1200
|
||||
* http://www.tecplot.com/
|
||||
*
|
||||
*/
|
||||
/*
|
||||
*****************************************************************
|
||||
*****************************************************************
|
||||
******* ********
|
||||
****** Copyright (C) 1988-2008 Tecplot, Inc. *******
|
||||
****** Copyright (C) 1988-2010 Tecplot, Inc. *******
|
||||
******* ********
|
||||
*****************************************************************
|
||||
*****************************************************************
|
||||
|
@ -59,7 +36,7 @@
|
|||
* by adding LIBFUNCTION & LIBCALL as in
|
||||
* StringListDealloc(), etc. below.
|
||||
*
|
||||
* When building the tecplot kernal, LIBFUNCTION
|
||||
* When building the tecplot kernel, LIBFUNCTION
|
||||
* and LIBCALL are nop's.
|
||||
*
|
||||
*/
|
||||
|
@ -72,13 +49,13 @@ EXTERN void StringListRemoveStrings(StringList_pa StringList,
|
|||
LgIndex_t Count);
|
||||
EXTERN void StringListRemoveString(StringList_pa StringList,
|
||||
LgIndex_t StringOffset);
|
||||
LIBFUNCTION void LIBCALL StringListDealloc(StringList_pa *StringList);
|
||||
LIBFUNCTION void LIBCALL StringListDealloc(StringList_pa* StringList);
|
||||
EXTERN StringList_pa StringListAlloc(void);
|
||||
EXTERN Boolean_t StringListAppendString(StringList_pa StringList,
|
||||
const char *String);
|
||||
char const* String);
|
||||
LIBFUNCTION LgIndex_t LIBCALL StringListCount(StringList_pa StringList);
|
||||
LIBFUNCTION char * LIBCALL StringListGetString(StringList_pa StringList,
|
||||
LgIndex_t StringOffset);
|
||||
LIBFUNCTION char* LIBCALL StringListGetString(StringList_pa StringList,
|
||||
LgIndex_t StringOffset);
|
||||
|
||||
#if defined USE_MACROS_FOR_FUNCTIONS
|
||||
# define StringListGetStringRef StringListGetStringRef_MACRO
|
||||
|
@ -87,36 +64,36 @@ LIBFUNCTION char * LIBCALL StringListGetString(StringList_pa StringList,
|
|||
#endif
|
||||
|
||||
#if !defined USE_MACROS_FOR_FUNCTIONS
|
||||
EXTERN const char * StringListGetStringRef_FUNC(StringList_pa StringList,
|
||||
LgIndex_t StringOffset);
|
||||
EXTERN char const* StringListGetStringRef_FUNC(StringList_pa StringList,
|
||||
LgIndex_t StringOffset);
|
||||
#endif
|
||||
/**
|
||||
* To maintain the string list's integrity the result is cast to a
|
||||
* (const char *) to minimize the risk of users passing the result
|
||||
* (char const*) to minimize the risk of users passing the result
|
||||
* to FREE_ARRAY.
|
||||
*/
|
||||
#define StringListGetStringRef_MACRO(StringList, StringOffset) \
|
||||
((const char *)ArrayListGetCharPtr((ArrayList_pa)(StringList), StringOffset))
|
||||
static_cast<char const*>(ArrayListGetCharPtr(reinterpret_cast<ArrayList_pa>(StringList), StringOffset))
|
||||
|
||||
EXTERN Boolean_t StringListSetString(StringList_pa StringList,
|
||||
LgIndex_t StringOffset,
|
||||
const char *String);
|
||||
EXTERN Boolean_t StringListInsertString(StringList_pa StringList,
|
||||
LgIndex_t StringOffset,
|
||||
const char *String);
|
||||
EXTERN Boolean_t StringListSetString(StringList_pa StringList,
|
||||
LgIndex_t StringOffset,
|
||||
char const* String);
|
||||
EXTERN Boolean_t StringListInsertString(StringList_pa StringList,
|
||||
LgIndex_t StringOffset,
|
||||
char const* String);
|
||||
EXTERN StringList_pa StringListCopy(StringList_pa StringList);
|
||||
EXTERN Boolean_t StringListAppend(StringList_pa Target,
|
||||
StringList_pa Source);
|
||||
|
||||
EXTERN char *StringListToNLString(StringList_pa StringList);
|
||||
EXTERN StringList_pa StringListFromNLString(const char *String);
|
||||
EXTERN char **StringListToArray(StringList_pa StringList);
|
||||
EXTERN StringList_pa StringListFromArray(const char **StringArray,
|
||||
EXTERN char* StringListToNLString(StringList_pa StringList);
|
||||
EXTERN StringList_pa StringListFromNLString(char const* String);
|
||||
EXTERN char** StringListToArray(StringList_pa StringList);
|
||||
EXTERN StringList_pa StringListFromArray(char const** StringArray,
|
||||
LgIndex_t Count);
|
||||
EXTERN StringList_pa StringListFromCompound(const char *String);
|
||||
EXTERN char *StringListToCompound(StringList_pa StringList,
|
||||
char GroupJoinCharacter,
|
||||
const char *CharsToEscape);
|
||||
EXTERN void StringListSort(StringList_pa StringList,
|
||||
StringListStringComparator_pf Comparator,
|
||||
ArbParam_t ClientData);
|
||||
EXTERN StringList_pa StringListFromCompound(char const* String);
|
||||
EXTERN char* StringListToCompound(StringList_pa StringList,
|
||||
char GroupJoinCharacter,
|
||||
char const* CharsToEscape);
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#endif
|
||||
|
|
|
@ -1,31 +1,10 @@
|
|||
/*
|
||||
* NOTICE and LICENSE for Tecplot Input/Output Library (TecIO) - OpenFOAM
|
||||
*
|
||||
* Copyright (C) 1988-2009 Tecplot, Inc. All rights reserved worldwide.
|
||||
*
|
||||
* Tecplot hereby grants OpenCFD limited authority to distribute without
|
||||
* alteration the source code to the Tecplot Input/Output library, known
|
||||
* as TecIO, as part of its distribution of OpenFOAM and the
|
||||
* OpenFOAM_to_Tecplot converter. Users of this converter are also hereby
|
||||
* granted access to the TecIO source code, and may redistribute it for the
|
||||
* purpose of maintaining the converter. However, no authority is granted
|
||||
* to alter the TecIO source code in any form or manner.
|
||||
*
|
||||
* This limited grant of distribution does not supersede Tecplot, Inc.'s
|
||||
* copyright in TecIO. Contact Tecplot, Inc. for further information.
|
||||
*
|
||||
* Tecplot, Inc.
|
||||
* 3535 Factoria Blvd, Ste. 550
|
||||
* Bellevue, WA 98006, USA
|
||||
* Phone: +1 425 653 1200
|
||||
* http://www.tecplot.com/
|
||||
*
|
||||
*/
|
||||
#ifndef TECPLOT_STRUTIL
|
||||
#define TECPLOT_STRUTIL
|
||||
/*
|
||||
******************************************************************
|
||||
******************************************************************
|
||||
******* ********
|
||||
****** (C) 1988-2008 Tecplot, Inc. *******
|
||||
****** (C) 1988-2010 Tecplot, Inc. *******
|
||||
******* ********
|
||||
******************************************************************
|
||||
******************************************************************
|
||||
|
@ -136,8 +115,6 @@ EXTERN StringList_pa LineBreakString(const char *String,
|
|||
UInt32_t WrapMargin);
|
||||
#endif
|
||||
|
||||
EXTERN Boolean_t MatchKey(char *StringToMatch,
|
||||
char *Key);
|
||||
EXTERN void RemoveSeparator(const char **CPtr);
|
||||
EXTERN void SkipWhiteSpace(const char **CPtr);
|
||||
EXTERN void SkipNonWhiteSpace(char **CPtr);
|
||||
|
@ -148,6 +125,11 @@ EXTERN int ustrncmp(const char *s1,
|
|||
size_t Len);
|
||||
EXTERN int ustrcmp(const char *s1,
|
||||
const char *s2);
|
||||
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#endif
|
||||
|
||||
/* public access */
|
||||
/* InternalResetString should not be used directly (use ResetString macro) */
|
||||
#if !defined NO_ASSERTS
|
||||
|
@ -216,3 +198,5 @@ inline char const* EndOfString(char const* str)
|
|||
{
|
||||
return str + strlen(str);
|
||||
};
|
||||
|
||||
#endif
|
||||
|
|
|
@ -1,31 +1,11 @@
|
|||
/*
|
||||
* NOTICE and LICENSE for Tecplot Input/Output Library (TecIO) - OpenFOAM
|
||||
*
|
||||
* Copyright (C) 1988-2009 Tecplot, Inc. All rights reserved worldwide.
|
||||
*
|
||||
* Tecplot hereby grants OpenCFD limited authority to distribute without
|
||||
* alteration the source code to the Tecplot Input/Output library, known
|
||||
* as TecIO, as part of its distribution of OpenFOAM and the
|
||||
* OpenFOAM_to_Tecplot converter. Users of this converter are also hereby
|
||||
* granted access to the TecIO source code, and may redistribute it for the
|
||||
* purpose of maintaining the converter. However, no authority is granted
|
||||
* to alter the TecIO source code in any form or manner.
|
||||
*
|
||||
* This limited grant of distribution does not supersede Tecplot, Inc.'s
|
||||
* copyright in TecIO. Contact Tecplot, Inc. for further information.
|
||||
*
|
||||
* Tecplot, Inc.
|
||||
* 3535 Factoria Blvd, Ste. 550
|
||||
* Bellevue, WA 98006, USA
|
||||
* Phone: +1 425 653 1200
|
||||
* http://www.tecplot.com/
|
||||
*
|
||||
*/
|
||||
#ifndef TECPLOT_SYSTEM_H
|
||||
#define TECPLOT_SYSTEM_H
|
||||
|
||||
/*
|
||||
*****************************************************************
|
||||
*****************************************************************
|
||||
******* ********
|
||||
****** Copyright (C) 1988-2008 Tecplot, Inc. *******
|
||||
****** Copyright (C) 1988-2010 Tecplot, Inc. *******
|
||||
******* ********
|
||||
*****************************************************************
|
||||
*****************************************************************
|
||||
|
@ -39,6 +19,15 @@
|
|||
#define EXTERN extern
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Windows has trouble with large chunks across SAMBA mounted file systems (not sure
|
||||
* where the limit is).
|
||||
*/
|
||||
#define MAX_BYTES_PER_CHUNK 131072L // ...== 2^17
|
||||
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#endif
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#endif
|
||||
|
@ -48,7 +37,6 @@ EXTERN Boolean_t VerifyToOverwriteFile(const char *FName);
|
|||
EXTERN Boolean_t IsValidDirectory(const char *FName);
|
||||
EXTERN Boolean_t FileExists(const char *F,
|
||||
Boolean_t ShowErr);
|
||||
EXTERN Boolean_t IsOkFNameChar(unsigned char ch);
|
||||
EXTERN void ErrFName(const char *FName);
|
||||
EXTERN Boolean_t IsValidFileName(const char *FileName,
|
||||
Boolean_t IsReading,
|
||||
|
@ -65,3 +53,4 @@ EXTERN Boolean_t Open_File(FILE **F,
|
|||
Boolean_t ShowErr,
|
||||
Boolean_t IsAscii);
|
||||
|
||||
#endif
|
||||
|
|
|
@ -1,31 +1,10 @@
|
|||
/*
|
||||
* NOTICE and LICENSE for Tecplot Input/Output Library (TecIO) - OpenFOAM
|
||||
*
|
||||
* Copyright (C) 1988-2009 Tecplot, Inc. All rights reserved worldwide.
|
||||
*
|
||||
* Tecplot hereby grants OpenCFD limited authority to distribute without
|
||||
* alteration the source code to the Tecplot Input/Output library, known
|
||||
* as TecIO, as part of its distribution of OpenFOAM and the
|
||||
* OpenFOAM_to_Tecplot converter. Users of this converter are also hereby
|
||||
* granted access to the TecIO source code, and may redistribute it for the
|
||||
* purpose of maintaining the converter. However, no authority is granted
|
||||
* to alter the TecIO source code in any form or manner.
|
||||
*
|
||||
* This limited grant of distribution does not supersede Tecplot, Inc.'s
|
||||
* copyright in TecIO. Contact Tecplot, Inc. for further information.
|
||||
*
|
||||
* Tecplot, Inc.
|
||||
* 3535 Factoria Blvd, Ste. 550
|
||||
* Bellevue, WA 98006, USA
|
||||
* Phone: +1 425 653 1200
|
||||
* http://www.tecplot.com/
|
||||
*
|
||||
*/
|
||||
#ifndef TASSERT_H
|
||||
#define TASSERT_H
|
||||
/*
|
||||
******************************************************************
|
||||
******************************************************************
|
||||
******* ********
|
||||
****** (C) 1988-2008 Tecplot, Inc. *******
|
||||
****** (C) 1988-2010 Tecplot, Inc. *******
|
||||
******* ********
|
||||
******************************************************************
|
||||
******************************************************************
|
||||
|
@ -76,8 +55,7 @@
|
|||
* builds and always fails at compile time for release
|
||||
* builds.
|
||||
*/
|
||||
#if !defined TASSERT_H
|
||||
#define TASSERT_H
|
||||
|
||||
|
||||
#if defined (MSWIN)
|
||||
# include <assert.h>
|
||||
|
@ -125,8 +103,12 @@
|
|||
#if !defined TECPLOTKERNEL
|
||||
/* For add-ons, there is a problem with VALID_REF, so just test for non-NULL */
|
||||
/* ENDREMOVEFROMADDON */
|
||||
# define VALID_REF(p) ( (p) != NULL )
|
||||
# define VALID_FN_REF(fp) ( (fp) != NULL )
|
||||
# if !defined VALID_REF
|
||||
# define VALID_REF(p) ( (p) != NULL )
|
||||
# endif
|
||||
# if !defined VALID_FN_REF
|
||||
# define VALID_FN_REF(fp) ( (fp) != NULL )
|
||||
# endif
|
||||
/* BEGINREMOVEFROMADDON */
|
||||
#endif /* !defined TECPLOTKERNAL */
|
||||
/* ENDREMOVEFROMADDON */
|
||||
|
@ -147,11 +129,19 @@
|
|||
|
||||
#if defined NO_ASSERTS
|
||||
/* release build in TecUtil layer uses these for TUASSERT */
|
||||
# define VALID_REF(p) ((p) != NULL)
|
||||
# define VALID_FN_REF(pf) ((pf) != NULL)
|
||||
# if !defined VALID_REF
|
||||
# define VALID_REF(p) ((p) != NULL)
|
||||
# endif
|
||||
# if !defined VALID_FN_REF
|
||||
# define VALID_FN_REF(pf) ((pf) != NULL)
|
||||
# endif
|
||||
#else
|
||||
# define VALID_REF(p) ((p) != NULL && !IsBadReadPtr((const void *)(p), 1))
|
||||
# define VALID_FN_REF(pf) ((pf) != NULL && !IsBadReadPtr((const void *)(pf),(UINT_PTR)sizeof(const void*)))
|
||||
# if !defined VALID_REF
|
||||
# define VALID_REF(p) ((p) != NULL && !IsBadReadPtr((const void *)(p), 1))
|
||||
# endif
|
||||
# if !defined VALID_FN_REF
|
||||
# define VALID_FN_REF(pf) ((pf) != NULL && !IsBadReadPtr((const void *)(pf),(UINT_PTR)sizeof(const void*)))
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/* BEGINREMOVEFROMADDON */
|
||||
|
@ -178,13 +168,21 @@
|
|||
|
||||
/* ENDREMOVEFROMADDON */
|
||||
/* other useful validity checks */
|
||||
#define VALID_BOOLEAN(b) ((b) == TRUE || (b) == FALSE)
|
||||
#define VALID_ENUM(value, type) (0 <= (value) && \
|
||||
(value) < END_##type)
|
||||
#if !defined VALID_BOOLEAN
|
||||
# define VALID_BOOLEAN(b) ((b) == TRUE || (b) == FALSE)
|
||||
#endif
|
||||
#if !defined VALID_ENUM
|
||||
# define VALID_ENUM(value, type) (0 <= static_cast<int>((value)) && \
|
||||
static_cast<int>((value)) < END_##type)
|
||||
#endif
|
||||
|
||||
/* Test a parameter than can be NULL or a valid pointer */
|
||||
#define VALID_REF_OR_NULL(ptr) IMPLICATION((ptr) != NULL, VALID_REF(ptr))
|
||||
#define VALID_FN_REF_OR_NULL(ptr) IMPLICATION((ptr) != NULL, VALID_FN_REF(ptr))
|
||||
#if !defined VALID_REF_OR_NULL
|
||||
# define VALID_REF_OR_NULL(ptr) IMPLICATION((ptr) != NULL, VALID_REF(ptr))
|
||||
#endif
|
||||
#if !defined VALID_FN_REF_OR_NULL
|
||||
# define VALID_FN_REF_OR_NULL(ptr) IMPLICATION((ptr) != NULL, VALID_FN_REF(ptr))
|
||||
#endif
|
||||
|
||||
/* BEGINREMOVEFROMADDON */
|
||||
#define VALID_TRANSLATED_STRING(ts) (!(ts).isNull())
|
||||
|
@ -267,23 +265,29 @@
|
|||
/* ENDREMOVEFROMADDON */
|
||||
|
||||
/* Check for a non-zero length string */
|
||||
#if defined MSWIN
|
||||
# if defined NO_ASSERTS
|
||||
# define VALID_NON_ZERO_LEN_STR(str) (VALID_REF(str) && !ISEMPTYSTRING(str))
|
||||
#if !defined VALID_NON_ZERO_LEN_STR
|
||||
# if defined MSWIN
|
||||
# if defined NO_ASSERTS
|
||||
# define VALID_NON_ZERO_LEN_STR(str) (VALID_REF(str) && !ISEMPTYSTRING(str))
|
||||
# else
|
||||
# define VALID_NON_ZERO_LEN_STR(str) \
|
||||
(VALID_REF(str) && \
|
||||
!IsBadReadPtr((const void*)(str),(UINT_PTR)(1+strlen((const char*)(str)))) && \
|
||||
!ISEMPTYSTRING(str))
|
||||
# endif
|
||||
# else
|
||||
# define VALID_NON_ZERO_LEN_STR(str) \
|
||||
(VALID_REF(str) && \
|
||||
!IsBadReadPtr((const void*)(str),(UINT_PTR)(1+strlen((const char*)(str)))) && \
|
||||
!ISEMPTYSTRING(str))
|
||||
# define VALID_NON_ZERO_LEN_STR(str) (VALID_REF(str) && !ISEMPTYSTRING(str))
|
||||
# endif
|
||||
#else
|
||||
# define VALID_NON_ZERO_LEN_STR(str) (VALID_REF(str) && !ISEMPTYSTRING(str))
|
||||
#endif
|
||||
|
||||
#define VALID_SET_INDEX(setIndex) (((SetIndex_t)setIndex)>=(SetIndex_t)1)
|
||||
#if !defined VALID_SET_INDEX
|
||||
# define VALID_SET_INDEX(setIndex) (((SetIndex_t)setIndex)>=(SetIndex_t)1)
|
||||
#endif
|
||||
|
||||
/* Check for valid stdio file handle */
|
||||
#define VALID_FILE_HANDLE(stream) ((stream) != NULL)
|
||||
#if !defined VALID_FILE_HANDLE
|
||||
# define VALID_FILE_HANDLE(stream) ((stream) != NULL)
|
||||
#endif
|
||||
|
||||
/* To check colors and pen numbers */
|
||||
/* BEGINREMOVEFROMADDON */
|
||||
|
@ -333,7 +337,7 @@
|
|||
#define VALID_NAME(Name, MaxLength) \
|
||||
(VALID_REF(Name) && \
|
||||
(ISEMPTYSTRING(Name) || \
|
||||
(!isspace((Name)[0]) && !isspace((Name)[strlen(Name)-1]))) && \
|
||||
(!tecplot::isspace((Name)[0]) && !tecplot::isspace((Name)[strlen(Name)-1]))) && \
|
||||
strlen(Name) <= (MaxLength))
|
||||
#define VALID_ZONE_NAME(Name) VALID_NAME((Name), MaxChrsZnTitle)
|
||||
#define VALID_VAR_NAME(Name) VALID_NAME((Name), MaxChrsVarName)
|
||||
|
@ -366,41 +370,76 @@ extern TAssertFailureNotifyFunc InstallTAssertFailureNotify(
|
|||
/* BEGINREMOVEFROMADDON */
|
||||
# define TASSERT(EXPR)
|
||||
/* ENDREMOVEFROMADDON */
|
||||
# define INVARIANT(EXPR)
|
||||
# define REQUIRE(EXPR)
|
||||
# define ENSURE(EXPR)
|
||||
# define CHECK(EXPR)
|
||||
# if !defined INVARIANT
|
||||
# define INVARIANT(EXPR)
|
||||
# endif
|
||||
# if !defined REQUIRE
|
||||
# define REQUIRE(EXPR)
|
||||
# endif
|
||||
# if !defined ENSURE
|
||||
# define ENSURE(EXPR)
|
||||
# endif
|
||||
# if !defined CHECK
|
||||
# define CHECK(EXPR)
|
||||
# endif
|
||||
# ifdef VERIFY
|
||||
# undef VERIFY
|
||||
# endif
|
||||
# define VERIFY(EXPR) ((void)(EXPR))
|
||||
|
||||
/*
|
||||
* If a project is compiled with "warnings treated as errors" we need a way to
|
||||
* to remove parameters that are only used for assertions if assertions are
|
||||
* turned off.
|
||||
*
|
||||
* This macro is used in the implementation as follows:
|
||||
*
|
||||
* void someFunction(int const ASSERT_ONLY(paramOnlyUsedInAssertions))
|
||||
* {
|
||||
* ...
|
||||
* }
|
||||
*/
|
||||
# if !defined ASSERT_ONLY
|
||||
# define ASSERT_ONLY(PARAMETER)
|
||||
# endif
|
||||
|
||||
/*
|
||||
* Only define IGNORENOTIMPLEMENTED if building a "test" release build
|
||||
* that you are fully aware may contain unimplemented features.
|
||||
*/
|
||||
# if defined IGNORENOTIMPLEMENTED
|
||||
# define NOT_IMPLEMENTED() CHECK(FALSE)
|
||||
# else
|
||||
# if defined MSWIN
|
||||
# if !defined NOT_IMPLEMENTED
|
||||
# if defined IGNORENOTIMPLEMENTED
|
||||
# define NOT_IMPLEMENTED() CHECK(FALSE)
|
||||
# else
|
||||
# if defined MSWIN
|
||||
/*
|
||||
* NOT_IMPLEMENTED is defined using a parameter, but should be called with none,
|
||||
* this will then throw a warning and not break the compile. Unix doesn't pick
|
||||
* up this warning, so break the compile under Unix
|
||||
*/
|
||||
# define NOT_IMPLEMENTED(x) TAssert("Not Implemented", __FILE__, __LINE__)
|
||||
# endif
|
||||
# if defined UNIXX
|
||||
# define NOT_IMPLEMENTED() not implemented /* intentionally break the compile */
|
||||
# define NOT_IMPLEMENTED(x) TAssert("Not Implemented", __FILE__, __LINE__)
|
||||
# endif
|
||||
# if defined UNIXX
|
||||
# define NOT_IMPLEMENTED() not implemented /* intentionally break the compile */
|
||||
# endif
|
||||
# endif
|
||||
# endif
|
||||
#elif defined STD_ASSERTS
|
||||
/* BEGINREMOVEFROMADDON */
|
||||
# define TASSERT(EXPR) assert(EXPR)
|
||||
/* ENDREMOVEFROMADDON */
|
||||
# define INVARIANT(EXPR) assert(EXPR)
|
||||
# define REQUIRE(EXPR) assert(EXPR)
|
||||
# define ENSURE(EXPR) assert(EXPR)
|
||||
# define CHECK(EXPR) assert(EXPR)
|
||||
# if !defined INVARIANT
|
||||
# define INVARIANT(EXPR) assert(EXPR)
|
||||
# endif
|
||||
# if !defined REQUIRE
|
||||
# define REQUIRE(EXPR) assert(EXPR)
|
||||
# endif
|
||||
# if !defined ENSURE
|
||||
# define ENSURE(EXPR) assert(EXPR)
|
||||
# endif
|
||||
# if !defined CHECK
|
||||
# define CHECK(EXPR) assert(EXPR)
|
||||
# endif
|
||||
# ifdef VERIFY
|
||||
# undef VERIFY
|
||||
# endif
|
||||
|
@ -411,7 +450,15 @@ extern TAssertFailureNotifyFunc InstallTAssertFailureNotify(
|
|||
# define VERIFY(EXPR) assert(EXPR)
|
||||
# endif
|
||||
# endif /* VERIFY */
|
||||
# define NOT_IMPLEMENTED() assert(!("Not Implemented"))
|
||||
# if !defined NOT_IMPLEMENTED
|
||||
# define NOT_IMPLEMENTED() assert(!("Not Implemented"))
|
||||
# endif
|
||||
/*
|
||||
* See note above for this macro.
|
||||
*/
|
||||
# if !defined ASSERT_ONLY
|
||||
# define ASSERT_ONLY(PARAMETER) PARAMETER
|
||||
# endif
|
||||
#else
|
||||
/* BEGINREMOVEFROMADDON */
|
||||
#if defined (MSWIN)
|
||||
|
@ -486,9 +533,23 @@ Works in both release & debug builds */
|
|||
# define NOT_IMPLEMENTED() NiceNotImplemented()
|
||||
# else
|
||||
# define NOT_IMPLEMENTED() TASSERT(!("Not Implemented"))
|
||||
# endif
|
||||
/*
|
||||
* See note above for this macro.
|
||||
*/
|
||||
# if !defined ASSERT_ONLY
|
||||
# define ASSERT_ONLY(PARAMETER) PARAMETER
|
||||
# endif
|
||||
/* ENDREMOVEFROMADDON */
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @deprecated use ASSERT_ONLY instead
|
||||
*/
|
||||
#if !defined ASSERT_ONLY_PARAM && defined ASSERT_ONLY
|
||||
# define ASSERT_ONLY_PARAM(PARAMETER) ASSERT_ONLY(PARAMETER)
|
||||
#endif
|
||||
|
||||
/* BEGINREMOVEFROMADDON */
|
||||
#if !defined STD_ASSERTS
|
||||
extern void TecplotMopupOnAssert(void);
|
||||
|
@ -500,8 +561,12 @@ extern void NiceNotImplemented(void);
|
|||
/* ENDREMOVEFROMADDON */
|
||||
|
||||
/* convenience macros for implication, P -> Q, and equivalence, P <-> Q. */
|
||||
#define IMPLICATION(P,Q) (!(P) || (Q))
|
||||
#define EQUIVALENCE(P,Q) ((P) == (Q))
|
||||
#if !defined IMPLICATION
|
||||
# define IMPLICATION(P,Q) (!(P) || (Q))
|
||||
#endif
|
||||
#if !defined EQUIVALENCE
|
||||
# define EQUIVALENCE(P,Q) ((P) == (Q))
|
||||
#endif
|
||||
|
||||
/* BEGINREMOVEFROMADDON */
|
||||
#if defined RLM
|
||||
|
|
|
@ -1,24 +1 @@
|
|||
/*
|
||||
* NOTICE and LICENSE for Tecplot Input/Output Library (TecIO) - OpenFOAM
|
||||
*
|
||||
* Copyright (C) 1988-2009 Tecplot, Inc. All rights reserved worldwide.
|
||||
*
|
||||
* Tecplot hereby grants OpenCFD limited authority to distribute without
|
||||
* alteration the source code to the Tecplot Input/Output library, known
|
||||
* as TecIO, as part of its distribution of OpenFOAM and the
|
||||
* OpenFOAM_to_Tecplot converter. Users of this converter are also hereby
|
||||
* granted access to the TecIO source code, and may redistribute it for the
|
||||
* purpose of maintaining the converter. However, no authority is granted
|
||||
* to alter the TecIO source code in any form or manner.
|
||||
*
|
||||
* This limited grant of distribution does not supersede Tecplot, Inc.'s
|
||||
* copyright in TecIO. Contact Tecplot, Inc. for further information.
|
||||
*
|
||||
* Tecplot, Inc.
|
||||
* 3535 Factoria Blvd, Ste. 550
|
||||
* Bellevue, WA 98006, USA
|
||||
* Phone: +1 425 653 1200
|
||||
* http://www.tecplot.com/
|
||||
*
|
||||
*/
|
||||
#include "TECXXX.h"
|
||||
|
|
|
@ -1,28 +1,5 @@
|
|||
/*
|
||||
* NOTICE and LICENSE for Tecplot Input/Output Library (TecIO) - OpenFOAM
|
||||
*
|
||||
* Copyright (C) 1988-2009 Tecplot, Inc. All rights reserved worldwide.
|
||||
*
|
||||
* Tecplot hereby grants OpenCFD limited authority to distribute without
|
||||
* alteration the source code to the Tecplot Input/Output library, known
|
||||
* as TecIO, as part of its distribution of OpenFOAM and the
|
||||
* OpenFOAM_to_Tecplot converter. Users of this converter are also hereby
|
||||
* granted access to the TecIO source code, and may redistribute it for the
|
||||
* purpose of maintaining the converter. However, no authority is granted
|
||||
* to alter the TecIO source code in any form or manner.
|
||||
*
|
||||
* This limited grant of distribution does not supersede Tecplot, Inc.'s
|
||||
* copyright in TecIO. Contact Tecplot, Inc. for further information.
|
||||
*
|
||||
* Tecplot, Inc.
|
||||
* 3535 Factoria Blvd, Ste. 550
|
||||
* Bellevue, WA 98006, USA
|
||||
* Phone: +1 425 653 1200
|
||||
* http://www.tecplot.com/
|
||||
*
|
||||
*/
|
||||
/*
|
||||
* TECXXX.h: Copyright (C) 1988-2008 Tecplot, Inc.
|
||||
* TECXXX.h: Copyright (C) 1988-2010 Tecplot, Inc.
|
||||
*/
|
||||
|
||||
#if !defined TECXXX_H_
|
||||
|
@ -34,6 +11,7 @@
|
|||
# define TECZNE112 teczne112
|
||||
# define TECDAT112 tecdat112
|
||||
# define TECNOD112 tecnod112
|
||||
# define TECNODE112 tecnode112
|
||||
# define TECGEO112 tecgeo112
|
||||
# define TECTXT112 tectxt112
|
||||
# define TECLAB112 teclab112
|
||||
|
@ -45,6 +23,8 @@
|
|||
# define TECVAUXSTR112 tecvauxstr112
|
||||
# define TECFACE112 tecface112
|
||||
# define TECPOLY112 tecpoly112
|
||||
# define TECPOLYFACE112 tecpolyface112
|
||||
# define TECPOLYBCONN112 tecpolybconn112
|
||||
|
||||
# define TECFOREIGN111 tecforeign111
|
||||
# define TECINI111 tecini111
|
||||
|
@ -156,9 +136,14 @@
|
|||
|
||||
#if defined (TECPLOTKERNEL)
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#else /* !TECPLOTKERNAL && !MAKEARCHIVE */
|
||||
# define LIBCALL STDCALL
|
||||
# define LIBFUNCTION EXTERNC DLLIMPORT
|
||||
#else
|
||||
#if defined (MAKEARCHIVE)
|
||||
#define LIBCALL STDCALL
|
||||
#define LIBFUNCTION EXTERNC DLLEXPORT
|
||||
#else /* !TECPLOTKERNAL && !MAKEARCHIVE */
|
||||
#define LIBCALL STDCALL
|
||||
#define LIBFUNCTION EXTERNC DLLIMPORT
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/*
|
||||
|
@ -203,6 +188,9 @@ LIBFUNCTION INTEGER4 LIBCALL TECDAT112(INTEGER4 *N,
|
|||
|
||||
LIBFUNCTION INTEGER4 LIBCALL TECNOD112(INTEGER4 *NData);
|
||||
|
||||
LIBFUNCTION INTEGER4 LIBCALL TECNODE112(INTEGER4 *N,
|
||||
INTEGER4 *NData);
|
||||
|
||||
LIBFUNCTION INTEGER4 LIBCALL TECEND112(void);
|
||||
|
||||
LIBFUNCTION INTEGER4 LIBCALL TECLAB112(char *S);
|
||||
|
@ -281,6 +269,17 @@ LIBFUNCTION INTEGER4 LIBCALL TECPOLY112(INTEGER4 *FaceNodeCounts,
|
|||
INTEGER4 *FaceBndryConnectionElems,
|
||||
INTEGER4 *FaceBndryConnectionZones);
|
||||
|
||||
LIBFUNCTION INTEGER4 LIBCALL TECPOLYFACE112(INTEGER4 *NumFaces,
|
||||
INTEGER4 *FaceNodeCounts,
|
||||
INTEGER4 *FaceNodes,
|
||||
INTEGER4 *FaceLeftElems,
|
||||
INTEGER4 *FaceRightElems);
|
||||
|
||||
LIBFUNCTION INTEGER4 LIBCALL TECPOLYBCONN112(INTEGER4 *NumBndryFaces,
|
||||
INTEGER4 *FaceBndryConnectionCounts,
|
||||
INTEGER4 *FaceBndryConnectionElems,
|
||||
INTEGER4 *FaceBndryConnectionZones);
|
||||
|
||||
/*
|
||||
* V11.1 tecio functions TODO (JN): Tecplot's version is still in flux so the .1 may change
|
||||
*/
|
||||
|
|
|
@ -1,31 +1,8 @@
|
|||
/*
|
||||
* NOTICE and LICENSE for Tecplot Input/Output Library (TecIO) - OpenFOAM
|
||||
*
|
||||
* Copyright (C) 1988-2009 Tecplot, Inc. All rights reserved worldwide.
|
||||
*
|
||||
* Tecplot hereby grants OpenCFD limited authority to distribute without
|
||||
* alteration the source code to the Tecplot Input/Output library, known
|
||||
* as TecIO, as part of its distribution of OpenFOAM and the
|
||||
* OpenFOAM_to_Tecplot converter. Users of this converter are also hereby
|
||||
* granted access to the TecIO source code, and may redistribute it for the
|
||||
* purpose of maintaining the converter. However, no authority is granted
|
||||
* to alter the TecIO source code in any form or manner.
|
||||
*
|
||||
* This limited grant of distribution does not supersede Tecplot, Inc.'s
|
||||
* copyright in TecIO. Contact Tecplot, Inc. for further information.
|
||||
*
|
||||
* Tecplot, Inc.
|
||||
* 3535 Factoria Blvd, Ste. 550
|
||||
* Bellevue, WA 98006, USA
|
||||
* Phone: +1 425 653 1200
|
||||
* http://www.tecplot.com/
|
||||
*
|
||||
*/
|
||||
/*
|
||||
******************************************************************
|
||||
******************************************************************
|
||||
******* ********
|
||||
****** (C) 1988-2008 Tecplot, Inc. *******
|
||||
****** (C) 1988-2010 Tecplot, Inc. *******
|
||||
******* ********
|
||||
******************************************************************
|
||||
******************************************************************
|
||||
|
|
|
@ -1,26 +1,3 @@
|
|||
/*
|
||||
* NOTICE and LICENSE for Tecplot Input/Output Library (TecIO) - OpenFOAM
|
||||
*
|
||||
* Copyright (C) 1988-2009 Tecplot, Inc. All rights reserved worldwide.
|
||||
*
|
||||
* Tecplot hereby grants OpenCFD limited authority to distribute without
|
||||
* alteration the source code to the Tecplot Input/Output library, known
|
||||
* as TecIO, as part of its distribution of OpenFOAM and the
|
||||
* OpenFOAM_to_Tecplot converter. Users of this converter are also hereby
|
||||
* granted access to the TecIO source code, and may redistribute it for the
|
||||
* purpose of maintaining the converter. However, no authority is granted
|
||||
* to alter the TecIO source code in any form or manner.
|
||||
*
|
||||
* This limited grant of distribution does not supersede Tecplot, Inc.'s
|
||||
* copyright in TecIO. Contact Tecplot, Inc. for further information.
|
||||
*
|
||||
* Tecplot, Inc.
|
||||
* 3535 Factoria Blvd, Ste. 550
|
||||
* Bellevue, WA 98006, USA
|
||||
* Phone: +1 425 653 1200
|
||||
* http://www.tecplot.com/
|
||||
*
|
||||
*/
|
||||
#include "stdafx.h"
|
||||
#include "MASTER.h"
|
||||
#define TECPLOTENGINEMODULE
|
||||
|
@ -28,7 +5,7 @@
|
|||
*****************************************************************
|
||||
*****************************************************************
|
||||
******* ********
|
||||
****** Copyright (C) 1988-2008 Tecplot, Inc. *******
|
||||
****** Copyright (C) 1988-2010 Tecplot, Inc. *******
|
||||
******* ********
|
||||
*****************************************************************
|
||||
*****************************************************************
|
||||
|
@ -147,7 +124,7 @@ void TranslatedString::init(TranslatedString::Mode mode,
|
|||
*/
|
||||
TranslatedString::TranslatedString()
|
||||
{
|
||||
init(DontTranslate, (const char*)NULL, (const char*)NULL);
|
||||
init(DontTranslate, static_cast<const char*>(NULL), static_cast<const char*>(NULL));
|
||||
ENSURE(this->isValid());
|
||||
}
|
||||
|
||||
|
|
|
@ -1,31 +1,8 @@
|
|||
/*
|
||||
* NOTICE and LICENSE for Tecplot Input/Output Library (TecIO) - OpenFOAM
|
||||
*
|
||||
* Copyright (C) 1988-2009 Tecplot, Inc. All rights reserved worldwide.
|
||||
*
|
||||
* Tecplot hereby grants OpenCFD limited authority to distribute without
|
||||
* alteration the source code to the Tecplot Input/Output library, known
|
||||
* as TecIO, as part of its distribution of OpenFOAM and the
|
||||
* OpenFOAM_to_Tecplot converter. Users of this converter are also hereby
|
||||
* granted access to the TecIO source code, and may redistribute it for the
|
||||
* purpose of maintaining the converter. However, no authority is granted
|
||||
* to alter the TecIO source code in any form or manner.
|
||||
*
|
||||
* This limited grant of distribution does not supersede Tecplot, Inc.'s
|
||||
* copyright in TecIO. Contact Tecplot, Inc. for further information.
|
||||
*
|
||||
* Tecplot, Inc.
|
||||
* 3535 Factoria Blvd, Ste. 550
|
||||
* Bellevue, WA 98006, USA
|
||||
* Phone: +1 425 653 1200
|
||||
* http://www.tecplot.com/
|
||||
*
|
||||
*/
|
||||
/*
|
||||
*****************************************************************
|
||||
*****************************************************************
|
||||
******* ********
|
||||
****** Copyright (C) 1988-2008 Tecplot, Inc. *******
|
||||
****** Copyright (C) 1988-2010 Tecplot, Inc. *******
|
||||
******* ********
|
||||
*****************************************************************
|
||||
*****************************************************************
|
||||
|
|
|
@ -1,23 +1,5 @@
|
|||
/*
|
||||
* NOTICE and LICENSE for Tecplot Input/Output Library (TecIO) - OpenFOAM
|
||||
*
|
||||
* Copyright (C) 1988-2009 Tecplot, Inc. All rights reserved worldwide.
|
||||
*
|
||||
* Tecplot hereby grants OpenCFD limited authority to distribute without
|
||||
* alteration the source code to the Tecplot Input/Output library, known
|
||||
* as TecIO, as part of its distribution of OpenFOAM and the
|
||||
* OpenFOAM_to_Tecplot converter. Users of this converter are also hereby
|
||||
* granted access to the TecIO source code, and may redistribute it for the
|
||||
* purpose of maintaining the converter. However, no authority is granted
|
||||
* to alter the TecIO source code in any form or manner.
|
||||
*
|
||||
* This limited grant of distribution does not supersede Tecplot, Inc.'s
|
||||
* copyright in TecIO. Contact Tecplot, Inc. for further information.
|
||||
*
|
||||
* Tecplot, Inc.
|
||||
* 3535 Factoria Blvd, Ste. 550
|
||||
* Bellevue, WA 98006, USA
|
||||
* Phone: +1 425 653 1200
|
||||
* http://www.tecplot.com/
|
||||
*
|
||||
*/
|
||||
*/
|
||||
|
||||
#include "TecplotVersion.h"
|
||||
#define ADDON_VERSION TecVersionId
|
||||
|
|
|
@ -1,105 +0,0 @@
|
|||
/*
|
||||
******************************************************************
|
||||
******************************************************************
|
||||
******* ********
|
||||
****** (C) 1988-2010 Tecplot, Inc. *******
|
||||
******* ********
|
||||
******************************************************************
|
||||
******************************************************************
|
||||
*/
|
||||
#ifndef _W__BASE_h
|
||||
#define _W__BASE_h
|
||||
|
||||
#if defined TECPLOTKERNEL
|
||||
|
||||
#include "C__BASE.h"
|
||||
|
||||
typedef ULONG_PTR Widget;
|
||||
#define NULLWIDGET ((unsigned long)0)
|
||||
|
||||
extern BOOL MSWinIsLargeFont;
|
||||
extern CWnd *(TPClassArray[TPNUMCLASSES]);
|
||||
|
||||
typedef struct
|
||||
{
|
||||
CRect Rect;
|
||||
BOOL RectSet;
|
||||
CRect MinRect; // Only used for resizable dialogs
|
||||
BOOL MinRectSet; // Only used for resizable dialogs
|
||||
} TPDialogRect_s;
|
||||
|
||||
extern TPDialogRect_s TPDialogRect[TPNUMCLASSES];
|
||||
|
||||
#define WindowIsResizable(wnd) ((wnd)->GetStyle() & WS_THICKFRAME)
|
||||
|
||||
/*
|
||||
* NOTE: C = class number in TPClassArray (see C__BASE.h)
|
||||
* 0=no class
|
||||
* 1=TPMAINWND
|
||||
* O = offset within container
|
||||
* 0 means the container itself
|
||||
* any other number is the offset within control (starting at 1)
|
||||
* I = control number/id
|
||||
* 0 = class itself
|
||||
* for bitmap button groups, this is the container id
|
||||
* for all other controls, this is the control id
|
||||
* WidgetValue 0 is the NULL widget.
|
||||
*/
|
||||
|
||||
//#define MAKEWIDGET(C,I,O) ((Widget)((((C)&0xFFFF)<<16)|(((O)&0xFF)<<8)|((I)&0xFF)))
|
||||
|
||||
#define CLASS_NUM_BITS 10
|
||||
#define ITEM_ID_BITS 16 /* must be at least 16-bits to fit in the workarea */
|
||||
#define ITEM_OFFSET_BITS 6
|
||||
|
||||
/* The FILTER is also the maximum value. */
|
||||
#define CLASS_NUM_FILTER ((1<<CLASS_NUM_BITS)-1)
|
||||
#define ITEM_ID_FILTER ((1<<ITEM_ID_BITS)-1)
|
||||
#define ITEM_OFFSET_FILTER ((1<<ITEM_OFFSET_BITS)-1)
|
||||
|
||||
#define TP_CLASS_NO_CLASS 0
|
||||
#define TP_ITEM_CLASS_ITSELF 0
|
||||
#define TP_OFFSET_ITEM_ITSELF 0
|
||||
|
||||
#define TP_OFFSET_MENU_CASCADE (ITEM_OFFSET_FILTER-1)
|
||||
#define TP_OFFSET_MENU_OPTION ITEM_OFFSET_FILTER
|
||||
|
||||
/* MAKEWIDGET must be a define and not an inline function so widget's can be used in case statements. */
|
||||
#define MAKEWIDGET(ClassNum, ItemID, ItemOffset) ((Widget)( ( ( ((ClassNum)<<ITEM_ID_BITS) | (ItemID) ) << ITEM_OFFSET_BITS ) | (ItemOffset) ))
|
||||
|
||||
inline INT_PTR GetClassNum(Widget W)
|
||||
{
|
||||
return (W >> ITEM_ID_BITS) >> ITEM_OFFSET_BITS;
|
||||
}
|
||||
inline INT_PTR GetItemID(Widget W)
|
||||
{
|
||||
return (W >> ITEM_OFFSET_BITS) & ITEM_ID_FILTER;
|
||||
}
|
||||
inline INT_PTR GetItemOffset(Widget W)
|
||||
{
|
||||
return W & ITEM_OFFSET_FILTER;
|
||||
}
|
||||
|
||||
/*
|
||||
* We cannot use Boolean_t here because it is not defined yet.
|
||||
*/
|
||||
extern CWnd *GetWindowFromWidget(Widget);
|
||||
extern CWnd *GetParentWndFromWidget(Widget);
|
||||
extern Widget GetWidgetFromWindow(CWnd *);
|
||||
extern BOOL WidgetExists(Widget W);
|
||||
extern BOOL TPEnableDialog(CWnd *wnd,
|
||||
BOOL bEnable);
|
||||
extern void TPEnableAllDialogs(BOOL bEnable);
|
||||
extern TPDialogRect_s* GetDialogRectFromWidget(Widget);
|
||||
extern TPDialogRect_s* GetDialogRectFromWindow(CWnd* pWnd);
|
||||
|
||||
|
||||
#endif /* TECPLOTKERNEL */
|
||||
|
||||
/*
|
||||
* This is the start of the translated string ID's
|
||||
* in the resource file
|
||||
*/
|
||||
#define TP_TRANSLATED_STRING_START_ID 20000
|
||||
|
||||
#endif
|
|
@ -1,26 +1,3 @@
|
|||
/*
|
||||
* NOTICE and LICENSE for Tecplot Input/Output Library (TecIO) - OpenFOAM
|
||||
*
|
||||
* Copyright (C) 1988-2009 Tecplot, Inc. All rights reserved worldwide.
|
||||
*
|
||||
* Tecplot hereby grants OpenCFD limited authority to distribute without
|
||||
* alteration the source code to the Tecplot Input/Output library, known
|
||||
* as TecIO, as part of its distribution of OpenFOAM and the
|
||||
* OpenFOAM_to_Tecplot converter. Users of this converter are also hereby
|
||||
* granted access to the TecIO source code, and may redistribute it for the
|
||||
* purpose of maintaining the converter. However, no authority is granted
|
||||
* to alter the TecIO source code in any form or manner.
|
||||
*
|
||||
* This limited grant of distribution does not supersede Tecplot, Inc.'s
|
||||
* copyright in TecIO. Contact Tecplot, Inc. for further information.
|
||||
*
|
||||
* Tecplot, Inc.
|
||||
* 3535 Factoria Blvd, Ste. 550
|
||||
* Bellevue, WA 98006, USA
|
||||
* Phone: +1 425 653 1200
|
||||
* http://www.tecplot.com/
|
||||
*
|
||||
*/
|
||||
#include "stdafx.h"
|
||||
#include "MASTER.h"
|
||||
|
||||
|
@ -30,7 +7,7 @@
|
|||
******************************************************************
|
||||
******************************************************************
|
||||
******* ********
|
||||
****** (C) 1988-2008 Tecplot, Inc. *******
|
||||
****** (C) 1988-2010 Tecplot, Inc. *******
|
||||
******* ********
|
||||
******************************************************************
|
||||
******************************************************************
|
||||
|
|
|
@ -1,26 +1,3 @@
|
|||
/*
|
||||
* NOTICE and LICENSE for Tecplot Input/Output Library (TecIO) - OpenFOAM
|
||||
*
|
||||
* Copyright (C) 1988-2009 Tecplot, Inc. All rights reserved worldwide.
|
||||
*
|
||||
* Tecplot hereby grants OpenCFD limited authority to distribute without
|
||||
* alteration the source code to the Tecplot Input/Output library, known
|
||||
* as TecIO, as part of its distribution of OpenFOAM and the
|
||||
* OpenFOAM_to_Tecplot converter. Users of this converter are also hereby
|
||||
* granted access to the TecIO source code, and may redistribute it for the
|
||||
* purpose of maintaining the converter. However, no authority is granted
|
||||
* to alter the TecIO source code in any form or manner.
|
||||
*
|
||||
* This limited grant of distribution does not supersede Tecplot, Inc.'s
|
||||
* copyright in TecIO. Contact Tecplot, Inc. for further information.
|
||||
*
|
||||
* Tecplot, Inc.
|
||||
* 3535 Factoria Blvd, Ste. 550
|
||||
* Bellevue, WA 98006, USA
|
||||
* Phone: +1 425 653 1200
|
||||
* http://www.tecplot.com/
|
||||
*
|
||||
*/
|
||||
#include "stdafx.h"
|
||||
#include "MASTER.h"
|
||||
#define TECPLOTENGINEMODULE
|
||||
|
@ -29,7 +6,7 @@
|
|||
*****************************************************************
|
||||
*****************************************************************
|
||||
******* ********
|
||||
****** Copyright (C) 1988-2008 Tecplot, Inc. ********
|
||||
****** Copyright (C) 1988-2010 Tecplot, Inc. ********
|
||||
******* All Rights Reserved. ********
|
||||
******* ********
|
||||
*****************************************************************
|
||||
|
@ -40,11 +17,7 @@
|
|||
#include "GLOBAL.h"
|
||||
#include "TASSERT.h"
|
||||
#include "ALLOC.h"
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#endif
|
||||
#include "ARRLIST.h"
|
||||
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#endif
|
||||
|
@ -93,12 +66,12 @@
|
|||
* param ItemSize
|
||||
* Item size in bytes.
|
||||
*/
|
||||
static void CopyArrayItems(char *TargetArray,
|
||||
LgIndex_t TargetOffset,
|
||||
char *SourceArray,
|
||||
LgIndex_t SourceOffset,
|
||||
LgIndex_t Count,
|
||||
SmInteger_t ItemSize)
|
||||
static void CopyArrayItems(char* TargetArray,
|
||||
LgIndex_t TargetOffset,
|
||||
char* SourceArray,
|
||||
LgIndex_t SourceOffset,
|
||||
LgIndex_t Count,
|
||||
SmInteger_t ItemSize)
|
||||
{
|
||||
REQUIRE(VALID_REF(TargetArray));
|
||||
REQUIRE(TargetOffset >= 0);
|
||||
|
@ -106,11 +79,11 @@ static void CopyArrayItems(char *TargetArray,
|
|||
REQUIRE(SourceOffset >= 0);
|
||||
REQUIRE(&TargetArray[TargetOffset] != &SourceArray[SourceOffset]);
|
||||
REQUIRE(Count >= 1);
|
||||
REQUIRE(1 <= ItemSize && ItemSize <= (SmInteger_t)sizeof(ArrayListItem_u));
|
||||
REQUIRE(1 <= ItemSize && ItemSize <= static_cast<SmInteger_t>(sizeof(ArrayListItem_u)));
|
||||
|
||||
void* TargetPtr = &TargetArray[TargetOffset * ItemSize];
|
||||
void* SourcePtr = &SourceArray[SourceOffset * ItemSize];
|
||||
memmove(TargetPtr, SourcePtr, ((size_t)Count) * ItemSize);
|
||||
memmove(TargetPtr, SourcePtr, static_cast<size_t>(Count) * ItemSize);
|
||||
}
|
||||
|
||||
|
||||
|
@ -134,17 +107,17 @@ static void CopyArrayItems(char *TargetArray,
|
|||
* Adjusted capacity that is at least as large as the request or zero if
|
||||
* unable to satisfy the requested capacity.
|
||||
*/
|
||||
static LgIndex_t AdjustCapacityRequest(ArrayList_pa ArrayList,
|
||||
static LgIndex_t AdjustCapacityRequest(ArrayList_pa ASSERT_ONLY(ArrayList),
|
||||
LgIndex_t CurrentCapacity,
|
||||
LgIndex_t RequestedCapacity,
|
||||
ArbParam_t ClientData)
|
||||
{
|
||||
LgIndex_t Result;
|
||||
|
||||
REQUIRE(ArrayListIsValid(ArrayList));
|
||||
REQUIRE((RequestedCapacity == 0 && CurrentCapacity == 0) ||
|
||||
RequestedCapacity > CurrentCapacity);
|
||||
UNUSED(ClientData);
|
||||
|
||||
LgIndex_t Result;
|
||||
if (RequestedCapacity != 0 && CurrentCapacity == 0)
|
||||
{
|
||||
/* first allocation; assume the request is the desired capacityy */
|
||||
|
@ -152,7 +125,7 @@ static LgIndex_t AdjustCapacityRequest(ArrayList_pa ArrayList,
|
|||
}
|
||||
else
|
||||
{
|
||||
const LgIndex_t DEFAULT_CAPACITY = 32;
|
||||
LgIndex_t const DEFAULT_CAPACITY = 32;
|
||||
LgIndex_t BlockSize = MAX(DEFAULT_CAPACITY, CurrentCapacity / 2);
|
||||
if (RequestedCapacity == 0)
|
||||
Result = DEFAULT_CAPACITY;
|
||||
|
@ -176,118 +149,117 @@ static LgIndex_t AdjustCapacityRequest(ArrayList_pa ArrayList,
|
|||
*/
|
||||
static SmInteger_t GetElementSize(ArrayListType_e Type)
|
||||
{
|
||||
SmInteger_t Result;
|
||||
|
||||
REQUIRE(VALID_ENUM(Type, ArrayListType_e));
|
||||
|
||||
SmInteger_t Result;
|
||||
switch (Type)
|
||||
{
|
||||
case ArrayListType_UnsignedChar:
|
||||
Result = (SmInteger_t)sizeof(unsigned char);
|
||||
Result = static_cast<SmInteger_t>(sizeof(unsigned char));
|
||||
break;
|
||||
case ArrayListType_UnsignedShort:
|
||||
Result = (SmInteger_t)sizeof(unsigned short);
|
||||
Result = static_cast<SmInteger_t>(sizeof(unsigned short));
|
||||
break;
|
||||
case ArrayListType_UnsignedInt:
|
||||
Result = (SmInteger_t)sizeof(unsigned int);
|
||||
Result = static_cast<SmInteger_t>(sizeof(unsigned int));
|
||||
break;
|
||||
case ArrayListType_UnsignedLong:
|
||||
Result = (SmInteger_t)sizeof(unsigned long);
|
||||
Result = static_cast<SmInteger_t>(sizeof(unsigned long));
|
||||
break;
|
||||
case ArrayListType_Int64:
|
||||
Result = (SmInteger_t)sizeof(Int64_t);
|
||||
Result = static_cast<SmInteger_t>(sizeof(Int64_t));
|
||||
break;
|
||||
case ArrayListType_Char:
|
||||
Result = (SmInteger_t)sizeof(char);
|
||||
Result = static_cast<SmInteger_t>(sizeof(char));
|
||||
break;
|
||||
case ArrayListType_Short:
|
||||
Result = (SmInteger_t)sizeof(short);
|
||||
Result = static_cast<SmInteger_t>(sizeof(short));
|
||||
break;
|
||||
case ArrayListType_Int:
|
||||
Result = (SmInteger_t)sizeof(int);
|
||||
Result = static_cast<SmInteger_t>(sizeof(int));
|
||||
break;
|
||||
case ArrayListType_Long:
|
||||
Result = (SmInteger_t)sizeof(long);
|
||||
Result = static_cast<SmInteger_t>(sizeof(long));
|
||||
break;
|
||||
case ArrayListType_Float:
|
||||
Result = (SmInteger_t)sizeof(float);
|
||||
Result = static_cast<SmInteger_t>(sizeof(float));
|
||||
break;
|
||||
case ArrayListType_Double:
|
||||
Result = (SmInteger_t)sizeof(double);
|
||||
Result = static_cast<SmInteger_t>(sizeof(double));
|
||||
break;
|
||||
case ArrayListType_LgIndex:
|
||||
Result = (SmInteger_t)sizeof(LgIndex_t);
|
||||
Result = static_cast<SmInteger_t>(sizeof(LgIndex_t));
|
||||
break;
|
||||
case ArrayListType_EntIndex:
|
||||
Result = (SmInteger_t)sizeof(EntIndex_t);
|
||||
Result = static_cast<SmInteger_t>(sizeof(EntIndex_t));
|
||||
break;
|
||||
case ArrayListType_SmInteger:
|
||||
Result = (SmInteger_t)sizeof(SmInteger_t);
|
||||
Result = static_cast<SmInteger_t>(sizeof(SmInteger_t));
|
||||
break;
|
||||
case ArrayListType_Boolean:
|
||||
Result = (SmInteger_t)sizeof(Boolean_t);
|
||||
Result = static_cast<SmInteger_t>(sizeof(Boolean_t));
|
||||
break;
|
||||
case ArrayListType_ArbParam:
|
||||
Result = (SmInteger_t)sizeof(ArbParam_t);
|
||||
Result = static_cast<SmInteger_t>(sizeof(ArbParam_t));
|
||||
break;
|
||||
|
||||
case ArrayListType_UnsignedCharPtr:
|
||||
Result = (SmInteger_t)sizeof(unsigned char *);
|
||||
Result = static_cast<SmInteger_t>(sizeof(unsigned char*));
|
||||
break;
|
||||
case ArrayListType_UnsignedShortPtr:
|
||||
Result = (SmInteger_t)sizeof(unsigned short *);
|
||||
Result = static_cast<SmInteger_t>(sizeof(unsigned short*));
|
||||
break;
|
||||
case ArrayListType_UnsignedIntPtr:
|
||||
Result = (SmInteger_t)sizeof(unsigned int *);
|
||||
Result = static_cast<SmInteger_t>(sizeof(unsigned int*));
|
||||
break;
|
||||
case ArrayListType_UnsignedLongPtr:
|
||||
Result = (SmInteger_t)sizeof(unsigned long *);
|
||||
Result = static_cast<SmInteger_t>(sizeof(unsigned long*));
|
||||
break;
|
||||
case ArrayListType_Int64Ptr:
|
||||
Result = (SmInteger_t)sizeof(Int64_t *);
|
||||
Result = static_cast<SmInteger_t>(sizeof(Int64_t*));
|
||||
break;
|
||||
case ArrayListType_CharPtr:
|
||||
Result = (SmInteger_t)sizeof(char *);
|
||||
Result = static_cast<SmInteger_t>(sizeof(char*));
|
||||
break;
|
||||
case ArrayListType_ShortPtr:
|
||||
Result = (SmInteger_t)sizeof(short *);
|
||||
Result = static_cast<SmInteger_t>(sizeof(short*));
|
||||
break;
|
||||
case ArrayListType_IntPtr:
|
||||
Result = (SmInteger_t)sizeof(int *);
|
||||
Result = static_cast<SmInteger_t>(sizeof(int*));
|
||||
break;
|
||||
case ArrayListType_LongPtr:
|
||||
Result = (SmInteger_t)sizeof(long *);
|
||||
Result = static_cast<SmInteger_t>(sizeof(long*));
|
||||
break;
|
||||
case ArrayListType_FloatPtr:
|
||||
Result = (SmInteger_t)sizeof(float *);
|
||||
Result = static_cast<SmInteger_t>(sizeof(float*));
|
||||
break;
|
||||
case ArrayListType_DoublePtr:
|
||||
Result = (SmInteger_t)sizeof(double *);
|
||||
Result = static_cast<SmInteger_t>(sizeof(double*));
|
||||
break;
|
||||
case ArrayListType_LgIndexPtr:
|
||||
Result = (SmInteger_t)sizeof(LgIndex_t *);
|
||||
Result = static_cast<SmInteger_t>(sizeof(LgIndex_t*));
|
||||
break;
|
||||
case ArrayListType_EntIndexPtr:
|
||||
Result = (SmInteger_t)sizeof(EntIndex_t *);
|
||||
Result = static_cast<SmInteger_t>(sizeof(EntIndex_t*));
|
||||
break;
|
||||
case ArrayListType_SmIntegerPtr:
|
||||
Result = (SmInteger_t)sizeof(SmInteger_t *);
|
||||
Result = static_cast<SmInteger_t>(sizeof(SmInteger_t*));
|
||||
break;
|
||||
case ArrayListType_BooleanPtr:
|
||||
Result = (SmInteger_t)sizeof(Boolean_t *);
|
||||
Result = static_cast<SmInteger_t>(sizeof(Boolean_t*));
|
||||
break;
|
||||
case ArrayListType_ArbParamPtr:
|
||||
Result = (SmInteger_t)sizeof(ArbParam_t *);
|
||||
Result = static_cast<SmInteger_t>(sizeof(ArbParam_t*));
|
||||
break;
|
||||
|
||||
case ArrayListType_VoidPtr:
|
||||
Result = (SmInteger_t)sizeof(void *);
|
||||
Result = static_cast<SmInteger_t>(sizeof(void*));
|
||||
break;
|
||||
case ArrayListType_FunctionPtr:
|
||||
Result = (SmInteger_t)sizeof(void (*)());
|
||||
Result = static_cast<SmInteger_t>(sizeof(void (*)()));
|
||||
break;
|
||||
case ArrayListType_Any: /* allows a mixed bag of items */
|
||||
Result = (SmInteger_t)sizeof(ArrayListItem_u);
|
||||
Result = static_cast<SmInteger_t>(sizeof(ArrayListItem_u));
|
||||
break;
|
||||
|
||||
default:
|
||||
|
@ -296,7 +268,7 @@ static SmInteger_t GetElementSize(ArrayListType_e Type)
|
|||
break;
|
||||
}
|
||||
|
||||
ENSURE(1 <= Result && Result <= (SmInteger_t)sizeof(ArrayListItem_u));
|
||||
ENSURE(1 <= Result && Result <= static_cast<SmInteger_t>(sizeof(ArrayListItem_u)));
|
||||
return Result;
|
||||
}
|
||||
|
||||
|
@ -324,24 +296,19 @@ static void DestroyItems(ArrayList_pa ArrayList,
|
|||
ArrayListItemDestructor_pf ItemDestructor,
|
||||
ArbParam_t ClientData)
|
||||
{
|
||||
LgIndex_t Index;
|
||||
|
||||
REQUIRE(ArrayListIsValid(ArrayList));
|
||||
REQUIRE(0 <= ItemOffset && ItemOffset <= ArrayList->Count - 1);
|
||||
REQUIRE(1 <= Count && ItemOffset + Count <= ArrayList->Count);
|
||||
REQUIRE(VALID_FN_REF(ItemDestructor));
|
||||
|
||||
for (Index = 0;
|
||||
for (LgIndex_t Index = 0;
|
||||
Index < Count;
|
||||
Index++)
|
||||
{
|
||||
LgIndex_t ItemIndex = (Index + ItemOffset) * ItemSize;
|
||||
#if !defined NO_ASSERTS
|
||||
Boolean_t DoContinue = ItemDestructor((void *) & ArrayList->Array[ItemIndex], ClientData);
|
||||
CHECK(DoContinue); /* this is a requirement of ArrayListItemDestructor_pf */
|
||||
#else
|
||||
ItemDestructor((void *)&ArrayList->Array[ItemIndex], ClientData);
|
||||
#endif
|
||||
Boolean_t CHECK_DoContinue;
|
||||
CHECK_DoContinue = ItemDestructor(static_cast<void*>(&ArrayList->Array[ItemIndex]), ClientData);
|
||||
CHECK(CHECK_DoContinue); /* this is a requirement of ArrayListItemDestructor_pf */
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -370,35 +337,33 @@ static void DestroyItems(ArrayList_pa ArrayList,
|
|||
* TRUE if the duplication was a success
|
||||
* FALSE otherwise
|
||||
*/
|
||||
static Boolean_t DuplicateItems(char *TargetArray,
|
||||
LgIndex_t TargetItemOffset,
|
||||
char *SourceArray,
|
||||
LgIndex_t SourceItemOffset,
|
||||
SmInteger_t ItemSize,
|
||||
LgIndex_t Count,
|
||||
ArrayListItemDuplicator_pf ItemDuplicator,
|
||||
ArbParam_t ClientData)
|
||||
static Boolean_t DuplicateItems(char* TargetArray,
|
||||
LgIndex_t TargetItemOffset,
|
||||
char* SourceArray,
|
||||
LgIndex_t SourceItemOffset,
|
||||
SmInteger_t ItemSize,
|
||||
LgIndex_t Count,
|
||||
ArrayListItemDuplicator_pf ItemDuplicator,
|
||||
ArbParam_t ClientData)
|
||||
{
|
||||
Boolean_t IsOk = TRUE;
|
||||
LgIndex_t Index;
|
||||
|
||||
REQUIRE(VALID_REF(TargetArray));
|
||||
REQUIRE(TargetItemOffset >= 0);
|
||||
REQUIRE(VALID_REF(SourceArray));
|
||||
REQUIRE(SourceItemOffset >= 0);
|
||||
REQUIRE(1 <= ItemSize &&
|
||||
ItemSize <= (SmInteger_t)sizeof(ArrayListItem_u));
|
||||
ItemSize <= static_cast<SmInteger_t>(sizeof(ArrayListItem_u)));
|
||||
REQUIRE(Count >= 1);
|
||||
REQUIRE(VALID_FN_REF(ItemDuplicator));
|
||||
|
||||
for (Index = 0;
|
||||
Boolean_t IsOk = TRUE;
|
||||
for (LgIndex_t Index = 0;
|
||||
Index < Count && IsOk;
|
||||
Index++)
|
||||
{
|
||||
LgIndex_t TargetItemIndex = (Index + TargetItemOffset) * ItemSize;
|
||||
LgIndex_t SourceItemIndex = (Index + SourceItemOffset) * ItemSize;
|
||||
IsOk = ItemDuplicator((void *) & TargetArray[TargetItemIndex],
|
||||
(void *) & SourceArray[SourceItemIndex],
|
||||
IsOk = ItemDuplicator(static_cast<void*>(&TargetArray[TargetItemIndex]),
|
||||
static_cast<void*>(&SourceArray[SourceItemIndex]),
|
||||
ClientData);
|
||||
}
|
||||
|
||||
|
@ -418,17 +383,16 @@ static Boolean_t DuplicateItems(char *TargetArray,
|
|||
*/
|
||||
Boolean_t ArrayListIsValid(ArrayList_pa ArrayList)
|
||||
{
|
||||
Boolean_t IsValid;
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#endif
|
||||
|
||||
/* this just makes sure that the NULL item global was initialized */
|
||||
INVARIANT(ArrayListNullItem.Double == 0.0);
|
||||
|
||||
IsValid = (VALID_REF(ArrayList) &&
|
||||
VALID_ENUM(ArrayList->Type, ArrayListType_e) &&
|
||||
(1 <= ArrayList->ItemSize &&
|
||||
ArrayList->ItemSize <= (SmInteger_t)sizeof(ArrayListItem_u)) &&
|
||||
(0 <= ArrayList->Count &&
|
||||
ArrayList->Count <= ArrayList->Capacity));
|
||||
Boolean_t IsValid = (VALID_REF(ArrayList) &&
|
||||
VALID_ENUM(ArrayList->Type, ArrayListType_e) &&
|
||||
(1 <= ArrayList->ItemSize &&
|
||||
ArrayList->ItemSize <= static_cast<SmInteger_t>(sizeof(ArrayListItem_u))) &&
|
||||
(0 <= ArrayList->Count &&
|
||||
ArrayList->Count <= ArrayList->Capacity));
|
||||
|
||||
ENSURE(VALID_BOOLEAN(IsValid));
|
||||
return IsValid;
|
||||
|
@ -446,11 +410,9 @@ Boolean_t ArrayListIsValid(ArrayList_pa ArrayList)
|
|||
*/
|
||||
ArrayListType_e ArrayListGetType(ArrayList_pa ArrayList)
|
||||
{
|
||||
ArrayListType_e Result;
|
||||
|
||||
REQUIRE(ArrayListIsValid(ArrayList));
|
||||
|
||||
Result = ArrayList->Type;
|
||||
ArrayListType_e Result = ArrayList->Type;
|
||||
|
||||
ENSURE(VALID_ENUM(Result, ArrayListType_e));
|
||||
return Result;
|
||||
|
@ -465,9 +427,9 @@ ArrayListType_e ArrayListGetType(ArrayList_pa ArrayList)
|
|||
* the RequestedCapacity.
|
||||
*
|
||||
* param ArrayList
|
||||
* Current capacity used as a helpful hint for the adjustment algorythm.
|
||||
* Current capacity used as a helpful hint for the adjustment algorithm.
|
||||
* param RequestedCapacity
|
||||
* Capacity (number ot items) request or zero for default size.
|
||||
* Capacity (number of items) request or zero for default size.
|
||||
*
|
||||
* return
|
||||
* TRUE if the list could be enlarged (or was large enough),
|
||||
|
@ -476,17 +438,14 @@ ArrayListType_e ArrayListGetType(ArrayList_pa ArrayList)
|
|||
Boolean_t ArrayListEnlargeCapacity(ArrayList_pa ArrayList,
|
||||
LgIndex_t RequestedCapacity)
|
||||
{
|
||||
Boolean_t IsOk;
|
||||
LgIndex_t AdjustedCapacity;
|
||||
char *EnlargedArray;
|
||||
|
||||
REQUIRE(ArrayListIsValid(ArrayList));
|
||||
REQUIRE(IMPLICATION(RequestedCapacity == 0, ArrayList->Capacity == 0));
|
||||
|
||||
Boolean_t IsOk;
|
||||
if (RequestedCapacity == 0 ||
|
||||
RequestedCapacity > ArrayList->Capacity)
|
||||
{
|
||||
AdjustedCapacity =
|
||||
LgIndex_t AdjustedCapacity =
|
||||
ArrayList->CapacityRequestAdjuster(ArrayList,
|
||||
ArrayList->Capacity,
|
||||
RequestedCapacity,
|
||||
|
@ -494,6 +453,7 @@ Boolean_t ArrayListEnlargeCapacity(ArrayList_pa ArrayList,
|
|||
CHECK(AdjustedCapacity == 0 ||
|
||||
AdjustedCapacity >= RequestedCapacity);
|
||||
|
||||
char* EnlargedArray = NULL; /* ...quiet compiler */
|
||||
IsOk = (AdjustedCapacity != 0); /* ...were we able to meet the request? */
|
||||
if (IsOk)
|
||||
{
|
||||
|
@ -571,12 +531,10 @@ ArrayList_pa ArrayListAlloc(LgIndex_t EstimatedCapacit
|
|||
ArrayListCapacityRequestAdjuster_pf CapacityRequestAdjuster,
|
||||
ArbParam_t CapacityRequestAdjusterClientData)
|
||||
{
|
||||
ArrayList_pa Result;
|
||||
|
||||
REQUIRE(EstimatedCapacity >= 0);
|
||||
REQUIRE(VALID_ENUM(Type, ArrayListType_e));
|
||||
|
||||
Result = ALLOC_ITEM(ArrayList_s, "ArrayList structure");
|
||||
ArrayList_pa Result = ALLOC_ITEM(ArrayList_s, "ArrayList structure");
|
||||
if (Result != NULL)
|
||||
{
|
||||
Result->Array = NULL;
|
||||
|
@ -620,9 +578,9 @@ ArrayList_pa ArrayListAlloc(LgIndex_t EstimatedCapacit
|
|||
* param ClientData
|
||||
* Any client data needed for cleanup.
|
||||
*/
|
||||
void ArrayListDealloc(ArrayList_pa *ArrayList,
|
||||
ArrayListItemDestructor_pf ItemDestructor,
|
||||
ArbParam_t ClientData)
|
||||
void ArrayListDealloc(ArrayList_pa* ArrayList,
|
||||
ArrayListItemDestructor_pf ItemDestructor,
|
||||
ArbParam_t ClientData)
|
||||
{
|
||||
REQUIRE(VALID_REF(ArrayList));
|
||||
REQUIRE(ArrayListIsValid(*ArrayList) || *ArrayList == NULL);
|
||||
|
@ -660,11 +618,9 @@ void ArrayListDealloc(ArrayList_pa *ArrayList,
|
|||
*/
|
||||
LgIndex_t ArrayListGetCount_FUNC(ArrayList_pa ArrayList)
|
||||
{
|
||||
LgIndex_t Result;
|
||||
|
||||
REQUIRE(ArrayListIsValid(ArrayList));
|
||||
|
||||
Result = ArrayListGetCount_MACRO(ArrayList);
|
||||
LgIndex_t Result = ArrayListGetCount_MACRO(ArrayList);
|
||||
|
||||
ENSURE(Result >= 0);
|
||||
return Result;
|
||||
|
@ -845,14 +801,13 @@ ArrayList_pa ArrayListRemoveItems(ArrayList_pa ArrayList,
|
|||
ArrayListItem_u ArrayListRemoveItem(ArrayList_pa ArrayList,
|
||||
LgIndex_t ItemOffset)
|
||||
{
|
||||
ArrayListItem_u Result;
|
||||
|
||||
REQUIRE(ArrayListIsValid(ArrayList));
|
||||
REQUIRE(0 <= ItemOffset && ItemOffset <= ArrayList->Count - 1);
|
||||
REQUIRE(!ArrayList->IsVisitingItems);
|
||||
|
||||
/* record the original item */
|
||||
CopyArrayItems((char *)&Result, 0,
|
||||
ArrayListItem_u Result;
|
||||
CopyArrayItems(static_cast<char*>(&Result.Char), 0,
|
||||
ArrayList->Array, ItemOffset,
|
||||
1, ArrayList->ItemSize);
|
||||
|
||||
|
@ -883,8 +838,6 @@ Boolean_t ArrayListInsert(ArrayList_pa Target,
|
|||
LgIndex_t ItemOffset,
|
||||
ArrayList_pa Source)
|
||||
{
|
||||
Boolean_t IsOk = TRUE;
|
||||
|
||||
REQUIRE(ArrayListIsValid(Target));
|
||||
REQUIRE(ItemOffset >= 0);
|
||||
REQUIRE(ArrayListIsValid(Source));
|
||||
|
@ -892,6 +845,8 @@ Boolean_t ArrayListInsert(ArrayList_pa Target,
|
|||
REQUIRE(Target->Type == Source->Type);
|
||||
REQUIRE(!Target->IsVisitingItems);
|
||||
|
||||
Boolean_t IsOk = TRUE;
|
||||
|
||||
if (Source->Count != 0)
|
||||
{
|
||||
LgIndex_t NeededCapacity;
|
||||
|
@ -960,14 +915,14 @@ Boolean_t ArrayListInsertItem(ArrayList_pa ArrayList,
|
|||
LgIndex_t ItemOffset,
|
||||
ArrayListItem_u Item)
|
||||
{
|
||||
Boolean_t IsOk = TRUE;
|
||||
LgIndex_t NeededCapacity;
|
||||
|
||||
REQUIRE(ArrayListIsValid(ArrayList));
|
||||
REQUIRE(ItemOffset >= 0);
|
||||
REQUIRE(!ArrayList->IsVisitingItems);
|
||||
|
||||
Boolean_t IsOk = TRUE;
|
||||
|
||||
/* if necessary enlarge the list to accommodate the request */
|
||||
LgIndex_t NeededCapacity;
|
||||
if (ItemOffset > ArrayList->Count)
|
||||
NeededCapacity = ItemOffset + 1;
|
||||
else
|
||||
|
@ -998,7 +953,7 @@ Boolean_t ArrayListInsertItem(ArrayList_pa ArrayList,
|
|||
|
||||
/* insert the item */
|
||||
CopyArrayItems(ArrayList->Array, ItemOffset,
|
||||
(char *)&Item, 0,
|
||||
static_cast<char*>(&Item.Char), 0,
|
||||
1, ArrayList->ItemSize);
|
||||
}
|
||||
|
||||
|
@ -1032,23 +987,21 @@ Boolean_t ArrayListVisitItems(ArrayList_pa ArrayList,
|
|||
ArrayListItemVisitor_pf ItemVisitor,
|
||||
ArbParam_t ClientData)
|
||||
{
|
||||
Boolean_t DoContinue = TRUE;
|
||||
Boolean_t IsVisitingItems;
|
||||
SmInteger_t ItemSize;
|
||||
LgIndex_t Index;
|
||||
|
||||
REQUIRE(ArrayListIsValid(ArrayList));
|
||||
REQUIRE(VALID_FN_REF(ItemVisitor));
|
||||
|
||||
IsVisitingItems = ArrayList->IsVisitingItems;
|
||||
Boolean_t IsVisitingItems = ArrayList->IsVisitingItems;
|
||||
ArrayList->IsVisitingItems = TRUE; /* guards against structure changes */
|
||||
|
||||
LgIndex_t Index;
|
||||
SmInteger_t ItemSize;
|
||||
Boolean_t DoContinue = TRUE;
|
||||
for (Index = 0, ItemSize = ArrayList->ItemSize;
|
||||
Index < Count && DoContinue;
|
||||
Index++)
|
||||
{
|
||||
LgIndex_t ItemIndex = (Index + ItemOffset) * ItemSize;
|
||||
DoContinue = ItemVisitor((void *) & ArrayList->Array[ItemIndex], ClientData);
|
||||
DoContinue = ItemVisitor(static_cast<void*>(&ArrayList->Array[ItemIndex]), ClientData);
|
||||
}
|
||||
|
||||
ArrayList->IsVisitingItems = IsVisitingItems;
|
||||
|
@ -1079,15 +1032,13 @@ ArrayList_pa ArrayListGetItems(ArrayList_pa ArrayList,
|
|||
LgIndex_t ItemOffset,
|
||||
LgIndex_t Count)
|
||||
{
|
||||
ArrayList_pa Result;
|
||||
|
||||
REQUIRE(ArrayListIsValid(ArrayList));
|
||||
REQUIRE(0 <= ItemOffset && ItemOffset <= ArrayList->Count - 1);
|
||||
REQUIRE(1 <= Count && ItemOffset + Count <= ArrayList->Count);
|
||||
|
||||
Result = ArrayListAlloc(Count, ArrayList->Type,
|
||||
ArrayList->CapacityRequestAdjuster,
|
||||
ArrayList->CapacityRequestAdjusterClientData);
|
||||
ArrayList_pa Result = ArrayListAlloc(Count, ArrayList->Type,
|
||||
ArrayList->CapacityRequestAdjuster,
|
||||
ArrayList->CapacityRequestAdjusterClientData);
|
||||
if (Result != NULL)
|
||||
{
|
||||
/* copy the original items into the result */
|
||||
|
@ -1117,12 +1068,11 @@ ArrayList_pa ArrayListGetItems(ArrayList_pa ArrayList,
|
|||
ArrayListItem_u ArrayListGetItem(ArrayList_pa ArrayList,
|
||||
LgIndex_t ItemOffset)
|
||||
{
|
||||
ArrayListItem_u Result;
|
||||
|
||||
REQUIRE(ArrayListIsValid(ArrayList));
|
||||
REQUIRE(0 <= ItemOffset && ItemOffset <= ArrayList->Count - 1);
|
||||
|
||||
CopyArrayItems((char *)&Result, 0,
|
||||
ArrayListItem_u Result;
|
||||
CopyArrayItems(static_cast<char*>(&Result.Char), 0,
|
||||
ArrayList->Array, ItemOffset,
|
||||
1, ArrayList->ItemSize);
|
||||
|
||||
|
@ -1150,13 +1100,13 @@ ArrayListItem_u ArrayListGetItem(ArrayList_pa ArrayList,
|
|||
* return
|
||||
* The internal reference to the requested item.
|
||||
*/
|
||||
const void *ArrayListGetItemInternalRef_FUNC(ArrayList_pa ArrayList,
|
||||
void const* ArrayListGetItemInternalRef_FUNC(ArrayList_pa ArrayList,
|
||||
LgIndex_t ItemOffset)
|
||||
{
|
||||
REQUIRE(ArrayListIsValid(ArrayList));
|
||||
REQUIRE(0 <= ItemOffset && ItemOffset <= ArrayList->Count - 1);
|
||||
|
||||
const void *Result = ArrayListGetItemInternalRef_MACRO(ArrayList, ItemOffset);
|
||||
void const* Result = ArrayListGetItemInternalRef_MACRO(ArrayList, ItemOffset);
|
||||
ENSURE(Result == NULL || VALID_REF(Result));
|
||||
return Result;
|
||||
}
|
||||
|
@ -1190,14 +1140,14 @@ Boolean_t ArrayListSetItem(ArrayList_pa ArrayList,
|
|||
ArrayListItemDestructor_pf ItemDestructor,
|
||||
ArbParam_t ClientData)
|
||||
{
|
||||
Boolean_t IsOk = TRUE;
|
||||
|
||||
REQUIRE(ArrayListIsValid(ArrayList));
|
||||
REQUIRE(ItemOffset >= 0);
|
||||
REQUIRE(VALID_FN_REF(ItemDestructor) || ItemDestructor == NULL);
|
||||
REQUIRE(IMPLICATION(ItemOffset + 1 > ArrayList->Count,
|
||||
!ArrayList->IsVisitingItems));
|
||||
|
||||
Boolean_t IsOk = TRUE;
|
||||
|
||||
/* release the item if a destructor is installed */
|
||||
if (ItemDestructor != NULL && ItemOffset < ArrayList->Count)
|
||||
DestroyItems(ArrayList, ItemOffset, ArrayList->ItemSize, 1,
|
||||
|
@ -1212,7 +1162,7 @@ Boolean_t ArrayListSetItem(ArrayList_pa ArrayList,
|
|||
if (ItemOffset + 1 > ArrayList->Count)
|
||||
ArrayList->Count = ItemOffset + 1;
|
||||
CopyArrayItems(ArrayList->Array, ItemOffset,
|
||||
(char *)&Item, 0,
|
||||
static_cast<char*>(&Item.Char), 0,
|
||||
1, ArrayList->ItemSize);
|
||||
}
|
||||
|
||||
|
@ -1237,12 +1187,10 @@ Boolean_t ArrayListSetItem(ArrayList_pa ArrayList,
|
|||
Boolean_t ArrayListAppendItem(ArrayList_pa ArrayList,
|
||||
ArrayListItem_u Item)
|
||||
{
|
||||
Boolean_t IsOk;
|
||||
|
||||
REQUIRE(ArrayListIsValid(ArrayList));
|
||||
REQUIRE(!ArrayList->IsVisitingItems);
|
||||
|
||||
IsOk = ArrayListInsertItem(ArrayList, ArrayList->Count, Item);
|
||||
Boolean_t IsOk = ArrayListInsertItem(ArrayList, ArrayList->Count, Item);
|
||||
|
||||
ENSURE(ArrayListIsValid(ArrayList));
|
||||
ENSURE(VALID_BOOLEAN(IsOk));
|
||||
|
@ -1265,15 +1213,13 @@ Boolean_t ArrayListAppendItem(ArrayList_pa ArrayList,
|
|||
Boolean_t ArrayListAppend(ArrayList_pa Target,
|
||||
ArrayList_pa Source)
|
||||
{
|
||||
Boolean_t IsOk;
|
||||
|
||||
REQUIRE(ArrayListIsValid(Target));
|
||||
REQUIRE(ArrayListIsValid(Source));
|
||||
REQUIRE(Target != Source);
|
||||
REQUIRE(Target->Type == Source->Type);
|
||||
REQUIRE(!Target->IsVisitingItems);
|
||||
|
||||
IsOk = ArrayListInsert(Target, Target->Count, Source);
|
||||
Boolean_t IsOk = ArrayListInsert(Target, Target->Count, Source);
|
||||
|
||||
ENSURE(ArrayListIsValid(Target));
|
||||
ENSURE(VALID_BOOLEAN(IsOk));
|
||||
|
@ -1301,14 +1247,12 @@ ArrayList_pa ArrayListCopy(ArrayList_pa ArrayList,
|
|||
ArrayListItemDuplicator_pf ItemDuplicator,
|
||||
ArbParam_t ClientData)
|
||||
{
|
||||
ArrayList_pa Result;
|
||||
|
||||
REQUIRE(ArrayListIsValid(ArrayList));
|
||||
REQUIRE(VALID_FN_REF(ItemDuplicator) || ItemDuplicator == NULL);
|
||||
|
||||
Result = ArrayListAlloc(ArrayList->Count, ArrayList->Type,
|
||||
ArrayList->CapacityRequestAdjuster,
|
||||
ArrayList->CapacityRequestAdjusterClientData);
|
||||
ArrayList_pa Result = ArrayListAlloc(ArrayList->Count, ArrayList->Type,
|
||||
ArrayList->CapacityRequestAdjuster,
|
||||
ArrayList->CapacityRequestAdjusterClientData);
|
||||
if (Result != NULL && ArrayList->Count != 0)
|
||||
{
|
||||
Boolean_t IsOk = TRUE;
|
||||
|
@ -1356,18 +1300,17 @@ ArrayList_pa ArrayListCopy(ArrayList_pa ArrayList,
|
|||
* array (but not the individual members unless a item duplication function
|
||||
* was supplied) when it is no longer needed.
|
||||
*/
|
||||
void *ArrayListToArray(ArrayList_pa Source,
|
||||
void* ArrayListToArray(ArrayList_pa Source,
|
||||
ArrayListItemDuplicator_pf ItemDuplicator,
|
||||
ArbParam_t ClientData)
|
||||
{
|
||||
void *Result;
|
||||
|
||||
REQUIRE(ArrayListIsValid(Source));
|
||||
REQUIRE(VALID_FN_REF(ItemDuplicator) || ItemDuplicator == NULL);
|
||||
|
||||
void* Result;
|
||||
if (Source->Count != 0)
|
||||
Result = (void *)ALLOC_ARRAY(Source->Count * Source->ItemSize,
|
||||
char, "native array");
|
||||
Result = static_cast<void*>(ALLOC_ARRAY(Source->Count * Source->ItemSize,
|
||||
char, "native array"));
|
||||
else
|
||||
Result = NULL;
|
||||
|
||||
|
@ -1376,20 +1319,20 @@ void *ArrayListToArray(ArrayList_pa Source,
|
|||
Boolean_t IsOk = TRUE;
|
||||
if (ItemDuplicator != NULL)
|
||||
/* client defines how the item duplication is performed */
|
||||
IsOk = DuplicateItems((char*)Result, 0,
|
||||
IsOk = DuplicateItems(static_cast<char*>(Result), 0,
|
||||
Source->Array, 0,
|
||||
Source->ItemSize, Source->Count,
|
||||
ItemDuplicator, ClientData);
|
||||
else
|
||||
/* copy the original items into the result */
|
||||
CopyArrayItems((char *)Result, 0,
|
||||
CopyArrayItems(static_cast<char*>(Result), 0,
|
||||
Source->Array, 0,
|
||||
Source->Count,
|
||||
Source->ItemSize);
|
||||
if (!IsOk)
|
||||
{
|
||||
/* Hack to remove delete warning... */
|
||||
char *Tmp = (char *)Result;
|
||||
char* Tmp = static_cast<char*>(Result);
|
||||
FREE_ARRAY(Tmp, "native array");
|
||||
}
|
||||
}
|
||||
|
@ -1421,33 +1364,31 @@ void *ArrayListToArray(ArrayList_pa Source,
|
|||
* native 'C' array if sufficient memory was available, otherwise
|
||||
* a handle to NULL.
|
||||
*/
|
||||
ArrayList_pa ArrayListFromArray(void *Source,
|
||||
LgIndex_t Count,
|
||||
ArrayListType_e Type,
|
||||
ArrayListItemDuplicator_pf ItemDuplicator,
|
||||
ArbParam_t ClientData)
|
||||
ArrayList_pa ArrayListFromArray(void* Source,
|
||||
LgIndex_t Count,
|
||||
ArrayListType_e Type,
|
||||
ArrayListItemDuplicator_pf ItemDuplicator,
|
||||
ArbParam_t ClientData)
|
||||
{
|
||||
ArrayList_pa Result;
|
||||
|
||||
REQUIRE(VALID_REF(Source));
|
||||
REQUIRE(Count >= 0);
|
||||
REQUIRE(VALID_ENUM(Type, ArrayListType_e));
|
||||
REQUIRE(VALID_FN_REF(ItemDuplicator) || ItemDuplicator == NULL);
|
||||
|
||||
Result = ArrayListAlloc(Count, Type, NULL, 0);
|
||||
ArrayList_pa Result = ArrayListAlloc(Count, Type, NULL, 0);
|
||||
if (Result != NULL && Count != 0)
|
||||
{
|
||||
Boolean_t IsOk = TRUE;
|
||||
if (ItemDuplicator != NULL)
|
||||
/* client defines how the item duplication is performed */
|
||||
IsOk = DuplicateItems(Result->Array, 0,
|
||||
(char*)Source, 0,
|
||||
static_cast<char*>(Source), 0,
|
||||
Result->ItemSize, Count,
|
||||
ItemDuplicator, ClientData);
|
||||
else
|
||||
/* copy the original items into the result */
|
||||
CopyArrayItems(Result->Array, 0,
|
||||
(char *)Source, 0,
|
||||
static_cast<char*>(Source), 0,
|
||||
Count, Result->ItemSize);
|
||||
if (IsOk)
|
||||
Result->Count = Count;
|
||||
|
@ -1459,122 +1400,10 @@ ArrayList_pa ArrayListFromArray(void *Source,
|
|||
return Result;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Holds the comparator function pointer for sorting.
|
||||
*/
|
||||
static ArrayListItemComparator_pf ComparatorFunction = NULL;
|
||||
|
||||
|
||||
/**
|
||||
* Holds the context for comparisons. This information is forwarded to
|
||||
* the item comparator function for sorting.
|
||||
*/
|
||||
static ArbParam_t ComparatorClientData = 0;
|
||||
|
||||
|
||||
/**
|
||||
* Holds the item size of the individual array components for sorting.
|
||||
*/
|
||||
static SmInteger_t ComparatorItemSize = 0;
|
||||
|
||||
|
||||
/**
|
||||
* Forwards the comparison test to the 'Comparator' supplied to the
|
||||
* 'ArrayListQSort' function.
|
||||
*
|
||||
* param Item1Ref
|
||||
* Reference to base address of Item1.
|
||||
* param Item2Ref
|
||||
* Reference to base address of Item2.
|
||||
*
|
||||
* return
|
||||
* - A value less than zero if Item1 is less than Item2.
|
||||
* - A value of zero if Item1 is equal to Item2.
|
||||
* - A value greater than zero if Item1 is greater than Item2.
|
||||
*/
|
||||
static int QSortCompareItemsAdapter(const void *Item1Ref,
|
||||
const void *Item2Ref)
|
||||
{
|
||||
int Result;
|
||||
ArrayListItem_u Item1;
|
||||
ArrayListItem_u Item2;
|
||||
|
||||
REQUIRE(Item1Ref != NULL);
|
||||
REQUIRE(Item2Ref != NULL);
|
||||
|
||||
/* collect up the items */
|
||||
CopyArrayItems((char *)&Item1, 0,
|
||||
(char *)Item1Ref, 0,
|
||||
1, ComparatorItemSize);
|
||||
CopyArrayItems((char *)&Item2, 0,
|
||||
(char *)Item2Ref, 0,
|
||||
1, ComparatorItemSize);
|
||||
|
||||
/* forward the call */
|
||||
Result = ComparatorFunction(Item1, Item2, ComparatorClientData);
|
||||
|
||||
ENSURE(Result == -1 || Result == 0 || Result == 1);
|
||||
return Result;
|
||||
}
|
||||
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#endif
|
||||
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#endif
|
||||
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#endif
|
||||
|
||||
/**
|
||||
* Sorts the array list using the qsort algorithm.
|
||||
*
|
||||
* param ArrayList
|
||||
* Array list to sort.
|
||||
* param Comparator
|
||||
* Function called to compare two array list elements.
|
||||
* param ClientData
|
||||
* Contextual information that is passed along to the comparator function.
|
||||
*/
|
||||
void ArrayListQSort(ArrayList_pa ArrayList,
|
||||
ArrayListItemComparator_pf Comparator,
|
||||
ArbParam_t ClientData)
|
||||
{
|
||||
ArrayListItemComparator_pf CurComparatorFunction;
|
||||
ArbParam_t CurComparatorClientData;
|
||||
SmInteger_t CurComparatorItemSize;
|
||||
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#endif
|
||||
REQUIRE(ArrayListIsValid(ArrayList));
|
||||
REQUIRE(VALID_FN_REF(Comparator));
|
||||
|
||||
/* to support sort recursion we need to save off the current values */
|
||||
CurComparatorFunction = ComparatorFunction;
|
||||
CurComparatorClientData = ComparatorClientData;
|
||||
CurComparatorItemSize = ComparatorItemSize;
|
||||
|
||||
/* set up for comparison proxy */
|
||||
ComparatorFunction = Comparator;
|
||||
ComparatorClientData = ClientData;
|
||||
ComparatorItemSize = ArrayList->ItemSize;
|
||||
|
||||
/* sort the array */
|
||||
qsort(ArrayList->Array, ArrayList->Count,
|
||||
ArrayList->ItemSize, QSortCompareItemsAdapter);
|
||||
|
||||
/* cleanup */
|
||||
ComparatorFunction = CurComparatorFunction;
|
||||
ComparatorClientData = CurComparatorClientData;
|
||||
ComparatorItemSize = CurComparatorItemSize;
|
||||
|
||||
ENSURE(ArrayListIsValid(ArrayList));
|
||||
}
|
||||
|
||||
/**
|
||||
* Binary searches a sorted array looking for a match using the supplied
|
||||
|
@ -1598,11 +1427,11 @@ void ArrayListQSort(ArrayList_pa ArrayList,
|
|||
* result
|
||||
* TRUE if the item was found in the list, FALSE otherwise.
|
||||
*/
|
||||
Boolean_t ArrayListBSearch(ArrayList_pa ArrayList,
|
||||
ArrayListItem_u Item,
|
||||
ArrayListItemComparator_pf Comparator,
|
||||
ArbParam_t ClientData,
|
||||
LgIndex_t *ItemIndex)
|
||||
Boolean_t ArrayListBSearch(ArrayList_pa ArrayList,
|
||||
ArrayListItem_u Item,
|
||||
ArrayListItemComparator_pf Comparator,
|
||||
ArbParam_t ClientData,
|
||||
LgIndex_t* ItemIndex)
|
||||
{
|
||||
REQUIRE(ArrayListIsValid(ArrayList));
|
||||
REQUIRE(VALID_FN_REF(Comparator));
|
||||
|
@ -1660,11 +1489,11 @@ Boolean_t ArrayListBSearch(ArrayList_pa ArrayList,
|
|||
* return
|
||||
* Reference to the array list's internal buffer.
|
||||
*/
|
||||
const void *ArrayListGetInternalRef_FUNC(ArrayList_pa ArrayList)
|
||||
void const* ArrayListGetInternalRef_FUNC(ArrayList_pa ArrayList)
|
||||
{
|
||||
REQUIRE(ArrayListIsValid(ArrayList));
|
||||
|
||||
const void *Result = ArrayListGetInternalRef_MACRO(ArrayList);
|
||||
void const* Result = ArrayListGetInternalRef_MACRO(ArrayList);
|
||||
ENSURE(Result == NULL || VALID_REF(Result));
|
||||
return Result;
|
||||
}
|
||||
|
|
|
@ -1,26 +1,3 @@
|
|||
/*
|
||||
* NOTICE and LICENSE for Tecplot Input/Output Library (TecIO) - OpenFOAM
|
||||
*
|
||||
* Copyright (C) 1988-2009 Tecplot, Inc. All rights reserved worldwide.
|
||||
*
|
||||
* Tecplot hereby grants OpenCFD limited authority to distribute without
|
||||
* alteration the source code to the Tecplot Input/Output library, known
|
||||
* as TecIO, as part of its distribution of OpenFOAM and the
|
||||
* OpenFOAM_to_Tecplot converter. Users of this converter are also hereby
|
||||
* granted access to the TecIO source code, and may redistribute it for the
|
||||
* purpose of maintaining the converter. However, no authority is granted
|
||||
* to alter the TecIO source code in any form or manner.
|
||||
*
|
||||
* This limited grant of distribution does not supersede Tecplot, Inc.'s
|
||||
* copyright in TecIO. Contact Tecplot, Inc. for further information.
|
||||
*
|
||||
* Tecplot, Inc.
|
||||
* 3535 Factoria Blvd, Ste. 550
|
||||
* Bellevue, WA 98006, USA
|
||||
* Phone: +1 425 653 1200
|
||||
* http://www.tecplot.com/
|
||||
*
|
||||
*/
|
||||
#include "stdafx.h"
|
||||
#include "MASTER.h"
|
||||
#define TECPLOTENGINEMODULE
|
||||
|
@ -29,7 +6,7 @@
|
|||
*****************************************************************
|
||||
*****************************************************************
|
||||
******* ********
|
||||
****** Copyright (C) 1988-2008 Tecplot, Inc. ********
|
||||
****** Copyright (C) 1988-2010 Tecplot, Inc. ********
|
||||
******* All Rights Reserved. ********
|
||||
******* ********
|
||||
*****************************************************************
|
||||
|
@ -41,6 +18,7 @@
|
|||
#include "TASSERT.h"
|
||||
#include "Q_UNICODE.h"
|
||||
#include "ALLOC.h"
|
||||
#include "CHARTYPE.h"
|
||||
#include "STRUTIL.h"
|
||||
#include "ARRLIST.h"
|
||||
#include "DATASET.h"
|
||||
|
@ -58,7 +36,7 @@ using namespace tecplot::strutil;
|
|||
*/
|
||||
typedef struct
|
||||
{
|
||||
const char *Name;
|
||||
char const* Name;
|
||||
ArbParam_t Value;
|
||||
AuxDataType_e Type;
|
||||
Boolean_t Retain;
|
||||
|
@ -66,15 +44,14 @@ typedef struct
|
|||
|
||||
/**
|
||||
* Private auxiliary data item container structure.
|
||||
* INVARIANT: ItemList is case-insensitive sorted by AuxDataItem->Name
|
||||
*/
|
||||
typedef struct _AuxData_s
|
||||
{
|
||||
/* invariant: ItemList is case-insensitive sorted by AuxDataItem->Name */
|
||||
ArbParam_t Owner; /* dataset, frame, or page owner or NULL if no owner */
|
||||
ArrayList_pa ItemList; /* <AuxDataItem_s *>[dynamic] */
|
||||
} AuxData_s;
|
||||
|
||||
static Mutex_pa AuxDataMutex = NULL;
|
||||
|
||||
|
||||
/**
|
||||
* A valid auxiliary data name character must begin with a '_' or alpha
|
||||
|
@ -90,11 +67,11 @@ Boolean_t AuxDataIsValidNameChar(char Char,
|
|||
REQUIRE(VALID_BOOLEAN(IsLeadChar));
|
||||
|
||||
IsValidNameChar = (Char == '_' ||
|
||||
isalpha(Char));
|
||||
tecplot::isalpha(Char));
|
||||
if (!IsLeadChar)
|
||||
IsValidNameChar = (IsValidNameChar ||
|
||||
Char == '.' ||
|
||||
isdigit(Char));
|
||||
tecplot::isdigit(Char));
|
||||
|
||||
ENSURE(VALID_BOOLEAN(IsValidNameChar));
|
||||
return IsValidNameChar;
|
||||
|
@ -136,13 +113,13 @@ static void AuxDataItemDealloc(AuxDataItem_s **AuxDataItem)
|
|||
|
||||
if (*AuxDataItem != NULL)
|
||||
{
|
||||
char *Name = (char *)(*AuxDataItem)->Name;
|
||||
char *Name = const_cast<char *>((*AuxDataItem)->Name);
|
||||
if (Name != NULL)
|
||||
FREE_ARRAY(Name, "auxiliary name");
|
||||
|
||||
if ((*AuxDataItem)->Type == AuxDataType_String)
|
||||
{
|
||||
char *Value = (char *)(*AuxDataItem)->Value;
|
||||
char *Value = reinterpret_cast<char *>((*AuxDataItem)->Value);
|
||||
if (Value != NULL)
|
||||
FREE_ARRAY(Value, "auxiliary value");
|
||||
}
|
||||
|
@ -161,35 +138,33 @@ static void AuxDataItemDealloc(AuxDataItem_s **AuxDataItem)
|
|||
*
|
||||
* NOTE: Copies are made of the name and value.
|
||||
*
|
||||
* param Name
|
||||
* @param Name
|
||||
* Auxiliary data item's name (case insenstive).
|
||||
* param Value
|
||||
* @param Value
|
||||
* Auxiliary data item's value.
|
||||
* param Type
|
||||
* @param Type
|
||||
* Auxiliary data item's value type.
|
||||
* param Retain
|
||||
* @param Retain
|
||||
* Indicates if the auxiliary data item should persist. In other words
|
||||
* copied, saved, etc.
|
||||
*
|
||||
* return
|
||||
* @return
|
||||
* A new auxiliary data item or NULL if sufficient memory was not
|
||||
* available.
|
||||
*/
|
||||
static AuxDataItem_s *AuxDataItemAlloc(const char *Name,
|
||||
static AuxDataItem_s* AuxDataItemAlloc(char const* Name,
|
||||
ArbParam_t Value,
|
||||
AuxDataType_e Type,
|
||||
Boolean_t Retain)
|
||||
{
|
||||
AuxDataItem_s *Result;
|
||||
|
||||
REQUIRE(VALID_REF(Name) && AuxDataIsValidName(Name));
|
||||
REQUIRE(IMPLICATION(Type == AuxDataType_String,
|
||||
(VALID_REF((char *)Value) ||
|
||||
(char *)Value == NULL)));
|
||||
(VALID_REF(reinterpret_cast<char *>(Value)) ||
|
||||
reinterpret_cast<char *>(Value) == NULL)));
|
||||
REQUIRE(VALID_ENUM(Type, AuxDataType_e));
|
||||
REQUIRE(VALID_BOOLEAN(Retain));
|
||||
|
||||
Result = ALLOC_ITEM(AuxDataItem_s, "auxiliary data item");
|
||||
AuxDataItem_s* Result = ALLOC_ITEM(AuxDataItem_s, "auxiliary data item");
|
||||
if (Result != NULL)
|
||||
{
|
||||
Boolean_t IsOk;
|
||||
|
@ -200,15 +175,15 @@ static AuxDataItem_s *AuxDataItemAlloc(const char *Name,
|
|||
Result->Value = 0; /* to satisfy some compilers' uninitialized warnings */
|
||||
if (IsOk && Type == AuxDataType_String)
|
||||
{
|
||||
char *strValue = (char *)Value;
|
||||
char *strValue = reinterpret_cast<char *>(Value);
|
||||
if (strValue != NULL)
|
||||
{
|
||||
char *strCopy = DupString(dontTranslate(strValue));
|
||||
Result->Value = (ArbParam_t)strCopy;
|
||||
Result->Value = reinterpret_cast<ArbParam_t>(strCopy);
|
||||
IsOk = (strCopy != NULL);
|
||||
}
|
||||
else
|
||||
Result->Value = (ArbParam_t)NULL;
|
||||
Result->Value = static_cast<ArbParam_t>(NULL);
|
||||
}
|
||||
else
|
||||
CHECK(FALSE);
|
||||
|
@ -236,10 +211,11 @@ static AuxDataItem_s *AuxDataItemAlloc(const char *Name,
|
|||
static Boolean_t AuxDataItemListItemDestructor(void *ItemRef,
|
||||
ArbParam_t ClientData)
|
||||
{
|
||||
AuxDataItem_s **AuxDataItemRef = (AuxDataItem_s **)ItemRef;
|
||||
AuxDataItem_s **AuxDataItemRef = static_cast<AuxDataItem_s **>(ItemRef);
|
||||
|
||||
REQUIRE(VALID_REF(AuxDataItemRef));
|
||||
REQUIRE(VALID_REF(*AuxDataItemRef) || *AuxDataItemRef == NULL);
|
||||
UNUSED(ClientData);
|
||||
|
||||
if (*AuxDataItemRef != NULL)
|
||||
AuxDataItemDealloc(AuxDataItemRef);
|
||||
|
@ -263,10 +239,11 @@ static Boolean_t AuxDataItemListItemDestructor(void *ItemRef,
|
|||
Boolean_t AuxDataItemDestructor(void *ItemRef,
|
||||
ArbParam_t ClientData)
|
||||
{
|
||||
AuxData_pa *AuxDataRef = (AuxData_pa *)ItemRef;
|
||||
AuxData_pa *AuxDataRef = static_cast<AuxData_pa *>(ItemRef);
|
||||
|
||||
REQUIRE(VALID_REF(AuxDataRef));
|
||||
REQUIRE(VALID_REF(*AuxDataRef) || *AuxDataRef == NULL);
|
||||
UNUSED(ClientData);
|
||||
|
||||
if (*AuxDataRef != NULL)
|
||||
AuxDataDealloc(AuxDataRef);
|
||||
|
@ -296,16 +273,16 @@ static Boolean_t AuxDataItemDuplicator(void *TargetItemRef,
|
|||
ArbParam_t ClientData)
|
||||
{
|
||||
Boolean_t IsOk = TRUE;
|
||||
AuxDataItem_s **TargetAuxDataItemRef = (AuxDataItem_s **)TargetItemRef;
|
||||
AuxDataItem_s **SourceAuxDataItemRef = (AuxDataItem_s **)SourceItemRef;
|
||||
AuxDataItem_s **TargetAuxDataItemRef = static_cast<AuxDataItem_s **>(TargetItemRef);
|
||||
AuxDataItem_s **SourceAuxDataItemRef = static_cast<AuxDataItem_s **>(SourceItemRef);
|
||||
Boolean_t ConsiderRetain;
|
||||
|
||||
REQUIRE(VALID_REF(TargetAuxDataItemRef));
|
||||
REQUIRE(VALID_REF(SourceAuxDataItemRef));
|
||||
REQUIRE(VALID_REF(*SourceAuxDataItemRef) || *SourceAuxDataItemRef == NULL);
|
||||
REQUIRE(VALID_BOOLEAN((Boolean_t)ClientData));
|
||||
REQUIRE(VALID_BOOLEAN(static_cast<Boolean_t>(ClientData)));
|
||||
|
||||
ConsiderRetain = (Boolean_t)ClientData;
|
||||
ConsiderRetain = static_cast<Boolean_t>(ClientData);
|
||||
|
||||
/* duplicate the item */
|
||||
if (*SourceAuxDataItemRef != NULL &&
|
||||
|
@ -331,7 +308,7 @@ static Boolean_t AuxDataItemDuplicator(void *TargetItemRef,
|
|||
* param AuxData
|
||||
* Reference to an auxiliary data handle or reference to NULL.
|
||||
*/
|
||||
void AuxDataDealloc(AuxData_pa *AuxData)
|
||||
void LIBCALL AuxDataDealloc(AuxData_pa *AuxData)
|
||||
{
|
||||
REQUIRE(VALID_REF(AuxData));
|
||||
REQUIRE(VALID_REF(*AuxData) || *AuxData == NULL);
|
||||
|
@ -349,14 +326,17 @@ void AuxDataDealloc(AuxData_pa *AuxData)
|
|||
/**
|
||||
* Allocates an auxiliary data handle.
|
||||
*
|
||||
* return
|
||||
* @param Owner
|
||||
* Auxiliary data owner, either a dataset, frame, or page or NULL if no owner.
|
||||
* @return
|
||||
* Auxiliary data handle or NULL if sufficient memory was not available.
|
||||
*/
|
||||
AuxData_pa AuxDataAlloc(void)
|
||||
AuxData_pa AuxDataAlloc(ArbParam_t Owner)
|
||||
{
|
||||
AuxData_pa Result = ALLOC_ITEM(AuxData_s, "auxiliary data container");
|
||||
if (Result != NULL)
|
||||
{
|
||||
Result->Owner = Owner;
|
||||
Result->ItemList = ArrayListAlloc(0, ArrayListType_VoidPtr, NULL, 0);
|
||||
if (Result->ItemList == NULL)
|
||||
AuxDataDealloc(&Result);
|
||||
|
@ -441,7 +421,7 @@ AuxData_pa AuxDataCopy(AuxData_pa AuxData,
|
|||
* return
|
||||
* Number of items maintained by the auxiliary data.
|
||||
*/
|
||||
LgIndex_t AuxDataGetNumItems(AuxData_pa AuxData)
|
||||
LgIndex_t LIBCALL AuxDataGetNumItems(AuxData_pa AuxData)
|
||||
{
|
||||
LgIndex_t NumItems;
|
||||
|
||||
|
@ -482,56 +462,31 @@ Boolean_t AuxDataGetItemIndex(AuxData_pa AuxData,
|
|||
REQUIRE(VALID_REF(Name) && AuxDataIsValidName(Name));
|
||||
REQUIRE(VALID_REF(ItemIndex));
|
||||
|
||||
/*
|
||||
* Note that the current implementation just does a linear search
|
||||
* though the array looking for the index of the item or if not
|
||||
* found the index of the insertion point. This should be replaced
|
||||
* with a binary search.
|
||||
*/
|
||||
NumItems = AuxDataGetNumItems(AuxData);
|
||||
|
||||
# if defined DO_LINEAR_SEARCH
|
||||
int low, high;
|
||||
low = 0;
|
||||
high = NumItems - 1;
|
||||
Index = 0;
|
||||
while (low <= high)
|
||||
{
|
||||
for (Index = 0; Index < NumItems; Index++)
|
||||
int CompareResult;
|
||||
Index = (low + high) / 2;
|
||||
AuxDataItem_s* AuxDataItem = static_cast<AuxDataItem_s *>(ArrayListGetVoidPtr(AuxData->ItemList, Index));
|
||||
CompareResult = ustrcmp(Name, AuxDataItem->Name);
|
||||
if (CompareResult < 0)
|
||||
high = Index - 1; /* If the new name is "less" than the one we're comparing to,
|
||||
don't change Index since Index is already in the right spot */
|
||||
else if (CompareResult > 0)
|
||||
low = ++Index; /* If the new name it "greater" than the one we're comparing
|
||||
against, we want to make sure its Index is greater than
|
||||
the current name's index as well, that's why we increment Index here. */
|
||||
else
|
||||
{
|
||||
AuxDataItem_s *AuxDataItem =
|
||||
(AuxDataItem_s *)ArrayListGetVoidPtr(AuxData->ItemList, Index);
|
||||
int CompareResult = ustrcmp(AuxDataItem->Name, Name);
|
||||
if (CompareResult >= 0)
|
||||
{
|
||||
FoundItem = (CompareResult == 0);
|
||||
break;
|
||||
}
|
||||
FoundItem = TRUE;
|
||||
break;
|
||||
}
|
||||
}
|
||||
# else
|
||||
{
|
||||
int low, high;
|
||||
low = 0;
|
||||
high = NumItems - 1;
|
||||
Index = 0;
|
||||
while (low <= high)
|
||||
{
|
||||
AuxDataItem_s *AuxDataItem;
|
||||
int CompareResult;
|
||||
Index = (low + high) / 2;
|
||||
AuxDataItem = (AuxDataItem_s *)ArrayListGetVoidPtr(AuxData->ItemList, Index);
|
||||
CompareResult = ustrcmp(Name, AuxDataItem->Name);
|
||||
if (CompareResult < 0)
|
||||
high = Index - 1; /* If the new name is "less" than the one we're comparing to,
|
||||
don't change Index since Index is already in the right spot */
|
||||
else if (CompareResult > 0)
|
||||
low = ++Index; /* If the new name it "greater" than the one we're comparing
|
||||
against, we want to make sure its Index is greater than
|
||||
the current name's index as well, that's why we increment Index here. */
|
||||
else
|
||||
{
|
||||
FoundItem = TRUE;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
# endif
|
||||
|
||||
*ItemIndex = Index;
|
||||
|
||||
|
@ -560,12 +515,12 @@ Boolean_t AuxDataGetItemIndex(AuxData_pa AuxData,
|
|||
* param Retain
|
||||
* Address to hold the auxiliary data item retain flag.
|
||||
*/
|
||||
void AuxDataGetItemByIndex(AuxData_pa AuxData,
|
||||
LgIndex_t Index,
|
||||
const char **Name,
|
||||
ArbParam_t *Value,
|
||||
AuxDataType_e *Type,
|
||||
Boolean_t *Retain)
|
||||
void LIBCALL AuxDataGetItemByIndex(AuxData_pa AuxData,
|
||||
LgIndex_t Index,
|
||||
const char **Name,
|
||||
ArbParam_t *Value,
|
||||
AuxDataType_e *Type,
|
||||
Boolean_t *Retain)
|
||||
{
|
||||
AuxDataItem_s *AuxDataItem;
|
||||
|
||||
|
@ -577,7 +532,7 @@ void AuxDataGetItemByIndex(AuxData_pa AuxData,
|
|||
REQUIRE(VALID_REF(Type));
|
||||
REQUIRE(VALID_REF(Retain));
|
||||
|
||||
AuxDataItem = (AuxDataItem_s *)ArrayListGetVoidPtr(AuxData->ItemList, Index);
|
||||
AuxDataItem = static_cast<AuxDataItem_s *>(ArrayListGetVoidPtr(AuxData->ItemList, Index));
|
||||
*Name = AuxDataItem->Name;
|
||||
*Value = AuxDataItem->Value;
|
||||
*Type = AuxDataItem->Type;
|
||||
|
@ -585,8 +540,8 @@ void AuxDataGetItemByIndex(AuxData_pa AuxData,
|
|||
|
||||
ENSURE(VALID_REF(*Name) && AuxDataIsValidName(*Name));
|
||||
ENSURE(IMPLICATION(*Type == AuxDataType_String,
|
||||
(VALID_REF((char *)(*Value)) ||
|
||||
(char *)(*Value) == NULL)));
|
||||
(VALID_REF(reinterpret_cast<char *>(*Value)) ||
|
||||
reinterpret_cast<char *>(*Value) == NULL)));
|
||||
ENSURE(VALID_ENUM(*Type, AuxDataType_e));
|
||||
ENSURE(VALID_BOOLEAN(*Retain));
|
||||
}
|
||||
|
@ -639,8 +594,8 @@ Boolean_t AuxDataGetItemByName(AuxData_pa AuxData,
|
|||
ENSURE(VALID_BOOLEAN(FoundItem));
|
||||
ENSURE(IMPLICATION(FoundItem,
|
||||
IMPLICATION(*Type == AuxDataType_String,
|
||||
(VALID_REF((char *)(*Value)) ||
|
||||
(char *)(*Value) == NULL))));
|
||||
(VALID_REF(reinterpret_cast<char *>(*Value)) ||
|
||||
reinterpret_cast<char *>(*Value) == NULL))));
|
||||
ENSURE(IMPLICATION(FoundItem,
|
||||
VALID_ENUM(*Type, AuxDataType_e)));
|
||||
ENSURE(IMPLICATION(FoundItem,
|
||||
|
@ -675,13 +630,13 @@ Boolean_t AuxDataGetBooleanItemByName(AuxData_pa AuxData, /* IN */
|
|||
Retain);
|
||||
|
||||
if (FoundItem &&
|
||||
(ustrcmp((char *)strValue, "YES") == 0 ||
|
||||
ustrcmp((char *)strValue, "YEP") == 0 ||
|
||||
ustrcmp((char *)strValue, "Y") == 0 ||
|
||||
ustrcmp((char *)strValue, "TRUE") == 0 ||
|
||||
ustrcmp((char *)strValue, "T") == 0 ||
|
||||
ustrcmp((char *)strValue, "ON") == 0 ||
|
||||
ustrcmp((char *)strValue, "1") == 0))
|
||||
(ustrcmp(reinterpret_cast<char *>(strValue), "YES") == 0 ||
|
||||
ustrcmp(reinterpret_cast<char *>(strValue), "YEP") == 0 ||
|
||||
ustrcmp(reinterpret_cast<char *>(strValue), "Y") == 0 ||
|
||||
ustrcmp(reinterpret_cast<char *>(strValue), "TRUE") == 0 ||
|
||||
ustrcmp(reinterpret_cast<char *>(strValue), "T") == 0 ||
|
||||
ustrcmp(reinterpret_cast<char *>(strValue), "ON") == 0 ||
|
||||
ustrcmp(reinterpret_cast<char *>(strValue), "1") == 0))
|
||||
{
|
||||
*Value = TRUE;
|
||||
}
|
||||
|
@ -702,47 +657,44 @@ Boolean_t AuxDataGetBooleanItemByName(AuxData_pa AuxData, /* IN */
|
|||
*
|
||||
* NOTE: The auxiliary data makes copies of the name and value.
|
||||
*
|
||||
* param AuxData
|
||||
* @param AuxData
|
||||
* Auxiliary data handle.
|
||||
* param Name
|
||||
* @param Name
|
||||
* Auxiliary data item's name (case insenstive).
|
||||
* param Value
|
||||
* @param Value
|
||||
* Auxiliary data item's value.
|
||||
* param Type
|
||||
* @param Type
|
||||
* Auxiliary data item's value type.
|
||||
* param Retain
|
||||
* @param Retain
|
||||
* Indicates if the auxiliary data item should persist.
|
||||
*
|
||||
* return
|
||||
* @return
|
||||
* TRUE if the item was added to the auxiliary data.
|
||||
*/
|
||||
Boolean_t AuxDataSetItem(AuxData_pa AuxData,
|
||||
const char *Name,
|
||||
char const* Name,
|
||||
ArbParam_t Value,
|
||||
AuxDataType_e Type,
|
||||
Boolean_t Retain)
|
||||
{
|
||||
Boolean_t IsOk;
|
||||
AuxDataItem_s *AuxDataItem;
|
||||
|
||||
REQUIRE(VALID_REF(AuxData));
|
||||
INVARIANT("AuxData->ItemList is case-insensitive sorted by AuxDataItem->Name");
|
||||
REQUIRE(VALID_REF(Name) && AuxDataIsValidName(Name));
|
||||
REQUIRE(IMPLICATION(Type == AuxDataType_String,
|
||||
(VALID_REF((char *)Value) ||
|
||||
(char *)Value == NULL)));
|
||||
(VALID_REF(reinterpret_cast<char *>(Value)) ||
|
||||
reinterpret_cast<char *>(Value) == NULL)));
|
||||
REQUIRE(VALID_ENUM(Type, AuxDataType_e));
|
||||
REQUIRE(VALID_BOOLEAN(Retain));
|
||||
|
||||
AuxDataItem = AuxDataItemAlloc(Name, Value, Type, Retain);
|
||||
IsOk = (AuxDataItem != NULL);
|
||||
AuxDataItem_s* AuxDataItem = AuxDataItemAlloc(Name, Value, Type, Retain);
|
||||
Boolean_t IsOk = (AuxDataItem != NULL);
|
||||
if (IsOk)
|
||||
{
|
||||
LgIndex_t ItemIndex;
|
||||
ArrayListItem_u ListItem;
|
||||
|
||||
/* add or replace the item to the list */
|
||||
ListItem.VoidPtr = (void *)AuxDataItem;
|
||||
ListItem.VoidPtr = static_cast<void *>(AuxDataItem);
|
||||
if (!AuxDataGetItemIndex(AuxData, Name, &ItemIndex))
|
||||
IsOk = ArrayListInsertItem(AuxData->ItemList, ItemIndex, ListItem);
|
||||
else
|
||||
|
|
|
@ -1,26 +1,3 @@
|
|||
/*
|
||||
* NOTICE and LICENSE for Tecplot Input/Output Library (TecIO) - OpenFOAM
|
||||
*
|
||||
* Copyright (C) 1988-2009 Tecplot, Inc. All rights reserved worldwide.
|
||||
*
|
||||
* Tecplot hereby grants OpenCFD limited authority to distribute without
|
||||
* alteration the source code to the Tecplot Input/Output library, known
|
||||
* as TecIO, as part of its distribution of OpenFOAM and the
|
||||
* OpenFOAM_to_Tecplot converter. Users of this converter are also hereby
|
||||
* granted access to the TecIO source code, and may redistribute it for the
|
||||
* purpose of maintaining the converter. However, no authority is granted
|
||||
* to alter the TecIO source code in any form or manner.
|
||||
*
|
||||
* This limited grant of distribution does not supersede Tecplot, Inc.'s
|
||||
* copyright in TecIO. Contact Tecplot, Inc. for further information.
|
||||
*
|
||||
* Tecplot, Inc.
|
||||
* 3535 Factoria Blvd, Ste. 550
|
||||
* Bellevue, WA 98006, USA
|
||||
* Phone: +1 425 653 1200
|
||||
* http://www.tecplot.com/
|
||||
*
|
||||
*/
|
||||
#include "stdafx.h"
|
||||
#include "MASTER.h"
|
||||
#define TECPLOTENGINEMODULE
|
||||
|
@ -29,7 +6,7 @@
|
|||
******************************************************************
|
||||
******************************************************************
|
||||
******* ********
|
||||
****** (C) 1988-2008 Tecplot, Inc. *******
|
||||
****** (C) 1988-2010 Tecplot, Inc. *******
|
||||
******* ********
|
||||
******************************************************************
|
||||
******************************************************************
|
||||
|
@ -107,6 +84,7 @@ Boolean_t ReadDataFileHeader(FileStream_s *FileStream,
|
|||
StringList_pa **CustomLabelBase,
|
||||
StringList_pa *UserRec,
|
||||
AuxData_pa *DataSetAuxData,
|
||||
ArbParam_t AuxDataOwner,
|
||||
Set_pa **IsVarCellCentered, /* Create an Array dim by zones */
|
||||
Boolean_t *HasText,
|
||||
Boolean_t *HasGeoms,
|
||||
|
@ -235,12 +213,12 @@ Boolean_t ReadDataFileHeader(FileStream_s *FileStream,
|
|||
if (IsOk && (UserRec != NULL && *UserRec == NULL))
|
||||
{
|
||||
*UserRec = StringListAlloc();
|
||||
IsOk = (Boolean_t)(*UserRec != NULL);
|
||||
IsOk = static_cast<Boolean_t>(*UserRec != NULL);
|
||||
}
|
||||
if (IsOk && (DataSetAuxData != NULL && *DataSetAuxData == NULL))
|
||||
{
|
||||
*DataSetAuxData = AuxDataAlloc();
|
||||
IsOk = (Boolean_t)(*DataSetAuxData != NULL);
|
||||
*DataSetAuxData = AuxDataAlloc(AuxDataOwner);
|
||||
IsOk = static_cast<Boolean_t>(*DataSetAuxData != NULL);
|
||||
}
|
||||
if (IsOk && (VarAuxDataList != NULL && *VarAuxDataList == NULL) && *NumVars > 0)
|
||||
{
|
||||
|
@ -267,7 +245,7 @@ Boolean_t ReadDataFileHeader(FileStream_s *FileStream,
|
|||
* Now allocate a set for each zone
|
||||
*/
|
||||
(*IsVarCellCentered)[Z] = AllocSet(FALSE);
|
||||
IsOk = (Boolean_t)((*IsVarCellCentered)[Z] != NULL);
|
||||
IsOk = static_cast<Boolean_t>((*IsVarCellCentered)[Z] != NULL);
|
||||
}
|
||||
}
|
||||
else
|
||||
|
@ -303,13 +281,13 @@ Boolean_t ReadDataFileHeader(FileStream_s *FileStream,
|
|||
|
||||
IsOk = ReadInDataFileTypeTitleAndVarNames(FileStream,
|
||||
IVersion,
|
||||
((Pass == 2) ? &S : (char **)NULL),
|
||||
((Pass == 2) ? FileType : (DataFileType_e *)NULL),
|
||||
((Pass == 2) ? &S : static_cast<char **>(NULL)),
|
||||
((Pass == 2) ? FileType : static_cast<DataFileType_e *>(NULL)),
|
||||
&INumVars,
|
||||
((Pass == 2) ? VarNames : (StringList_pa *)NULL));
|
||||
((Pass == 2) ? VarNames : static_cast<StringList_pa *>(NULL)));
|
||||
|
||||
if (IsOk)
|
||||
*NumVars = (EntIndex_t)INumVars;
|
||||
*NumVars = static_cast<EntIndex_t>(INumVars);
|
||||
|
||||
if ((Pass == 2) && S && IsOk && DataSetTitle)
|
||||
*DataSetTitle = S;
|
||||
|
@ -341,7 +319,7 @@ Boolean_t ReadDataFileHeader(FileStream_s *FileStream,
|
|||
LgIndex_t LocalFNNumBndryConns;
|
||||
IsOk = ReadInZoneHeader(FileStream, IVersion, ZoneSpec,
|
||||
OkToLoad ? (*IsVarCellCentered)[*NumZones] : NULL,
|
||||
*NumVars, &LocalIsRawFNAvailable,
|
||||
*NumVars, AuxDataOwner, &LocalIsRawFNAvailable,
|
||||
&LocalFNNumBndryConns);
|
||||
if (IsOk && OkToLoad && IsRawFNAvailable != NULL)
|
||||
{
|
||||
|
@ -362,7 +340,7 @@ Boolean_t ReadDataFileHeader(FileStream_s *FileStream,
|
|||
if (IsOk)
|
||||
{
|
||||
ArrayListItem_u CurZoneSpecItem;
|
||||
CurZoneSpecItem.VoidPtr = (void *)ZoneSpec;
|
||||
CurZoneSpecItem.VoidPtr = static_cast<void *>(ZoneSpec);
|
||||
ArrayListSetItem(*ZoneSpecList, *NumZones,
|
||||
CurZoneSpecItem,
|
||||
ZoneSpecItemDestructor, 0);
|
||||
|
@ -471,12 +449,12 @@ Boolean_t ReadDataFileHeader(FileStream_s *FileStream,
|
|||
Boolean_t OkToLoad;
|
||||
char *CurUserRec = NULL;
|
||||
|
||||
OkToLoad = (Boolean_t)((Pass == 2) && UserRec);
|
||||
OkToLoad = static_cast<Boolean_t>((Pass == 2) && UserRec);
|
||||
|
||||
IsOk = ReadInUserRec(FileStream,
|
||||
IVersion,
|
||||
500,
|
||||
OkToLoad ? &CurUserRec : (char **)NULL);
|
||||
OkToLoad ? &CurUserRec : static_cast<char **>(NULL));
|
||||
if (IsOk && OkToLoad)
|
||||
IsOk = StringListAppendString(*UserRec, CurUserRec);
|
||||
if (CurUserRec)
|
||||
|
@ -510,10 +488,10 @@ Boolean_t ReadDataFileHeader(FileStream_s *FileStream,
|
|||
AuxData_pa VarAuxData;
|
||||
if (OkToLoad)
|
||||
{
|
||||
VarAuxData = (AuxData_pa)ArrayListGetVoidPtr(*VarAuxDataList, VarNum);
|
||||
VarAuxData = static_cast<AuxData_pa>(ArrayListGetVoidPtr(*VarAuxDataList, VarNum));
|
||||
if (VarAuxData == NULL)
|
||||
{
|
||||
VarAuxData = AuxDataAlloc();
|
||||
VarAuxData = AuxDataAlloc(AuxDataOwner);
|
||||
IsOk = (VarAuxData != NULL &&
|
||||
ArrayListSetVoidPtr(*VarAuxDataList, VarNum, VarAuxData));
|
||||
}
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -1,26 +1,3 @@
|
|||
/*
|
||||
* NOTICE and LICENSE for Tecplot Input/Output Library (TecIO) - OpenFOAM
|
||||
*
|
||||
* Copyright (C) 1988-2009 Tecplot, Inc. All rights reserved worldwide.
|
||||
*
|
||||
* Tecplot hereby grants OpenCFD limited authority to distribute without
|
||||
* alteration the source code to the Tecplot Input/Output library, known
|
||||
* as TecIO, as part of its distribution of OpenFOAM and the
|
||||
* OpenFOAM_to_Tecplot converter. Users of this converter are also hereby
|
||||
* granted access to the TecIO source code, and may redistribute it for the
|
||||
* purpose of maintaining the converter. However, no authority is granted
|
||||
* to alter the TecIO source code in any form or manner.
|
||||
*
|
||||
* This limited grant of distribution does not supersede Tecplot, Inc.'s
|
||||
* copyright in TecIO. Contact Tecplot, Inc. for further information.
|
||||
*
|
||||
* Tecplot, Inc.
|
||||
* 3535 Factoria Blvd, Ste. 550
|
||||
* Bellevue, WA 98006, USA
|
||||
* Phone: +1 425 653 1200
|
||||
* http://www.tecplot.com/
|
||||
*
|
||||
*/
|
||||
#include "stdafx.h"
|
||||
#include "MASTER.h"
|
||||
#define TECPLOTENGINEMODULE
|
||||
|
@ -29,16 +6,22 @@
|
|||
******************************************************************
|
||||
******************************************************************
|
||||
******* ********
|
||||
****** (C) 1988-2008 Tecplot, Inc. *******
|
||||
****** (C) 1988-2010 Tecplot, Inc. *******
|
||||
******* ********
|
||||
******************************************************************
|
||||
******************************************************************
|
||||
*/
|
||||
|
||||
#define DATASETMODULE
|
||||
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#endif
|
||||
|
||||
#include "GLOBAL.h"
|
||||
#include "TASSERT.h"
|
||||
#include "Q_UNICODE.h"
|
||||
#include "CHARTYPE.h"
|
||||
#include "STRUTIL.h"
|
||||
#include "AUXDATA.h"
|
||||
#include "ARRLIST.h"
|
||||
|
@ -50,6 +33,9 @@
|
|||
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#else /* !TECPLOTKERNEL */
|
||||
#define DECLARE_NUMERIC_LOCALE_SETTER
|
||||
#define VALID_NUMERIC_LOCALE() (true)
|
||||
#endif
|
||||
#include "DATASET0.h"
|
||||
|
||||
|
@ -118,10 +104,11 @@ void ZoneSpecDealloc(ZoneSpec_s **ZoneSpec)
|
|||
Boolean_t ZoneSpecItemDestructor(void *ItemRef,
|
||||
ArbParam_t ClientData)
|
||||
{
|
||||
ZoneSpec_s **ZoneSpecRef = (ZoneSpec_s **)ItemRef;
|
||||
ZoneSpec_s **ZoneSpecRef = static_cast<ZoneSpec_s **>(ItemRef);
|
||||
|
||||
REQUIRE(VALID_REF(ZoneSpecRef));
|
||||
REQUIRE(VALID_REF(*ZoneSpecRef) || *ZoneSpecRef == NULL);
|
||||
UNUSED(ClientData);
|
||||
|
||||
if (*ZoneSpecRef != NULL)
|
||||
ZoneSpecDealloc(ZoneSpecRef);
|
||||
|
@ -187,7 +174,7 @@ ZoneSpec_s *ZoneSpecAlloc(void)
|
|||
{
|
||||
ZoneSpec_s *Result;
|
||||
|
||||
Result = (ZoneSpec_s *)ALLOC_ITEM(ZoneSpec_s, "ZoneSpec structure");
|
||||
Result = static_cast<ZoneSpec_s *>(ALLOC_ITEM(ZoneSpec_s, "ZoneSpec structure"));
|
||||
if (Result != NULL)
|
||||
SetZoneSpecDefaults(Result);
|
||||
|
||||
|
@ -243,6 +230,7 @@ LgIndex_t ZoneOrVarListAdjustCapacityRequest(ArrayList_pa ZoneOrVarArrayList,
|
|||
REQUIRE((RequestedCapacity == 0 && CurrentCapacity == 0) ||
|
||||
RequestedCapacity > CurrentCapacity);
|
||||
REQUIRE(CurrentCapacity <= MaxNumZonesOrVars);
|
||||
UNUSED(ClientData);
|
||||
|
||||
if (RequestedCapacity <= MaxNumZonesOrVars)
|
||||
{
|
||||
|
|
|
@ -1,35 +1,16 @@
|
|||
/*
|
||||
* NOTICE and LICENSE for Tecplot Input/Output Library (TecIO) - OpenFOAM
|
||||
*
|
||||
* Copyright (C) 1988-2009 Tecplot, Inc. All rights reserved worldwide.
|
||||
*
|
||||
* Tecplot hereby grants OpenCFD limited authority to distribute without
|
||||
* alteration the source code to the Tecplot Input/Output library, known
|
||||
* as TecIO, as part of its distribution of OpenFOAM and the
|
||||
* OpenFOAM_to_Tecplot converter. Users of this converter are also hereby
|
||||
* granted access to the TecIO source code, and may redistribute it for the
|
||||
* purpose of maintaining the converter. However, no authority is granted
|
||||
* to alter the TecIO source code in any form or manner.
|
||||
*
|
||||
* This limited grant of distribution does not supersede Tecplot, Inc.'s
|
||||
* copyright in TecIO. Contact Tecplot, Inc. for further information.
|
||||
*
|
||||
* Tecplot, Inc.
|
||||
* 3535 Factoria Blvd, Ste. 550
|
||||
* Bellevue, WA 98006, USA
|
||||
* Phone: +1 425 653 1200
|
||||
* http://www.tecplot.com/
|
||||
*
|
||||
*/
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#endif
|
||||
#include "stdafx.h"
|
||||
#include "MASTER.h"
|
||||
|
||||
#define TECPLOTENGINEMODULE
|
||||
|
||||
/*
|
||||
******************************************************************
|
||||
******************************************************************
|
||||
******* ********
|
||||
****** (C) 1988-2008 Tecplot, Inc. *******
|
||||
****** (C) 1988-2010 Tecplot, Inc. *******
|
||||
******* ********
|
||||
******************************************************************
|
||||
******************************************************************
|
||||
|
@ -43,12 +24,11 @@
|
|||
#include "ARRLIST.h"
|
||||
#include "DATASET.h"
|
||||
#include "SET.h"
|
||||
#include "DATASHR.h"
|
||||
#include "FILESTREAM.h"
|
||||
#include "Q_MSG.h"
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#endif
|
||||
#include "Q_MSG.h"
|
||||
#include "DATASET0.h"
|
||||
|
||||
using namespace tecplot::strutil;
|
||||
|
@ -72,34 +52,35 @@ void OutOfMemoryMsg(void)
|
|||
|
||||
/**
|
||||
*/
|
||||
FieldData_pa FieldDataAlloc(void)
|
||||
FieldData_pa FieldDataAlloc(Boolean_t doTrackVarSharing)
|
||||
{
|
||||
FieldData_pa Result;
|
||||
|
||||
Result = (FieldData_pa)ALLOC_ITEM(struct _FieldData_a, "FieldDataPtr");
|
||||
Result = static_cast<FieldData_pa>(ALLOC_ITEM(struct _FieldData_a, "FieldDataPtr"));
|
||||
if (Result != NULL)
|
||||
{
|
||||
Result->Data = NULL;
|
||||
|
||||
# if defined TECPLOTKERNEL /* TecIO doesn't require these features yet */
|
||||
#if defined TECPLOTKERNEL /* TecIO doesn't require these features yet */
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
# else /* ...for TecIO only */
|
||||
#else /* ...for TecIO only */
|
||||
Result->GetValueCallback[0] = NULL;
|
||||
Result->SetValueCallback[0] = NULL;
|
||||
# endif
|
||||
#endif
|
||||
|
||||
# if defined TECPLOTKERNEL /* TecIO doesn't require these features yet */
|
||||
#if defined TECPLOTKERNEL /* TecIO doesn't require these features yet */
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
# endif
|
||||
#endif
|
||||
|
||||
Result->Type = FieldDataType_Invalid;
|
||||
Result->ValueLocation = ValueLocation_Invalid;
|
||||
Result->RefCount = 1; /* self */
|
||||
Result->VarShareRefCount = 1; /* self */
|
||||
Result->NumValues = 0;
|
||||
# if defined TECPLOTKERNEL /* TecIO doesn't require these features yet */
|
||||
#if defined TECPLOTKERNEL /* TecIO doesn't require these features yet */
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
# endif
|
||||
#endif
|
||||
Result->NumValues = 0;
|
||||
#if defined TECPLOTKERNEL /* TecIO doesn't require these features yet */
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#endif
|
||||
}
|
||||
|
||||
ENSURE(VALID_REF(Result) || Result == NULL);
|
||||
|
@ -121,7 +102,7 @@ void FieldDataDeallocData(FieldData_pa FieldData)
|
|||
if (FieldData->Data != NULL)
|
||||
{
|
||||
/* Hack to remove 'deleting void* is undefined' warning... */
|
||||
char *Tmp = (char *)FieldData->Data;
|
||||
char *Tmp = static_cast<char *>(FieldData->Data);
|
||||
FREE_ARRAY(Tmp, "FieldData _Data");
|
||||
FieldData->Data = NULL;
|
||||
}
|
||||
|
@ -185,18 +166,6 @@ void FieldDataDeallocData(FieldData_pa FieldData)
|
|||
/* CORE SOURCE CODE REMOVED */
|
||||
#endif
|
||||
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#endif
|
||||
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#endif
|
||||
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#endif
|
||||
|
||||
/**
|
||||
*/
|
||||
void FieldDataCleanup(FieldData_pa FieldData)
|
||||
|
@ -217,26 +186,21 @@ void FieldDataDealloc(FieldData_pa *FieldData,
|
|||
{
|
||||
REQUIRE(VALID_REF(FieldData));
|
||||
REQUIRE(VALID_REF(*FieldData) || *FieldData == NULL);
|
||||
REQUIRE(IMPLICATION(*FieldData != NULL,
|
||||
IsStructureReferenced(*FieldData)));
|
||||
REQUIRE(IMPLICATION(*FieldData != NULL && DoTrackVarSharing,
|
||||
IsVarStructureReferenced(*FieldData)));
|
||||
REQUIRE(VALID_BOOLEAN(DoTrackVarSharing));
|
||||
REQUIRE(IMPLICATION(*FieldData != NULL,
|
||||
(*FieldData)->RefCount >= (*FieldData)->VarShareRefCount));
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#endif
|
||||
|
||||
if (*FieldData != NULL)
|
||||
{
|
||||
if (DoTrackVarSharing)
|
||||
DecVarStructureReference(*FieldData);
|
||||
DecStructureReference(*FieldData);
|
||||
if (!IsStructureReferenced(*FieldData))
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#endif
|
||||
{
|
||||
FieldDataCleanup(*FieldData);
|
||||
|
||||
#if defined TECPLOTKERNEL
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#endif
|
||||
#endif
|
||||
|
||||
FREE_ITEM(*FieldData, "field data");
|
||||
}
|
||||
|
@ -248,14 +212,6 @@ void FieldDataDealloc(FieldData_pa *FieldData,
|
|||
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#if !defined NDEBUG || defined CHECKED_BUILD
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#if !defined NDEBUG || defined CHECKED_BUILD
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if defined TECPLOTKERNEL
|
||||
|
@ -269,11 +225,21 @@ static void copyTypedValueArray(void* DstArray,
|
|||
LgIndex_t SrcStart,
|
||||
LgIndex_t SrcEnd)
|
||||
{
|
||||
T* SrcPtr = ((T*)SrcArray) + SrcStart;
|
||||
T* DstPtr = ((T*)DstArray) + DstStart;
|
||||
size_t numBytes = sizeof(T) * (SrcEnd - SrcStart + 1);
|
||||
memcpy(DstPtr, SrcPtr, numBytes);
|
||||
REQUIRE(VALID_REF(DstArray));
|
||||
REQUIRE(DstStart >= 0);
|
||||
REQUIRE(VALID_REF(SrcArray));
|
||||
REQUIRE(0 <= SrcStart && SrcStart <= SrcEnd+1);
|
||||
REQUIRE(DstArray != SrcArray);
|
||||
|
||||
size_t const numBytes = sizeof(T) * (SrcEnd - SrcStart + 1);
|
||||
if (numBytes != 0)
|
||||
{
|
||||
T const* SrcPtr = (static_cast<T const*>(SrcArray)) + SrcStart;
|
||||
T* DstPtr = (static_cast<T*>(DstArray)) + DstStart;
|
||||
memcpy(DstPtr, SrcPtr, numBytes);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* DstArray and SrcArray are aligned on proper word boundaries.
|
||||
*/
|
||||
|
@ -289,7 +255,7 @@ void CopyTypedValueArray(FieldDataType_e ValueType,
|
|||
REQUIRE(VALID_REF(DstArray));
|
||||
REQUIRE(DstStart >= 0);
|
||||
REQUIRE(VALID_REF(SrcArray));
|
||||
REQUIRE(0 <= SrcStart && SrcStart <= SrcEnd);
|
||||
REQUIRE(0 <= SrcStart && SrcStart <= SrcEnd+1);
|
||||
REQUIRE(DstArray != SrcArray);
|
||||
|
||||
switch (ValueType)
|
||||
|
@ -356,8 +322,8 @@ void SwapBytesInTypedValueArray(FieldDataType_e ValueType,
|
|||
case FieldDataType_Double:
|
||||
{
|
||||
/* swap 8 bytes blocks */
|
||||
UInt64_t *SrcPtr = ((UInt64_t *)SrcArray) + SrcStart;
|
||||
UInt64_t *SrcPtrEnd = ((UInt64_t *)SrcArray) + SrcEnd;
|
||||
UInt64_t *SrcPtr = (static_cast<UInt64_t *>(SrcArray)) + SrcStart;
|
||||
UInt64_t *SrcPtrEnd = (static_cast<UInt64_t *>(SrcArray)) + SrcEnd;
|
||||
CHECK(sizeof(UInt64_t) == 8 && sizeof(double) == 8);
|
||||
while (SrcPtr <= SrcPtrEnd)
|
||||
{
|
||||
|
@ -369,8 +335,8 @@ void SwapBytesInTypedValueArray(FieldDataType_e ValueType,
|
|||
case FieldDataType_Int32:
|
||||
{
|
||||
/* swap 4 bytes blocks */
|
||||
UInt32_t *SrcPtr = ((UInt32_t *)SrcArray) + SrcStart;
|
||||
UInt32_t *SrcPtrEnd = ((UInt32_t *)SrcArray) + SrcEnd;
|
||||
UInt32_t *SrcPtr = (static_cast<UInt32_t *>(SrcArray)) + SrcStart;
|
||||
UInt32_t *SrcPtrEnd = (static_cast<UInt32_t *>(SrcArray)) + SrcEnd;
|
||||
CHECK(sizeof(UInt32_t) == 4 && sizeof(float) == 4);
|
||||
while (SrcPtr <= SrcPtrEnd)
|
||||
{
|
||||
|
@ -381,8 +347,8 @@ void SwapBytesInTypedValueArray(FieldDataType_e ValueType,
|
|||
case FieldDataType_Int16:
|
||||
{
|
||||
/* swap 4 bytes blocks */
|
||||
UInt16_t *SrcPtr = ((UInt16_t *)SrcArray) + SrcStart;
|
||||
UInt16_t *SrcPtrEnd = ((UInt16_t *)SrcArray) + SrcEnd;
|
||||
UInt16_t *SrcPtr = (static_cast<UInt16_t *>(SrcArray)) + SrcStart;
|
||||
UInt16_t *SrcPtrEnd = (static_cast<UInt16_t *>(SrcArray)) + SrcEnd;
|
||||
CHECK(sizeof(UInt16_t) == 2);
|
||||
while (SrcPtr <= SrcPtrEnd)
|
||||
{
|
||||
|
@ -421,8 +387,8 @@ void SwapBytesInUnalignedTypedValueArray(FieldDataType_e ValueType,
|
|||
case FieldDataType_Double:
|
||||
{
|
||||
/* swap 8-byte blocks */
|
||||
Byte_t *SrcPtr = ((Byte_t *)SrcArray) + SrcStart * sizeof(UInt64_t);
|
||||
Byte_t *SrcPtrEnd = ((Byte_t *)SrcArray) + SrcEnd * sizeof(UInt64_t);
|
||||
Byte_t *SrcPtr = (static_cast<Byte_t *>(SrcArray)) + SrcStart * sizeof(UInt64_t);
|
||||
Byte_t *SrcPtrEnd = (static_cast<Byte_t *>(SrcArray)) + SrcEnd * sizeof(UInt64_t);
|
||||
size_t byte_skip = SrcSkip * sizeof(UInt64_t);
|
||||
CHECK(sizeof(UInt64_t) == 8 && sizeof(double) == 8);
|
||||
while (SrcPtr <= SrcPtrEnd)
|
||||
|
@ -435,8 +401,8 @@ void SwapBytesInUnalignedTypedValueArray(FieldDataType_e ValueType,
|
|||
case FieldDataType_Int32:
|
||||
{
|
||||
/* swap 4-byte blocks */
|
||||
Byte_t *SrcPtr = ((Byte_t *)SrcArray) + SrcStart * sizeof(UInt32_t);
|
||||
Byte_t *SrcPtrEnd = ((Byte_t *)SrcArray) + SrcEnd * sizeof(UInt32_t);
|
||||
Byte_t *SrcPtr = (static_cast<Byte_t *>(SrcArray)) + SrcStart * sizeof(UInt32_t);
|
||||
Byte_t *SrcPtrEnd = (static_cast<Byte_t *>(SrcArray)) + SrcEnd * sizeof(UInt32_t);
|
||||
size_t byte_skip = SrcSkip * sizeof(UInt32_t);
|
||||
CHECK(sizeof(UInt32_t) == 4 && sizeof(float) == 4);
|
||||
while (SrcPtr <= SrcPtrEnd)
|
||||
|
@ -448,8 +414,8 @@ void SwapBytesInUnalignedTypedValueArray(FieldDataType_e ValueType,
|
|||
case FieldDataType_Int16:
|
||||
{
|
||||
/* swap 2-byte blocks */
|
||||
Byte_t *SrcPtr = ((Byte_t *)SrcArray) + SrcStart * sizeof(UInt16_t);
|
||||
Byte_t *SrcPtrEnd = ((Byte_t *)SrcArray) + SrcEnd * sizeof(UInt16_t);
|
||||
Byte_t *SrcPtr = (static_cast<Byte_t *>(SrcArray)) + SrcStart * sizeof(UInt16_t);
|
||||
Byte_t *SrcPtrEnd = (static_cast<Byte_t *>(SrcArray)) + SrcEnd * sizeof(UInt16_t);
|
||||
size_t byte_skip = SrcSkip * sizeof(UInt16_t);
|
||||
CHECK(sizeof(UInt16_t) == 2);
|
||||
while (SrcPtr <= SrcPtrEnd)
|
||||
|
@ -509,6 +475,14 @@ void SwapBytesInUnalignedTypedValueArray(FieldDataType_e ValueType,
|
|||
/* CORE SOURCE CODE REMOVED */
|
||||
#endif
|
||||
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#endif
|
||||
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#endif
|
||||
|
||||
#if defined DEBUG_FIELDVALUES
|
||||
# define DEBUG_FIELDVALUES_BAD_VALUE 0x11
|
||||
static unsigned char BadValueStr[] =
|
||||
|
@ -531,7 +505,7 @@ static unsigned char BadValueStr[] =
|
|||
# else
|
||||
# define FIELD_DATA_VALUE_IS_INITIALIZED(fd, pt, type) \
|
||||
((sizeof(type) < 4) /* cannot make reliably test with less than four bytes */ || \
|
||||
memcmp(BadValueStr,((char *)((fd)->Data))+sizeof(type)*(pt), sizeof(type)) != 0)
|
||||
memcmp(BadValueStr,(static_cast<char *>((fd)->Data))+sizeof(type)*(pt), sizeof(type)) != 0)
|
||||
# endif
|
||||
#else
|
||||
# define FIELD_DATA_VALUE_IS_INITIALIZED(fd, pt, type) TRUE
|
||||
|
@ -552,7 +526,7 @@ double STDCALL GetFieldValueForFloat(const FieldData_pa fd,
|
|||
REQUIRE(0 <= pt && pt < GetFieldDataNumValues(fd));
|
||||
REQUIRE(FIELD_DATA_VALUE_IS_INITIALIZED(fd, pt, float));
|
||||
|
||||
double Result = (double)GetFieldDataFloatPtr(fd)[pt];
|
||||
double Result = static_cast<double>(GetFieldDataFloatPtr(fd)[pt]);
|
||||
|
||||
return Result;
|
||||
}
|
||||
|
@ -599,7 +573,7 @@ double STDCALL GetFieldValueForInt32(const FieldData_pa fd,
|
|||
REQUIRE(0 <= pt && pt < GetFieldDataNumValues(fd));
|
||||
REQUIRE(FIELD_DATA_VALUE_IS_INITIALIZED(fd, pt, Int32_t));
|
||||
|
||||
double Result = (double)GetFieldDataInt32Ptr(fd)[pt];
|
||||
double Result = static_cast<double>(GetFieldDataInt32Ptr(fd)[pt]);
|
||||
|
||||
return Result;
|
||||
}
|
||||
|
@ -622,7 +596,7 @@ double STDCALL GetFieldValueForInt16(const FieldData_pa fd,
|
|||
REQUIRE(0 <= pt && pt < GetFieldDataNumValues(fd));
|
||||
REQUIRE(FIELD_DATA_VALUE_IS_INITIALIZED(fd, pt, Int16_t));
|
||||
|
||||
double Result = (double)GetFieldDataInt16Ptr(fd)[pt];
|
||||
double Result = static_cast<double>(GetFieldDataInt16Ptr(fd)[pt]);
|
||||
|
||||
return Result;
|
||||
}
|
||||
|
@ -646,7 +620,7 @@ double STDCALL GetFieldValueForByte(const FieldData_pa fd,
|
|||
REQUIRE(0 <= pt && pt < GetFieldDataNumValues(fd));
|
||||
REQUIRE(FIELD_DATA_VALUE_IS_INITIALIZED(fd, pt, Byte_t));
|
||||
|
||||
double Result = (double)GetFieldDataBytePtr(fd)[pt];
|
||||
double Result = static_cast<double>(GetFieldDataBytePtr(fd)[pt]);
|
||||
|
||||
return Result;
|
||||
}
|
||||
|
@ -850,7 +824,7 @@ static void STDCALL SetFieldValueForByte(FieldData_pa fd,
|
|||
else if (val > 255.0)
|
||||
GetFieldDataBytePtr(fd)[pt] = 255;
|
||||
else
|
||||
GetFieldDataBytePtr(fd)[pt] = (Byte_t)val;
|
||||
GetFieldDataBytePtr(fd)[pt] = static_cast<Byte_t>(val);
|
||||
|
||||
ENSURE(FIELD_DATA_VALUE_IS_INITIALIZED(fd, pt, Byte_t));
|
||||
}
|
||||
|
@ -955,12 +929,12 @@ Int64_t FieldDataGetBytesNeeded(LgIndex_t NumValues,
|
|||
|
||||
switch (DataType)
|
||||
{
|
||||
case FieldDataType_Float: Result = ((Int64_t)NumValues)*sizeof(float); break;
|
||||
case FieldDataType_Double: Result = ((Int64_t)NumValues)*sizeof(double); break;
|
||||
case FieldDataType_Int32: Result = ((Int64_t)NumValues)*sizeof(LgIndex_t); break;
|
||||
case FieldDataType_Int16: Result = ((Int64_t)NumValues)*sizeof(SmInteger_t); break;
|
||||
case FieldDataType_Byte: Result = ((Int64_t)NumValues)*sizeof(Byte_t); break;
|
||||
case FieldDataType_Bit: Result = ((Int64_t)(NumValues+7)/8)*sizeof(Byte_t); break;
|
||||
case FieldDataType_Float: Result = (static_cast<Int64_t>(NumValues))*sizeof(float); break;
|
||||
case FieldDataType_Double: Result = (static_cast<Int64_t>(NumValues))*sizeof(double); break;
|
||||
case FieldDataType_Int32: Result = (static_cast<Int64_t>(NumValues))*sizeof(LgIndex_t); break;
|
||||
case FieldDataType_Int16: Result = (static_cast<Int64_t>(NumValues))*sizeof(SmInteger_t); break;
|
||||
case FieldDataType_Byte: Result = (static_cast<Int64_t>(NumValues))*sizeof(Byte_t); break;
|
||||
case FieldDataType_Bit: Result = (static_cast<Int64_t>(NumValues+7)/8)*sizeof(Byte_t); break;
|
||||
default: CHECK(FALSE); break;
|
||||
}
|
||||
|
||||
|
@ -969,9 +943,9 @@ Int64_t FieldDataGetBytesNeeded(LgIndex_t NumValues,
|
|||
}
|
||||
|
||||
/**
|
||||
* On the SGI, HP, and Sun machines 64 bit objects such as doubles must be 8
|
||||
* byte aligned while on all other machines 32 bit alignment suffices. Some
|
||||
* allow 1 byte alignment but we won't bother with that.
|
||||
* On the SGI, HP, Sun and Itanium Linux machines 64 bit objects such as
|
||||
* doubles must be 8 byte aligned while on all other machines 32 bit alignment
|
||||
* suffices. Some allow 1 byte alignment but we won't bother with that.
|
||||
*/
|
||||
#if defined IRISX || defined HPUX || defined SUNX
|
||||
# define SIZEOF_LARGEST_OBJECT_TO_ALIGN sizeof(Int64_t)
|
||||
|
@ -988,7 +962,7 @@ Boolean_t IsOffsetAlignedForFieldDataType(FieldDataType_e FieldDataType,
|
|||
REQUIRE(Offset >= 0);
|
||||
|
||||
Int64_t SizeOfType = FieldDataGetBytesNeeded(1, FieldDataType);
|
||||
if (SizeOfType > (Int64_t)SIZEOF_LARGEST_OBJECT_TO_ALIGN)
|
||||
if (SizeOfType > static_cast<Int64_t>(SIZEOF_LARGEST_OBJECT_TO_ALIGN))
|
||||
SizeOfType = SIZEOF_LARGEST_OBJECT_TO_ALIGN;
|
||||
|
||||
Boolean_t HasValidAlignment = (Offset % SizeOfType == 0);
|
||||
|
@ -1006,7 +980,7 @@ Int64_t GetAlignedOffsetForFieldDataType(FieldDataType_e FieldDataType,
|
|||
REQUIRE(Offset >= 0);
|
||||
|
||||
Int64_t SizeOfType = FieldDataGetBytesNeeded(1, FieldDataType);
|
||||
if (SizeOfType > (Int64_t)SIZEOF_LARGEST_OBJECT_TO_ALIGN)
|
||||
if (SizeOfType > static_cast<Int64_t>(SIZEOF_LARGEST_OBJECT_TO_ALIGN))
|
||||
SizeOfType = SIZEOF_LARGEST_OBJECT_TO_ALIGN;
|
||||
|
||||
Int64_t NumBytesPastAlignment = (Offset % SizeOfType);
|
||||
|
@ -1049,13 +1023,17 @@ void FieldDataDefineData(FieldData_pa FieldData,
|
|||
# if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
# else /* ...for TecIO only */
|
||||
FieldData->GetValueCallback[0] = (void *)DetermineFieldDataGetFunction(DataType, FALSE);
|
||||
FieldData->SetValueCallback[0] = (void *)DetermineFieldDataSetFunction(DataType, FALSE);
|
||||
FieldData->GetValueCallback[0] = reinterpret_cast<void *>(DetermineFieldDataGetFunction(DataType, FALSE));
|
||||
FieldData->SetValueCallback[0] = reinterpret_cast<void *>(DetermineFieldDataSetFunction(DataType, FALSE));
|
||||
#endif
|
||||
|
||||
ENSURE(FieldData->Data == NULL);
|
||||
}
|
||||
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#endif
|
||||
|
||||
/**
|
||||
*/
|
||||
Boolean_t FieldDataAllocData(FieldData_pa FieldData,
|
||||
|
@ -1071,7 +1049,7 @@ Boolean_t FieldDataAllocData(FieldData_pa FieldData,
|
|||
* so we might have to squeeze it down possibly loosing precision.
|
||||
*/
|
||||
Int64_t ActualBytesNeeded = FieldDataGetBytesNeeded(FieldData->NumValues, FieldData->Type);
|
||||
size_t BytesToAllocate = (size_t)ActualBytesNeeded;
|
||||
size_t BytesToAllocate = static_cast<size_t>(ActualBytesNeeded);
|
||||
|
||||
/*
|
||||
* 64 bit architectures are effectively unlimited in their allocation size
|
||||
|
@ -1081,12 +1059,12 @@ Boolean_t FieldDataAllocData(FieldData_pa FieldData,
|
|||
CHECK(sizeof(size_t) == 4 || sizeof(size_t) == 8);
|
||||
Boolean_t IsOk = (FieldData->NumValues <= MAXINDEX &&
|
||||
IMPLICATION(sizeof(size_t) == 4,
|
||||
ActualBytesNeeded <= (Int64_t)0xffffffff));
|
||||
ActualBytesNeeded <= static_cast<Int64_t>(0xffffffff)));
|
||||
if (IsOk)
|
||||
{
|
||||
if (FieldData->NumValues > 0)
|
||||
{
|
||||
FieldData->Data = (void *)ALLOC_ARRAY(BytesToAllocate, char, "FieldData's Data");
|
||||
FieldData->Data = reinterpret_cast<void *>(ALLOC_ARRAY(BytesToAllocate, char, "FieldData's Data"));
|
||||
#if defined DEBUG_FIELDVALUES
|
||||
{
|
||||
if (FieldData->Data != NULL)
|
||||
|
@ -1100,8 +1078,8 @@ Boolean_t FieldDataAllocData(FieldData_pa FieldData,
|
|||
* byte. By zeroing the unused bits at the end of the array we
|
||||
* produce consistent data files when written to disk.
|
||||
*/
|
||||
if (FieldData->Type == FieldDataType_Bit)
|
||||
((char*)FieldData->Data)[BytesToAllocate-1] = '\0';
|
||||
if (FieldData->Type == FieldDataType_Bit && FieldData->Data != NULL)
|
||||
(static_cast<char*>(FieldData->Data))[BytesToAllocate-1] = '\0';
|
||||
}
|
||||
IsOk = (FieldData->NumValues == 0 ||
|
||||
FieldData->Data != NULL);
|
||||
|
@ -1109,7 +1087,7 @@ Boolean_t FieldDataAllocData(FieldData_pa FieldData,
|
|||
OutOfMemoryMsg();
|
||||
}
|
||||
else if (ShowErrMsg)
|
||||
ErrMsg(translate("Storage limit (%ld) exceeded for a single variable."), (long)MAXINDEX);
|
||||
ErrMsg(translate("Storage limit (%ld) exceeded for a single variable."), static_cast<long>(MAXINDEX));
|
||||
|
||||
# if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
|
@ -1179,7 +1157,7 @@ FieldData_pa AllocScratchNodalFieldDataPtr(LgIndex_t NumValues,
|
|||
REQUIRE(VALID_FIELD_DATA_TYPE(Type));
|
||||
REQUIRE(VALID_BOOLEAN(ShowErrMsg));
|
||||
|
||||
FieldData_pa Result = FieldDataAlloc();
|
||||
FieldData_pa Result = FieldDataAlloc(FALSE);
|
||||
if (Result != NULL)
|
||||
{
|
||||
FieldDataDefineData(Result, NumValues, Type, ValueLocation_Nodal);
|
||||
|
@ -1476,6 +1454,26 @@ void *GetFieldDataVoidPtr_FUNC(FieldData_pa fd)
|
|||
}
|
||||
#endif
|
||||
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#endif
|
||||
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#endif
|
||||
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#endif
|
||||
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#endif
|
||||
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#endif
|
||||
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#endif /* TECPLOTKERNEL */
|
||||
|
@ -1500,6 +1498,22 @@ void *GetFieldDataVoidPtr_FUNC(FieldData_pa fd)
|
|||
/* CORE SOURCE CODE REMOVED */
|
||||
#endif
|
||||
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#endif
|
||||
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#endif
|
||||
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#endif
|
||||
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#endif
|
||||
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#endif /* TECPLOTKERNEL */
|
||||
|
@ -1575,6 +1589,12 @@ void CopyFieldValue(FieldData_pa dst,
|
|||
} /* CopyFieldValue() */
|
||||
|
||||
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#if defined TECPLOTKERNEL
|
||||
#endif /* TECPLOTKERNEL */
|
||||
#endif
|
||||
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#endif
|
||||
|
@ -1651,8 +1671,12 @@ void SetFieldDataPtrToAllZeros(FieldData_pa fd)
|
|||
|
||||
if (NumBytesToMemSet > 0)
|
||||
{
|
||||
void *fd_data = GetFieldDataVoidPtr(fd);
|
||||
memset(fd_data, 0, NumBytesToMemSet);
|
||||
char* fd_data = static_cast<char*>(GetFieldDataVoidPtr(fd));
|
||||
#if defined TECPLOTKERNEL
|
||||
/* CORE SOURCE CODE REMOVED */
|
||||
#else
|
||||
memset(fd_data, 0, NumBytesToMemSet);
|
||||
#endif
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
|
@ -1,26 +1,3 @@
|
|||
/*
|
||||
* NOTICE and LICENSE for Tecplot Input/Output Library (TecIO) - OpenFOAM
|
||||
*
|
||||
* Copyright (C) 1988-2009 Tecplot, Inc. All rights reserved worldwide.
|
||||
*
|
||||
* Tecplot hereby grants OpenCFD limited authority to distribute without
|
||||
* alteration the source code to the Tecplot Input/Output library, known
|
||||
* as TecIO, as part of its distribution of OpenFOAM and the
|
||||
* OpenFOAM_to_Tecplot converter. Users of this converter are also hereby
|
||||
* granted access to the TecIO source code, and may redistribute it for the
|
||||
* purpose of maintaining the converter. However, no authority is granted
|
||||
* to alter the TecIO source code in any form or manner.
|
||||
*
|
||||
* This limited grant of distribution does not supersede Tecplot, Inc.'s
|
||||
* copyright in TecIO. Contact Tecplot, Inc. for further information.
|
||||
*
|
||||
* Tecplot, Inc.
|
||||
* 3535 Factoria Blvd, Ste. 550
|
||||
* Bellevue, WA 98006, USA
|
||||
* Phone: +1 425 653 1200
|
||||
* http://www.tecplot.com/
|
||||
*
|
||||
*/
|
||||
#include "stdafx.h"
|
||||
#include "MASTER.h"
|
||||
#define TECPLOTENGINEMODULE
|
||||
|
@ -28,7 +5,7 @@
|
|||
******************************************************************
|
||||
******************************************************************
|
||||
******* ********
|
||||
****** (C) 1988-2008 Tecplot, Inc. *******
|
||||
****** (C) 1988-2010 Tecplot, Inc. *******
|
||||
******* ********
|
||||
******************************************************************
|
||||
******************************************************************
|
||||
|
@ -158,7 +135,7 @@ void LocalReadBlock(FileStream_s *FileStream,
|
|||
{
|
||||
ReadPureBlock(FileStream,
|
||||
DoRead,
|
||||
(void *)CurVPtr,
|
||||
static_cast<void *>(CurVPtr),
|
||||
FieldDataTypeInFile,
|
||||
0,
|
||||
NumValues,
|
||||
|
@ -205,6 +182,7 @@ Boolean_t STDCALL ReadTec(Boolean_t GetHeaderInfoOnly,
|
|||
LgIndex_t **NumPtsK,
|
||||
ZoneType_e **ZoneType,
|
||||
StringList_pa *UserRec,
|
||||
AuxData_pa *DatasetAuxData,
|
||||
Boolean_t RawDataSpaceAllocated,
|
||||
NodeMap_t ***NodeMap,
|
||||
double ***VDataBase)
|
||||
|
@ -247,22 +225,23 @@ Boolean_t STDCALL ReadTec(Boolean_t GetHeaderInfoOnly,
|
|||
FALSE,
|
||||
NumZones,
|
||||
NumVars,
|
||||
(SmInteger_t *)NULL,
|
||||
static_cast<SmInteger_t *>(NULL),
|
||||
DataSetTitle,
|
||||
(Text_s **)NULL,
|
||||
(Geom_s **)NULL,
|
||||
(StringList_pa **)NULL,
|
||||
static_cast<Text_s **>(NULL),
|
||||
static_cast<Geom_s **>(NULL),
|
||||
static_cast<StringList_pa **>(NULL),
|
||||
UserRec,
|
||||
(AuxData_pa *)NULL,
|
||||
DatasetAuxData,
|
||||
0,
|
||||
&IsVarCellCentered,
|
||||
(Boolean_t *)NULL,
|
||||
(Boolean_t *)NULL,
|
||||
static_cast<Boolean_t *>(NULL),
|
||||
static_cast<Boolean_t *>(NULL),
|
||||
&ZoneSpecList,
|
||||
VarNames,
|
||||
(ArrayList_pa *)NULL,
|
||||
(Set_pa *)NULL,
|
||||
static_cast<ArrayList_pa *>(NULL),
|
||||
static_cast<Set_pa *>(NULL),
|
||||
&FNNumBndryConns,
|
||||
(DataFileType_e *)NULL);
|
||||
static_cast<DataFileType_e *>(NULL));
|
||||
|
||||
|
||||
|
||||
|
@ -437,10 +416,10 @@ Boolean_t STDCALL ReadTec(Boolean_t GetHeaderInfoOnly,
|
|||
{
|
||||
EntIndex_t NumDupVars, ZZ;
|
||||
|
||||
NumDupVars = (EntIndex_t)GetIoFileInt(ReadTecFileStream, *IVersion, 0, (LgIndex_t) * NumVars, &InputIsOk);
|
||||
NumDupVars = static_cast<EntIndex_t>(GetIoFileInt(ReadTecFileStream, *IVersion, 0, static_cast<LgIndex_t>( * NumVars), &InputIsOk));
|
||||
for (J = 0; J < NumDupVars; J++)
|
||||
{
|
||||
ZZ = (EntIndex_t)GetIoFileInt(ReadTecFileStream, *IVersion, 0, *NumVars, &InputIsOk) - 1;
|
||||
ZZ = static_cast<EntIndex_t>(GetIoFileInt(ReadTecFileStream, *IVersion, 0, *NumVars, &InputIsOk)) - 1;
|
||||
VarSharesFromZone[ZZ] = CurZone - 1; /* emulate DupVar: share from previous zone */
|
||||
}
|
||||
/* Can't duplicate from the first zone */
|
||||
|
@ -457,10 +436,10 @@ Boolean_t STDCALL ReadTec(Boolean_t GetHeaderInfoOnly,
|
|||
{
|
||||
for (J = 0; J < *NumVars; J++)
|
||||
{
|
||||
VarType[J] = (FieldDataType_e)GetIoFileInt(ReadTecFileStream, *IVersion,
|
||||
VarType[J] = static_cast<FieldDataType_e>(GetIoFileInt(ReadTecFileStream, *IVersion,
|
||||
0,
|
||||
(LgIndex_t)FieldDataType_Bit,
|
||||
&InputIsOk);
|
||||
static_cast<LgIndex_t>(FieldDataType_Bit),
|
||||
&InputIsOk));
|
||||
if (!InputIsOk)
|
||||
{
|
||||
ErrMsg(translate("Invalid data type - binary input file corrupted"));
|
||||
|
@ -497,13 +476,13 @@ Boolean_t STDCALL ReadTec(Boolean_t GetHeaderInfoOnly,
|
|||
if (*IVersion >= 105 && InputIsOk)
|
||||
{
|
||||
/* passive variables */
|
||||
if ((Boolean_t)GetIoFileInt(ReadTecFileStream, *IVersion, 0, 1, &InputIsOk) && InputIsOk)
|
||||
if (static_cast<Boolean_t>(GetIoFileInt(ReadTecFileStream, *IVersion, 0, 1, &InputIsOk)) && InputIsOk)
|
||||
{
|
||||
for (CurVar = 0; CurVar < *NumVars && InputIsOk; CurVar++)
|
||||
{
|
||||
IsVarPassive[CurVar] = (Boolean_t)GetIoFileInt(ReadTecFileStream,
|
||||
IsVarPassive[CurVar] = static_cast<Boolean_t>(GetIoFileInt(ReadTecFileStream,
|
||||
*IVersion,
|
||||
0, 1, &InputIsOk);
|
||||
0, 1, &InputIsOk));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -511,7 +490,7 @@ Boolean_t STDCALL ReadTec(Boolean_t GetHeaderInfoOnly,
|
|||
if (*IVersion >= 101 && InputIsOk)
|
||||
{
|
||||
/* variable sharing: equivalent to DupVar for ReadTec */
|
||||
if ((Boolean_t)GetIoFileInt(ReadTecFileStream, *IVersion, 0, 1, &InputIsOk) && InputIsOk)
|
||||
if (static_cast<Boolean_t>(GetIoFileInt(ReadTecFileStream, *IVersion, 0, 1, &InputIsOk)) && InputIsOk)
|
||||
{
|
||||
for (CurVar = 0; CurVar < *NumVars && InputIsOk; CurVar++)
|
||||
{
|
||||
|
@ -928,13 +907,13 @@ Boolean_t STDCALL ReadTec(Boolean_t GetHeaderInfoOnly,
|
|||
|
||||
void * STDCALL TecAlloc(size_t size)
|
||||
{
|
||||
return (void *)ALLOC_ARRAY(size, char, "TecAlloc");
|
||||
return static_cast<void *>(ALLOC_ARRAY(size, char, "TecAlloc"));
|
||||
}
|
||||
|
||||
void STDCALL TecFree(void *ptr)
|
||||
{
|
||||
/* Hack to remove delete warning... */
|
||||
char *Tmp = (char *)ptr;
|
||||
char *Tmp = static_cast<char *>(ptr);
|
||||
FREE_ARRAY(Tmp, "TecAlloc");
|
||||
}
|
||||
|
||||
|
|
|
@ -1,26 +1,3 @@
|
|||
/*
|
||||
* NOTICE and LICENSE for Tecplot Input/Output Library (TecIO) - OpenFOAM
|
||||
*
|
||||
* Copyright (C) 1988-2009 Tecplot, Inc. All rights reserved worldwide.
|
||||
*
|
||||
* Tecplot hereby grants OpenCFD limited authority to distribute without
|
||||
* alteration the source code to the Tecplot Input/Output library, known
|
||||
* as TecIO, as part of its distribution of OpenFOAM and the
|
||||
* OpenFOAM_to_Tecplot converter. Users of this converter are also hereby
|
||||
* granted access to the TecIO source code, and may redistribute it for the
|
||||
* purpose of maintaining the converter. However, no authority is granted
|
||||
* to alter the TecIO source code in any form or manner.
|
||||
*
|
||||
* This limited grant of distribution does not supersede Tecplot, Inc.'s
|
||||
* copyright in TecIO. Contact Tecplot, Inc. for further information.
|
||||
*
|
||||
* Tecplot, Inc.
|
||||
* 3535 Factoria Blvd, Ste. 550
|
||||
* Bellevue, WA 98006, USA
|
||||
* Phone: +1 425 653 1200
|
||||
* http://www.tecplot.com/
|
||||
*
|
||||
*/
|
||||
#include "stdafx.h"
|
||||
#include "MASTER.h"
|
||||
#define TECPLOTENGINEMODULE
|
||||
|
@ -29,7 +6,7 @@
|
|||
*****************************************************************
|
||||
*****************************************************************
|
||||
******* ********
|
||||
****** Copyright (C) 1988-2008 Tecplot, Inc. *******
|
||||
****** Copyright (C) 1988-2010 Tecplot, Inc. *******
|
||||
******* ********
|
||||
*****************************************************************
|
||||
*****************************************************************
|
||||
|
|
|
@ -1,26 +1,3 @@
|
|||
/*
|
||||
* NOTICE and LICENSE for Tecplot Input/Output Library (TecIO) - OpenFOAM
|
||||
*
|
||||
* Copyright (C) 1988-2009 Tecplot, Inc. All rights reserved worldwide.
|
||||
*
|
||||
* Tecplot hereby grants OpenCFD limited authority to distribute without
|
||||
* alteration the source code to the Tecplot Input/Output library, known
|
||||
* as TecIO, as part of its distribution of OpenFOAM and the
|
||||
* OpenFOAM_to_Tecplot converter. Users of this converter are also hereby
|
||||
* granted access to the TecIO source code, and may redistribute it for the
|
||||
* purpose of maintaining the converter. However, no authority is granted
|
||||
* to alter the TecIO source code in any form or manner.
|
||||
*
|
||||
* This limited grant of distribution does not supersede Tecplot, Inc.'s
|
||||
* copyright in TecIO. Contact Tecplot, Inc. for further information.
|
||||
*
|
||||
* Tecplot, Inc.
|
||||
* 3535 Factoria Blvd, Ste. 550
|
||||
* Bellevue, WA 98006, USA
|
||||
* Phone: +1 425 653 1200
|
||||
* http://www.tecplot.com/
|
||||
*
|
||||
*/
|
||||
#include "stdafx.h"
|
||||
#include "MASTER.h"
|
||||
#define TECPLOTENGINEMODULE
|
||||
|
@ -29,7 +6,7 @@
|
|||
*****************************************************************
|
||||
*****************************************************************
|
||||
******* ********
|
||||
****** Copyright (C) 1988-2008 Tecplot, Inc. *******
|
||||
****** Copyright (C) 1988-2010 Tecplot, Inc. *******
|
||||
******* ********
|
||||
*****************************************************************
|
||||
*****************************************************************
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Reference in a new issue