00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
#ifndef DIPITIFF_H
00035
#define DIPITIFF_H
00036
00037
#include "osconfig.h"
00038
00039
#ifdef WITH_LIBTIFF
00040
00041
#include "diplugin.h"
00042
00043
00044
00045
00046
00047
00048
class DiImage;
00049
00050
00051
00052
00053
00054
00059
enum DiTIFFCompression
00060 {
00062 E_tiffPackBitsCompression,
00063
00065 E_tiffLZWCompression,
00066
00068 E_tiffNoCompression
00069 };
00070
00073
enum DiTIFFLZWPredictor
00074 {
00076 E_tiffLZWPredictorDefault,
00077
00079 E_tiffLZWPredictorNoPrediction,
00080
00082 E_tiffLZWPredictorHDifferencing
00083 };
00084
00085
00086
00087
00088
00089
00092 class DiTIFFPlugin
00093 :
public DiPluginFormat
00094 {
00095
00096
public:
00097
00100
DiTIFFPlugin();
00101
00104
virtual ~DiTIFFPlugin();
00105
00112
virtual int write(
DiImage *image,
00113 FILE *stream,
00114
const unsigned long frame = 0)
const;
00115
00119
void setCompressionType(DiTIFFCompression ctype);
00120
00124
void setLZWPredictor(DiTIFFLZWPredictor pred);
00125
00131
void setRowsPerStrip(
unsigned long rows = 0);
00132
00137
static OFString getLibraryVersionString();
00138
00139
00140
private:
00141
00143 DiTIFFCompression
compressionType;
00144
00146 DiTIFFLZWPredictor
predictor;
00147
00149 unsigned long rowsPerStrip;
00150 };
00151
00152
#endif
00153
#endif
00154
00155
00156
00157
00158
00159
00160
00161
00162
00163
00164
00165
00166
00167
00168
00169
00170
00171
00172
00173
00174