]> Creatis software - clitk.git/blob - utilities/CxImage/ximajbg.h
cosmetic
[clitk.git] / utilities / CxImage / ximajbg.h
1 /*
2  * File:        ximajbg.h
3  * Purpose:     JBG Image Class Loader and Writer
4  */
5 /* ==========================================================
6  * CxImageJBG (c) 18/Aug/2002 Davide Pizzolato - www.xdp.it
7  * For conditions of distribution and use, see copyright notice in ximage.h
8  *
9  * based on LIBJBG Copyright (c) 2002, Markus Kuhn - All rights reserved.
10  * ==========================================================
11  */
12 #if !defined(__ximaJBG_h)
13 #define __ximaJBG_h
14
15 #include "ximage.h"
16
17 #if CXIMAGE_SUPPORT_JBG
18
19 extern "C" {
20 #include "../jbig/jbig.h"
21 };
22
23 class CxImageJBG: public CxImage
24 {
25 public:
26         CxImageJBG(): CxImage(CXIMAGE_FORMAT_JBG) {}
27
28 //      bool Load(const TCHAR * imageFileName){ return CxImage::Load(imageFileName,CXIMAGE_FORMAT_JBG);}
29 //      bool Save(const TCHAR * imageFileName){ return CxImage::Save(imageFileName,CXIMAGE_FORMAT_JBG);}
30         bool Decode(CxFile * hFile);
31         bool Decode(FILE *hFile) { CxIOFile file(hFile); return Decode(&file); }
32
33 #if CXIMAGE_SUPPORT_ENCODE
34         bool Encode(CxFile * hFile);
35         bool Encode(FILE *hFile) { CxIOFile file(hFile); return Encode(&file); }
36 #endif // CXIMAGE_SUPPORT_ENCODE
37 protected:
38         static void jbig_data_out(BYTE *buffer, unsigned int len, void *file)
39                                                         {((CxFile*)file)->Write(buffer,len,1);}
40 };
41
42 #endif
43
44 #endif