aboutsummaryrefslogtreecommitdiff
path: root/packages/noncvs/windows/extra/Gem/dev/Gem/ImageIO.h
diff options
context:
space:
mode:
Diffstat (limited to 'packages/noncvs/windows/extra/Gem/dev/Gem/ImageIO.h')
-rw-r--r--packages/noncvs/windows/extra/Gem/dev/Gem/ImageIO.h306
1 files changed, 153 insertions, 153 deletions
diff --git a/packages/noncvs/windows/extra/Gem/dev/Gem/ImageIO.h b/packages/noncvs/windows/extra/Gem/dev/Gem/ImageIO.h
index 73c2415d..beeed67f 100644
--- a/packages/noncvs/windows/extra/Gem/dev/Gem/ImageIO.h
+++ b/packages/noncvs/windows/extra/Gem/dev/Gem/ImageIO.h
@@ -1,153 +1,153 @@
-/*-----------------------------------------------------------------
-LOG
- GEM - Graphics Environment for Multimedia
-
- GemPixImageLoad.h
- - code to load in and resize an image
- - part of GEM
-
- Copyright (c) 1997-1999 Mark Danks. mark@danks.org
- Copyright (c) Günther Geiger. geiger@epy.co.at
- Copyright (c) 2001-2011 IOhannes m zmölnig. forum::für::umläute. IEM. zmoelnig@iem.at
- For information on usage and redistribution, and for a DISCLAIMER OF ALL
- WARRANTIES, see the file, "GEM.LICENSE.TERMS" in this distribution.
-
------------------------------------------------------------------*/
-
-#ifndef _INCLUDE__GEM_GEM_IMAGEIO_H_
-#define _INCLUDE__GEM_GEM_IMAGEIO_H_
-
-#include "Gem/ExportDef.h"
-
-struct imageStruct;
-
-#include <string>
-
-
-// image2mem() reads an image file into memory
-// and a pointer to an imageStruct
-// NULL = failure
-//
-// format:
-// returns either GL_LUMINANCE or GL_RGBA
-//
-// automatically allocates the memory for the user
-//
-// This can read TIFF, SGI, and JPG images
-//
-namespace gem {
- class Properties;
- namespace image {
- GEM_EXTERN class load {
- public:
- /**
- * loads an image (given as 'filename') synchronously
- * the function blocks until the image is loaded (in which case it returns TRUE)
- * of the image-loading completely failed (in which case it returns FALSE)
- *
- * the loaded image is stored in 'img'
- * 'props' holds a list of additional image properties discovered during loading
- */
- static bool sync(const std::string filename,
- imageStruct&img,
- Properties&props);
-
-
-
- typedef unsigned int id_t;
- static const id_t IMMEDIATE;
- static const id_t INVALID;
-
- /* the callback used for asynchronous image loading
- * userdata is is the pointer supplied when calling async();
- * id is the ID returned by async()
- * img holds a reference to the newly loaded image
- * the image is allocated by the loder, but
- * the callback (you!) is responsible for freeing the image
- * once it is no more needed
- * if image loading failed, img is set to NULL
- * props holds a list of additional image properties discovered during loading
- *
- * currently (with Pd being the only RTE),
- * the callback will always be called from within the main thread
- *
- * the callback might be called directly from within async(),
- * in which case the ID given in the callback and returned by async()
- * is IMMEDIATE
- */
- typedef void (*callback)(void *userdata,
- id_t ID,
- imageStruct*img,
- const Properties&props);
-
- /* loads an image (given as 'filename') asynchronously
- * image loading is done in a separate thread (if possible);
- * when the image is loaded, the callback 'cb' is called with the new image
- *
- * this function returns an ID which is also passed to the callback function,
- * so the caller can identify a certain request (e.g. if several images have been
- * queued for loading before the 1st one was successfully returned;
- *
- * the image might get loaded (and the cb called) before the call to loadAsync()
- * has finished, in which case IMMEDIATE is returned (and used in the CB)
- *
- * if the image cannot be loaded at all, INVALID is returned
- * (and no callback will ever be called)
- *
- */
- static bool async(callback cb,
- void*userdata,
- const std::string filename,
- id_t&ID
- );
-
- /* cancels asynchronous loading of an image
- * removes the given ID (as returned by loadAsync()) from the loader queue
- * returns TRUE if item could be removed, or FALSE if no item ID is in the queue
- *
- * there is no point in cancel()ing an IMMEDIATE or ILLEGAL id
- */
- static bool cancel(id_t ID);
-
- /* load an image in a synchronous way (that is argument compatible with async())
- */
- static bool sync(callback cb,
- void*userdata,
- const std::string filename,
- id_t&ID);
-
- /*
- * deliver all loaded images not delivered yet
- */
- static void poll(void);
-
- /*
- * set asynch loading to "polling" mode
- * in "polling" mode, the caller has to call 'poll()' manually in order to get any loaded images delivered
- * in "pushing" mode this is done automatically (but might hang with current Pd)
- */
- static bool setPolling(bool);
-
-
-};};};
-
-/* legacy */
-GEM_EXTERN extern imageStruct *image2mem(const char *filename);
-
-
-// image2mem() reads an image file into memory
-// and a pointer to an imageStruct
-// NULL = failure
-//
-// format:
-// returns either GL_LUMINANCE or GL_RGBA
-//
-// automatically allocates the memory for the user
-//
-// This can write TIFF, JPG and other images (depending on which backends are available
-// legacy: type=0 -> TIFF; type>0 -> JPEG and (quality:=type)
-//
-GEM_EXTERN extern int mem2image(imageStruct *image, const char *filename, const int type);
-
-
-#endif
+/*-----------------------------------------------------------------
+LOG
+ GEM - Graphics Environment for Multimedia
+
+ GemPixImageLoad.h
+ - code to load in and resize an image
+ - part of GEM
+
+ Copyright (c) 1997-1999 Mark Danks. mark@danks.org
+ Copyright (c) Günther Geiger. geiger@epy.co.at
+ Copyright (c) 2001-2011 IOhannes m zmölnig. forum::für::umläute. IEM. zmoelnig@iem.at
+ For information on usage and redistribution, and for a DISCLAIMER OF ALL
+ WARRANTIES, see the file, "GEM.LICENSE.TERMS" in this distribution.
+
+-----------------------------------------------------------------*/
+
+#ifndef _INCLUDE__GEM_GEM_IMAGEIO_H_
+#define _INCLUDE__GEM_GEM_IMAGEIO_H_
+
+#include "Gem/ExportDef.h"
+
+struct imageStruct;
+
+#include <string>
+
+
+// image2mem() reads an image file into memory
+// and a pointer to an imageStruct
+// NULL = failure
+//
+// format:
+// returns either GL_LUMINANCE or GL_RGBA
+//
+// automatically allocates the memory for the user
+//
+// This can read TIFF, SGI, and JPG images
+//
+namespace gem {
+ class Properties;
+ namespace image {
+ GEM_EXTERN class load {
+ public:
+ /**
+ * loads an image (given as 'filename') synchronously
+ * the function blocks until the image is loaded (in which case it returns TRUE)
+ * of the image-loading completely failed (in which case it returns FALSE)
+ *
+ * the loaded image is stored in 'img'
+ * 'props' holds a list of additional image properties discovered during loading
+ */
+ static bool sync(const std::string filename,
+ imageStruct&img,
+ Properties&props);
+
+
+
+ typedef unsigned int id_t;
+ static const id_t IMMEDIATE;
+ static const id_t INVALID;
+
+ /* the callback used for asynchronous image loading
+ * userdata is is the pointer supplied when calling async();
+ * id is the ID returned by async()
+ * img holds a reference to the newly loaded image
+ * the image is allocated by the loder, but
+ * the callback (you!) is responsible for freeing the image
+ * once it is no more needed
+ * if image loading failed, img is set to NULL
+ * props holds a list of additional image properties discovered during loading
+ *
+ * currently (with Pd being the only RTE),
+ * the callback will always be called from within the main thread
+ *
+ * the callback might be called directly from within async(),
+ * in which case the ID given in the callback and returned by async()
+ * is IMMEDIATE
+ */
+ typedef void (*callback)(void *userdata,
+ id_t ID,
+ imageStruct*img,
+ const Properties&props);
+
+ /* loads an image (given as 'filename') asynchronously
+ * image loading is done in a separate thread (if possible);
+ * when the image is loaded, the callback 'cb' is called with the new image
+ *
+ * this function returns an ID which is also passed to the callback function,
+ * so the caller can identify a certain request (e.g. if several images have been
+ * queued for loading before the 1st one was successfully returned;
+ *
+ * the image might get loaded (and the cb called) before the call to loadAsync()
+ * has finished, in which case IMMEDIATE is returned (and used in the CB)
+ *
+ * if the image cannot be loaded at all, INVALID is returned
+ * (and no callback will ever be called)
+ *
+ */
+ static bool async(callback cb,
+ void*userdata,
+ const std::string filename,
+ id_t&ID
+ );
+
+ /* cancels asynchronous loading of an image
+ * removes the given ID (as returned by loadAsync()) from the loader queue
+ * returns TRUE if item could be removed, or FALSE if no item ID is in the queue
+ *
+ * there is no point in cancel()ing an IMMEDIATE or ILLEGAL id
+ */
+ static bool cancel(id_t ID);
+
+ /* load an image in a synchronous way (that is argument compatible with async())
+ */
+ static bool sync(callback cb,
+ void*userdata,
+ const std::string filename,
+ id_t&ID);
+
+ /*
+ * deliver all loaded images not delivered yet
+ */
+ static void poll(void);
+
+ /*
+ * set asynch loading to "polling" mode
+ * in "polling" mode, the caller has to call 'poll()' manually in order to get any loaded images delivered
+ * in "pushing" mode this is done automatically (but might hang with current Pd)
+ */
+ static bool setPolling(bool);
+
+
+};};};
+
+/* legacy */
+GEM_EXTERN extern imageStruct *image2mem(const char *filename);
+
+
+// image2mem() reads an image file into memory
+// and a pointer to an imageStruct
+// NULL = failure
+//
+// format:
+// returns either GL_LUMINANCE or GL_RGBA
+//
+// automatically allocates the memory for the user
+//
+// This can write TIFF, JPG and other images (depending on which backends are available
+// legacy: type=0 -> TIFF; type>0 -> JPEG and (quality:=type)
+//
+GEM_EXTERN extern int mem2image(imageStruct *image, const char *filename, const int type);
+
+
+#endif