167 #ifndef EQ_PLUGINS_COMPRESSOR
168 #define EQ_PLUGINS_COMPRESSOR
171 #include <sys/types.h>
172 struct GLEWContextStruct;
173 struct WGLEWContextStruct;
174 typedef struct GLEWContextStruct GLEWContext;
175 typedef struct WGLEWContextStruct WGLEWContext;
176 typedef unsigned long long eq_uint64_t;
179 # ifdef EQ_PLUGIN_BUILD
180 # define EQ_PLUGIN_API __declspec(dllexport)
182 # define EQ_PLUGIN_API __declspec(dllimport)
185 # define EQ_PLUGIN_API __attribute__ ((visibility("default")))
192 #define EQ_COMPRESSOR_VERSION 4
194 #define EQ_COMPRESSOR_VERSION_1 1
196 #define EQ_COMPRESSOR_VERSION_2 1
198 #define EQ_COMPRESSOR_VERSION_3 1
200 #define EQ_COMPRESSOR_VERSION_4 1
223 #define EQ_COMPRESSOR_INPLACE 0x1
229 #define EQ_COMPRESSOR_DATA_1D 0x2
236 #define EQ_COMPRESSOR_DATA_2D 0x4
254 #define EQ_COMPRESSOR_IGNORE_ALPHA 0x8
256 #define EQ_COMPRESSOR_IGNORE_MSE EQ_COMPRESSOR_IGNORE_ALPHA
264 #define EQ_COMPRESSOR_CPU 0
272 #define EQ_COMPRESSOR_TRANSFER 0x10
280 #define EQ_COMPRESSOR_USE_TEXTURE_RECT 0x20
287 #define EQ_COMPRESSOR_USE_TEXTURE_2D 0x80
294 #define EQ_COMPRESSOR_USE_FRAMEBUFFER 0x40
302 #define EQ_COMPRESSOR_USE_ASYNC_DOWNLOAD 0x100
304 #if 0 // Not implemented yet
311 #define EQ_COMPRESSOR_USE_ASYNC_UPLOAD 0x200
472 const eq_uint64_t* inDims,
473 const eq_uint64_t flags );
487 const unsigned name );
503 eq_uint64_t*
const outSize );
527 const void*
const* in,
528 const eq_uint64_t*
const inSizes,
529 const unsigned numInputs,
531 eq_uint64_t*
const outDims,
532 const eq_uint64_t flags );
552 const GLEWContext* glewContext );
604 const GLEWContext* glewContext,
605 const eq_uint64_t inDims[4],
606 const unsigned source,
607 const eq_uint64_t flags,
608 eq_uint64_t outDims[4],
637 const GLEWContext* glewContext,
638 const eq_uint64_t inDims[4],
639 const unsigned source,
640 const eq_uint64_t flags );
661 const GLEWContext* glewContext,
662 const eq_uint64_t inDims[4],
663 const eq_uint64_t flags,
664 eq_uint64_t outDims[4],
711 const GLEWContext* glewContext,
713 const eq_uint64_t inDims[4],
714 const eq_uint64_t flags,
715 const eq_uint64_t outDims[4],
716 const unsigned destination );
725 inline std::ostream& operator << ( std::ostream& os,
728 return os << std::hex <<
"name 0x" << info.
name <<
" in 0x"
730 <<
" cap 0x" << info.
capabilities << std::dec <<
" quality "
735 #endif // EQ_PLUGINS_COMPRESSOR