 |
NAVTOR SDK
v.3.0
Software Development Kit for fast and efficient development of ECDIS, ECS and generic marine applications
|
|
11 #ifndef SDK_S63_PRODUCTS_FILE_INTERFACE_H_
12 #define SDK_S63_PRODUCTS_FILE_INTERFACE_H_
16 #include <base/inc/sdk_component_base.h>
18 #include <base/inc/interfaces/collection/collection_interface.h>
96 template<
typename T >
102 SDK_NAMESPACE::ScopedAny value;
106 if (ANY_IS_EMPTY(&value))
108 return value.GetAs< T >(out)
131 IS63ProductsFileRecordSP& products_file_record) const throw() = 0;
147 virtual SDKResult SDK_CALLTYPE GetIterator(
148 IS63ProductsFileRecordsEnumSP& iterator)
const throw() = 0;
151 virtual SDKResult SDK_CALLTYPE GetRecord(
152 const CellName& cell_name, IS63ProductsFileRecordSP& record)
const throw() = 0;
163 #endif // SDK_S63_SERIAL_FILE_INTERFACE_H_
@ kProductsFileVersion_Version2
S-63 products file format version 2.
Definition: s63_products_file_interface.h:61
@ kProductsFileRecordField_CellName
kSDKAnyType_SDKStringPtr
Definition: s63_products_file_interface.h:34
@ kProductsFileRecordField_ProductName
kSDKAnyType_SDKStringPtr
Definition: s63_products_file_interface.h:37
@ kProductsFileRecordField_CellLimitEasternmostLongitude
kSDKAnyType_Double
Definition: s63_products_file_interface.h:46
@ kS63ProductsFileProp_ContentType
Content type of the Source PRODUCTS.TXT file (kSDKAnyType_Uint32, one of ProductsFileContentType).
Definition: s63_products_file_interface.h:83
@ kProductsFileRecordField_BaseCellIssueDate
kSDKAnyType_SDKTime
Definition: s63_products_file_interface.h:38
@ kProductsFileRecordField_CellLimitSouthernmostLatitude
kSDKAnyType_Double
Definition: s63_products_file_interface.h:43
@ kProductsFileContentType_Partial
The products file contains PARTIAL content.
Definition: s63_products_file_interface.h:69
ProductsFileContentType
Known content types of the PRODUCTS.TXT file.
Definition: s63_products_file_interface.h:66
@ kProductsFileRecordField_BaseCellUpdateNumber
kSDKAnyType_Uint32
Definition: s63_products_file_interface.h:49
@ kProductsFileRecordField_BaseCellEdition
kSDKAnyType_Uint32
Definition: s63_products_file_interface.h:39
Set of interfaces for S-63 cell permits description.
Object generic properties interface.
@ kProductsFileVersion_Version1
S-63 products file format version 1.
Definition: s63_products_file_interface.h:60
S63ProductsFileProps
Set of available properties for the S-63 Products File container.
Definition: s63_products_file_interface.h:75
@ kProductsFileRecordField_LatestUpdateNumber
kSDKAnyType_Uint32
Definition: s63_products_file_interface.h:41
PRODUCTS.TXT file container.
Definition: s63_products_file_interface.h:143
@ kS63ProductsFileProp_FileVersion
Version of the source PRODUCTS.TXT file (kSDKAnyType_Uint32, one of ProductsFileVersion).
Definition: s63_products_file_interface.h:81
@ kProductsFileRecordField_Compression
kSDKAnyType_Uint32
Definition: s63_products_file_interface.h:47
static const SDKResult kSDKResult_Succeeded
Operation completed successfully.
Definition: sdk_results.h:22
@ kProductsFileRecordField_BaseCellLocation
kSDKAnyType_SDKStringPtr
Definition: s63_products_file_interface.h:51
@ kProductsFileRecordField_IsOfficial
kSDKAnyType_Bool (true if record locates in :ENC section, false otherwise)
Definition: s63_products_file_interface.h:33
@ kProductsFileRecordField_CancelledCellReplacement
kSDKAnyType_SDKStringPtr
Definition: s63_products_file_interface.h:52
SDKInt32 SDKResult
Type of all error or return codes which SDK functions can end with.
Definition: sdk_results.h:17
@ kProductsFileRecordField_IssueDateLatestUpdate
kSDKAnyType_SDKTime
Definition: s63_products_file_interface.h:40
SDKUInt8 CellName[8]
Cell name.
Definition: s63_cell_permits_interface.h:25
static const SDKResult kSDKResult_UnknownError
Unknown error occurred during operation.
Definition: sdk_results.h:49
Provides access to members that control the properties.
Definition: properties_interface.h:32
@ kProductsFileRecordField_RecordString
kSDKAnyType_SDKStringPtr (source string from PRODUCTS.TXT file)
Definition: s63_products_file_interface.h:35
@ kS63ProductsFileProp_RecordsCount
Total number of records (kSDKAnyType_Uint32).
Definition: s63_products_file_interface.h:77
#define SDK_FAILED(res)
Checks failed result.
Definition: sdk_results_enum.h:69
@ kProductsFileContentType_Full
The products file contains FULL content.
Definition: s63_products_file_interface.h:70
@ kProductsFileRecordField_CellLimitNothernmostLatitude
kSDKAnyType_Double
Definition: s63_products_file_interface.h:45
@ kProductsFileContentType_Unknown
Unknown content type of the products file.
Definition: s63_products_file_interface.h:68
@ kProductsFileRecordField_FileSize
kSDKAnyType_Uint32
Definition: s63_products_file_interface.h:42
Container to store a single PRODUCTS.TXT file record.
Definition: s63_products_file_interface.h:89
@ kProductsFileRecordField_LastUpdateNumberForPreviousEdition
kSDKAnyType_Uint32
Definition: s63_products_file_interface.h:50
virtual SDKResult SDK_CALLTYPE Reset()=0
Resets the iterator state.
@ kProductsFileRecordField_Encryption
kSDKAnyType_Uint32
Definition: s63_products_file_interface.h:48
PRODUCTS.TXT file records iterator.
Definition: s63_products_file_interface.h:124
ProductsFileRecordFields
List of available fields for a single PRODUCTS.TXT file record. See 6.2.3 of IHO S-63 Data Protection...
Definition: s63_products_file_interface.h:31
static const SDKResult kSDKResult_NotExist
Something does not exist.
Definition: sdk_results.h:79
static const SDKResult kSDKResult_InvalidArgument
Wrong argument passed to function.
Definition: sdk_results.h:55
@ kProductsFileRecordField_CellLimitWesternmostLongitude
kSDKAnyType_Double
Definition: s63_products_file_interface.h:44
ProductsFileVersion
Known versions of the PRODUCTS.TXT file.
Definition: s63_products_file_interface.h:57
FWD_DECL_INTERFACE(ILWEParserWrapper)
Provides a wrapper around the message parser to get, add or remove the.
virtual SDKResult SDK_CALLTYPE Next(IS63ProductsFileRecordSP &products_file_record) const =0
Returns the next instance of the products file record.
virtual SDKResult SDK_CALLTYPE GetFieldValue(const ProductsFileRecordFields &field_id, SDKAny &field_value) const =0
Returns the appropriate PRODUCTS.TXT field value for a single record.
@ kProductsFileVersion_Unknown
Unknown version of the products file format.
Definition: s63_products_file_interface.h:59
@ kS63ProductsFileProp_DateTime
Date/Time of the source PRODUCTS.TXT file (kSDKAnyType_SDKTime).
Definition: s63_products_file_interface.h:79