X-Git-Url: http://git.kpe.io/?p=ctsim.git;a=blobdiff_plain;f=include%2Fimagefile.h;h=dd0c0c9d5744e3a2c64b5a849a520f832b905175;hp=ef60d3ddebf39f26a92ae2352c6ae9a6828b4009;hb=484b9ac2ebf8f88dbe36bdc1d3a9c1b6a2b242eb;hpb=3e346e67f7f7a331919a32439b0f54a4d53d3029 diff --git a/include/imagefile.h b/include/imagefile.h index ef60d3d..dd0c0c9 100644 --- a/include/imagefile.h +++ b/include/imagefile.h @@ -9,7 +9,7 @@ ** This is part of the CTSim program ** Copyright (C) 1983-2000 Kevin Rosenberg ** -** $Id: imagefile.h,v 1.16 2000/06/28 15:25:34 kevin Exp $ +** $Id: imagefile.h,v 1.21 2000/12/16 03:29:02 kevin Exp $ ** ** 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 @@ -28,9 +28,11 @@ #ifndef IMAGEFILE_H #define IMAGEFILE_H +#ifndef MSVC +#include +#endif #include #include -#include #include #include #include "ctsupport.h" @@ -46,17 +48,8 @@ using namespace std; class F32Image : public Array2dFile { public: - F32Image (int nx, int ny) - : Array2dFile::Array2dFile (nx, ny, sizeof(kfloat32), Array2dFile::PIXEL_FLOAT32) - { - } - - F32Image (void) - : Array2dFile::Array2dFile() - { - setPixelFormat (Array2dFile::PIXEL_FLOAT32); - setPixelSize (sizeof(kfloat32)); - } + F32Image (int nx, int ny); + F32Image (void); kfloat32** getArray (void) { return (kfloat32**) (m_arrayData); } @@ -79,17 +72,8 @@ class F64Image : public Array2dFile { public: - F64Image (int nx, int ny) - : Array2dFile::Array2dFile (nx, ny, sizeof(kfloat64), Array2dFile::PIXEL_FLOAT64) - { - } - - F64Image (void) - : Array2dFile::Array2dFile () - { - setPixelFormat (PIXEL_FLOAT64); - setPixelSize (sizeof(kfloat64)); - } + F64Image (int nx, int ny); + F64Image (void); kfloat64** getArray (void) { return (kfloat64**) (m_arrayData); } @@ -137,16 +121,26 @@ class ImageFile : public ImageFileBase void statistics (double& min, double& max, double& mean, double& mode, double& median, double& stddev) const; - void printStatistics (ostream& os) const; + void getMinMax (double& min, double& max) const; + + void printStatistics (std::ostream& os) const; bool comparativeStatistics (const ImageFile& imComp, double& d, double& r, double& e) const; - bool printComparativeStatistics (const ImageFile& imComp, ostream& os) const; + bool printComparativeStatistics (const ImageFile& imComp, std::ostream& os) const; - int display (void); + int display (void) const; - int displayScaling (const int scaleFactor, ImageFileValue pmin, ImageFileValue pmax); + int displayScaling (const int scaleFactor, ImageFileValue pmin, ImageFileValue pmax) const; +#if HAVE_PNG + void writeImagePNG (const char *outfile, int bitdepth, int nxcell, int nycell, double densmin, double densmax); +#endif +#if HAVE_GD + void writeImageGIF (const char *outfile, int nxcell, int nycell, double densmin, double densmax); +#endif + void writeImagePGM (const char *outfile, int nxcell, int nycell, double densmin, double densmax); + void writeImagePGMASCII (const char *outfile, int nxcell, int nycell, double densmin, double densmax); };