21#include <Inventor/elements/SoMLImageElement.h>
46 void GLRender(SoGLRenderAction *action)
override;
#define INVENTOR_SHADER_API
Define class export specifier.
The abstract Inventor class SoImageSampler.
Abstract base class for sampler nodes that handle ML images.
void imageChangedCB(SoField *field)
SoSFMLImage image
ML image connector.
static void initClass()
Initialize class with runtime type system.
SbSamplerInfo::TextureType _internTexFormat
Value points to internal texture format.
SbMLImageProperties _imgProps
ML image properties.
virtual void getTextureDataFromImage(const XVImageSize &pos, const XVImageSize &size)
Extract the texture data from the input ML image and store it in the textureData buffer.
void updateParameter(SoUniformParameterBase *uniformBase, SoState *state) override
Assigns or updates the parameter's value.
~SoMLSampler() override
Destructor.
GLenum MLToGLDataType(const MLDataType &dType)
Return OpenGL data type for given ML data type. Returns GL_NONE for unknown ML data types.
void imageChanged() override
Called when the ML images has changed.
virtual void calcSubImgProps(XVImageSize &subImgPosition, XVImageSize &subImgSize)=0
Calculate position and size of used sub image by evaluation of fields.
void texConfigChanged(SoField *field) override
Called when texture configuration (e.g. filter mode) has changed.
void GLRender(SoGLRenderAction *action) override
Set ML image properties in state.
SoMLSampler()
Constructor.
MLuint8 * loadAndReformatSubImg(const XVImageSize &pos, const XVImageSize &size)
Load ML image and reformat memory to be suitable for OpenGL texturing.
SoSFUInt32 startU
Origin of the image in U dimension. Default is 0.
SoSFUInt32 startT
Origin of the image in T dimension. Default is 0.
The SoSFMLImage field is the interface used by Inventor Nodes to access image data (in the current im...
SoSFMLImage - field interface to ML images and related classes.