コード例 #1
0
ファイル: IOThread.cpp プロジェクト: StefanL74/XCSoar
void
IOThread::Run()
{
  assert(!running);

  mutex.Lock();

  while (!quit) {
    if (modified) {
      modified = false;
      Update();
    }

    mutex.Unlock();
    poll.Wait();
    mutex.Lock();

    if (quit)
      break;

    HandleReady(CollectReady());
  }

  mutex.Unlock();
}
コード例 #2
0
ファイル: checker.cpp プロジェクト: DJm00n/leechcraft
	void Checker::rotateQueue ()
	{
		if (Artists_.isEmpty ())
		{
			HandleReady ();
			return;
		}

		Current_ = Artists_.takeFirst ();
		const auto pending = Provider_->GetDiscography (Current_.Name_);
		connect (pending->GetQObject (),
				SIGNAL (ready ()),
				this,
				SLOT (handleDiscoReady ()));
		connect (pending->GetQObject (),
				SIGNAL (error (QString)),
				this,
				SLOT (handleDiscoError ()));
	}
コード例 #3
0
void UpgradeSMHandleMsg(MessageId id, Message message)
{
    bool handled=FALSE;

    PRINT(("curr state 0x%x msg id 0x%x\n", GetState(), id));

    switch(GetState())
    {
    case UPGRADE_STATE_BATTERY_LOW:
        handled = HandleBatteryLow(id, message);
        break;

    case UPGRADE_STATE_CHECK_STATUS:
        handled = HandleCheckStatus(id, message);
        break;

    case UPGRADE_STATE_SYNC:
        handled = HandleSync(id, message);
        break;

    case UPGRADE_STATE_READY:
        handled = HandleReady(id, message);
        break;

    case UPGRADE_STATE_PROHIBITED:
        handled = HandleProhibited(id, message);
        break;

    case UPGRADE_STATE_ABORTING:
        handled = HandleAborting(id, message);
        break;

    case UPGRADE_STATE_DATA_READY:
        handled = HandleDataReady(id, message);
        break;

    case UPGRADE_STATE_DATA_TRANSFER:
        handled = HandleDataTransfer(id, message);
        break;

    case UPGRADE_STATE_DATA_TRANSFER_SUSPENDED:
        handled = HandleDataTransferSuspended(id, message);
        break;

    case UPGRADE_STATE_VALIDATING:
        handled = HandleValidating(id, message);
        break;

    case UPGRADE_STATE_WAIT_FOR_VALIDATE:
        handled = HandleWaitForValidate(id, message);
        break;

    case UPGRADE_STATE_VALIDATED:
        handled = HandleValidated(id, message);
        break;

    case UPGRADE_STATE_RESTARTED_FOR_COMMIT:
        handled = HandleRestartedForCommit(id, message);
        break;

    case UPGRADE_STATE_COMMIT_HOST_CONTINUE:
        handled = HandleCommitHostContinue(id, message);
        break;

    case UPGRADE_STATE_COMMIT_VERIFICATION:
        handled = HandleCommitVerification(id, message);
        break;

    case UPGRADE_STATE_COMMIT_CONFIRM:
        handled = HandleCommitConfirm(id, message);
        break;

    case UPGRADE_STATE_COMMIT:
        handled = HandleCommit(id, message);
        break;

    case UPGRADE_STATE_PS_JOURNAL:
        handled = HandlePsJournal(id, message);
        break;

    case UPGRADE_STATE_REBOOT_TO_RESUME:
        handled = HandleRebootToResume(id,message);
        break;

    default:
        PRINT(("ERROR: Unhandled SM state %d",GetState()));
        break;
    }

    if(GetState() != UPGRADE_STATE_CHECK_STATUS)
    {
        handled = DefaultHandler(id, message, handled);
    }

    if (!handled)
    {
        PRINT(("Msg %d not handled",id));
    }

    PRINT(("next state 0x%x\n", GetState()));
}