NAVTOR SDK  v.3.0
Software Development Kit for fast and efficient development of ECDIS, ECS and generic marine applications
IGL2DCaps Class Referenceabstract

GL2D Caps object, provides information about OpenGL capabilities THIS OBJECT DOES NOT KEEPS STRONG REFERENCE TO CANVAS (IGL2DCanvasSP), BUT USES WEAK REFERENCE, MEANS CANVAS SHOULD EXIST DURING CALL TO ANY OF. More...

#include <gl2d_caps_interface.h>

Inherits ISDKProperties.

Public Member Functions

virtual void SDK_CALLTYPE Dump () const =0 throw ()
 Dumps given object.
 
virtual IGL2DCanvasSP SDK_CALLTYPE GetParent () const =0 throw ()
 Returns parent canvas object.
 
virtual SDKResult SDK_CALLTYPE GetVendorName (SDKString &vendor_name) const =0 throw ()
 Returns vendor name.
 
virtual SDKResult SDK_CALLTYPE GetRendererName (SDKString &renderer_name) const =0 throw ()
 Returns renderer name.
 
virtual SDKResult SDK_CALLTYPE GetGlVersion (SDKString &gl_version) const =0 throw ()
 Returns OpenGL (ES) version.
 
virtual SDKResult SDK_CALLTYPE GetGlNumericVersion (SDKUInt32 &major, SDKUInt32 &minor) const =0 throw ()
 Returns OpenGL (ES) numeric version.
 
virtual SDKResult SDK_CALLTYPE GetGlSlVersion (SDKString &glsl_version) const =0 throw ()
 Returns GLSL version.
 
virtual SDKResult SDK_CALLTYPE GetGlSlNumericVersion (SDKUInt32 &major, SDKUInt32 &minor) const =0 throw ()
 Returns GLSL numeric version.
 
virtual GL2DGpuType SDK_CALLTYPE GetGpuType () const =0 throw ()
 Returns GPU type.
 
virtual GL2DGpuVendor SDK_CALLTYPE GetGpuVendor () const =0 throw ()
 Returns GPU vendor.
 
virtual bool SDK_CALLTYPE IsGpuHasLowAccuracyForLongLineSegments () const =0 throw ()
 Returns true in case given videoadapter have low accuracy for long line segments.
 
virtual SDKUInt32 SDK_CALLTYPE GetMaxTextureSize () const =0 throw ()
 Returns max texture size (width/height) At least 64x64 for OpenGL ES2, at least 1024x1024 for OpenGL.
 
virtual SDKUInt32 SDK_CALLTYPE GetMaxRenderBufferSize () const =0 throw ()
 Returns max render-buffer size (width/height) At least 1x1 for OpenGL ES2.
 
virtual bool SDK_CALLTYPE GetTextureSizeIsPowerOfTwo () const =0 throw ()
 Returns texture size is power of two flag.
 
virtual bool SDK_CALLTYPE GetBGRASupport () const =0 throw ()
 Returns BGRA (GL_BGRA) FBO/texture support flag.
 
bool SDK_CALLTYPE CanCreateR8Textures () const
 GL platform allows to create R8 (GL_RED) textures flag.
 
bool SDK_CALLTYPE CanCreateA8Textures () const
 GL platform allows to create A8 (GL_ALPHA) textures flag.
 
bool SDK_CALLTYPE CanCreateGrayscaleTextures () const
 GL platform allows to create Grayscale (R8/A8) textures flag.
 
bool SDK_CALLTYPE CanBindR8TextureToFBO () const
 GL platform allows to bind R8 (GL_RED) texture to FBO flag (Allows to render to R8 texture)
 
bool SDK_CALLTYPE CanBindA8TextureToFBO () const
 GL platform allows to bind A8 (GL_ALPHA) texture to FBO flag (Allows to render to A8 texture)
 
bool SDK_CALLTYPE CanBindGrayscaleTextureToFBO () const
 GL platform allows to bind Grayscale (R8/A8) texture to FBO flag (Allows to render to Grayscale texture)
 
bool SDK_CALLTYPE CanCopyR8TextureToR8Texture () const
 GL platform allows to copy R8 (GL_RED) texture to R8 texture flag.
 
bool SDK_CALLTYPE CanCopyA8TextureToA8Texture () const
 GL platform allows to copy A8 (GL_ALPHA) texture to R8 texture flag.
 
bool SDK_CALLTYPE CanCopyGrayscaleTextureToGrayscaleTexture () const
 GL platform allows to copy Grayscale (R8/A8) texture to GrayScale texture flag.
 
virtual bool SDK_CALLTYPE GetStencil8Support () const =0 throw ()
 Returns stencil8 buffer support (as separate stencil8 RBO buffer)
 
virtual bool SDK_CALLTYPE GetDepth24Support () const =0 throw ()
 Returns depth24 buffer support (separate depth24 RBO buffer) Note that Depth16 is always supported on any platform.
 
virtual bool SDK_CALLTYPE GetPackedDepthStencilSupport () const =0 throw ()
 Returns packed depth24/stencil8 buffer support.
 
virtual bool SDK_CALLTYPE GetDepthTextureSupport () const =0 throw ()
 Returns depth texture support.
 
virtual SDKUInt32 SDK_CALLTYPE GetCurrentFBOStencilBits () const =0 throw ()
 Currently attached FBO stencil bits.
 
virtual SDKUInt32 SDK_CALLTYPE GetCurrentFBOAlphaBits () const =0 throw ()
 Currently attached FBO alpha bits.
 
virtual SDKUInt64 SDK_CALLTYPE GetMaxVerticesCount () const =0 throw ()
 Returns max number of vertices for one GL2D object.
 
virtual SDKUInt64 SDK_CALLTYPE GetMaxIndexesCount () const =0 throw ()
 Returns max number of indexes for one GL2D object.
 
virtual SDKUInt32 SDK_CALLTYPE GetMaxIndexValue () const =0 throw ()
 Returns max index value for one GL2D object.
 
virtual SDKUInt32 SDK_CALLTYPE GetMaxNumberOfClippingMeshes () const =0 throw ()
 Returns max number of clipping meshes.
 
virtual float SDK_CALLTYPE GetMinSimpleLineWidth () const =0 throw ()
 Returns minimal simple line width.
 
virtual float SDK_CALLTYPE GetMaxSimpleLineWidth () const =0 throw ()
 Returns maximal simple line width.
 
virtual SDKUInt32 SDK_CALLTYPE GetMaxVertexShaderAttributesCount () const =0 throw ()
 Returns max allowed vertex shader attributes count At least 8 for OpenGL ES2, at least 16 for OpenGL.
 
virtual SDKUInt32 SDK_CALLTYPE GetMaxVertexShaderUniformsCount () const =0 throw ()
 Returns max allowed vertex shader uniforms count At least 128 for OpenGL ES2, at least 256 for OpenGL.
 
virtual SDKUInt32 SDK_CALLTYPE GetMaxVertexShaderTexturesCount () const =0 throw ()
 Returns max allowed vertex shader textures count Can be 0 for OpenGL ES2, at least 16 for OpenGL.
 
virtual SDKUInt32 SDK_CALLTYPE GetMaxShaderVaryingVectorsCount () const =0 throw ()
 Returns max allowed shader varying vectors count At least 8 for OpenGL ES2, at least 15 for OpenGL.
 
virtual SDKUInt32 SDK_CALLTYPE GetMaxFragmentShaderUniformsCount () const =0 throw ()
 Returns max allowed fragment shader uniforms count At least 16 for OpenGL ES2, at least 256 for OpenGL.
 
virtual SDKUInt32 SDK_CALLTYPE GetMaxFragmentShaderTexturesCount () const =0 throw ()
 Returns max allowed fragment shader textures count At least 8 for OpenGL ES2, at least 16 for OpenGL.
 
virtual SDKUInt32 SDK_CALLTYPE GetGLSLFloatPrecisionInVertexShader () const =0 throw ()
 Returns GLSL float precision for vertex/fragment shader For 1.0 + eps != 1.0 minimum epsilon equals to eps = 1 / (2 ^ precision) Vertex shader: at least 16 (1.0 / 65536) for OpenGL ES2, at least 23 (1.0 / 8 388 608) for OpenGL Fragment shader: at least 10 (1.0 / 1024) for OpenGL ES2, at least 23 (1.0 / 8 388 608) for OpenGL

 
virtual bool SDK_CALLTYPE IsGlExtensionSupported (const SDKString &extension_name) const =0 throw ()
 Checks if given GL extension supported.
 
virtual bool SDK_CALLTYPE IsCanvasOperationSupported (const GL2DCanvasOperationType &type) const =0 throw ()
 Checks, if given operation is supported by Canvas.
 

Detailed Description

GL2D Caps object, provides information about OpenGL capabilities THIS OBJECT DOES NOT KEEPS STRONG REFERENCE TO CANVAS (IGL2DCanvasSP), BUT USES WEAK REFERENCE, MEANS CANVAS SHOULD EXIST DURING CALL TO ANY OF.

CAPS METHODS, OTHERWISE APPLICATION CAN CRASH

Thread 1 | Thread 2 | Result | 1) Call to any of | Canvas is | Normal behaviour. Caps will | IGL2DCaps methods | referenced and | return proper valid values |

| exists | for any method call |

2) Call to any of | Call to | APPLICATION CAN CRASH |

IGL2DCaps methods | IGL2DCanvas dtor | |

3) Call to any of | Canvas is | NULL/Err_CantLoadData/ | IGL2DCaps methods | destroyed | 0/0.0/false as result | | | for any IGL2DCaps method |

| | call |


The documentation for this class was generated from the following file: