 |
NAVTOR SDK
v.3.0
Software Development Kit for fast and efficient development of ECDIS, ECS and generic marine applications
|
|
1 #ifndef SDK_GL2D_SPRITES_INTERFACE_H_
11 #define SDK_GL2D_SPRITES_INTERFACE_H_
16 #include <base/inc/sdk_component_base.h>
19 #include <visualizationlayer/inc/vis_const.h>
23 SDK_GL2D_BEGIN_NAMESPACE
35 enum GL2DSpritePosPropertyIDs
45 virtual void SDK_CALLTYPE
Dump()
const throw() = 0;
48 virtual IGL2DCanvasSP SDK_CALLTYPE
GetCanvas()
const throw() = 0;
51 virtual SDKResult SDK_CALLTYPE
GetID(SDKString&
id)
const throw() = 0;
58 const SDKMatrix3X2& position_transform)
throw() = 0;
65 const bool& is_sprite_size_fixed)
throw() = 0;
72 const bool& is_sprite_rotation_fixed)
throw() = 0;
81 enum GL2DSpritePropertyIDs
93 virtual void SDK_CALLTYPE
Dump()
const throw() = 0;
96 virtual IGL2DCanvasSP SDK_CALLTYPE
GetCanvas()
const throw() = 0;
99 virtual SDKResult SDK_CALLTYPE
GetID(SDKString&
id)
const throw() = 0;
101 virtual SDKRect2D SDK_CALLTYPE
GetTextureRect()
const throw() = 0;
108 const SDKMatrix3X2& sprite_transform)
throw() = 0;
115 const bool& is_sprite_size_fixed)
throw() = 0;
122 const bool& is_sprite_rotation_fixed)
throw() = 0;
130 const SDKMatrix3X2& sprite_transform)
throw() = 0;
135 const bool& is_sprite_size_fixed)
throw() = 0;
140 const bool& is_sprite_rotation_fixed)
throw() = 0;
149 const SDKString&
id,
const SDKPointF2D& position)
throw() = 0;
158 const SDKUInt32& index)
const throw() = 0;
161 const SDKString&
id)
const throw() = 0;
168 enum GL2DSpritesPropertyIDs
179 kGL2DSpritesType_Unknown = 0,
184 kGL2DSpritesType_Generic = 1,
191 kGL2DSpritesType_ForPerspProj = 2,
200 virtual void SDK_CALLTYPE
Dump()
const throw() = 0;
203 virtual IGL2DCanvasSP SDK_CALLTYPE
GetParent()
const throw() = 0;
206 virtual GL2DSpritesType SDK_CALLTYPE
GetType()
const throw() = 0;
208 virtual IGL2DTextureSP SDK_CALLTYPE
GetTexture()
const throw() = 0;
213 virtual SDKUInt32 SDK_CALLTYPE
GetMemSize()
const throw() = 0;
222 const SDKUInt32& index)
const throw() = 0;
225 const SDKString&
id)
const throw() = 0;
236 virtual bool SDK_CALLTYPE
IsEditing()
const throw() = 0;
245 virtual IGL2DSpriteSP SDK_CALLTYPE
AddSprite(
246 const SDKString&
id,
const SDKRect2D& texture_rect,
262 : m_sprites(sprites), m_started(false)
269 {
if (m_started) m_sprites->FinishEdit(); }
271 inline bool IsEditing()
const
272 {
return m_sprites ? m_sprites->IsEditing() :
false; }
275 const IGL2DSpritesSP m_sprites;
279 SDK_GL2D_END_NAMESPACE
281 #endif // SDK_GL2D_SPRITES_INTERFACE_H_
Set of GL2D sprite entries, based on same texture fragment.
Definition: gl2d_sprites_interface.h:89
virtual void SDK_CALLTYPE Dump() const =0
Dumps given object.
virtual SDKResult SDK_CALLTYPE SetDefaultSpriteRotationFixedFlag(const bool &is_sprite_rotation_fixed)=0
Sets default sprite rotation fixed flag Given flag will be set for all of new sprite positions.
virtual SDKResult SDK_CALLTYPE ApplySpritePositionTransform(const SDKMatrix3X2 &sprite_transform)=0
Applies given sprite position transformation matrix to all of sprite positions in given sprite IGL2DS...
virtual bool SDK_CALLTYPE GetDefaultSpriteRotationFixedFlag() const =0
Returns current default sprite rotation fixed flag.
virtual IGL2DCanvasSP SDK_CALLTYPE GetParent() const =0
Returns parent canvas object.
virtual bool SDK_CALLTYPE GetSpriteRotationFixedFlag() const =0
Returns current sprite rotation fixed flag.
virtual SDKUInt32 SDK_CALLTYPE GetMemSize() const =0
Returns OpenGL memory size used for sprites (not including texture memory size) Statistics only - val...
virtual bool SDK_CALLTYPE GetDefaultSpriteSizeFixedFlag() const =0
Returns current default sprite size fixed flag.
virtual IGL2DSpritePosSP SDK_CALLTYPE AddPosition(const SDKString &id, const SDKPointF2D &position)=0
Adds new sprite position to given sprite id - Sprite position ID, if sprite position with given ID al...
virtual SDKResult SDK_CALLTYPE SetDefaultSpriteSizeFixedFlag(const bool &is_sprite_size_fixed)=0
Sets default sprite size fixed flag Given flag will be set for all of new sprite positions.
virtual SDKResult SDK_CALLTYPE SetSpriteRotationFixedFlag(const bool &is_sprite_rotation_fixed)=0
Sets sprite rotation fixed flag IGL2DSprites::StartEdit method should be called before calling this o...
virtual SDKPointF2D SDK_CALLTYPE GetPosition() const =0
Returns sprite position.
Auto starts sprites editing in ctor, finishes in dtor.
Definition: gl2d_sprites_interface.h:258
virtual SDKUInt32 SDK_CALLTYPE GetSpritesCount() const =0
Returns total number of sprites in collection.
virtual SDKResult SDK_CALLTYPE GetID(SDKString &id) const =0
Returns sprite ID.
#define SDK_SUCCEEDED(res)
Checks no error result.
Definition: sdk_results_enum.h:67
Object generic properties interface.
Single GL2D sprite position.
Definition: gl2d_sprites_interface.h:41
virtual IGL2DCanvasSP SDK_CALLTYPE GetCanvas() const =0
Returns parent canvas object.
virtual GL2DSpritesType SDK_CALLTYPE GetType() const =0
Returns sprites type.
virtual SDKMatrix3X2 SDK_CALLTYPE GetPositionTransform() const =0
Returns current sprite position transformation matrix.
virtual SDKResult SDK_CALLTYPE SetDefaultSpritePositionTransform(const SDKMatrix3X2 &sprite_transform)=0
Sets default sprite position transformation matrix Given matrix will be set for all of new sprite pos...
virtual SDKPointF2D SDK_CALLTYPE GetPivotPoint() const =0
Returns sprite pivot point.
virtual IGL2DTextureSP SDK_CALLTYPE GetTexture() const =0
Returns appropriate sprites host texture.
virtual SDKResult SDK_CALLTYPE ApplySpriteRotationFixedFlag(const bool &is_sprite_rotation_fixed)=0
Applies given sprite rotation fixed flag to all of sprite positions in given sprite IGL2DSprites::Sta...
SDKInt32 SDKResult
Type of all error or return codes which SDK functions can end with.
Definition: sdk_results.h:17
virtual SDKResult SDK_CALLTYPE FinishEdit()=0
Finishes previously started edit sprites collection operation.
virtual IGL2DSpritePosSP SDK_CALLTYPE GetPositionByIndex(const SDKUInt32 &index) const =0
Returns sprite position by it's index.
Set of GL2D sprites, based on same texture.
Definition: gl2d_sprites_interface.h:196
Single 2D point.
Definition: geometry_base_types.h:33
virtual IGL2DSpriteSP SDK_CALLTYPE AddSprite(const SDKString &id, const SDKRect2D &texture_rect, const SDKPointF2D &pivot_point)=0
Adds new sprite to sprites collection id - Sprite ID, if sprite with given ID already exist - it will...
GL2D Canvas to use to drawing NOTE! Create/Draw functionality was moved to appropriate GL2D Canvas Fu...
Definition: gl2d_canvas_interface.h:435
virtual SDKMatrix3X2 SDK_CALLTYPE GetDefaultSpritePositionTransform() const =0
Returns current default sprite position transformation matrix.
virtual SDKResult SDK_CALLTYPE SetPositionTransform(const SDKMatrix3X2 &position_transform)=0
Sets sprite position transformation matrix IGL2DSprites::StartEdit method should be called before cal...
virtual SDKResult SDK_CALLTYPE RemovePosition(const SDKString &id)=0
Removes sprite position from sprite by it's ID IGL2DSprites::StartEdit method should be called before...
virtual SDKResult SDK_CALLTYPE GetID(SDKString &id) const =0
Returns position ID.
virtual bool SDK_CALLTYPE GetSpriteSizeFixedFlag() const =0
Returns current sprite size fixed flag.
virtual IGL2DSpriteSP SDK_CALLTYPE GetSpriteByIndex(const SDKUInt32 &index) const =0
Returns sprite by it's index.
virtual IGL2DSpritePosSP SDK_CALLTYPE GetPositionByID(const SDKString &id) const =0
Returns sprite position by it's ID.
virtual SDKUInt32 SDK_CALLTYPE GetPositionsCount() const =0
Returns total number of sprite positions in sprite.
virtual SDKRect2D SDK_CALLTYPE GetTextureRect() const =0
Returns texture fragment rectangle to use as a sprite image.
virtual SDKResult SDK_CALLTYPE SetSpriteSizeFixedFlag(const bool &is_sprite_size_fixed)=0
Sets sprite size fixed flag IGL2DSprites::StartEdit method should be called before calling this one.
virtual SDKResult SDK_CALLTYPE ApplySpriteSizeFixedFlag(const bool &is_sprite_size_fixed)=0
Applies given sprite size fixed flag to all of sprite positions in given sprite IGL2DSprites::StartEd...
virtual SDKResult SDK_CALLTYPE RemoveSprite(const SDKString &id)=0
Removes sprite from collection by it's ID StartEdit method should be called before calling this one.
FWD_DECL_INTERFACE(ILWEParserWrapper)
Provides a wrapper around the message parser to get, add or remove the.
virtual void SDK_CALLTYPE Dump() const =0
Dumps given object.
virtual bool SDK_CALLTYPE IsEditing() const =0
Checks, if sprites collection edit operation in progress now.
virtual void SDK_CALLTYPE Dump() const =0
Dumps given object.
virtual IGL2DCanvasSP SDK_CALLTYPE GetCanvas() const =0
Returns parent canvas object.
virtual SDKUInt32 SDK_CALLTYPE GetSpritePositionsCount() const =0
Returns total number of sprites positions in given sprite object Statistics only - value refreshed af...
virtual SDKResult SDK_CALLTYPE StartEdit()=0
Starts sprite collection edit process, call for this method in case you want to change anything in gi...
virtual IGL2DSpriteSP SDK_CALLTYPE GetSpriteByID(const SDKString &id) const =0
Returns sprite by it's ID.