6 #include <QDBusConnection>
7 #include <QLatin1String>
17 using namespace swift::misc::aviation;
18 using namespace swift::misc::simulation;
20 namespace swift::core::context
22 CContextOwnAircraftProxy::CContextOwnAircraftProxy(
const QString &serviceName, QDBusConnection &connection,
28 this->relaySignals(serviceName, connection);
31 void CContextOwnAircraftProxy::relaySignals(
const QString &serviceName, QDBusConnection &connection)
33 bool s = connection.connect(
35 "changedAircraftCockpit",
this,
39 "changedSelcal",
this,
46 "changedAircraftIcaoCodes",
this,
62 void CContextOwnAircraftProxy::unitTestRelaySignals()
65 QDBusConnection con = QDBusConnection::sessionBus();
73 QLatin1String(
"getOwnAircraft"));
89 QLatin1String(
"getOwnAircraftSituation"));
97 return m_dBusInterface->
callDBusRet<
bool>(QLatin1String(
"updateCockpit"), com1, com2, transponder, originator);
103 return m_dBusInterface->
callDBusRet<
bool>(QLatin1String(
"updateTransponderMode"), transponderMode, originator);
110 return m_dBusInterface->
callDBusRet<
bool>(QLatin1String(
"updateActiveComFrequency"), frequency, comUnit,
116 return m_dBusInterface->
callDBusRet<
bool>(QLatin1String(
"updateOwnAircraftPilot"), pilot);
121 return m_dBusInterface->
callDBusRet<
bool>(QLatin1String(
"updateSelcal"), selcal, originator);
128 return m_dBusInterface->
callDBusRet<
bool>(QLatin1String(
"updateOwnPosition"), position, altitude,
134 return m_dBusInterface->
callDBusRet<
bool>(QLatin1String(
"updateOwnCallsign"), callsign);
140 return m_dBusInterface->
callDBusRet<
bool>(QLatin1String(
"updateOwnIcaoCodes"), aircraftIcaoCode,
146 m_dBusInterface->
callDBus(QLatin1String(
"toggleTransponderMode"));
151 return m_dBusInterface->
callDBusRet<
bool>(QLatin1String(
"setTransponderMode"), mode);
156 return m_dBusInterface->
callDBusRet<
bool>(QLatin1String(
"parseCommandLine"), commandLine, originator);
ContextMode
How to handle a given context.
@ Remote
context runs in a different process.
The class providing facades (the contexts) for all DBus relevant operations.
CContextOwnAircraftProxy(CCoreFacadeConfig::ContextMode mode, CCoreFacade *runtime)
Constructor.
virtual bool parseCommandLine(const QString &commandLine, const swift::misc::CIdentifier &originator)
Parse a given command line.
virtual swift::misc::aviation::CComSystem getOwnComSystem(swift::misc::aviation::CComSystem::ComUnit unit) const
Get own COM system.
virtual bool updateOwnIcaoCodes(const swift::misc::aviation::CAircraftIcaoCode &aircraftIcaoCode, const swift::misc::aviation::CAirlineIcaoCode &airlineIcaoCode)
Set ICAO data.
virtual bool updateSelcal(const swift::misc::aviation::CSelcal &selcal, const swift::misc::CIdentifier &originator)
Own SELCAL code.
virtual bool updateTransponderMode(const swift::misc::aviation::CTransponder::TransponderMode &transponderMode, const swift::misc::CIdentifier &originator)
Update own transponder mode.
virtual bool updateCockpit(const swift::misc::aviation::CComSystem &com1, const swift::misc::aviation::CComSystem &com2, const swift::misc::aviation::CTransponder &transponder, const swift::misc::CIdentifier &originator)
Update own cockpit.
virtual bool updateActiveComFrequency(const swift::misc::physical_quantities::CFrequency &frequency, swift::misc::aviation::CComSystem::ComUnit comUnit, const swift::misc::CIdentifier &originator)
Tune in a COM frequency.
virtual swift::misc::simulation::CSimulatedAircraft getOwnAircraft() const
Get own aircraft.
virtual bool setTransponderMode(swift::misc::aviation::CTransponder::TransponderMode mode)
Set XPDR mode.
virtual swift::misc::aviation::CAircraftSituation getOwnAircraftSituation() const
Get own aircraft.
virtual swift::misc::aviation::CTransponder getOwnTransponder() const
Get own transponder.
virtual bool updateOwnPosition(const swift::misc::geo::CCoordinateGeodetic &position, const swift::misc::aviation::CAltitude &altitude, const swift::misc::aviation::CAltitude &pressureAltitude)
Update position.
virtual void toggleTransponderMode()
Toggle XPDR mode.
virtual bool updateOwnAircraftPilot(const swift::misc::network::CUser &pilot)
Set current pilot.
virtual bool updateOwnCallsign(const swift::misc::aviation::CCallsign &callsign)
Set callsign.
void relayBaseClassSignals(const QString &serviceName, QDBusConnection &connection, const QString &objectPath, const QString &interfaceName)
Relay signals from this class.
void changedAircraftCockpit(const swift::misc::simulation::CSimulatedAircraft &aircraft, const swift::misc::CIdentifier &originator)
Aircraft cockpit update.
void changedPilot(const swift::misc::network::CUser &pilot)
Own pilot (aka the swift user) changed.
void changedCallsign(const swift::misc::aviation::CCallsign &callsign)
Own callsign was changed.
void changedAircraftIcaoCodes(const swift::misc::aviation::CAircraftIcaoCode &aircraftIcaoCode, const swift::misc::aviation::CAirlineIcaoCode &airlineIcaoCode)
Own ICAO was changed.
static const QString & ObjectPath()
DBus object path.
static const QString & InterfaceName()
DBus interface name.
void movedAircraft(const swift::misc::physical_quantities::CLength &distance)
Aircraft has been moved from one location to another (changed scenery)
void changedSelcal(const swift::misc::aviation::CSelcal &selcal, const swift::misc::CIdentifier &originator)
Changed SELCAL code.
static const QString & coreServiceName()
Default service name.
Used for hand written interface based on virtual methods.
void callDBus(QLatin1String method, Args &&...args)
Call DBus, no return value.
Ret callDBusRet(QLatin1String method, Args &&...args)
Call DBus with synchronous return value.
Value object encapsulating information identifying a component of a modular distributed swift process...
Value object for ICAO classification.
Value object encapsulating information of an aircraft's situation.
Value object for ICAO classification.
Altitude as used in aviation, can be AGL or MSL altitude.
Value object encapsulating information of a callsign.
TransponderMode
Transponder codes.
Value object encapsulating information of a user.
Physical unit length (length)
Comprehensive information of an aircraft.
Free functions in swift::misc.