NAVTOR SDK  v.3.0
Software Development Kit for fast and efficient development of ECDIS, ECS and generic marine applications
s63_media_file_interface.h
Go to the documentation of this file.
1 
11 #ifndef SDK_S63_MEDIA_FILE_INTERFACE_H_
12 #define SDK_S63_MEDIA_FILE_INTERFACE_H_
13 #pragma once
14 
15 #include <base/inc/platform.h>
16 #include <base/inc/sdk_component_base.h>
18 #include <base/inc/interfaces/collection/collection_interface.h>
20 
21 namespace sdk {
22 namespace s63 {
23 
24 FWD_DECL_INTERFACE(IS63MediaFileRecord);
25 FWD_DECL_INTERFACE(IS63MediaFileRecordsEnum);
26 FWD_DECL_INTERFACE(IS63MediaFile);
27 
30 typedef enum MediaFileMediaType
31 {
36 
39 typedef SDKUInt8 MediaFileWeekOfIssue;
40 static const MediaFileWeekOfIssue kUnknownMediaWeekOfIssue = 0U;
41 
44 typedef SDKUInt32 MediaFileYearOfIssue;
45 static const MediaFileYearOfIssue kUnknownMediaYearOfIssue = 0UL;
46 
49 typedef SDKUInt8 MediaFileMediaNumber;
50 static const MediaFileMediaNumber kUnknownMediaFileMediaNumber = 0U;
51 
55 {
56 public:
58  virtual SDKResult SDK_CALLTYPE GetExchangeSetLocation(
59  SDKString& exchange_set_location) const throw() = 0;
60 
62  virtual SDKResult SDK_CALLTYPE GetExchangeSetIssueDate(
63  SDKTime& ex_set_issue_date) const throw() = 0;
64 
66  virtual SDKResult SDK_CALLTYPE GetMediaSetNumber(
67  SDKString& media_set_number) const throw() = 0;
68 
70  virtual SDKResult SDK_CALLTYPE GetRegionalInformation(
71  SDKString& regional_information) const throw() = 0;
72 
74  virtual SDKResult SDK_CALLTYPE GetComments(
75  SDKString& comments) const throw() = 0;
76 
78  SDK_IMPLEMENT_IID(IS63MediaFileRecord)
79  SDK_END_INTERFACE(IS63MediaFileRecord)
80 };
81 SDK_DECLARE_IID(IS63MediaFileRecord)
82 
86 {
87 public:
89  virtual SDKResult SDK_CALLTYPE Reset() throw() = 0;
91  virtual SDKResult SDK_CALLTYPE Next(
92  IS63MediaFileRecordSP& media_file_record) const throw() = 0;
93 
94  // ALSO CAN IMPLEMENT sdk::ICollectionSDKComponent interface
95 
97  SDK_IMPLEMENT_IID(IS63MediaFileRecordsEnum)
98  SDK_END_INTERFACE(IS63MediaFileRecordsEnum)
99 };
100 SDK_DECLARE_IID(IS63MediaFileRecordsEnum)
101 
104 class IS63MediaFile : public sdk::ISDKProperties
105 {
106 public:
108  virtual SDKResult SDK_CALLTYPE GetDataserverID(
109  DataServerID& dataserver_id) const throw() = 0;
110 
112  virtual SDKResult SDK_CALLTYPE GetWeekOfIssue(
113  MediaFileWeekOfIssue& week_of_issue,
114  MediaFileYearOfIssue& year_of_issue) const throw() = 0;
115 
117  virtual SDKResult SDK_CALLTYPE GetDateOfIssue(
118  SDKTime& date_of_issue) const throw() = 0;
119 
121  virtual SDKResult SDK_CALLTYPE GetMediaType(
122  MediaFileMediaType& media_type) const throw() = 0;
123 
125  virtual SDKResult SDK_CALLTYPE GetMediaLabelID(
126  MediaFileMediaNumber& curr_media_number,
127  MediaFileMediaNumber& total_media_number) const throw() = 0;
128 
130  virtual SDKResult SDK_CALLTYPE GetMediaID(
131  SDKString& media_id) const throw() = 0;
132 
134  virtual SDKResult SDK_CALLTYPE GetMediaName(
135  SDKString& media_name) const throw() = 0;
136 
138  virtual SDKResult SDK_CALLTYPE GetRegionalInformation(
139  SDKString& regional_information) const throw() = 0;
140 
142  virtual SDKResult SDK_CALLTYPE GetIterator(
143  IS63MediaFileRecordsEnumSP& iterator) const throw() = 0;
144 
146  SDK_IMPLEMENT_IID(IS63MediaFile)
147  SDK_END_INTERFACE(IS63MediaFile)
148 };
149 SDK_DECLARE_IID(IS63MediaFile)
150 
151 } // namespace s63
152 } // namespace sdk
153 
154 #endif // SDK_S63_MEDIA_FILE_INTERFACE_H_
sdk::s63::IS63MediaFileRecord::GetRegionalInformation
virtual SDKResult SDK_CALLTYPE GetRegionalInformation(SDKString &regional_information) const =0
Returns Regional Information.
sdk::s63::DataServerID
SDKUInt8 DataServerID[2]
Dataserver ID.
Definition: s63_cell_permits_interface.h:29
sdk::s63::kMediaFileMediaType_Base
@ kMediaFileMediaType_Base
Update media type.
Definition: s63_media_file_interface.h:33
s63_cell_permits_interface.h
Set of interfaces for S-63 cell permits description.
sdk::s63::MediaFileWeekOfIssue
SDKUInt8 MediaFileWeekOfIssue
MEDIA.TXT file week of issue.
Definition: s63_media_file_interface.h:39
properties_interface.h
Object generic properties interface.
sdk::s63::IS63MediaFileRecordsEnum::Next
virtual SDKResult SDK_CALLTYPE Next(IS63MediaFileRecordSP &media_file_record) const =0
Returns the next instance of the products file record.
sdk::s63::IS63MediaFileRecord::GetComments
virtual SDKResult SDK_CALLTYPE GetComments(SDKString &comments) const =0
Returns Comments.
sdk::s63::IS63MediaFileRecord::GetExchangeSetLocation
virtual SDKResult SDK_CALLTYPE GetExchangeSetLocation(SDKString &exchange_set_location) const =0
Returns the Exchange Set Location.
sdk::s63::kMediaFileMediaType_Unknown
@ kMediaFileMediaType_Unknown
Unknown media type.
Definition: s63_media_file_interface.h:32
sdk::s63::MediaFileMediaNumber
SDKUInt8 MediaFileMediaNumber
MEDIA.TXT file Media Number.
Definition: s63_media_file_interface.h:49
SDKResult
SDKInt32 SDKResult
Type of all error or return codes which SDK functions can end with.
Definition: sdk_results.h:17
sdk::s63::IS63MediaFileRecordsEnum
MEDIA.TXT file records iterator.
Definition: s63_media_file_interface.h:85
sdk::ISDKProperties
Provides access to members that control the properties.
Definition: properties_interface.h:32
platform.h
Describes the platform constants.
sdk::s63::MediaFileYearOfIssue
SDKUInt32 MediaFileYearOfIssue
MEDIA.TXT file year of issue.
Definition: s63_media_file_interface.h:44
sdk::s63::IS63MediaFileRecordsEnum::Reset
virtual SDKResult SDK_CALLTYPE Reset()=0
Resets the iterator state.
sdk::s63::IS63MediaFile
Container to store S-63 MEDIA.TXT file data.
Definition: s63_media_file_interface.h:104
sdk::s63::IS63MediaFileRecord::GetMediaSetNumber
virtual SDKResult SDK_CALLTYPE GetMediaSetNumber(SDKString &media_set_number) const =0
Returns the Media Set Number.
sdk::s63::MediaFileMediaType
MediaFileMediaType
List of known media types.
Definition: s63_media_file_interface.h:30
SDKTime
SDK_END_NAMESPACE typedef SDKInt64 SDKTime
Milliseconds from Unix epoch.
Definition: base_types.h:56
sdk::s63::IS63MediaFileRecord::GetExchangeSetIssueDate
virtual SDKResult SDK_CALLTYPE GetExchangeSetIssueDate(SDKTime &ex_set_issue_date) const =0
Returns the Exchange Set Issue Date.
sdk::s63::IS63MediaFileRecord
Container to store a single MEDIA.TXT file record.
Definition: s63_media_file_interface.h:54
FWD_DECL_INTERFACE
FWD_DECL_INTERFACE(ILWEParserWrapper)
Provides a wrapper around the message parser to get, add or remove the.
sdk::s63::kMediaFileMediaType_Update
@ kMediaFileMediaType_Update
Update media type.
Definition: s63_media_file_interface.h:34