OpenJAUS SAE SDK
6.0.0
|
Provides an abstract interface for the RangeSensor service. More...
#include <RangeSensorInterface.h>
Inherits openjaus::core_v1_1::AccessControlInterface.
Inherited by openjaus::environment_v1_0::services::RangeSensor [virtual]
.
Public Member Functions | |
virtual | ~RangeSensorInterface () |
virtual ReportRangeSensorData | getReportRangeSensorData (QueryRangeSensorData *queryRangeSensorData)=0 |
Send a ReportRangeSensorData message in native coordinate system Send a ReportRangeSensorData message in native coordinate system. More... | |
virtual ReportRangeSensorGeometricProperties | getReportRangeSensorGeometricProperties (QuerySensorGeometricProperties *querySensorGeometricProperties)=0 |
Send a ReportRangeSensorGeometricProperties message Send a ReportRangeSensorGeometricProperties message. More... | |
virtual bool | updateRangeSensorConfiguration (SetRangeSensorConfiguration *setRangeSensorConfiguration)=0 |
Update the sensor user controllable configuration parameters according to the ones specified. More... | |
virtual ConfirmSensorConfiguration | getConfirmSensorConfiguration (SetRangeSensorConfiguration *setRangeSensorConfiguration)=0 |
Send ConfirmSensorConfiguration message to the component Send ConfirmSensorConfiguration message to the component. More... | |
virtual ReportRangeSensorConfiguration | getReportRangeSensorConfiguration (QueryRangeSensorConfiguration *queryRangeSensorConfiguration)=0 |
Send a ReportRangeSensorConfiguration message Send a ReportRangeSensorConfiguration message. More... | |
virtual ReportRangeSensorCompressedData | getReportRangeSensorCompressedData (QueryRangeSensorCompressedData *queryRangeSensorCompressedData)=0 |
Send a ReportRangeSensorCompressedData message in native coordinate system Send a ReportRangeSensorCompressedData message in native coordinate system. More... | |
virtual ReportRangeSensorCapabilities | getReportRangeSensorCapabilities (QueryRangeSensorCapabilities *queryRangeSensorCapabilities)=0 |
Send a Report Range Sensor Capabilities message Send a Report Range Sensor Capabilities message. More... | |
virtual ReportRangeSensorData | getReportRangeSensorDataInNativeSystem (QueryRangeSensorData *queryRangeSensorData)=0 |
Send a ReportRangeSensorData message in the native coordinate system Send a ReportRangeSensorData message in the native coordinate system. More... | |
virtual ReportRangeSensorCompressedData | getReportRangeSensorCompressedDataInNativeSystem (QueryRangeSensorCompressedData *queryRangeSensorCompressedData)=0 |
Send a ReportRangeSensorCompressedData message using the requested coordinate system Send a ReportRangeSensorCompressedData message using the requested coordinate system. More... | |
virtual bool | isCoordinateTransformSupported (QueryRangeSensorData *queryRangeSensorData)=0 |
True if the service supports coordinate system transformations for data reports. More... | |
virtual bool | isCoordinateTransformSupported (QueryRangeSensorCompressedData *queryRangeSensorCompressedData)=0 |
True if the service supports coordinate system transformations for data reports. More... | |
Public Member Functions inherited from openjaus::core_v1_1::AccessControlInterface | |
virtual | ~AccessControlInterface () |
virtual void | init ()=0 |
virtual ReportControl | getReportControl (QueryControl *queryControl)=0 |
Send a Report Control message with the specified control value Send a Report Control message with the specified control value. More... | |
virtual ReportAuthority | getReportAuthority (QueryAuthority *queryAuthority)=0 |
Send a Report Authority message to querying client reporting the current authority value of this service Send a Report Authority message to querying client reporting the current authority value of this service. More... | |
virtual ReportTimeout | getReportTimeout (QueryTimeout *queryTimeout)=0 |
Send a Report Timeout message specifying the timeout period of this service Send a Report Timeout message specifying the timeout period of this service. More... | |
virtual bool | setAuthority (RequestControl *requestControl)=0 |
Set the current authority value of this service to the specified authority Set the current authority value of this service to the specified authority. More... | |
virtual bool | setAuthority (SetAuthority *setAuthority)=0 |
Set the current authority value of this service to the specified authority Set the current authority value of this service to the specified authority. More... | |
virtual bool | resetTimer (RequestControl *requestControl)=0 |
Reset the timer Reset the timer. More... | |
virtual bool | sendConfirmControlInsufficientAuthority (RequestControl *requestControl)=0 |
Send a confirm control message with the specified response code to requesting client Send a confirm control message with the specified response code to requesting client. More... | |
virtual bool | sendConfirmControlAccepted (RequestControl *requestControl)=0 |
Send a confirm control message with the specified response code to requesting client Send a confirm control message with the specified response code to requesting client. More... | |
virtual bool | sendRejectControlToController (RequestControl *requestControl)=0 |
SendRejectControlToController action with input RequestControl. More... | |
virtual bool | sendRejectControlReleased (ReleaseControl *releaseControl)=0 |
SendRejectControlReleased action with input ReleaseControl. More... | |
virtual bool | sendRejectControlReleased (AccessControlTimeout *accessControlTimeout)=0 |
SendRejectControlReleased action with input AccessControlTimeout. More... | |
virtual bool | storeAddress (RequestControl *requestControl)=0 |
StoreAddress action with input RequestControl. More... | |
virtual bool | updateControlledList (ConfirmControl *confirmControl)=0 |
Modifies list of controlled components based on confirm or reject messages Modifies list of controlled components based on confirm or reject messages. More... | |
virtual bool | updateControlledList (RejectControl *rejectControl)=0 |
Modifies list of controlled components based on confirm or reject messages Modifies list of controlled components based on confirm or reject messages. More... | |
virtual bool | isDefaultAuthorityGreater (RequestControl *requestControl)=0 |
True if the default authority code of this service is greater than the authority code of the client service that triggered the corresponding transition True if the default authority code of this service is greater than the authority code of the client service that triggered the corresponding transition. More... | |
virtual bool | isCurrentAuthorityLess (RequestControl *requestControl)=0 |
True if the current authority value of this service is less than the authority code of the client service that triggered the corresponding transition True if the current authority value of this service is less than the authority code of the client service that triggered the corresponding transition. More... | |
virtual bool | isAuthorityValid (SetAuthority *setAuthority)=0 |
True if the value of the authority code received from the client is less than or equal to the current authority value of this service, but greater than or equal to the receiving component’s default authority True if the value of the authority code received from the client is less than or equal to the current authority value of this service, but greater than or equal to the receiving component’s default authority. More... | |
virtual bool | isControllingClient (model::Message *message)=0 |
True if the message that triggered the transition is received from the client that is in control of this service True if the message that triggered the transition is received from the client that is in control of this service. More... | |
Public Member Functions inherited from openjaus::core_v1_1::EventsInterface | |
virtual | ~EventsInterface () |
virtual bool | createEvent (CreateEvent *createEvent)=0 |
CreateEvent action with input CreateEvent. More... | |
virtual bool | processEvent (ProcessEventRequest *processEventRequest)=0 |
ProcessEvent action with input ProcessEventRequest. More... | |
virtual bool | resetEventTimer (CreateEvent *createEvent)=0 |
ResetEventTimer action with input CreateEvent. More... | |
virtual bool | resetEventTimer (UpdateEvent *updateEvent)=0 |
ResetEventTimer action with input UpdateEvent. More... | |
virtual bool | updateEvent (CreateEvent *createEvent)=0 |
UpdateEvent action with input CreateEvent. More... | |
virtual bool | updateEvent (UpdateEvent *updateEvent)=0 |
UpdateEvent action with input UpdateEvent. More... | |
virtual bool | cancelEvent (CancelEvent *cancelEvent)=0 |
CancelEvent action with input CancelEvent. More... | |
virtual bool | stopEventTimer (CancelEvent *cancelEvent)=0 |
StopEventTimer action with input CancelEvent. More... | |
virtual RejectEventRequest | getRejectEventRequest (CreateEvent *createEvent)=0 |
Send action for RejectEventRequest with input message CreateEvent. More... | |
virtual RejectEventRequest | getRejectEventRequest (UpdateEvent *updateEvent)=0 |
Send action for RejectEventRequest with input message UpdateEvent. More... | |
virtual RejectEventRequest | getRejectEventRequest (CancelEvent *cancelEvent)=0 |
Send action for RejectEventRequest with input message CancelEvent. More... | |
virtual ConfirmEventRequest | getConfirmEventRequest (CreateEvent *createEvent)=0 |
Send action for ConfirmEventRequest with input message CreateEvent. More... | |
virtual ConfirmEventRequest | getConfirmEventRequest (UpdateEvent *updateEvent)=0 |
Send action for ConfirmEventRequest with input message UpdateEvent. More... | |
virtual ConfirmEventRequest | getConfirmEventRequest (CancelEvent *cancelEvent)=0 |
Send action for ConfirmEventRequest with input message CancelEvent. More... | |
virtual ReportEvents | getReportEvents (QueryEvents *queryEvents)=0 |
Send action for ReportEvents with input message QueryEvents. More... | |
virtual ReportEventTimeout | getReportEventTimeout (QueryEventTimeout *queryEventTimeout)=0 |
Send action for ReportEventTimeout with input message QueryEventTimeout. More... | |
virtual bool | confirmEvent (ConfirmEventRequest *confirmEventRequest)=0 |
ConfirmEvent action with input ConfirmEventRequest. More... | |
virtual bool | rejectEvent (RejectEventRequest *rejectEventRequest)=0 |
RejectEvent action with input RejectEventRequest. More... | |
virtual bool | handleIncomingEvent (Event *event)=0 |
HandleIncomingEvent action with input Event. More... | |
virtual bool | handleReportEvents (ReportEvents *reportEvents)=0 |
HandleReportEvents action with input ReportEvents. More... | |
virtual bool | isSupported (CreateEvent *createEvent)=0 |
isSupported condition. More... | |
virtual bool | isSupported (UpdateEvent *updateEvent)=0 |
isSupported condition. More... | |
virtual bool | eventExists (CreateEvent *createEvent)=0 |
eventExists condition. More... | |
virtual bool | eventExists (UpdateEvent *updateEvent)=0 |
eventExists condition. More... | |
virtual bool | eventExists (CancelEvent *cancelEvent)=0 |
eventExists condition. More... | |
Public Member Functions inherited from openjaus::core_v1_1::TransportInterface | |
virtual | ~TransportInterface () |
virtual bool | enqueue (model::Trigger *trigger)=0 |
Convert the destination address into an unsigned integer such that the ComponentID maps to the least significant byte, NodeID to the next least significant byte and SubsystemID maps onto the remaining two bytes of the integer. More... | |
virtual bool | broadcastLocalEnqueue (model::Trigger *trigger)=0 |
Package the message as specified by the transport layer specification and send it to all endpoints in the local subsystem. More... | |
virtual bool | broadcastGlobalEnqueue (model::Trigger *trigger)=0 |
Package the message as specified by the transport layer specification and send it to all endpoints on all subsystems. More... | |
virtual bool | sendMessage (model::Trigger *trigger)=0 |
SendMessage action with input SendMessage. More... | |
virtual bool | broadcastToNode (model::Trigger *trigger)=0 |
Broadcasts message to all components within the local node Broadcasts message to all components within the local node. More... | |
virtual bool | broadcastToSubsystem (model::Trigger *trigger)=0 |
Broadcasts a given message to all nodes in the local subsystem (equivalent to broadcast local enqueue) Broadcasts a given message to all nodes in the local subsystem (equivalent to broadcast local enqueue) More... | |
virtual bool | broadcastToSystem (model::Trigger *trigger)=0 |
Broadcasts the message to all subsystems on the JAUS network (equivalent to broadcast global enqueue) Broadcasts the message to all subsystems on the JAUS network (equivalent to broadcast global enqueue) More... | |
virtual bool | checkTransportPolicy (model::Trigger *trigger)=0 |
CheckTransportPolicy action with input CheckTransportPolicy. More... | |
virtual ReportTransportPolicy | getReportTransportPolicy (QueryTransportPolicy *queryTransportPolicy)=0 |
Send action for ReportTransportPolicy with input message QueryTransportPolicy. More... | |
virtual bool | storeTransportPolicy (ReportTransportPolicy *reportTransportPolicy)=0 |
StoreTransportPolicy action with input ReportTransportPolicy. More... | |
Static Public Member Functions | |
static OPENJAUS_DEPRECATED model::Service | RangeSensorService () |
Builds a default instance of the RangeSensor Service and populates the URI and Version numbers. More... | |
static OPENJAUS_DEPRECATED std::string | RangeSensorUri () |
Static accessor for Service URI. More... | |
Static Public Member Functions inherited from openjaus::core_v1_1::AccessControlInterface | |
static OPENJAUS_DEPRECATED model::Service | AccessControlService () |
Builds a default instance of the AccessControl Service and populates the URI and Version numbers. More... | |
static OPENJAUS_DEPRECATED std::string | AccessControlUri () |
Static accessor for Service URI. More... | |
Static Public Member Functions inherited from openjaus::core_v1_1::EventsInterface | |
static OPENJAUS_DEPRECATED model::Service | EventsService () |
Builds a default instance of the Events Service and populates the URI and Version numbers. More... | |
static OPENJAUS_DEPRECATED std::string | EventsUri () |
Static accessor for Service URI. More... | |
Static Public Member Functions inherited from openjaus::core_v1_1::TransportInterface | |
static OPENJAUS_DEPRECATED model::Service | TransportService () |
Builds a default instance of the Transport Service and populates the URI and Version numbers. More... | |
static OPENJAUS_DEPRECATED std::string | TransportUri () |
Static accessor for Service URI. More... | |
The function of the Range Sensor Service is to provide information from proximity sensors. This service will output the location of various Data Points with a certain measure of accuracy. A given Range Sensor service may be comprised of one to many actual physical sensors or technologies. Each sub-sensor can be assigned (by the developer) a unique Sensor ID. When appropriate, the reserved Sensor ID of 0 may be used to refer to all sensors attached to a given Range Sensor Service. The Data Points are measured in the sensor’s native coordinate system and are expressed in terms of range, bearing and inclination. Range is the distance, in meters, along the line from the origin of the sensor’s native coordinate system (sensor’s origin) to the specified point. Bearing is the angle, in radians, that the line from the sensor’s origin to the specified point makes about the sensor’s z-axis in the right handed sense (Figure 2). Inclination is the the angle, in radians, that the line from the sensor origin to the specified point makes about the sensor’s y-axis in the right handed sense (Figure 2). Each data point has an optional ID parameter. This parameter is provided for those sensor technologies which may assign and/or track entities based on unique ID values; however, such tracking capabilities are not required for a compliant Range Sensor Service. The behavior of the data point ID is not specified, i.e. IDs may repeat in a given report and IDs may persist from one report to another. No semantic value should be placed on the ID values in a generalized way. Data Point ID behavior should be derived from the underlying sensor or algorithm technology and is mearly provided to be used in those situations where mutiple parties can agree upon the behavior and semantics of the ID values. Data from the range sensor can be reported in both a compressed and uncompressed format, different query and report messages are provided for each exchange and the kind of data compression supported by the service is reported in the Report Range Sensor Capabilities message. Requests for unsupported data compression algorithms will result in the generation of a Report Sensor Error message indicating an unsupported compression request. The range sensor can express the bearing, inclination and range terms with respect to either its native coordinate system or the vehicle coordinate system if coordinate transforms are supported. The Query Sensor Geometric Properties message can be used to determine the geometric relationship between the sensor and the vehicle coordinate system. Three possible coordinate responses are possible: (a) the service does not know the sensor’s position, (b) the sensor coordinate system is fixed with respect to the vehicle and (c) the sensor is attached to some manipulator. These cases are supported by the Report Sensor Geometric Properties message and are described therein.
URI: urn:jaus:jss:environmentSensing:RangeSensor
Version: 1.0
Inherits From:
|
inlinevirtual |
|
pure virtual |
[in] | setRangeSensorConfiguration | - Input Trigger. |
Implemented in openjaus::environment_v1_0::services::RangeSensor.
|
pure virtual |
[in] | queryRangeSensorCapabilities | - Input Trigger. |
Implemented in openjaus::environment_v1_0::services::RangeSensor.
|
pure virtual |
[in] | queryRangeSensorCompressedData | - Input Trigger. |
Implemented in openjaus::environment_v1_0::services::RangeSensor.
|
pure virtual |
[in] | queryRangeSensorCompressedData | - Input Trigger. |
Implemented in openjaus::environment_v1_0::services::RangeSensor.
|
pure virtual |
[in] | queryRangeSensorConfiguration | - Input Trigger. |
Implemented in openjaus::environment_v1_0::services::RangeSensor.
|
pure virtual |
[in] | queryRangeSensorData | - Input Trigger. |
Implemented in openjaus::environment_v1_0::services::RangeSensor.
|
pure virtual |
[in] | queryRangeSensorData | - Input Trigger. |
Implemented in openjaus::environment_v1_0::services::RangeSensor.
|
pure virtual |
[in] | querySensorGeometricProperties | - Input Trigger. |
Implemented in openjaus::environment_v1_0::services::RangeSensor.
|
pure virtual |
True if the service supports coordinate system transformations for data reports.
[in] | queryRangeSensorData | - Input Trigger. |
Implemented in openjaus::environment_v1_0::services::RangeSensor.
|
pure virtual |
True if the service supports coordinate system transformations for data reports.
[in] | queryRangeSensorCompressedData | - Input Trigger. |
Implemented in openjaus::environment_v1_0::services::RangeSensor.
|
inlinestatic |
|
inlinestatic |
|
pure virtual |
Update the sensor user controllable configuration parameters according to the ones specified.
[in] | setRangeSensorConfiguration | - Input Trigger. |
Implemented in openjaus::environment_v1_0::services::RangeSensor.