00001
00002
00003
00004 #ifndef CHARLS_PUBLICTYPES
00005 #define CHARLS_PUBLICTYPES
00006
00007 #include "config.h"
00008
00009 enum JLS_ERROR
00010 {
00011 OK = 0,
00012 InvalidJlsParameters,
00013 ParameterValueNotSupported,
00014 UncompressedBufferTooSmall,
00015 CompressedBufferTooSmall,
00016 InvalidCompressedData,
00017 TooMuchCompressedData,
00018 ImageTypeNotSupported,
00019 UnsupportedBitDepthForTransform,
00020 UnsupportedColorTransform
00021 };
00022
00023
00024 enum interleavemode
00025 {
00026 ILV_NONE = 0,
00027 ILV_LINE = 1,
00028 ILV_SAMPLE = 2
00029 };
00030
00031
00032 struct JlsCustomParameters
00033 {
00034 int MAXVAL;
00035 int T1;
00036 int T2;
00037 int T3;
00038 int RESET;
00039 };
00040
00041
00042 struct JlsRect
00043 {
00044 int X, Y;
00045 int Width, Height;
00046 };
00047
00048
00049 struct JfifParameters
00050 {
00051 int Ver;
00052 char units;
00053 int XDensity;
00054 int YDensity;
00055 short Xthumb;
00056 short Ythumb;
00057 void* pdataThumbnail;
00058 };
00059
00060
00061 struct JlsParameters
00062 {
00063 int width;
00064 int height;
00065 int bitspersample;
00066 int bytesperline;
00067 int components;
00068 int allowedlossyerror;
00069 enum interleavemode ilv;
00070 int colorTransform;
00071 char outputBgr;
00072 struct JlsCustomParameters custom;
00073 struct JfifParameters jfif;
00074 };
00075
00076 #endif