mavsdk::Transponder Class Reference
#include: transponder.h
Allow users to get ADS-B information and set ADS-B update rates.
Data Structures
struct AdsbVehicle
Public Types
Type | Description |
---|---|
enum AdsbEmitterType | ADSB classification for the type of vehicle emitting the transponder signal. |
enum AdsbAltitudeType | Altitude type used in AdsbVehicle message. |
enum Result | Possible results returned for transponder requests. |
std::function< void(Result)> ResultCallback | Callback type for asynchronous Transponder calls. |
std::function< void(AdsbVehicle)> TransponderCallback | Callback type for subscribe_transponder. |
Handle< AdsbVehicle > TransponderHandle | Handle type for subscribe_transponder. |
Public Member Functions
Type | Name | Description |
---|---|---|
Transponder (System & system) | Constructor. Creates the plugin for a specific System. | |
Transponder (std::shared_ptr< System > system) | Constructor. Creates the plugin for a specific System. | |
~Transponder () override | Destructor (internal use only). | |
Transponder (const Transponder & other) | Copy constructor. | |
TransponderHandle | subscribe_transponder (const TransponderCallback & callback) | Subscribe to 'transponder' updates. |
void | unsubscribe_transponder (TransponderHandle handle) | Unsubscribe from subscribe_transponder. |
AdsbVehicle | transponder () const | Poll for 'AdsbVehicle' (blocking). |
void | set_rate_transponder_async (double rate_hz, const ResultCallback callback) | Set rate to 'transponder' updates. |
Result | set_rate_transponder (double rate_hz)const | Set rate to 'transponder' updates. |
const Transponder & | operator= (const Transponder &)=delete | Equality operator (object is not copyable). |
Constructor & Destructor Documentation
Transponder()
mavsdk::Transponder::Transponder(System &system)
Constructor. Creates the plugin for a specific System.
The plugin is typically created as shown below:
auto transponder = Transponder(system);
Parameters
- System& system - The specific system associated with this plugin.
Transponder()
mavsdk::Transponder::Transponder(std::shared_ptr< System > system)
Constructor. Creates the plugin for a specific System.
The plugin is typically created as shown below:
auto transponder = Transponder(system);
Parameters
- std::shared_ptr< System > system - The specific system associated with this plugin.
~Transponder()
mavsdk::Transponder::~Transponder() override
Destructor (internal use only).
Transponder()
mavsdk::Transponder::Transponder(const Transponder &other)
Copy constructor.
Parameters
- const Transponder& other -
Member Typdef Documentation
typedef ResultCallback
using mavsdk::Transponder::ResultCallback = std::function<void(Result)>
Callback type for asynchronous Transponder calls.
typedef TransponderCallback
using mavsdk::Transponder::TransponderCallback = std::function<void(AdsbVehicle)>
Callback type for subscribe_transponder.
typedef TransponderHandle
using mavsdk::Transponder::TransponderHandle = Handle<AdsbVehicle>
Handle type for subscribe_transponder.
Member Enumeration Documentation
enum AdsbEmitterType
ADSB classification for the type of vehicle emitting the transponder signal.
Value | Description |
---|---|
NoInfo |
No emitter info.. |
Light |
Light emitter.. |
Small |
Small emitter.. |
Large |
Large emitter.. |
HighVortexLarge |
High vortex emitter.. |
Heavy |
Heavy emitter.. |
HighlyManuv |
Highly maneuverable emitter.. |
Rotocraft |
Rotorcraft emitter.. |
Unassigned |
Unassigned emitter.. |
Glider |
Glider emitter.. |
LighterAir |
Lighter air emitter.. |
Parachute |
Parachute emitter.. |
UltraLight |
Ultra light emitter.. |
Unassigned2 |
Unassigned2 emitter.. |
Uav |
UAV emitter.. |
Space |
Space emitter.. |
Unassgined3 |
Unassigned3 emitter.. |
EmergencySurface |
Emergency emitter.. |
ServiceSurface |
Service surface emitter.. |
PointObstacle |
Point obstacle emitter.. |
enum AdsbAltitudeType
Altitude type used in AdsbVehicle message.
Value | Description |
---|---|
PressureQnh |
Altitude reported from a Baro source using QNH reference. |
Geometric |
Altitude reported from a GNSS source. |
enum Result
Possible results returned for transponder requests.
Value | Description |
---|---|
Unknown |
Unknown result. |
Success |
Success: the transponder command was accepted by the vehicle. |
NoSystem |
No system connected. |
ConnectionError |
Connection error. |
Busy |
Vehicle is busy. |
CommandDenied |
Command refused by vehicle. |
Timeout |
Request timed out. |
Member Function Documentation
subscribe_transponder()
TransponderHandle mavsdk::Transponder::subscribe_transponder(const TransponderCallback &callback)
Subscribe to 'transponder' updates.
Parameters
- const TransponderCallback& callback -
Returns
unsubscribe_transponder()
void mavsdk::Transponder::unsubscribe_transponder(TransponderHandle handle)
Unsubscribe from subscribe_transponder.
Parameters
- TransponderHandle handle -
transponder()
AdsbVehicle mavsdk::Transponder::transponder() const
Poll for 'AdsbVehicle' (blocking).
Returns
AdsbVehicle - One AdsbVehicle update.
set_rate_transponder_async()
void mavsdk::Transponder::set_rate_transponder_async(double rate_hz, const ResultCallback callback)
Set rate to 'transponder' updates.
This function is non-blocking. See 'set_rate_transponder' for the blocking counterpart.
Parameters
- double rate_hz -
- const ResultCallback callback -
set_rate_transponder()
Result mavsdk::Transponder::set_rate_transponder(double rate_hz) const
Set rate to 'transponder' updates.
This function is blocking. See 'set_rate_transponder_async' for the non-blocking counterpart.
Parameters
- double rate_hz -
Returns
Result - Result of request.
operator=()
const Transponder& mavsdk::Transponder::operator=(const Transponder &)=delete
Equality operator (object is not copyable).
Parameters
- const Transponder& -
Returns
const Transponder & -