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

This file contains description of the SENC builder component interfaces. The SENC builder component is intended to build and update a SENC database. More...

Go to the source code of this file.

Data Structures

class  ISENCBuilder
 The SENC builder component is intended to build and update a SENC database from the S57/S-63 data. The SENC builder component implements the IConnectionPointContainer for the outgoing interface ISENCBuilderCallback Defined in datalayer/inc/senc_builder/senc_builder_interface.h. More...
 
class  ISENCBuilderCallback
 The SENC Builder callback interface. This interface is used to get the SENC builder processing reports. Defined in datalayer/inc/senc_builder/senc_builder_interface.h. More...
 
class  ISENCBuildReport
 The SENC build operation report interface. This interface is used to get the SENC builder report after build SENC operation is completed Defined in datalayer/inc/senc_builder/senc_builder_interface.h. More...
 
class  ISENCBuilderUserEvents
 The SENC Builder user event callback interface. This interface is used to get the SENC builder user events. Defined in datalayer/inc/senc_builder/senc_builder_interface.h. More...
 
class  IENCInfo
 The source ENC database info This interface is used to get information about source ENC database Defined in datalayer/inc/senc_builder/senc_builder_interface.h. More...
 

Enumerations

enum  SENCBuilderPropertyIDs {
  kSENCBuilderPropertyID_SencConverterToolName = 0, kSENCBuilderPropertyID_SencConverterToolPath = 1, kSENCBuilderPropertyID_MakeSencToolName = 2, kSENCBuilderPropertyID_MakeSencToolPath = 3,
  kSENCBuilderPropertyID_TempFolderPath = 4, kSENCBuilderPropertyID_CatalogFileName = 5, kSENCBuilderPropertyID_CheckSENCCellsCRCForNavStick = 6, kSENCBuilderPropertyID_DetermineIHOCertificateByPublicKey = 7,
  kSENCBuilderPropertyID_SENCFragmentationThreshold = 8 , kSENCBuilderPropertyID_CheckFilesSignature = 10, kSENCBuilderPropertyID_UseLowerPriorityForExecutables = 11, kSENCBuilderPropertyID_BuildSencCellsList = 12,
  kSENCBuilderPropertyID_DontPackProductsTxtIntoSenc = 13, kSENCBuilderPropertyID_DontPackSerialEncIntoSenc = 14, kSENCBuilderPropertyID_S01FolderName = 15, kSENCBuilderPropertyID_OverrideSdkConfigParamsForSencConverter = 50,
  kSENCBuilderPropertyID_OverrideSdkConfigParamsForMakeSenc = 51, kSENCBuilderPropertyID_SencConverterDictionaryPath = 100, kSENCBuilderPropertyID_SencConverterDictionaryProfile = 101, kSENCBuilderPropertyID_SencConverterUnknownFeatureWarning = 102,
  kSENCBuilderPropertyID_SencConverterUnknownAttributeWarning = 103, kSENCBuilderPropertyID_SencConverterProhibitedAttributeWarning = 104, kSENCBuilderPropertyID_SencConverterEncryptSENC = 105, kSENCBuilderPropertyID_SencConverterCoverageOff = 106,
  kSENCBuilderPropertyID_SencConverterHazardsOff = 107, kSENCBuilderPropertyID_SencConverterBackRefsOn = 108, kSENCBuilderPropertyID_SencConverterNoPrintObjectNames = 109, kSENCBuilderPropertyID_MakeSencFeatureCatalog = 200,
  kSENCBuilderPropertyID_MakeSencPortrayalCatalog = 201, kSENCBuilderPropertyID_MakeSencBlobMaxSize = 202, kSENCBuilderPropertyID_MakeSencUseDisplayScaleTable = 203
}
 Generic SENC builder properties. Defined in datalayer/inc/senc_builder/senc_builder_interface.h. More...
 
enum  FindENCFlags { kFindENCFlag_NoFlags = 0x0, kFindENCFlag_AIODatabase = 0x1, kFindENCFlag_NavStick = 0x2, kFindENCFlag_ClosingCorrection = 0x4 }
 Returns flags for details of FindENC call result. Defined in datalayer/inc/senc_builder/senc_builder_interface.h. More...
 
enum  FindNavStickFlags { kFindNavStickFlag_NoDataPresent = 0x0, kFindNavStickFlag_ENCPresent = 0x1, kFindNavStickFlag_AIOPresent = 0x2, kFindNavStickFlag_SENCPresent = 0x4 }
 Returns flags for details of FindNavStick call result. Defined in datalayer/inc/senc_builder/senc_builder_interface.h. More...
 
enum  FindAMLFlags { kFindAMLFlag_NoDataPresent = 0x0, kFindAMLFlag_AmlV2 = 0x1, kFindAMLFlag_AmlV3 = 0x2 }
 Returns flags for details of FindAML call result. Defined in datalayer/inc/senc_builder/senc_builder_interface.h. More...
 
enum  SENCBuilderStage {
  kSENCBuilderStage_ReadingSourceENCDatabaseCatalog = 0, kSENCBuilderStage_ProcessingSourceENCDatabaseCatalog = 1, kSENCBuilderStage_ProcessingNavStickDatabase = 2, kSENCBuilderStage_ProcessingSourceENCDatabase = 3,
  kSENCBuilderStage_ProcessingOldSENCDatabase = 4, kSENCBuilderStage_FormingUpdateSENCActions = 5, kSENCBuilderStage_ReadingInternalENCDatabaseCatalog = 6, kSENCBuilderStage_ProcessingInternalENCDatabaseCatalog = 7,
  kSENCBuilderStage_UpdatingInternalENCDatabase = 8, kSENCBuilderStage_UpdatingInternalENCDatabaseCatalog = 9, kSENCBuilderStage_StoreInternalENCDatabaseCatalog = 10, kSENCBuilderStage_UpdatingUpdateSENCActions = 11,
  kSENCBuilderStage_CreateTemporaryENCCatalog = 12, kSENCBuilderStage_StoreTemporaryENCCatalog = 13, kSENCBuilderStage_CreateTemporaryPermits = 14, kSENCBuilderStage_StoreTemporaryPermits = 15,
  kSENCBuilderStage_CreateMakeSENCDeleteList = 16, kSENCBuilderStage_StoreMakeSENCDeleteList = 17, kSENCBuilderStage_RunningConverterTool = 18, kSENCBuilderStage_RunningMakeSencTool = 19,
  kSENCBuilderStage_FormingCellsListToDelete = 20, kSENCBuilderStage_FormingUpdatesListToDelete = 21, kSENCBuilderStage_StoreSENCCellsCRCList = 22, kSENCBuilderStage_CopySENC = 23,
  kSENCBuilderStage_ReadingSourceAIODatabaseCatalog = 24, kSENCBuilderStage_ProcessingSourceAIODatabaseCatalog = 25, kSENCBuilderStage_UpdatingProductsTxtData = 26, kSENCBuilderStage_CheckingDestinationSENCDatabase = 27
}
 Set of available SENC builder progress stages Defined in datalayer/inc/senc_builder/senc_builder_interface.h. More...
 
enum  SENCBuilderUserEventTypes { kSENCBuilderUserEventType_RebuildSENC = 0 }
 Set of available SENC builder user events Defined in datalayer/inc/senc_builder/senc_builder_interface.h. More...
 
enum  SENCBuilderUserEventActions { kSENCBuilderUserEventAction_AllowAction = 0, kSENCBuilderUserEventAction_DeclineAction = 1, kSENCBuilderUserEventAction_AbortOperation = 2 }
 Set of available SENC builder user event actions Defined in datalayer/inc/senc_builder/senc_builder_interface.h. More...
 
enum  MediaType {
  kMediaType_Unknown = 0, kMediaType_NavStick = 1, kMediaType_ENCMedia = 2, kMediaType_LargeMedia = 3,
  kMediaType_AMLV2Media = 4, kMediaType_AMLV3Media = 5, kMediaType_SENCMedia = 6
}
 Set of possible ENC media types Defined in datalayer/inc/senc_builder/senc_builder_interface.h. More...
 
enum  EncryptionType { kEncryptionType_Unknown = 0, kEncryptionType_NotEncrypted = 1, kEncryptionType_ENCEncryption = 2 }
 Set of possible encryption types Defined in datalayer/inc/senc_builder/senc_builder_interface.h. More...
 
enum  ENCDataType {
  kENCDataType_Unknown = 0x00, kENCDataType_ENC = 0x01, kENCDataType_AIO = 0x02, kENCDataType_SENC = 0x04,
  kENCDataType_AML_V2 = 0x08, kENCDataType_AML_V3 = 0x10, kENCDataType_ENC_AIO = kENCDataType_ENC | kENCDataType_AIO, kENCDataType_ENC_SENC = kENCDataType_ENC | kENCDataType_SENC,
  kENCDataType_AIO_SENC = kENCDataType_AIO | kENCDataType_SENC, kENCDataType_ENC_AIO_SENC = kENCDataType_ENC | kENCDataType_AIO | kENCDataType_SENC
}
 Set of possible data types on given ENC media Defined in datalayer/inc/senc_builder/senc_builder_interface.h. More...
 
enum  CDType { kCDType_Unknown = 0, kCDType_Base = 1, kCDType_Update = 2 }
 Set of possible CD types Defined in datalayer/inc/senc_builder/senc_builder_interface.h. More...
 

Variables

static const wchar_t kSACertificateFileExtension [] = L".CRT"
 The SA certificate file extension.
 
static const wchar_t kSAPublicKeyFileExtension [] = L".PUB"
 The SA public key file extension.
 
static const wchar_t kIHOCertificateFileName [] = L"IHO.CRT"
 The official IHO SA certificate file name.
 
static const wchar_t kIHOPublicKeyFileName [] = L"IHO.PUB"
 The official IHO SA public key file name.
 
static const wchar_t *const kENCDatabaseOnNavStickPath = navstick::kENCRootPath
 Path to the ENC on the NavStick.
 
static const wchar_t *const kAIODatabaseOnNavStickPath = L"INFO/AIO/ENC_ROOT"
 Path to AIO database on NavStick.
 
static const wchar_t *const kSENCDatabaseOnNavStickPath = L"INFO/SENC"
 Path to SENC database on NavStick.
 
static const SDKUInt8 kIHOPublicKeyPData []
 IHO DSA public key.
 
static const SDKUInt8 kPRIMARPublicKeyPData []
 PRIMAR DSA public key.
 
static const wchar_t kSACertificateFileExtension [] = L".CRT"
 The SA certificate file extension.
 
static const wchar_t kSAPublicKeyFileExtension [] = L".PUB"
 The SA public key file extension.
 
static const wchar_t kIHOCertificateFileName [] = L"IHO.CRT"
 The official IHO SA certificate file name.
 
static const wchar_t kIHOPublicKeyFileName [] = L"IHO.PUB"
 The official IHO SA public key file name.
 
static const wchar_t *const kENCDatabaseOnNavStickPath = navstick::kENCRootPath
 Path to the ENC on the NavStick.
 
static const wchar_t *const kAIODatabaseOnNavStickPath = L"INFO/AIO/ENC_ROOT"
 Path to AIO database on NavStick.
 
static const wchar_t *const kSENCDatabaseOnNavStickPath = L"INFO/SENC"
 Path to SENC database on NavStick.
 
static const SDKUInt8 kIHOPublicKeyPData []
 IHO DSA public key.
 
static const SDKUInt8 kPRIMARPublicKeyPData []
 PRIMAR DSA public key.
 

Detailed Description

This file contains description of the SENC builder component interfaces. The SENC builder component is intended to build and update a SENC database.

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

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

Enumeration Type Documentation

◆ MediaType

enum MediaType

Set of possible ENC media types Defined in datalayer/inc/senc_builder/senc_builder_interface.h.

Enumerator
kMediaType_Unknown 

Unknown ENC media type.

kMediaType_NavStick 

NavStick.

kMediaType_ENCMedia 

Ordinary ENC database media.

kMediaType_LargeMedia 

ENC large media.

kMediaType_AMLV2Media 

AML V2 media.

kMediaType_AMLV3Media 

AML V3 media.

kMediaType_SENCMedia 

Pre-built SENC database media (folder with root.cat)

◆ EncryptionType

enum EncryptionType

Set of possible encryption types Defined in datalayer/inc/senc_builder/senc_builder_interface.h.

Enumerator
kEncryptionType_Unknown 

Unknown encryption type.

kEncryptionType_NotEncrypted 

No encryption in use.

kEncryptionType_ENCEncryption 

Default ENC encryption in use.

◆ ENCDataType

enum ENCDataType

Set of possible data types on given ENC media Defined in datalayer/inc/senc_builder/senc_builder_interface.h.

Enumerator
kENCDataType_Unknown 

Unknown data type.

kENCDataType_ENC 

Ordinary ENC database.

kENCDataType_AIO 

AIO database.

kENCDataType_SENC 

SENC database.

kENCDataType_AML_V2 

AML V2 database.

kENCDataType_AML_V3 

AML V3 database.

kENCDataType_ENC_AIO 

ENC + AIO.

kENCDataType_ENC_SENC 

ENC + SENC.

kENCDataType_AIO_SENC 

AIO + SENC

kENCDataType_ENC_AIO_SENC 

ENC + AIO + SENC.

◆ CDType

enum CDType

Set of possible CD types Defined in datalayer/inc/senc_builder/senc_builder_interface.h.

Enumerator
kCDType_Unknown 

Unknown CD type.

kCDType_Base 

Base CD.

kCDType_Update 

Update CD.