-/*\r
- * File: ximamng.h\r
- * Purpose: Declaration of the MNG Image Class\r
- * Author: Davide Pizzolato - www.xdp.it\r
- * Created: 2001\r
- */\r
-/* ==========================================================\r
- * CxImageMNG (c) 07/Aug/2001 Davide Pizzolato - www.xdp.it\r
- * For conditions of distribution and use, see copyright notice in ximage.h\r
- *\r
- * Special thanks to Frank Haug <f.haug(at)jdm(dot)de> for suggestions and code.\r
- *\r
- * original mng.cpp code created by Nikolaus Brennig, November 14th, 2000. <virtualnik(at)nol(dot)at>\r
- *\r
- * LIBMNG Copyright (c) 2000,2001 Gerard Juyn (gerard@libmng.com)\r
- * ==========================================================\r
- */\r
-\r
-#if !defined(__ximaMNG_h)\r
-#define __ximaMNG_h\r
-\r
-#include "ximage.h"\r
-\r
-#if CXIMAGE_SUPPORT_MNG\r
-\r
-//#define MNG_NO_CMS\r
-#define MNG_SUPPORT_DISPLAY\r
-#define MNG_SUPPORT_READ\r
-#define MNG_SUPPORT_WRITE\r
-#define MNG_ACCESS_CHUNKS\r
-#define MNG_STORE_CHUNKS\r
-\r
-extern "C" {\r
-#include "../mng/libmng.h"\r
-#include "../mng/libmng_data.h"\r
-#include "../mng/libmng_error.h"\r
-}\r
-\r
-//unsigned long _stdcall RunMNGThread(void *lpParam);\r
-\r
-typedef struct tagmngstuff \r
-{\r
- CxFile *file;\r
- BYTE *image;\r
- BYTE *alpha;\r
- HANDLE thread;\r
- mng_uint32 delay;\r
- mng_uint32 width;\r
- mng_uint32 height;\r
- mng_uint32 effwdt;\r
- mng_int16 bpp;\r
- mng_bool animation;\r
- mng_bool animation_enabled;\r
- float speed;\r
- long nBkgndIndex;\r
- RGBQUAD nBkgndColor;\r
-} mngstuff;\r
-\r
-class CxImageMNG: public CxImage\r
-{\r
-public:\r
- CxImageMNG();\r
- ~CxImageMNG();\r
-\r
- bool Load(const TCHAR * imageFileName);\r
-\r
- bool Decode(CxFile * hFile);\r
- bool Decode(FILE *hFile) { CxIOFile file(hFile); return Decode(&file); }\r
-\r
-#if CXIMAGE_SUPPORT_ENCODE\r
- bool Encode(CxFile * hFile);\r
- bool Encode(FILE *hFile) { CxIOFile file(hFile); return Encode(&file); }\r
- bool Save(const TCHAR * imageFileName){ return CxImage::Save(imageFileName,CXIMAGE_FORMAT_MNG);}\r
-#endif // CXIMAGE_SUPPORT_ENCODE\r
-\r
- long Resume();\r
- void SetSpeed(float speed);\r
- \r
- mng_handle hmng;\r
- mngstuff mnginfo;\r
-protected:\r
- void WritePNG(mng_handle hMNG, int Frame, int FrameCount );\r
- void SetCallbacks(mng_handle mng);\r
-};\r
-\r
-#endif\r
-\r
-#endif\r
+/*
+ * File: ximamng.h
+ * Purpose: Declaration of the MNG Image Class
+ * Author: Davide Pizzolato - www.xdp.it
+ * Created: 2001
+ */
+/* ==========================================================
+ * CxImageMNG (c) 07/Aug/2001 Davide Pizzolato - www.xdp.it
+ * For conditions of distribution and use, see copyright notice in ximage.h
+ *
+ * Special thanks to Frank Haug <f.haug(at)jdm(dot)de> for suggestions and code.
+ *
+ * original mng.cpp code created by Nikolaus Brennig, November 14th, 2000. <virtualnik(at)nol(dot)at>
+ *
+ * LIBMNG Copyright (c) 2000,2001 Gerard Juyn (gerard@libmng.com)
+ * ==========================================================
+ */
+
+#if !defined(__ximaMNG_h)
+#define __ximaMNG_h
+
+#include "ximage.h"
+
+#if CXIMAGE_SUPPORT_MNG
+
+//#define MNG_NO_CMS
+#define MNG_SUPPORT_DISPLAY
+#define MNG_SUPPORT_READ
+#define MNG_SUPPORT_WRITE
+#define MNG_ACCESS_CHUNKS
+#define MNG_STORE_CHUNKS
+
+extern "C" {
+#include "../mng/libmng.h"
+#include "../mng/libmng_data.h"
+#include "../mng/libmng_error.h"
+}
+
+//unsigned long _stdcall RunMNGThread(void *lpParam);
+
+typedef struct tagmngstuff
+{
+ CxFile *file;
+ BYTE *image;
+ BYTE *alpha;
+ HANDLE thread;
+ mng_uint32 delay;
+ mng_uint32 width;
+ mng_uint32 height;
+ mng_uint32 effwdt;
+ mng_int16 bpp;
+ mng_bool animation;
+ mng_bool animation_enabled;
+ float speed;
+ long nBkgndIndex;
+ RGBQUAD nBkgndColor;
+} mngstuff;
+
+class CxImageMNG: public CxImage
+{
+public:
+ CxImageMNG();
+ ~CxImageMNG();
+
+ bool Load(const TCHAR * imageFileName);
+
+ bool Decode(CxFile * hFile);
+ bool Decode(FILE *hFile) { CxIOFile file(hFile); return Decode(&file); }
+
+#if CXIMAGE_SUPPORT_ENCODE
+ bool Encode(CxFile * hFile);
+ bool Encode(FILE *hFile) { CxIOFile file(hFile); return Encode(&file); }
+ bool Save(const TCHAR * imageFileName){ return CxImage::Save(imageFileName,CXIMAGE_FORMAT_MNG);}
+#endif // CXIMAGE_SUPPORT_ENCODE
+
+ long Resume();
+ void SetSpeed(float speed);
+
+ mng_handle hmng;
+ mngstuff mnginfo;
+protected:
+ void WritePNG(mng_handle hMNG, int Frame, int FrameCount );
+ void SetCallbacks(mng_handle mng);
+};
+
+#endif
+
+#endif