+Application DownCast(Dali::RefObject* refObject)
+{
+ return Application(dynamic_cast<Dali::Internal::Adaptor::Application*>(refObject));
+}
+
+CustomCommandReceivedSignalType& CustomCommandReceivedSignal(Application application)
+{
+ DALI_ASSERT_ALWAYS(Adaptor::IsAvailable() && "Adaptor is not available")
+
+ Internal::Adaptor::NetworkServicePtr networkService = Internal::Adaptor::NetworkService::Get();
+
+ DALI_ASSERT_ALWAYS(networkService && "Network Service Unavailable");
+
+ return networkService->CustomCommandReceivedSignal();
+}
+
+int32_t GetRenderThreadId(Application application)
+{
+ return Internal::Adaptor::GetImplementation(application).GetRenderThreadId();
+}
+
+void FlushUpdateMessages(Application application)
+{
+ Internal::Adaptor::GetImplementation(application).FlushUpdateMessages();
+}
+