DUNE: Uniform Navigational Environment  2019.02.1
DUNE::IMC::PathControlState Class Reference

Detailed Description

Path Control State.

Public Types

Public Member Functions

 PathControlState (void)
 
PathControlStateclone (void) const
 
void clear (void)
 
bool fieldsEqual (const Message &msg__) const
 
int validate (void) const
 
uint8_t * serializeFields (uint8_t *bfr__) const
 
uint16_t deserializeFields (const uint8_t *bfr__, uint16_t size__)
 
uint16_t reverseDeserializeFields (const uint8_t *bfr__, uint16_t size__)
 
uint16_t getId (void) const
 
const char * getName (void) const
 
unsigned getFixedSerializationSize (void) const
 
void fieldsToJSON (std::ostream &os__, unsigned nindent__) const
 
- Public Member Functions inherited from DUNE::IMC::Message
 Message (void)
 
virtual ~Message (void)
 
double setTimeStamp (double ts)
 
double setTimeStamp (void)
 
double getTimeStamp (void) const
 
uint16_t getSource (void) const
 
void setSource (uint16_t src)
 
uint8_t getSourceEntity (void) const
 
void setSourceEntity (uint8_t src_ent)
 
uint16_t getDestination (void) const
 
void setDestination (uint16_t dst)
 
uint8_t getDestinationEntity (void) const
 
void setDestinationEntity (uint8_t dst_ent)
 
virtual uint16_t getSubId (void) const
 
virtual void setSubId (uint16_t subid)
 
virtual fp64_t getValueFP (void) const
 
virtual void setValueFP (fp64_t val)
 
unsigned getSerializationSize (void) const
 
unsigned getPayloadSerializationSize (void) const
 
virtual unsigned getVariableSerializationSize (void) const
 
void toJSON (std::ostream &os) const
 
void toText (std::ostream &os) const
 
bool operator== (const Message &other) const
 
bool operator!= (const Message &other) const
 

Static Public Member Functions

static uint16_t getIdStatic (void)
 

Public Attributes

uint32_t path_ref
 
fp64_t start_lat
 
fp64_t start_lon
 
fp32_t start_z
 
uint8_t start_z_units
 
fp64_t end_lat
 
fp64_t end_lon
 
fp32_t end_z
 
uint8_t end_z_units
 
fp32_t lradius
 
uint8_t flags
 
fp32_t x
 
fp32_t y
 
fp32_t z
 
fp32_t vx
 
fp32_t vy
 
fp32_t vz
 
fp32_t course_error
 
uint16_t eta
 

Additional Inherited Members

- Protected Member Functions inherited from DUNE::IMC::Message
virtual void setTimeStampNested (double value)
 
virtual void setSourceNested (uint16_t value)
 
virtual void setSourceEntityNested (uint8_t value)
 
virtual void setDestinationNested (uint16_t value)
 
virtual void setDestinationEntityNested (uint8_t value)
 
- Protected Attributes inherited from DUNE::IMC::Message
Header m_header
 

Member Enumeration Documentation

Flags.

Enumerator
FL_NEAR 

Near Endpoint.

FL_LOITERING 

Loitering.

FL_NO_Z 

No Altitude/Depth control.

FL_3DTRACK 

3D Tracking.

FL_CCLOCKW 

Counter-Clockwise loiter.

Constructor & Destructor Documentation

DUNE::IMC::PathControlState::PathControlState ( void  )

Member Function Documentation

void DUNE::IMC::PathControlState::clear ( void  )
virtual

Reset message's fields.

Implements DUNE::IMC::Message.

References DUNE::IMC::EntityState::flags.

uint16_t DUNE::IMC::PathControlState::deserializeFields ( const uint8_t *  bfr,
uint16_t  len 
)
virtual

Deserialize message fields from a packet.

Parameters
bfrstream of bytes (packet)
lenlength of the byte stream.
Returns
number of bytes processed.

Implements DUNE::IMC::Message.

References DUNE::IMC::deserialize(), and DUNE::IMC::EntityState::flags.

bool DUNE::IMC::PathControlState::fieldsEqual ( const Message other) const
virtual

Compare fields for equality.

Parameters
[in]othermessage to compare.
Returns
true if fields are equal, false otherwise.

Reimplemented from DUNE::IMC::Message.

References course_error, end_lat, end_lon, end_z, end_z_units, eta, DUNE::IMC::EntityState::flags, flags, lradius, path_ref, start_lat, start_lon, start_z, start_z_units, vx, vy, vz, x, y, and z.

void DUNE::IMC::PathControlState::fieldsToJSON ( std::ostream &  os,
unsigned  indent_level 
) const
virtual

Output the message fields (excluding header) in JSON format.

Parameters
osoutput stream.
indent_levelnumber of indentation spaces.

Reimplemented from DUNE::IMC::Message.

References DUNE::IMC::EntityState::flags, and DUNE::IMC::toJSON().

unsigned DUNE::IMC::PathControlState::getFixedSerializationSize ( void  ) const
inlinevirtual

Get the fixed amount of bytes required to properly serialize this message (variable length fields are not included).

Returns
amount of variable bytes required to serialize the message.

Reimplemented from DUNE::IMC::Message.

References DUNE::IMC::EntityState::fieldsToJSON().

uint16_t DUNE::IMC::PathControlState::getId ( void  ) const
inlinevirtual

Retrieve message's identification number.

Returns
message's identification number.

Implements DUNE::IMC::Message.

References getIdStatic().

static uint16_t DUNE::IMC::PathControlState::getIdStatic ( void  )
inlinestatic

Referenced by getId().

const char* DUNE::IMC::PathControlState::getName ( void  ) const
inlinevirtual

Retrieve message's name.

Returns
message's name.

Implements DUNE::IMC::Message.

uint16_t DUNE::IMC::PathControlState::reverseDeserializeFields ( const uint8_t *  bfr,
uint16_t  len 
)
virtual

Deserialize message fields from a packet, swapping the byte order.

Parameters
bfrstream of bytes (packet)
lenlength of the byte stream.
Returns
number of bytes processed.

Implements DUNE::IMC::Message.

References DUNE::IMC::deserialize(), DUNE::IMC::EntityState::flags, and DUNE::IMC::reverseDeserialize().

uint8_t * DUNE::IMC::PathControlState::serializeFields ( uint8_t *  bfr__) const
virtual
int DUNE::IMC::PathControlState::validate ( void  ) const
virtual

Validate the message's contents.

Returns
negative value in case of a valid message or a positive value indicating the position of the invalid message field.

Implements DUNE::IMC::Message.

Member Data Documentation

fp32_t DUNE::IMC::PathControlState::course_error
fp64_t DUNE::IMC::PathControlState::end_lat

End Point – Latitude WGS-84.

Referenced by DUNE::Control::PathController::consume(), and fieldsEqual().

fp64_t DUNE::IMC::PathControlState::end_lon

End Point – WGS-84 Longitude.

Referenced by DUNE::Control::PathController::consume(), and fieldsEqual().

fp32_t DUNE::IMC::PathControlState::end_z
uint8_t DUNE::IMC::PathControlState::end_z_units

End Point – Z Units.

Referenced by DUNE::Control::PathController::consume(), and fieldsEqual().

uint16_t DUNE::IMC::PathControlState::eta

Estimated Time to Arrival (ETA).

Referenced by fieldsEqual(), and DUNE::Control::PathController::signalError().

fp32_t DUNE::IMC::PathControlState::lradius
uint32_t DUNE::IMC::PathControlState::path_ref
fp64_t DUNE::IMC::PathControlState::start_lat

Start Point – Latitude WGS-84.

Referenced by DUNE::Control::PathController::consume(), and fieldsEqual().

fp64_t DUNE::IMC::PathControlState::start_lon

Start Point – WGS-84 Longitude.

Referenced by DUNE::Control::PathController::consume(), and fieldsEqual().

fp32_t DUNE::IMC::PathControlState::start_z

Start Point – Z Reference.

Referenced by DUNE::Control::PathController::consume(), and fieldsEqual().

uint8_t DUNE::IMC::PathControlState::start_z_units

Start Point – Z Units.

Referenced by DUNE::Control::PathController::consume(), and fieldsEqual().

fp32_t DUNE::IMC::PathControlState::vx

Along Track Velocity.

Referenced by fieldsEqual(), and DUNE::Control::PathController::signalError().

fp32_t DUNE::IMC::PathControlState::vy

Cross Track Velocity.

Referenced by fieldsEqual(), and DUNE::Control::PathController::signalError().

fp32_t DUNE::IMC::PathControlState::vz

Vertical Track Velocity.

Referenced by fieldsEqual(), and DUNE::Control::PathController::signalError().

fp32_t DUNE::IMC::PathControlState::x
fp32_t DUNE::IMC::PathControlState::y
fp32_t DUNE::IMC::PathControlState::z

Vertical Track Position.

Referenced by fieldsEqual(), and DUNE::Control::PathController::signalError().

Collaboration diagram for DUNE::IMC::PathControlState:
Collaboration graph