10 #ifndef SDK_NAVBOX_CLIENT_PORT_INFO_INTERFACE_IMPL_H_
11 #define SDK_NAVBOX_CLIENT_PORT_INFO_INTERFACE_IMPL_H_
17 #include <base/inc/sdk_component_base.h>
19 #include <base/inc/exception.h>
24 SDK_NAVBOX_CLIENT_BEGIN_NAMESPACE
27 class PortInfo :
public SDKComponentBaseI< IPortInfo > {
29 explicit PortInfo(
const std::wstring& name,
30 const std::wstring& country = std::wstring(),
31 const std::wstring& vhf_channel_port_control = std::wstring(),
32 const std::wstring& vhf_channel_pilots = std::wstring(),
33 const std::wstring& pre_departure_notice_to = std::wstring(),
34 const std::wstring& vhf_channel = std::wstring(),
35 const std::wstring& draught_restrictions = std::wstring(),
36 const std::wstring& air_draught_restrictions = std::wstring(),
37 const std::wstring& other_restrictions = std::wstring(),
38 const std::wstring& guide_to_port_entry = std::wstring(),
39 const std::wstring& extra_info = std::wstring(),
41 const std::wstring& tz_display_name = std::wstring(),
42 const GeoPoint& position = GeoPoint(),
43 const std::wstring& name_of_berth = std::wstring())
46 m_vhf_channel_port_control(vhf_channel_port_control),
47 m_vhf_channel_pilots(vhf_channel_pilots),
48 m_pre_departure_notice_to(pre_departure_notice_to),
49 m_vhf_channel(vhf_channel),
50 m_draught_restrictions(draught_restrictions),
51 m_air_draught_restrictions(air_draught_restrictions),
52 m_other_restrictions(other_restrictions),
53 m_guide_to_port_entry(guide_to_port_entry),
54 m_extra_info(extra_info),
56 m_tz_display_name(tz_display_name),
58 m_name_of_berth(name_of_berth) {
73 virtual SDKResult SDK_CALLTYPE GetCountry(
74 SDKString& port_country)
const throw() {
82 virtual SDKResult SDK_CALLTYPE GetVHFChannelPortControl(
83 SDKString& channel)
const throw() {
91 virtual SDKResult SDK_CALLTYPE GetVHFChannelPilots(
92 SDKString& channel)
const throw() {
100 virtual SDKResult SDK_CALLTYPE GetPreDepartureNoticeTo(
101 SDKString& channel)
const throw() {
109 virtual SDKResult SDK_CALLTYPE GetVHFChannel(
110 SDKString& channel)
const throw() {
118 virtual SDKResult SDK_CALLTYPE GetDraughtRestrictions(
119 SDKString& draught_restrictions)
const throw() {
127 virtual SDKResult SDK_CALLTYPE GetAirDraughtRestrictions(
128 SDKString& air_draught_restrictions)
const throw() {
137 virtual SDKResult SDK_CALLTYPE GetOtherRestrictions(
138 SDKString& other_restrictions)
const throw() {
147 virtual SDKResult SDK_CALLTYPE GetGuideToPortEntry(
148 SDKString& guide_to_port_entry)
const throw() {
156 virtual SDKResult SDK_CALLTYPE GetExtraInfo(
157 SDKString& extra_info)
const throw() {
173 virtual SDKResult SDK_CALLTYPE GetTimeZoneDisplayName(
174 SDKString& tz_display_name)
const throw() {
177 if (m_tz_display_name.empty())
184 virtual SDKResult SDK_CALLTYPE GetPosition(
188 position = GeoPoint();
189 if (!m_position.IsValid())
191 position = m_position;
196 virtual SDKResult SDK_CALLTYPE GetNameOfBerth(
197 SDKString& name_of_berth)
const throw() {
211 const std::wstring m_name;
212 const std::wstring m_country;
213 const std::wstring m_vhf_channel_port_control;
214 const std::wstring m_vhf_channel_pilots;
215 const std::wstring m_pre_departure_notice_to;
216 const std::wstring m_vhf_channel;
217 const std::wstring m_draught_restrictions;
218 const std::wstring m_air_draught_restrictions;
219 const std::wstring m_other_restrictions;
220 const std::wstring m_guide_to_port_entry;
221 const std::wstring m_extra_info;
223 const std::wstring m_tz_display_name;
224 const GeoPoint m_position;
225 const std::wstring m_name_of_berth;
228 SDK_NAVBOX_CLIENT_END_NAMESPACE
230 #endif // SDK_NAVBOX_CLIENT_PORT_INFO_INTERFACE_IMPL_H_