diff --git a/src/blackcore/context_runtime.cpp b/src/blackcore/context_runtime.cpp index 648f28776..b8265aa94 100644 --- a/src/blackcore/context_runtime.cpp +++ b/src/blackcore/context_runtime.cpp @@ -565,6 +565,18 @@ namespace BlackCore return static_cast(this->m_contextApplication); } + CContextOwnAircraft *CRuntime::getCContextOwnAircraft() + { + Q_ASSERT_X(!this->m_contextOwnAircraft || this->m_contextOwnAircraft->usingLocalObjects(), "CCoreRuntime", "Cannot downcast to local object"); + return static_cast(this->m_contextOwnAircraft); + } + + const CContextOwnAircraft *CRuntime::getCContextOwnAircraft() const + { + Q_ASSERT_X(!this->m_contextOwnAircraft || this->m_contextOwnAircraft->usingLocalObjects(), "CCoreRuntime", "Cannot downcast to local object"); + return static_cast(this->m_contextOwnAircraft); + } + CContextSimulator *CRuntime::getCContextSimulator() { Q_ASSERT_X(!this->m_contextSimulator || this->m_contextSimulator->usingLocalObjects(), "CCoreRuntime", "Cannot downcast to local object"); diff --git a/src/blackcore/context_runtime.h b/src/blackcore/context_runtime.h index d7cb20f78..be424a2a1 100644 --- a/src/blackcore/context_runtime.h +++ b/src/blackcore/context_runtime.h @@ -14,7 +14,7 @@ namespace BlackCore class CContextApplication; class CContextAudio; class CContextNetwork; - class ContextOwnAircraft; + class CContextOwnAircraft; class CContextSettings; class CContextSimulator; class IContextApplication; @@ -168,6 +168,14 @@ namespace BlackCore //! \remarks only applicable for local object const CContextAudio *getCContextAudio() const; + //! Context for own aircraft + //! \remarks only applicable for local object + CContextOwnAircraft *getCContextOwnAircraft(); + + //! Context for own aircraft + //! \remarks only applicable for local object + const CContextOwnAircraft *getCContextOwnAircraft() const; + //! Context for simulator //! \remarks only applicable for local object CContextSimulator *getCContextSimulator(); @@ -179,6 +187,7 @@ namespace BlackCore //! Init void init(const CRuntimeConfig &config); + private: bool m_init; /*!< flag */ CDBusServer *m_dbusServer;