00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00018 
00019 
00020 
00021 
00022 
00023 
00024 
00025 
00026 
00027 
00028 
00029 
00030 
00031 
00032 
00033 
00034 
00035 
00036 
00037 
00038 
00039 
00040 
00041 
00042 
00043 
00044 
00045 
00046 
00047 
00048 
00049 
00050 #ifndef  _SO_TEXTURE_IMAGE_ELEMENT
00051 #define  _SO_TEXTURE_IMAGE_ELEMENT
00052 
00053 #include <Inventor/elements/SoTextureImageElementBase.h>
00054 
00068 SoEXTENDER_Documented class  SoTextureImageElement : public SoTextureImageElementBase
00069 { 
00070   SO_ELEMENT_HEADER(SoTextureImageElement);
00071 
00072 public:
00076     static void set(SoState *state, SoNode *node,
00077                     const SbVec2i32 &size, int numComponents,
00078                     const void *buffer, SoBufferObject* bufferObject, SoSFImage::DataType dataType,
00079                     GLint GLInternalFormat, SoRenderToTextureProperty* renderToTexProp,
00080                     int wrapS, int wrapT, int wrapR, int model,
00081                     const SbColor &blendColor, float maxAnisotropy,
00082                     SbBool enableBorder, const SbVec4f &borderColor,
00083                     SbBool isCompressed, int numCompressedMipmaps, int hasTransparency = -1, int currentTexture=-1);
00084 
00089   static void set(SoState *state, SoNode *node,
00090                   const SbVec2i32 &size, int numComponents,
00091                   const void *buffer, SoBufferObject* bufferObject, SoSFImage::DataType dataType,
00092                   GLint GLInternalFormat, SoRenderToTextureProperty* renderToTexProp,
00093                   int wrapS, int wrapT, int wrapR, int model,
00094                   const SbColor &blendColor, float maxAnisotropy,
00095                   const int &minFilter, const int &magFilter,
00096                   SbBool enableBorder, const SbVec4f &borderColor,
00097                   SbBool isCompressed, int numCompressedMipmaps, int hasTransparency = -1, int currentTexture=-1);
00098 
00104   static const void *get(SoState *state, SbVec2i32 &size, int &numComponents,
00105                          SoSFImage::DataType &dataType, 
00106                          GLint &GLInternalFormat,
00107                          int &wrapS, int &wrapT, int &model, 
00108                          SbColor &blendColor, int unit=0);
00112   static void get(SoState *state, int &_minFilter,int &_magFilter, float &_maxAnisotropy, int unit=0);
00113 
00118   static void set(SoState *state, SoNode *node,
00119                   const SbVec2i32 &subSize, int xoffset, int yoffset,
00120                   const void *buffer, int texname) ;
00121     
00122     
00126   static SbBool       containsTransparency(SoState *state, int unit=0);
00127     
00132   static const void *getDefault(SbVec2i32 &s, int &nc, SoSFImage::DataType &dataType,
00133                                 GLint &GLInternalFormat);
00134 
00135 #if 1             SoDEPRECATED
00141   static void set(SoState *state, SoNode *node,
00142                                const SbVec2s &size, int numComponents,
00143                                const void *buffer, SoBufferObject* bufferObject, SoSFImage::DataType dataType,
00144                                GLint GLInternalFormat, SoRenderToTextureProperty* renderToTexProp,
00145                                int wrapS, int wrapT, int wrapR, int model,
00146                                const SbColor &blendColor, float maxAnisotropy,
00147                                SbBool enableBorder, const SbVec4f &borderColor,
00148                                SbBool isCompressed, int numCompressedMipmaps, int hasTransparency = -1, int currentTexture=-1);
00149 SoDEPRECATED
00155   static void set(SoState *state, SoNode *node,
00156                                const SbVec2s &size, int numComponents,
00157                                const void *buffer, SoBufferObject* bufferObject, SoSFImage::DataType dataType,
00158                                GLint GLInternalFormat, SoRenderToTextureProperty* renderToTexProp,
00159                                int wrapS, int wrapT, int wrapR, int model,
00160                                const SbColor &blendColor, float maxAnisotropy,
00161                                const int &minFilter, const int &magFilter,
00162                                SbBool enableBorder, const SbVec4f &borderColor,
00163                                SbBool isCompressed, int numCompressedMipmaps, int hasTransparency = -1, int currentTexture=-1);
00164 SoDEPRECATED
00171   static const void *get(SoState *state, SbVec2s &size, int &numComponents,
00172                          SoSFImage::DataType &dataType,
00173                          GLint &GLInternalFormat,
00174                          int &wrapS, int &wrapT, int &model,
00175                          SbColor &blendColor, int unit=0);
00176 SoDEPRECATED
00182   static void set(SoState *state, SoNode *node,
00183                                const SbVec2s &subSize, int xoffset, int yoffset,
00184                                const void *buffer, int texname) ;
00185 SoDEPRECATED
00191   static const void *getDefault(SbVec2s &s, int &nc, SoSFImage::DataType &dataType,
00192                                              GLint &GLInternalFormat);
00193 
00194 #endif 
00196 private:
00197   static void initClass();
00198   static void exitClass();
00199 };
00200 
00201 #endif 
00202 
00203 
00204