1 #ifndef COIN_SOGLIMAGE_H 
    2 #define COIN_SOGLIMAGE_H 
   34 #include <Inventor/SbBasic.h> 
   35 #include <Inventor/SbVec2s.h> 
   36 #include <Inventor/SbVec3s.h> 
   37 #include <Inventor/SoType.h> 
   48   virtual void unref(
SoState * state = NULL);
 
   50   static SoType getClassTypeId(
void);
 
   51   virtual SoType getTypeId(
void) 
const ;
 
   52   virtual SbBool isOfType(
SoType type) 
const;
 
   69                                    unsigned char * destbuffer,
 
   76                         const Wrap wraps = REPEAT,
 
   77                         const Wrap wrapt = REPEAT,
 
   78                         const float quality = 0.5f);
 
   80   void setPBuffer(
SoState * state,
 
   82                   const Wrap wraps = REPEAT,
 
   83                   const Wrap wrapt = REPEAT,
 
   84                   const float quality = 0.5f);
 
   86   void setData(
const unsigned char * bytes,
 
   88                const int numcomponents,
 
   89                const Wrap wraps = REPEAT,
 
   90                const Wrap wrapt = REPEAT,
 
   91                const float quality = 0.5f,
 
   93                SoState * createinstate = NULL);
 
   95   void setData(
const unsigned char * bytes,
 
   97                const int numcomponents,
 
   98                const Wrap wraps = REPEAT,
 
   99                const Wrap wrapt = REPEAT,
 
  100                const Wrap wrapr = REPEAT,
 
  101                const float quality = 0.5f,
 
  102                const int border = 0,
 
  103                SoState * createinstate = NULL);
 
  105   virtual void setData(
const SbImage * image,
 
  106                        const Wrap wraps = REPEAT,
 
  107                        const Wrap wrapt = REPEAT,
 
  108                        const float quality = 0.5f,
 
  109                        const int border = 0,
 
  110                        SoState * createinstate = NULL);
 
  112   virtual void setData(
const SbImage * image,
 
  116                        const float quality = 0.5f,
 
  117                        const int border = 0,
 
  118                        SoState * createinstate = NULL);
 
  125     LINEAR_MAG_FILTER =         0x0004,
 
  126     LINEAR_MIN_FILTER =         0x0008,
 
  127     LINEAR_MIPMAP_FILTER =      0x0010,
 
  130     FORCE_TRANSPARENCY_TRUE   = 0x0020,
 
  131     FORCE_TRANSPARENCY_FALSE  = 0x0040,
 
  132     FORCE_ALPHA_TEST_TRUE     = 0x0080,
 
  133     FORCE_ALPHA_TEST_FALSE    = 0x0100,
 
  145     USE_QUALITY_VALUE         = 0X8000
 
  148   void setFlags(
const uint32_t flags);
 
  149   uint32_t getFlags(
void) 
const;
 
  151   const SbImage * getImage(
void) 
const;
 
  154   SbBool hasTransparency(
void) 
const;
 
  155   SbBool useAlphaTest(
void) 
const;
 
  156   Wrap getWrapS(
void) 
const;
 
  157   Wrap getWrapT(
void) 
const;
 
  158   Wrap getWrapR(
void) 
const;
 
  160   float getQuality(
void) 
const;
 
  161   uint32_t getGLImageId(
void) 
const;
 
  165   void incAge(
void) 
const;
 
  166   void resetAge(
void) 
const;
 
  167   virtual void unrefOldDL(
SoState * state, 
const uint32_t maxage);
 
  172   class SoGLImageP * pimpl;
 
  173   friend class SoGLImageP;
 
  174   static void cleanupClass(
void);
 
  178   static void beginFrame(
SoState * state);
 
  180   static void endFrame(
SoState * state);
 
  181   static void setDisplayListMaxAge(
const uint32_t maxage);
 
  182   static void freeAllImages(
SoState * state = NULL);
 
  184   void setEndFrameCallback(
void (*cb)(
void *), 
void * closure);
 
  185   int getNumFramesSinceUsed(
void) 
const;
 
  188   static void initClass(
void);
 
  189   static void setResizeCallback(SoGLImageResizeCB * f, 
void * closure);
 
  192   static void registerImage(
SoGLImage * image);
 
  193   static void unregisterImage(
SoGLImage * image);
 
  196 #endif // !COIN_SOGLIMAGE_H 
ResizeReason
Definition: SoGLImage.h:61
Flags
Definition: SoGLImage.h:121
Wrap
Definition: SoGLImage.h:54
The SoState class manages the Coin scenegraph traversal state data.The SoState class is used by actio...
Definition: SoState.h:35
The SbVec3s class is a 3 dimensional vector with short integer coordinates.This vector class provides...
Definition: SbVec3s.h:39
The SoGLDisplayList class stores and manages OpenGL display lists.The TEXTURE_OBJECT type is not dire...
Definition: SoGLDisplayList.h:34
The SoGLImage class is used to handle OpenGL 2D/3D textures. 
Definition: SoGLImage.h:44
SbBool SoGLImageResizeCB(SoState *state, const SbVec3s &newsize, unsigned char *destbuffer, ResizeReason reason, void *closure, class SoGLImage *image)
Definition: SoGLImage.h:67
The SbImage class is an abstract datatype for 2D and 3D images.Be aware that this class is an extensi...
Definition: SbImage.h:37
The SbVec2s class is a 2 dimensional vector with short integer coordinates.This vector class is used ...
Definition: SbVec2s.h:41
The SoType class is the basis for the run-time type system in Coin.Many of the classes in the Coin li...
Definition: SoType.h:50