00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef FXJP2IMAGE_H
00022 #define FXJP2IMAGE_H
00023
00024 #ifndef FXIMAGE_H
00025 #include "FXImage.h"
00026 #endif
00027
00028 namespace FX {
00029
00030
00032 class FXAPI FXJP2Image : public FXImage {
00033 FXDECLARE(FXJP2Image)
00034 protected:
00035 FXint quality;
00036 protected:
00037 FXJP2Image(){}
00038 private:
00039 FXJP2Image(const FXJP2Image&);
00040 FXJP2Image &operator=(const FXJP2Image&);
00041 public:
00042 static const FXchar fileExt[];
00043 static const FXchar mimeType[];
00044 public:
00045
00047 FXJP2Image(FXApp *a,const void *pix=NULL,FXuint opts=0,FXint w=1,FXint h=1,FXint q=100);
00048
00050 static const FXbool supported;
00051
00053 void setQuality(FXint q){ quality=q; }
00054
00056 FXint getQuality() const { return quality; }
00057
00059 virtual FXbool savePixels(FXStream& store) const;
00060
00062 virtual FXbool loadPixels(FXStream& store);
00063
00065 virtual ~FXJP2Image();
00066 };
00067
00068
00069 #ifndef FXLOADJP2
00070 #define FXLOADJP2
00071
00075 extern FXAPI FXbool fxcheckJP2(FXStream& store);
00076
00077
00083 extern FXAPI FXbool fxloadJP2(FXStream& store,FXColor*& data,FXint& width,FXint& height,FXint& quality);
00084
00085
00089 extern FXAPI FXbool fxsaveJP2(FXStream& store,const FXColor* data,FXint width,FXint height,FXint quality);
00090
00091 #endif
00092
00093 }
00094
00095 #endif