NAVTOR SDK  v.3.0
Software Development Kit for fast and efficient development of ECDIS, ECS and generic marine applications
route_monitor_interface.h
Go to the documentation of this file.
1 
9 #ifndef SDK_ROUTE_MONITOR_INTERFACE_H_
10 #define SDK_ROUTE_MONITOR_INTERFACE_H_
11 
12 #include <base/inc/sdk_results.h>
13 #include <base/inc/forward_declarations.h>
18 
19 SDK_ECDISLAYER_BEGIN_NAMESPACE
20 namespace routes {
21 
22 FWD_DECL_INTERFACE(IRouteMonitor)
23 
28 };
29 
32 class IRouteMonitor : public ISDKComponent {
33 public:
35  virtual SDKResult SDK_CALLTYPE Initialize(
36  const gdb::routes::IRouteSP& route) throw() = 0;
37 
39  virtual SDKResult SDK_CALLTYPE ReverseRoute() throw() = 0;
40 
42  virtual SDKResult SDK_CALLTYPE StartVoyage(
43  const SDKGeoPoint& ship_position,
44  double ship_course_deg,
45  double current_speed,
46  const ISDKParametersSP& input_parameters,
47  ISDKParameters** voyage_parameters) throw() = 0;
48 
50  virtual SDKResult SDK_CALLTYPE UpdateStatus(
51  const SDKGeoPoint& ship_position,
52  double ship_course_deg,
53  double current_speed,
54  ISDKParameters** voyage_parameters) throw() = 0;
55 
57  virtual SDKResult SDK_CALLTYPE StopVoyage() throw() = 0;
58 
60  virtual SDKResult SDK_CALLTYPE GetRouteData(
61  const ISDKParametersSP& input_parameters,
62  VoyageProperties voyage_property, SDKAny& data) const throw() = 0;
63 
65  virtual SDKResult SDK_CALLTYPE GetRoute(
66  gdb::routes::IRouteSP& route) const throw() = 0;
67 
69  virtual SDKResult SDK_CALLTYPE GetWorkspace(
70  gdb::IWorkspace** workspace) throw() = 0;
71 
72  SDK_IMPLEMENT_IID(IRouteMonitor)
73  SDK_END_INTERFACE(IRouteMonitor)
74 };
75 SDK_DECLARE_IID(IRouteMonitor)
76 
77 } // namespace routes
78 SDK_ECDISLAYER_END_NAMESPACE
79 
80 #endif // SDK_ROUTE_MONITOR_INTERFACE_H_
routes::IRouteMonitor::GetRouteData
virtual SDKResult SDK_CALLTYPE GetRouteData(const ISDKParametersSP &input_parameters, VoyageProperties voyage_property, SDKAny &data) const =0
Returns monitoring route properties.
sdk_results.h
A list of SDK error/return results.
route_storage_interfaces.h
Route storage and route.
routes::IRouteMonitor::StartVoyage
virtual SDKResult SDK_CALLTYPE StartVoyage(const SDKGeoPoint &ship_position, double ship_course_deg, double current_speed, const ISDKParametersSP &input_parameters, ISDKParameters **voyage_parameters)=0
Starts route monitoring.
routes::IRouteMonitor
Route monitoring manager interface.
Definition: route_monitor_interface.h:32
routes::IRouteMonitor::GetRoute
virtual SDKResult SDK_CALLTYPE GetRoute(gdb::routes::IRouteSP &route) const =0
Returns monitoring route.
gdb_workspace.h
Describes interfaces that manages a geodatabase workspace.
routes::IRouteMonitor::UpdateStatus
virtual SDKResult SDK_CALLTYPE UpdateStatus(const SDKGeoPoint &ship_position, double ship_course_deg, double current_speed, ISDKParameters **voyage_parameters)=0
Updates current vessel data and returns current voyage parameters.
ecdislayer_const.h
The ecdislayer constants.
SDKResult
SDKInt32 SDKResult
Type of all error or return codes which SDK functions can end with.
Definition: sdk_results.h:17
SDKGeoPoint
Geo point in degree units.
Definition: geometry_base_types.h:1727
routes::IRouteMonitor::Initialize
virtual SDKResult SDK_CALLTYPE Initialize(const gdb::routes::IRouteSP &route)=0
Initialized route monitoring manager with a route.
ISDKComponent
Base interface for all SDK interfaces.
Definition: sdk_component_interface.h:41
routes::kRouteMonitorParameter_OfCourseThreshold
@ kRouteMonitorParameter_OfCourseThreshold
Maximal allowed course deviation in degrees.
Definition: route_monitor_interface.h:27
routes::IRouteMonitor::StopVoyage
virtual SDKResult SDK_CALLTYPE StopVoyage()=0
Stops route monitoring.
routes::IRouteMonitor::ReverseRoute
virtual SDKResult SDK_CALLTYPE ReverseRoute()=0
Reverses monitoring route.
routes::RouteMonitorParameters
RouteMonitorParameters
Route monitoring parameters.
Definition: route_monitor_interface.h:26
routes::IRouteMonitor::GetWorkspace
virtual SDKResult SDK_CALLTYPE GetWorkspace(gdb::IWorkspace **workspace)=0
Returns monitoring route as a workspace.
FWD_DECL_INTERFACE
FWD_DECL_INTERFACE(ILWEParserWrapper)
Provides a wrapper around the message parser to get, add or remove the.
voyage_properties.h
Voyage properties.
routes::VoyageProperties
VoyageProperties
Voyage properties.
Definition: voyage_properties.h:20