//---------------------------------------------------------------------------- ctkExampleDicomHost::ctkExampleDicomHost(ctkHostedAppPlaceholderWidget* placeholderWidget, int hostPort, int appPort) : ctkDicomAbstractHost(hostPort, appPort), PlaceholderWidget(placeholderWidget), exitingApplication(false) { connect(this,SIGNAL(appReady()),SLOT(onAppReady())); connect(this,SIGNAL(startProgress()),this,SLOT(onStartProgress())); connect(this,SIGNAL(releaseAvailableResources()),this,SLOT(onReleaseAvailableResources())); connect(this,SIGNAL(resumed()),this,SLOT(onResumed())); connect(this,SIGNAL(completed()),this,SLOT(onCompleted())); connect(this,SIGNAL(suspended()),this,SLOT(onSuspended())); connect(this,SIGNAL(canceled()),this,SLOT(onCanceled())); connect(this,SIGNAL(exited()),this,SLOT(onExited())); }
void HttpClient::onFinished(TcpClientState finishState) { if (finishState == eTCS_Failed) code = 0; if (mode == eHCM_File) { debugf("Download file len written: %d, res^ %d", fileTell(saveFile), isSuccessful()); if (!isSuccessful()) fileDelete(saveFile); fileClose(saveFile); } if (onCompleted) onCompleted(*this, isSuccessful()); TcpClient::onFinished(finishState); }
void HttpService::poll() { assert(multiHandle != nullptr); int runningCount = 0; curl_multi_perform(multiHandle, &runningCount); int messageCount = 0; CURLMsg* message = nullptr; while ((message = curl_multi_info_read(multiHandle, &messageCount)) != nullptr) { CURL* curl = message->easy_handle; curl_multi_remove_handle(multiHandle, curl); auto pair = sessions.find(curl); assert(pair != std::end(sessions)); if (pair != std::end(sessions)) { auto request = std::move(pair->second); if (message->msg != CURLMSG_DONE) { //std::fprintf(stderr, "CURL error in %s, %d\n", __FILE__, __LINE__); request->onError(); } else if (message->data.result != CURLE_OK) { //std::fprintf(stderr, "CURL error in %s, %d\n", __FILE__, __LINE__); request->onError(); } else { request->onCompleted(); } sessions.erase(pair); } } }
void OnCompleted() override { if (onCompleted) { onCompleted(); } }
void TextFileRecovererPlugin::onTextFileRecoveringEnded(TextFileRecoverer &rec) { m_recoverers.erase(&rec); if (completed()) onCompleted(); }
void TextFileRecovererPlugin::onTextEditSaverDestroyed(TextEditSaver &saver) { m_savers.erase(&saver); if (completed()) onCompleted(); }