NAVTOR SDK  v.3.0
Software Development Kit for fast and efficient development of ECDIS, ECS and generic marine applications
scene_manager_interface.h File Reference

Describes all interfaces for controlling visualization. More...

#include <base/inc/base_types.h>
#include <base/inc/sdk_component_interface.h>
#include <base/inc/interfaces/properties/properties_interface.h>
#include <base/inc/interfaces/parameters/parameters_interface.h>
#include <base/inc/interfaces/enum/enum_interface.h>
#include <base/inc/geometry/geometry_base_types.h>
#include <geometry/inc/geometry/geometry.h>
#include <datalayer/inc/geodatabase/gdb_const.h>
#include <datalayer/inc/geodatabase/gdb_dataset.h>
#include <datalayer/inc/geodatabase/gdb_workspace.h>
#include <datalayer/inc/geodatabase/gdb_feature.h>
#include <visualizationlayer/inc/vis_const.h>
#include <visualizationlayer/inc/scene/scene_viewports_interface.h>
#include <visualizationlayer/inc/scene/layer_interface.h>
#include <visualizationlayer/inc/scene/renderer_interface.h>
#include <visualizationlayer/inc/scene/texture_interface.h>
#include "scene_manager_base_interface.h"
#include "scene_control_base_interface.h"
#include "scene_highlight_base_interface.h"
#include "scene_information_base_interface.h"
#include "data_source_view_interface.h"
#include "layers_manager_interface.h"

Go to the source code of this file.

Data Structures

class  ISceneManagerInitialParameters
 Initial settings to initialize SceneManager. Used to hide a platform dependent details. More...
 
class  ISceneManager
 Scene manager interface. More...
 
class  ISceneControl
 Provides access to the members that manage the scene, encapsulated in the scene manager. More...
 
class  ISceneControlCallback
 Scene manager callback interface. More...
 
class  IDatasetSelectionCallback
 Scene manager datasets selection callback interface. More...
 
class  ISelectedDatasetsList
 Datasets list interface used with IDatasetSelectionFilter. More...
 
class  ISceneInformation
 Information about prepared scene. More...
 
class  ISceneManagerTaskFactory
 Handles scene manager task creation. More...
 
class  ISceneManagerTask
 General task interface. More...
 
class  ILightSectorLegExpansionTask
 Light sector expand task. More...
 

Enumerations

enum  SceneManagerInitialParametersID {
  kSceneManagerInitialParameter_Name = kSceneManagerBaseInitialParameter_Name, kSceneManagerInitialParameter_Width = kSceneManagerBaseInitialParameter_SceneWidth, kSceneManagerInitialParameter_Height = kSceneManagerBaseInitialParameter_SceneHeight, kSceneManagerInitialParameter_Dpm = kSceneManagerBaseInitialParameter_ResolutionDPM,
  kSceneManagerInitialParameter_Flags = kSceneManagerBaseInitialParameter_Flags, kSceneManagerInitialParameter_LayerSetName = kSceneManagerBaseInitialParameter_LayerSetName, kSceneManagerInitialParameter_Hwnd, kSceneManagerInitialParameter_Display,
  kSceneManagerInitialParameter_Window, kSceneManagerInitialParameter_VisualInfo, kSceneManagerInitialParameter_UseTextureFiltering, kSceneManagerInitialParameter_TextureBufferingOn,
  kSceneManagerInitialParameter_EraseBackendBackground, kSceneManagerInitialParameter_BackendBackgroundColor, kSceneManagerInitialParameter_SelectDatasetsRectExpansionSize
}
 Initialization parameters for the SceneManager (used with ISceneManagerInitialParameters). More...
 
enum  SceneManagerFlags {
  kSceneManagerFlag_NoFlag = 0x0000, kSceneManagerFlag_OutputTechnologyType_Auto = 0x0001, kSceneManagerFlag_OutputTechnologyType_DirectX10 = 0x0002, kSceneManagerFlag_OutputTechnologyType_OpenGL = 0x0003,
  kSceneManagerFlag_OutputTechnologyType_Software = 0x0004, kSceneManagerFlag_OutputTechnologyType_DirectX9 = 0x0005, kSceneManagerFlag_OutputTechnologyType_DirectX11 = 0x0006, kSceneManagerFlag_OutputTechnologyType_AutoDirectX = 0x0007,
  kSceneManagerFlag_OutputType_Window = 0x0100, kSceneManagerFlag_OutputType_Texture = 0x0200, kSceneManagerFlag_MultiThreadedScene = 0x1000, kSceneManagerFlag_MultiThreadedRendering = 0x2000
}
 Scene manager properties. More...
 
enum  SceneManagerPropertyIDs {
  kSceneManagerPropertyID_Name = kSceneManagerBaseProperty_Name, kSceneManagerPropertyID_MinScale = kSceneManagerBaseProperty_MinScale, kSceneManagerPropertyID_MaxScale = kSceneManagerBaseProperty_MaxScale, kSceneManagerPropertyID_SceneWidth = kSceneManagerBaseProperty_SceneWidth,
  kSceneManagerPropertyID_SceneHeight = kSceneManagerBaseProperty_SceneHeight, kSceneManagerPropertyID_ResolutionDPM, kSceneManagerPropertyID_OutputTechnologyType, kSceneManagerPropertyID_MultiThreadedScene,
  kSceneManagerPropertyID_MultiThreadedRendering, kSceneManagerPropertyID_SendDisplayMatrix, kSceneManagerPropertyID_FollowVesselMode, kSceneManagerPropertyID_NoChartViewportRotate,
  kSceneManagerPropertyID_RichSceneLayersUpdated, kSceneManagerPropertyID_FixedScales, kSceneManagerPropertyID_UseFixedScales, kSceneManagerPropertyID_AdjustScaleMode,
  kSceneManagerPropertyID_GoogleMapsGlobMode, kSceneManagerPropertyID_OverviewMode, kSceneManagerPropertyID_RenderTechnologyType, kSceneManagerPropertyID_CloneMode,
  kSceneManagerPropertyID_UseSimpleAMLCoverages, kSceneManagerPropertyID_MakeBGForEmptyScene, kSceneManagerPropertyID_FixedVesselPositionMode, kSceneManagerPropertyID_VesselPositionX,
  kSceneManagerPropertyID_VesselPositionY, kSceneManagerPropertyID_LocalScaleLongitude, kSceneManagerPropertyID_LocalScaleLatitude, kSceneManagerPropertyID_User = 10000,
  kSceneManagerPropertyID_Internal = 100000
}
 Scene manager properties. More...
 
enum  AddDataSourceFlags { ,
  kAddDataSourceFlag_ChartDatabase = kDataSourceBaseFlag_ChartDatabase, kAddDataSourceFlag_WeatherDatabase = kDataSourceBaseFlag_WeatherDatabase, kAddDataSourceFlag_RoutesDatabase = kDataSourceBaseFlag_RoutesDatabase, kAddDataSourceFlag_ReplaceView = 0x00001000,
  kAddDataSourceFlag_NoCoverageFiltering = 0x00002000
}
 Add data-source flags. More...
 
enum  ResetSceneFlags { kResetSceneFlag_Datasources = 0x0001, kResetSceneFlag_SceneData = 0x0002, kResetSceneFlag_WaitFinished = 0x0100 }
 Reset scene flags. More...
 
enum  SceneManagerCloneMode { kSceneManagerCloneMode_Original = 0x0000, kSceneManagerCloneMode_SingleThreaded = 0x0001, kSceneManagerCloneMode_ForPrinting = 0x0002 }
 Scene manager clone modes. More...
 
enum  FixedVesselPositionMode { kFixedVesselPositionMode_Off = 0, kFixedVesselPositionMode_FixedPos, kFixedVesselPositionMode_FixedHdg, kFixedVesselPositionMode_FixedCog }
 Fixed vessel position modes. More...
 
enum  SceneHighlightParameters {
  kSceneHighlightParameters_Feature = kSceneHighlightParametersBase_Feature, kSceneHighlightParameters_Geometry = kSceneHighlightParametersBase_Geometry, kSceneHighlightParameters_FullFeatureID = kSceneHighlightParametersBase_FullFeatureID, kSceneHighlightParameters_DatasourceName = kSceneHighlightParametersBase_DatasourceName,
  kSceneHighlightParameters_DatasetName = kSceneHighlightParametersBase_DatasetName, kSceneHighlightParameters_DatasetID = kSceneHighlightParametersBase_DatasetID, kSceneHighlightParameters_FeatureOID = kSceneHighlightParametersBase_FeatureOID, kSceneHighlightParameters_PointIndex = kSceneHighlightParametersBase_PointIndex,
  kSceneHighlightParameters_PointSymbolType = kSceneHighlightParametersBase_PointSymbolType, kSceneGLHighlightParameters_Feature = sdk::vis::kSceneHighlightParametersBase_Feature, kSceneGLHighlightParameters_Geometry = sdk::vis::kSceneHighlightParametersBase_Geometry, kSceneGLHighlightParameters_FullFeatureID = sdk::vis::kSceneHighlightParametersBase_FullFeatureID,
  kSceneGLHighlightParameters_DatasourceName = sdk::vis::kSceneHighlightParametersBase_DatasourceName, kSceneGLHighlightParameters_DatasetName = sdk::vis::kSceneHighlightParametersBase_DatasetName, kSceneGLHighlightParameters_DatasetID = sdk::vis::kSceneHighlightParametersBase_DatasetID, kSceneGLHighlightParameters_FeatureOID = sdk::vis::kSceneHighlightParametersBase_FeatureOID,
  kSceneGLHighlightParameters_PointIndex = sdk::vis::kSceneHighlightParametersBase_PointIndex, kSceneGLHighlightParameters_PointSymbolType = sdk::vis::kSceneHighlightParametersBase_PointSymbolType, kSceneGLHighlightParameters_IsViewportData
}
 Scene highlight parameters. More...
 
enum  SceneHighlightPointSymbolType { kSceneHighlightPointSymbolType_Cross = kSceneHighlightPointSymbolTypeBase_Cross, kSceneHighlightPointSymbolType_Open = kSceneHighlightPointSymbolTypeBase_Open, kSceneHighlightPointSymbolType_Circle = kSceneHighlightPointSymbolTypeBase_Circle }
 Scene highlight point symbol types. More...
 
enum  SceneParameters {
  kSceneParameters_Lat = kSceneParametersBase_Lat, kSceneParameters_Lon = kSceneParametersBase_Lon, kSceneParameters_Scale = kSceneParametersBase_Scale, kSceneParameters_ReferencePosition_X,
  kSceneParameters_ReferencePosition_Y, kSceneParameters_ExternalSceneInfo
}
 
enum  UpdateSceneFlags {
  kUpdateSceneFlags_StartRendering = 0x0001, kUpdateSceneFlags_Display = 0x0002, kUpdateSceneFlags_RenderingAndDisplay = 0x0003, kUpdateSceneFlags_WaitRendering = 0x0100,
  kUpdateSceneFlags_RenderDeferred = 0x0200, kUpdateSceneFlags_ForceRender = 0x0400, kUpdateSceneFlags_ForceDisplay = 0x0800, kUpdateSceneFlags_DontUseFixedScales = 0x1000
}
 
enum  SceneInfoFlags { kSceneInfoFlags_NoFlags = 0x0000, kSceneInfoFlags_TakePicture = 0x0001 }
 
enum  SceneControlEventID {
  kSceneControlEvent_SceneLayersUpdated = 0, kSceneControlEvent_NewPortrayalsFound = 1, kSceneControlEvent_ChartRenderingStarted = 2, kSceneControlEvent_ChartRenderingFinished = 3,
  kSceneControlEvent_NothingToRender = 4, kSceneControlEvent_OnSceneTransform = 5, kSceneControlEvent_SceneUpdated = 6
}
 Generic scene manager event IDs. More...
 
enum  OnSceneTransformParameters { kOnSceneTransformParameter_Matrix = 0, kOnSceneTransformParameter_UpdateFlags = 1 }
 
enum  SceneLayersUpdatedParameters {
  kSceneLayersUpdatedParameter_Flags = 0, kSceneLayersUpdatedParameter_SceneInfo = 1, kSceneLayersUpdatedParameter_Names = 2, kSceneLayersUpdatedParameter_Build_Time = 3,
  kSceneLayersUpdatedParameter_Number = 4
}
 
enum  SceneLayersUpdatedFlags { , kSceneLayersUpdatedFlag_ChartReady = 0x0001 }
 
enum  PortrayalsFoundAnswers {
  kPortrayalsFoundAnswer_Skip = 1, kPortrayalsFoundAnswer_Install = 2, kPortrayalsFoundAnswer_InstallAndApply = 3, kPortrayalsFoundAnswer_SkipAll = 4,
  kPortrayalsFoundAnswer_InstallAll = 5, kPortrayalsFoundAnswer_InstallAndApplyAll = 6, kPortrayalsFoundAnswer_Skip = 1, kPortrayalsFoundAnswer_Install = 2,
  kPortrayalsFoundAnswer_InstallAndApply = 3, kPortrayalsFoundAnswer_SkipAll = 4, kPortrayalsFoundAnswer_InstallAll = 5, kPortrayalsFoundAnswer_InstallAndApplyAll = 6
}
 Possible answers to 'NewPortrayalsFound' scene control event. More...
 
enum  SelectDatasetsParameters {
  kSelectDatasetsParameter_Region, kSelectDatasetsParameter_Scale, kSelectDatasetsParameter_DataSourceViews, kSelectDatasetsParameter_PortrayalParameters,
  kSelectDatasetsParameter_UserCookie
}
 Parameters which can be read for each selected dataset. More...
 
enum  SelectedDatasetProperties {
  kSelectedDatasetProperty_DataSourceViewReference, kSelectedDatasetProperty_DataSourceViewID, kSelectedDatasetProperty_DatasetReference, kSelectedDatasetProperty_Priority,
  kSelectedDatasetProperty_DataSourceViewPriority, kSelectedDatasetProperty_InternalReference
}
 Properties of a selected dataset. More...
 
enum  SceneInformationProperties {
  kSceneInformationProperty_Scale = kSceneInfoBaseProperty_Scale, kSceneInformationProperty_SceneCenterLon = kSceneInfoBaseProperty_SceneCenterLon, kSceneInformationProperty_SceneCenterLat = kSceneInfoBaseProperty_SceneCenterLat, kSceneInformationProperty_RotationAngle = kSceneInfoBaseProperty_RotationAngle,
  kSceneInformationProperty_PortrayalParameters = kSceneInfoBaseProperty_PortrayalParameters, kSceneInformationProperty_AutoselectedDatasets = kSceneInfoBaseProperty_AutoselectedDatasets, kSceneInformationProperty_BackendWidth = kSceneInfoBaseProperty_SceneWidth, kSceneInformationProperty_BackendHeight = kSceneInfoBaseProperty_SceneHeight,
  kSceneInformationProperty_DateDependentDisplayed = kSceneInfoBaseProperty_DateDependentDisplayed, kSceneInformationProperty_HasWrongNewObj = kSceneInfoBaseProperty_HasWrongNewObj, kSceneInformationProperty_RealScaleAtCenter = kSceneInfoBaseProperty_RealScaleAtCenter, kSceneInformationProperty_Overlap = kSceneInfoBaseProperty_Overlap,
  kSceneInformationProperty_SceneArea = kSceneInfoBaseProperty_SceneArea, kSceneInformationProperty_SceneZone
}
 Scene information properties definition. More...
 
enum  UsedDataSourceViewProperties {
  kUsedDataSourceViewProperty_ID = kSceneInfoBaseDataSourceProperty_ID, kUsedDataSourceViewProperty_TypeName = kSceneInfoBaseDataSourceProperty_TypeName, kUsedDataSourceViewProperty_Flags = kSceneInfoBaseDataSourceProperty_Flags, kUsedDataSourceViewProperty_DatasetFilter = kSceneInfoBaseDataSourceProperty_DatasetFilter,
  kUsedDataSourceViewProperty_FeatureQueryFilter = kSceneInfoBaseDataSourceProperty_FeatureQueryFilter, kUsedDataSourceViewProperty_FeatureCallbackFilter = kSceneInfoBaseDataSourceProperty_FeatureCallbackFilter
}
 Used data source views properties definition. More...
 
enum  SceneInformationDatasetProperties {
  kSceneInformationDatasetProperty_WorkspaceID = kSceneInfoBaseDatasetProperty_WorkspaceID, kSceneInformationDatasetProperty_ID = kSceneInfoBaseDatasetProperty_ID, kSceneInformationDatasetProperty_Name = kSceneInfoBaseDatasetProperty_Name, kSceneInformationDatasetProperty_Component = kSceneInfoBaseDatasetProperty_Component,
  kSceneInformationDatasetProperty_UsedCoverage = kSceneInfoBaseDatasetProperty_UsedCoverage, kSceneInformationDatasetProperty_UsedCoverageArea = kSceneInfoBaseDatasetProperty_UsedCoverageArea, kSceneInformationDatasetProperty_SafetyContourDepth = kSceneInfoBaseDatasetProperty_SafetyContourDepth, kSceneInformationDatasetProperty_IsDrawnOverscaled = kSceneInfoBaseDatasetProperty_IsDrawnOverscaled
}
 Used dataset properties definition. More...
 
enum  TransformType {
  kTransformType_WinToViewport = kTransformTypeBase_WinToViewport, kTransformType_ViewportToWin = kTransformTypeBase_ViewportToWin, kTransformType_WinToScene = kTransformTypeBase_WinToScene, kTransformType_SceneToWin = kTransformTypeBase_SceneToWin,
  kTransformType_WinToGeo = kTransformTypeBase_WinToGeo, kTransformType_GeoToWin = kTransformTypeBase_GeoToWin, kTransformType_ViewportToGeo = kTransformTypeBase_ViewportToGeo, kTransformType_GeoToViewport = kTransformTypeBase_GeoToViewport
}
 Coordinates transformation types. More...
 
enum  SceneManagerTaskType { kSceneManagerTaskType_LightSectorLegExpansionTask }
 Coordinates transformation types. More...
 
enum  LightSectorLegExpansionTaskParam {
  kLightSectorLegExpansionTaskParam_Ownship_Lon, kLightSectorLegExpansionTaskParam_Ownship_Lat, kLightSectorLegExpansionTaskParam_Ownship_Course, kLightSectorLegExpansionTaskParam_Ownship_Heading,
  kLightSectorLegExpansionTaskParam_Ownship_A, kLightSectorLegExpansionTaskParam_Ownship_B, kLightSectorLegExpansionTaskParam_Ownship_C, kLightSectorLegExpansionTaskParam_Ownship_D,
  kLightSectorLegExpansionTaskParam_LightFilter, kLightSectorLegExpansionTaskParam_ActivationScale, kLightSectorLegExpansionTaskParam_DistanceToTheLight, kLightSectorLegExpansionTaskParam_DistanceToTheSectorLine,
  kLightSectorLegExpansionTaskParam_LightCharacterOn, kLightSectorLegExpansionTaskParam_SectorHighlightOn, kLightSectorLegExpansionTaskParam_SectorHighlightOpacity
}
 
More...
 

Variables

static const SDKUInt64 kAddDataSourceFlag_UserMask = 0xFFFFFFFF00000000
 Mask for the User's flags.
 
static const wchar_t * kDataSourceView_TypeName_Navigational = L"navigational"
 Indicates that data should be connected to the portrayal layer.
 

Detailed Description

Describes all interfaces for controlling visualization.

Copyright (c) 2011 The NAVTOR SDK. All Rights Reserved.

Author
The NAVTOR SDK authors.
Date
04/2012
Maintenance:
The NAVTOR SDK authors.

Enumeration Type Documentation

◆ SceneManagerInitialParametersID

Initialization parameters for the SceneManager (used with ISceneManagerInitialParameters).

Enumerator
kSceneManagerInitialParameter_Name 

Name of the scene manager.

kSceneManagerInitialParameter_Width 

Scene width.

kSceneManagerInitialParameter_Height 

Scene height.

kSceneManagerInitialParameter_Dpm 

DPM.

kSceneManagerInitialParameter_Flags 

Flags.

kSceneManagerInitialParameter_LayerSetName 

Optional, overwrite default layer-set.

kSceneManagerInitialParameter_Hwnd 

OS specific HWND.

kSceneManagerInitialParameter_Display 

OS specific Display.

kSceneManagerInitialParameter_Window 

OS specific Window.

kSceneManagerInitialParameter_VisualInfo 

OS specific Visual info.

kSceneManagerInitialParameter_UseTextureFiltering 

Smooth image rotated through viewport.

kSceneManagerInitialParameter_TextureBufferingOn 

Adds internal texture buffer in OutputType_Window case.

kSceneManagerInitialParameter_EraseBackendBackground 

Erases backend background with background color.

kSceneManagerInitialParameter_BackendBackgroundColor 

Background color.

kSceneManagerInitialParameter_SelectDatasetsRectExpansionSize 

Expands select-cover area by this value (in mm).

◆ SceneManagerFlags

Scene manager properties.

Enumerator
kSceneManagerFlag_NoFlag 

No flag.

kSceneManagerFlag_OutputTechnologyType_Auto 

Select the output technology type automatically.

kSceneManagerFlag_OutputTechnologyType_DirectX10 

Use DirectX10.

kSceneManagerFlag_OutputTechnologyType_OpenGL 

Use OpenGL.

kSceneManagerFlag_OutputTechnologyType_Software 

Use Software (Raster) rendering.

kSceneManagerFlag_OutputTechnologyType_DirectX9 

Use DirectX9.

kSceneManagerFlag_OutputTechnologyType_DirectX11 

Use DirectX11.

kSceneManagerFlag_OutputTechnologyType_AutoDirectX 

Select DirectX11/9/Software automatically.

kSceneManagerFlag_OutputType_Window 

Redirect rendering output to the windows.

kSceneManagerFlag_OutputType_Texture 

Redirect rendering output to the texture.

kSceneManagerFlag_MultiThreadedScene 

Use multi-threaded rendering only inside the scene.

kSceneManagerFlag_MultiThreadedRendering 

Use working threads inside the scene and in the scene manager.

◆ SceneManagerPropertyIDs

Scene manager properties.

Enumerator
kSceneManagerPropertyID_Name 

Name of the scene manager.

kSceneManagerPropertyID_MinScale 

Smallest scale limit. Default 300'000'000.

kSceneManagerPropertyID_MaxScale 

Largest scale limit. Default 10.

kSceneManagerPropertyID_SceneWidth 

Width of the scene in pixels.

kSceneManagerPropertyID_SceneHeight 

Height of the scene in pixels.

kSceneManagerPropertyID_ResolutionDPM 

Projection and output resolution in DPM (dots per meter).

kSceneManagerPropertyID_OutputTechnologyType 

One of SceneManagerFlag_OutputTechnologyType_* values. Read-only.

kSceneManagerPropertyID_MultiThreadedScene 

Multi-threaded rendering for the scene is used. Read-only.

kSceneManagerPropertyID_MultiThreadedRendering 

Multi-threaded rendering for the scene and the manager is used. Read-only.

kSceneManagerPropertyID_SendDisplayMatrix 

Switches on/off sending of final image display matrix.

kSceneManagerPropertyID_FollowVesselMode 

Switch on mode, in which projection set at geo-position of the rotate/scale pivot and pivot is specified in viewport translate.

kSceneManagerPropertyID_NoChartViewportRotate 

Do not rotate chart with viewport (works in follow-vessel mode only).

kSceneManagerPropertyID_RichSceneLayersUpdated 

Sends Names, Build_Time parameters in SceneLayersUpdated event.

kSceneManagerPropertyID_FixedScales 

Set list of fixed scales to limit possible chart scale values.

kSceneManagerPropertyID_UseFixedScales 

When set only scales from list set through kSceneManagerPropertyID_FixedScales are used.

kSceneManagerPropertyID_AdjustScaleMode 

Switch on mode, in which real projection scale is adjusted to make visible scale closer to the scene-parameters scale (Mercator grows to the poles).

kSceneManagerPropertyID_GoogleMapsGlobMode 

Tells if chart scaling and positioning at small scales should be like in Google Maps.

kSceneManagerPropertyID_OverviewMode 

Tells if overview mode can be used or not.

kSceneManagerPropertyID_RenderTechnologyType 

One of SceneManagerFlag_OutputTechnologyType_* values. Read-only.

kSceneManagerPropertyID_CloneMode 

Allows to adjust scene manager clone behavior (enum SceneManagerCloneMode).

kSceneManagerPropertyID_UseSimpleAMLCoverages 

Switches on/off using of coverage envelopes instead of coverages for AML datasets.

kSceneManagerPropertyID_MakeBGForEmptyScene 

If scene is empty, prepare background when 'scene info with picture' is asked. By default is true.

kSceneManagerPropertyID_FixedVesselPositionMode 

Switch on mode, in which an vessel position fixed on the display. See FixedVesselPositionMode enum.

kSceneManagerPropertyID_VesselPositionX 

Vessel position X (viewport coordinates).

kSceneManagerPropertyID_VesselPositionY 

Vessel position Y (viewport coordinates).

kSceneManagerPropertyID_LocalScaleLongitude 

Specifies the longitude which should be used when kPP_UseLocalScaleForChartsSelection_SceneProperty is set.

kSceneManagerPropertyID_LocalScaleLatitude 

Specifies the latitude which should be used when kPP_UseLocalScaleForChartsSelection_SceneProperty is set.

kSceneManagerPropertyID_User 

Offset for user properties which SceneManager may contain.

kSceneManagerPropertyID_Internal 

Offset for internal properties which SceneManager may contain.

◆ AddDataSourceFlags

Add data-source flags.

Enumerator
kAddDataSourceFlag_ChartDatabase 

Chart database indicator.

kAddDataSourceFlag_WeatherDatabase 

Weather database indicator.

kAddDataSourceFlag_RoutesDatabase 

Routes database indicator.

kAddDataSourceFlag_ReplaceView 

Deletes all other views of this data-source.

kAddDataSourceFlag_NoCoverageFiltering 

Do not filter objects by data source coverage.

◆ ResetSceneFlags

Reset scene flags.

Enumerator
kResetSceneFlag_Datasources 

Removes all data-source views.

kResetSceneFlag_SceneData 

Clears all display lists, scene-info.

kResetSceneFlag_WaitFinished 

Wait till reset is finished.

◆ SceneManagerCloneMode

Scene manager clone modes.

Enumerator
kSceneManagerCloneMode_Original 

Clone is almost the same as original scene manager.

kSceneManagerCloneMode_SingleThreaded 

Make single threaded clone (default).

kSceneManagerCloneMode_ForPrinting 

Simplified clone intended for printing the scene.

◆ FixedVesselPositionMode

Fixed vessel position modes.

Enumerator
kFixedVesselPositionMode_Off 

Disabled.

kFixedVesselPositionMode_FixedPos 

Fix only position.

kFixedVesselPositionMode_FixedHdg 

Fix position and heading.

kFixedVesselPositionMode_FixedCog 

Fix position and COG.

◆ SceneHighlightParameters

Scene highlight parameters.

Enumerator
kSceneHighlightParameters_Feature 

A feature to highlight.

kSceneHighlightParameters_Geometry 

A geometry to highlight.

kSceneHighlightParameters_FullFeatureID 

ObjectID of target feature.

kSceneHighlightParameters_DatasourceName 

Name of the data source containing target feature.

kSceneHighlightParameters_DatasetName 

Name of the dataset containing target feature.

kSceneHighlightParameters_DatasetID 

ID of the dataset containing target feature.

kSceneHighlightParameters_FeatureOID 

Target feature OID.

kSceneHighlightParameters_PointIndex 

Index of specific point of the Multipoint or Grid feature.

kSceneHighlightParameters_PointSymbolType 

Point symbol type (see SceneGLHighlightPointSymbolType)

kSceneGLHighlightParameters_Feature 

A feature to highlight.

kSceneGLHighlightParameters_Geometry 

A geometry to highlight.

kSceneGLHighlightParameters_FullFeatureID 

ObjectID of target feature.

kSceneGLHighlightParameters_DatasourceName 

Name of the data source containing target feature.

kSceneGLHighlightParameters_DatasetName 

Name of the dataset containing target feature.

kSceneGLHighlightParameters_DatasetID 

ID of the dataset containing target feature.

kSceneGLHighlightParameters_FeatureOID 

Target feature OID.

kSceneGLHighlightParameters_PointIndex 

Index of specific point of the Multipoint or Grid feature.

kSceneGLHighlightParameters_PointSymbolType 

Point symbol type (see SceneGLHighlightPointSymbolType)

kSceneGLHighlightParameters_IsViewportData 

Maybe used together with 'Geometry' param, tells that geometry is projected to the viewport.

◆ SceneHighlightPointSymbolType

Scene highlight point symbol types.

Enumerator
kSceneHighlightPointSymbolType_Cross 

Full cross.

kSceneHighlightPointSymbolType_Open 

Cross with empty center.

kSceneHighlightPointSymbolType_Circle 

Cross with circle in the center.

◆ SceneParameters

Enumerator
kSceneParameters_Lat 

Latitude of scene center.

kSceneParameters_Lon 

Longitude of scene center.

kSceneParameters_Scale 

Scene scale.

kSceneParameters_ReferencePosition_X 

Scene viewport reference position x.

kSceneParameters_ReferencePosition_Y 

Scene viewport reference position y.

kSceneParameters_ExternalSceneInfo 

Should be set when main scene is prepared outside.

◆ UpdateSceneFlags

Enumerator
kUpdateSceneFlags_StartRendering 

Start rendering of the new scene and do not display current scene.

kUpdateSceneFlags_Display 

Do not start rendering with new parameters, just display.

kUpdateSceneFlags_RenderingAndDisplay 

Start rendering of the new scene and display current scene.

kUpdateSceneFlags_WaitRendering 

Wait till rendering is finished.

kUpdateSceneFlags_RenderDeferred 

Render all layers including deferred layers.

kUpdateSceneFlags_ForceRender 

Force re-rendering of the scene.

kUpdateSceneFlags_ForceDisplay 

Force displaying of the scene (when OnSceneTransform event result tells not to).

kUpdateSceneFlags_DontUseFixedScales 

Suppress using of fixed scales (if their usage is switched on).

◆ SceneInfoFlags

Enumerator
kSceneInfoFlags_NoFlags 

Return scene-info w/o picture.

kSceneInfoFlags_TakePicture 

Takes screen-shot from scene and put it into scene-info.

◆ SceneControlEventID

Generic scene manager event IDs.

Enumerator
kSceneControlEvent_SceneLayersUpdated 

Tells that some scene layer(s) is(are) rendered and ready for displaying.

kSceneControlEvent_NewPortrayalsFound 

New portrayals found during data-source view creation procedure.

kSceneControlEvent_ChartRenderingStarted 

Tells that chart rendering is started.

kSceneControlEvent_ChartRenderingFinished 

Tells that chart rendering is finished.

kSceneControlEvent_NothingToRender 

Tells that last call to UpdateScene does not lead to rendering.

kSceneControlEvent_OnSceneTransform 

Gives possibility to manage scene transformation in the application (not finished).

kSceneControlEvent_SceneUpdated 

Tells that scene needs displaying.

◆ OnSceneTransformParameters

Enumerator
kOnSceneTransformParameter_Matrix 

Matrix transformation which will be applied to the scene.

kOnSceneTransformParameter_UpdateFlags 

Flags specified in UpdateScene call.

◆ SceneLayersUpdatedParameters

Enumerator
kSceneLayersUpdatedParameter_Flags 

See SceneLayersUpdatedFlags.

kSceneLayersUpdatedParameter_SceneInfo 

Description of rendered scene.

kSceneLayersUpdatedParameter_Names 

Name of the finished layers.

kSceneLayersUpdatedParameter_Build_Time 

Time spent on layers building.

kSceneLayersUpdatedParameter_Number 

Number of rendering cycle.

◆ SceneLayersUpdatedFlags

Enumerator
kSceneLayersUpdatedFlag_ChartReady 

Tells that chart rendering is ready.

◆ PortrayalsFoundAnswers

Possible answers to 'NewPortrayalsFound' scene control event.

Enumerator
kPortrayalsFoundAnswer_Skip 

Do not install new portrayal.

kPortrayalsFoundAnswer_Install 

Install new portrayal. Do not use them.

kPortrayalsFoundAnswer_InstallAndApply 

Install new portrayal and switch to it.

kPortrayalsFoundAnswer_SkipAll 

Do not install new portrayals.

kPortrayalsFoundAnswer_InstallAll 

Install new portrayals. Do not use them.

kPortrayalsFoundAnswer_InstallAndApplyAll 

Install new portrayals and switch to them.

kPortrayalsFoundAnswer_Skip 

Do not install new portrayal.

kPortrayalsFoundAnswer_Install 

Install new portrayal. Do not use them.

kPortrayalsFoundAnswer_InstallAndApply 

Install new portrayal and switch to it.

kPortrayalsFoundAnswer_SkipAll 

Do not install new portrayals.

kPortrayalsFoundAnswer_InstallAll 

Install new portrayals. Do not use them.

kPortrayalsFoundAnswer_InstallAndApplyAll 

Install new portrayals and switch to them.

◆ SelectDatasetsParameters

Parameters which can be read for each selected dataset.

Enumerator
kSelectDatasetsParameter_Region 

Region for datasets selection.

kSelectDatasetsParameter_Scale 

Current selection scale.

kSelectDatasetsParameter_DataSourceViews 

Current list of data-source-views.

kSelectDatasetsParameter_PortrayalParameters 

Current portrayal parameter.

kSelectDatasetsParameter_UserCookie 

Cookie value specified StartRendering call (in GL engine only)

◆ SelectedDatasetProperties

Properties of a selected dataset.

Enumerator
kSelectedDatasetProperty_DataSourceViewReference 

Returns IDataSourceView if possible.

kSelectedDatasetProperty_DataSourceViewID 

DataSourceViewID.

kSelectedDatasetProperty_DatasetReference 

Reference to gdb::IDataset.

kSelectedDatasetProperty_Priority 

Sort criteria.

kSelectedDatasetProperty_DataSourceViewPriority 

DataSourceView priority.

kSelectedDatasetProperty_InternalReference 

For internal use.

◆ SceneInformationProperties

Scene information properties definition.

Enumerator
kSceneInformationProperty_Scale 

Used data scale.

kSceneInformationProperty_SceneCenterLon 

Longitude of scene center.

kSceneInformationProperty_SceneCenterLat 

Latitude of scene center.

kSceneInformationProperty_RotationAngle 

Scene rotation angle (in degrees)

kSceneInformationProperty_PortrayalParameters 

Used portrayal parameters.

kSceneInformationProperty_AutoselectedDatasets 

List of the datasets selected before removing those which does not cover scene.

kSceneInformationProperty_BackendWidth 

Width of the scene backend.

kSceneInformationProperty_BackendHeight 

Height of the scene backend.

kSceneInformationProperty_DateDependentDisplayed 

True if scene has objects which are not hidden but would be hidden if using of periodic attributes was switched on.

kSceneInformationProperty_HasWrongNewObj 

True if scene has newobj objects with wrong simins instruction(s).

kSceneInformationProperty_RealScaleAtCenter 

Real data scale at scene central point.

kSceneInformationProperty_Overlap 

True if during selection datasets with same navigational purpose overlapped.

kSceneInformationProperty_SceneArea 

Area of the scene (in scene projection pixels).

kSceneInformationProperty_SceneZone 

Part of the screen covered by scene (sdk::geometry::IGeometry, a rectangular surface, bigger than screen when scene is rotated, in scene pixels)

◆ UsedDataSourceViewProperties

Used data source views properties definition.

Enumerator
kUsedDataSourceViewProperty_ID 

Data source identifier.

kUsedDataSourceViewProperty_TypeName 

Name of the source type.

kUsedDataSourceViewProperty_Flags 

Data source flags.

kUsedDataSourceViewProperty_DatasetFilter 

Reference to the dataset filter.

kUsedDataSourceViewProperty_FeatureQueryFilter 

Reference to the feature query filter.

kUsedDataSourceViewProperty_FeatureCallbackFilter 

Reference to the feature callback filter.

◆ SceneInformationDatasetProperties

Used dataset properties definition.

Enumerator
kSceneInformationDatasetProperty_WorkspaceID 

Dataset workspace identifier.

kSceneInformationDatasetProperty_ID 

Dataset identifier.

kSceneInformationDatasetProperty_Name 

Name of the dataset.

kSceneInformationDatasetProperty_Component 

Reference to the dataset component.

kSceneInformationDatasetProperty_UsedCoverage 

Part of the dataset coverage used, IGeometry.

kSceneInformationDatasetProperty_UsedCoverageArea 

Area of the used dataset coverage (in scene projection pixels).

kSceneInformationDatasetProperty_SafetyContourDepth 

Set of safety contour values.

kSceneInformationDatasetProperty_IsDrawnOverscaled 

True if dataset is marked as over-scaled.

◆ TransformType

Coordinates transformation types.

Enumerator
kTransformType_WinToViewport 

Converts window coordinate to viewport coordinate system.

kTransformType_ViewportToWin 

Converts viewport coordinate to window coordinate system.

kTransformType_WinToScene 

Converts window coordinate to scene coordinate system.

kTransformType_SceneToWin 

Converts scene coordinate to window coordinate system.

kTransformType_WinToGeo 

Converts window coordinate to geographic coordinate system.

kTransformType_GeoToWin 

Converts geographic coordinate to window coordinate system.

kTransformType_ViewportToGeo 

Converts viewport coordinate to geographic coordinate system.

kTransformType_GeoToViewport 

Converts geographic coordinate to viewport coordinate system.

◆ SceneManagerTaskType

Coordinates transformation types.

Enumerator
kSceneManagerTaskType_LightSectorLegExpansionTask 

Light sector leg expansion task.

◆ LightSectorLegExpansionTaskParam


Enumerator
kLightSectorLegExpansionTaskParam_Ownship_Lon 

Ownship position.

kLightSectorLegExpansionTaskParam_Ownship_Lat 

Ownship position.

kLightSectorLegExpansionTaskParam_Ownship_Course 

Ownship course.

kLightSectorLegExpansionTaskParam_Ownship_Heading 

Ownship heading.

kLightSectorLegExpansionTaskParam_Ownship_A 

Ownship body A.

kLightSectorLegExpansionTaskParam_Ownship_B 

Ownship body B.

kLightSectorLegExpansionTaskParam_Ownship_C 

Ownship body C.

kLightSectorLegExpansionTaskParam_Ownship_D 

Ownship body D.

kLightSectorLegExpansionTaskParam_LightFilter 

List of lights OIDs which should be expanded.

kLightSectorLegExpansionTaskParam_ActivationScale 

Minimal chart display scale when sector expansion starts.

kLightSectorLegExpansionTaskParam_DistanceToTheLight 

Maximal distance to the lights which will be analyzed.

kLightSectorLegExpansionTaskParam_DistanceToTheSectorLine 

Distance to the light sector line to start highlighting.

kLightSectorLegExpansionTaskParam_LightCharacterOn 

Tells that light character (flashing circle) should be displayed.

kLightSectorLegExpansionTaskParam_SectorHighlightOn 

Tells that the whole sectors area should be highlighted, not only legs.

kLightSectorLegExpansionTaskParam_SectorHighlightOpacity 

Opacity of the sectors highlighting.