X-Git-Url: http://git.kpe.io/?p=ctsim.git;a=blobdiff_plain;f=include%2Fct.h;h=9ee346bf018c1385518893e9f844a17d7443884b;hp=0ad813e2f5f189982d7d3b53ca98e8077f3080f7;hb=d42d3d062dd1aca92b5a2552a1f474aab0bee610;hpb=13838bda88b63a2535b5baaf7197006767de4b8e diff --git a/include/ct.h b/include/ct.h index 0ad813e..9ee346b 100644 --- a/include/ct.h +++ b/include/ct.h @@ -1,75 +1,191 @@ -/*---------------------------------------------------------------------*/ -/* HEADER FILE FOR TOMOGRAPY SYSTEM */ -/*---------------------------------------------------------------------*/ - -#ifndef CT_H -#define CT_H - -#ifdef HAVE_CONFIG_H -#include -#endif -#ifdef HAVE_PNG -#include "png.h" -#endif -#ifdef HAVE_STDIO_H -#include -#endif -#ifdef HAVE_STRING_H -#include -#endif -#ifdef HAVE_STDDEF_H -#include -#endif -#include -#ifdef HAVE_STDARG_H -#include -#endif -#ifdef HAVE_SYS_TYPES_H -#include -#endif -#ifdef HAVE_SYS_STAT_H -#include -#endif -#ifdef HAVE_CTYPE_H -#include -#endif -#ifdef HAVE_MATH_H -#include -#endif -#ifdef HAVE_SYS_FCNTL_H -#include -#endif -#ifdef HAVE_FCNTL_H -#include -#endif -#if defined(HAVE_GETOPT_H) || defined(HAVE_GETOPT_LONG) -#include -#endif -#ifdef HAVE_UNISTD_H -#include -#endif -#ifdef HAVE_SETJMP_H -#include -#endif - -#ifdef MPI_CT -#include "mpi.h" -#endif - -#include "kstddef.h" -#include "kmath.h" -#include "sgp.h" -#include "sdf.h" -#include "ir.h" -#include "getargs.h" -#include "keyboard.h" -#include "cio.h" -#include "ezplot.h" - -#ifndef basename -extern char *basename (__const char *__filename); -#endif - - -#endif - +/***************************************************************************** +** FILE IDENTIFICATION +** +** Name: ct.h +** Purpose: Master header file for CTSim +** Programmer: Kevin Rosenberg +** Date Started: Aug 1984 +** +** This is part of the CTSim program +** Copyright (c) 1983-2001 Kevin Rosenberg +** +** $Id$ +** +** This program is free software; you can redistribute it and/or modify +** it under the terms of the GNU General Public License (version 2) as +** published by the Free Software Foundation. +** +** This program 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 this program; if not, write to the Free Software +** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +******************************************************************************/ + +#ifndef CT_H +#define CT_H + +#define NO_MAIN 1 // filter out all old main blocks + +#ifdef MSVC +#include "msvc_compat.h" +#endif + +#ifdef HAVE_CONFIG_H + #include +#endif + +#ifdef _DEBUG +#undef DEBUG +#define DEBUG 1 +#endif + +#define HAVE_ANSI_CPP 1 +#ifdef HAVE_ANSI_CPP +#include +#include +#include +#include +#include +#include +#include +#include + +#if defined(MSVC) || HAVE_SSTREAM +#include +#else +#include +#endif + +#include +#include +#include +#include +#include +#include +#include +#include + +#else + +#ifdef HAVE_CTYPE_H +#include +#endif +#ifdef HAVE_MATH_H +#include +#endif +#ifdef HAVE_STDIO_H +#include +#endif +#ifdef HAVE_STRING_H +#include +#endif +#ifdef HAVE_STDDEF_H +#include +#endif +#ifdef HAVE_STDLIB_H +#include +#endif +#ifdef HAVE_STDARG_H +#include +#endif + +#endif + + +#ifdef HAVE_DMALLOC +#include +#endif +#ifdef HAVE_UNISTD_H +#include +#endif +#ifdef HAVE_PNG + #include "png.h" +#endif +#ifdef HAVE_G2_H +extern "C" { +#include "g2.h" +} +#ifdef HAVE_X11 +extern "C" { +#include "g2_X11.h" +} +#endif +#endif + + +#ifdef HAVE_SYS_TYPES_H +#include +#endif +#ifdef HAVE_SYS_STAT_H +#include +#endif +#ifdef HAVE_SYS_FCNTL_H +#include +#endif +#ifdef HAVE_FCNTL_H +#include +#endif +#if defined(HAVE_GETOPT_H) || defined(HAVE_GETOPT_LONG) +#include +#endif +#ifdef HAVE_SETJMP_H +#include +#endif +#ifdef HAVE_SYS_PARAM_H +#include /* for htonl on FreeBSD */ +#endif +#ifdef HAVE_NETINET_IN_H +#include /* for htonl on Linux/Solaris */ +#endif +#ifdef HAVE_INTTYPES_H +#include /* for htonl on Solaris */ +#endif +#ifdef HAVE_STDINT_H +#include /* Standard ints on Linux */ +#endif +#ifdef HAVE_ASSERT_H +#include +#endif + + +#ifdef HAVE_FFTW +#include +#define HAVE_FFT 1 +#endif + +#ifdef HAVE_MPI +#include "mpi++.h" +#include "mpiworld.h" +#endif + +#include "ctsupport.h" +#include "fnetorderstream.h" + +#ifdef HAVE_SGP + #include "ezplot.h" + #include "sgp.h" +#endif + +#include "array2d.h" +#include "array2dfile.h" +#include "fnetorderstream.h" +#include "imagefile.h" +#include "phantom.h" +#include "scanner.h" +#include "backprojectors.h" +#include "filter.h" +#include "fourier.h" +#include "procsignal.h" +#include "projections.h" +#include "reconstruct.h" +#include "plotfile.h" +#include "trace.h" + +#include "ctglobals.h" + +#endif +