这篇教程C++ switchState函数代码示例写得很实用,希望能帮到您。
本文整理汇总了C++中switchState函数的典型用法代码示例。如果您正苦于以下问题:C++ switchState函数的具体用法?C++ switchState怎么用?C++ switchState使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。 在下文中一共展示了switchState函数的24个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。 示例1: mainint main(int argc, char **argv){ pthread_t thread_lan; void *retval; // pthread线程的返回值,本程序中没有实际用处#ifdef ENABLE_NLS textdomain(GETTEXT_PACKAGE); setlocale(LC_ALL, "");#endif atexit(exit_handle); initConfig(argc, argv); signal(SIGALRM, sig_handle); /* 定时器 */ signal(SIGHUP, sig_handle); /* 注销时 */ signal(SIGINT, sig_handle); /* Ctrl+C */ signal(SIGQUIT, sig_handle); /* Ctrl+/ */ signal(SIGTSTP, sig_handle); /* Ctrl+Z */ signal(SIGTERM, sig_handle); /* 被结束时 */ if (dhcpMode == 3) /* 认证前DHCP */ switchState(ID_DHCP); else if (proxyMode == 0) switchState(ID_START); /* 不使用代理时直接开始认证 */ else switchState(ID_WAITCLIENT); /* 开启代理时等待客户端认证 */ if (proxyMode == 0) { wan_thread(); // 非代理模式,直接执行,不使用多线程 } else { // 代理模式,为LAN多开一个线程 pthread_create(&thread_lan, NULL, lan_thread, 0); wan_thread(); pthread_join(thread_lan, &retval); } exit(EXIT_FAILURE);}
开发者ID:updateing,项目名称:mentohust-proxy,代码行数:33,
示例2: mainint main(int argc, char **argv){ atexit(exit_handle); if(initConfig(argc, argv)) exit(EXIT_FAILURE); signal(SIGALRM, sig_handle); /* 定时器 */ signal(SIGHUP, sig_handle); /* 注销时 */ signal(SIGINT, sig_handle); /* Ctrl+C */ signal(SIGQUIT, sig_handle); /* Ctrl+/ */ signal(SIGTSTP, sig_handle); /* Ctrl+Z */ signal(SIGTERM, sig_handle); /* 被结束时 */ signal(SIGKILL, sig_handle); if (dhcpMode == 3) /* 认证前DHCP */ switchState(ID_DHCP); else switchState(ID_START); /* 开始认证 */ if (-1 == pcap_loop(hPcap, -1, pcap_handle, NULL)) { /* 开始捕获数据包 */ printf("!! 捕获数据包失败,请检查网络连接!/n");#ifndef NO_NOTIFY if (showNotify) show_notify("MentoHUST - 错误提示", "捕获数据包失败,请检查网络连接!");#endif } exit(EXIT_FAILURE);}
开发者ID:981213,项目名称:mentohust,代码行数:29,
示例3: switchStateint switchState(int type){ if (state == type) /* 跟上次是同一状态? */ sendCount++; else { state = type; sendCount = 0; } if (sendCount>=MAX_SEND_COUNT && type!=ID_ECHO) /* 超时太多次? */ { switch (type) { case ID_START: printf(_(">> 找不到服务器,重启认证!/n")); break; case ID_IDENTITY: printf(_(">> 发送用户名超时,重启认证!/n")); break; case ID_CHALLENGE: printf(_(">> 发送密码超时,重启认证!/n")); break; case ID_WAITECHO: printf(_(">> 等候响应包超时,自行响应!/n")); return switchState(ID_ECHO); } return restart(); } switch (type) { case ID_DHCP: return renewIP(); case ID_START: return sendStartPacket(); case ID_IDENTITY: return sendIdentityPacket(); case ID_CHALLENGE: return sendChallengePacket(); case ID_WAITECHO: /* 塞尔的就不ping了,不好计时 */ return waitEchoPacket(); case ID_ECHO: if (pingHost && sendCount*echoInterval > 60) { /* 1分钟左右 */ if (isOnline() == -1) { printf(_(">> 认证掉线,开始重连!/n")); return switchState(ID_START); } sendCount = 1; }#ifndef NO_ARP if (gateMAC[0] != 0xFE) sendArpPacket();#endif return sendEchoPacket(); case ID_DISCONNECT: return sendLogoffPacket(); } return 0;}
开发者ID:Durant35,项目名称:mentohust-SYSU,代码行数:58,
示例4: Vector2void OptionState::step_impl(){ const int MAX_BOT_DELAY = 25; // 25 frames = 0.33s (gamespeed: normal) IMGUI& imgui = IMGUI::getSingleton(); imgui.doCursor(); imgui.doImage(GEN_ID, Vector2(400.0, 300.0), "background"); imgui.doOverlay(GEN_ID, Vector2(0.0, 0.0), Vector2(800.0, 600.0)); imgui.doEditbox(GEN_ID, Vector2(5.0, 10.0), 15, mPlayerName[LEFT_PLAYER], mPlayerNamePosition[LEFT_PLAYER]); imgui.doEditbox(GEN_ID, Vector2(425.0, 10.0), 15, mPlayerName[RIGHT_PLAYER], mPlayerNamePosition[RIGHT_PLAYER]); imgui.doSelectbox(GEN_ID, Vector2(5.0, 50.0), Vector2(375.0, 300.0), mScriptNames, mPlayerOptions[LEFT_PLAYER]); imgui.doSelectbox(GEN_ID, Vector2(425.0, 50.0), Vector2(795.0, 300.0), mScriptNames, mPlayerOptions[RIGHT_PLAYER]); imgui.doText(GEN_ID, Vector2(270.0, 310.0), TextManager::OP_DIFFICULTY ); float f = 1.f - (float)mBotStrength[0] / MAX_BOT_DELAY; imgui.doScrollbar(GEN_ID, Vector2(15.0, 350.0), f); mBotStrength[0] = static_cast<unsigned int> ((1.f-f) * MAX_BOT_DELAY + 0.5f); imgui.doText(GEN_ID, Vector2(235.0, 350.0), f > 0.66 ? TextManager::OP_STRONG : (f > 0.33 ? TextManager::OP_MEDIUM: TextManager::OP_WEAK)); f = 1.f - (float)mBotStrength[1] / MAX_BOT_DELAY; imgui.doScrollbar(GEN_ID, Vector2(440.0, 350.0), f); mBotStrength[1] = static_cast<unsigned int> ((1.f - f) * MAX_BOT_DELAY + 0.5f); imgui.doText(GEN_ID, Vector2(660.0, 350.0), f > 0.66 ? TextManager::OP_STRONG : (f > 0.33 ? TextManager::OP_MEDIUM: TextManager::OP_WEAK)); if (imgui.doButton(GEN_ID, Vector2(40.0, 390.0), TextManager::OP_INPUT_OP)) { save(); switchState(new InputOptionsState()); } if (imgui.doButton(GEN_ID, Vector2(40.0, 430.0), TextManager::OP_GFX_OP)) { save(); switchState(new GraphicOptionsState()); } if (imgui.doButton(GEN_ID, Vector2(40.0, 470.0), TextManager::OP_MISC)) { save(); switchState(new MiscOptionsState()); } if (imgui.doButton(GEN_ID, Vector2(224.0, 530.0), TextManager::LBL_OK)) { save(); switchState(new MainMenuState()); } if (imgui.doButton(GEN_ID, Vector2(424.0, 530.0), TextManager::LBL_CANCEL)) { switchState(new MainMenuState()); }}
开发者ID:EliasOenal,项目名称:blobby,代码行数:58,
示例5: renewIPstatic int renewIP(){ setTimer(0); /* 取消定时器 */ printf(_(">> 正在获取IP.../n")); system(dhcpScript); printf(_(">> 操作结束。/n")); dhcpMode += 3; /* 标记为已获取,123变为456,5不需再认证*/ if (fillHeader() == -1) exit(EXIT_FAILURE); if (dhcpMode == 5) return switchState(ID_ECHO); return switchState(ID_START);}
开发者ID:fafa-npu,项目名称:mentohust-with-free,代码行数:13,
示例6: mainint main(int argc, char *argv[]){ QCoreApplication::setOrganizationName("SRFGames"); QCoreApplication::setOrganizationDomain("sol-online.org"), QCoreApplication::setApplicationName("ShareYourClipboard");#ifdef Q_OS_MAC QDir dir(argv[0]); dir.cdUp(); QString currentDir = dir.absolutePath(); dir.cdUp(); dir.cd("PlugIns"); QCoreApplication::setLibraryPaths(QStringList(dir.absolutePath()));#endif QApplication a(argc, argv); QApplication::setQuitOnLastWindowClosed(false);#ifdef Q_OS_MAC QDir::setCurrent(currentDir);#endif qDebug() << "init manager/n"; cClipboardManager manager(a.clipboard()); qDebug() << "init tray icon/n"; cTrayIcon trIcon(&manager); QObject::connect(&trIcon, SIGNAL(switchState()), &manager, SLOT(switchState())); QObject::connect(&trIcon, SIGNAL(pasteFiles()), &manager, SLOT(pasteFiles())); QObject::connect(&manager, SIGNAL(onStateChanged(cClipboardManager::eClipboardState)), &trIcon, SLOT(setState(cClipboardManager::eClipboardState))); qDebug() << "init settings window/n"; SettingsWindow settingsWindow(&manager); QObject::connect(&trIcon, SIGNAL(showSettings()), &settingsWindow, SLOT(showNormal())); QObject::connect(&settingsWindow, SIGNAL(preferencesChange()), &manager, SLOT(onPreferencesChanged())); qDebug() << "init copy dialog/n"; CopyProgressDialog copydialog; QObject::connect(&manager, SIGNAL(onStartCopyProcess(QString)), ©dialog, SLOT(start(QString))); QObject::connect(&manager, SIGNAL(onStopCopyProcess()), ©dialog, SLOT(stop())); QObject::connect(&manager, SIGNAL(showMessage(QString)), ©dialog, SLOT(showMessage(QString))); QObject::connect(&manager, SIGNAL(onSetProgressMain(QString,int,int)), ©dialog, SLOT(setProgressMain(QString,int,int))); QObject::connect(&manager, SIGNAL(onSetProgressSecond(QString,int,int)), ©dialog, SLOT(setProgressSecond(QString,int,int))); QObject::connect(©dialog, SIGNAL(cancel()), &manager, SLOT(cancelDownloading())); qDebug() << "start app loop/n"; int result = a.exec(); qDebug() << "application close/n"; return result;}
开发者ID:Allexin,项目名称:ShareYourClipboard,代码行数:50,
示例7: telemetryInterrupt10msvoid telemetryInterrupt10ms(){ if (jetiReady) { jetiKeys = JETI_KEY_NOCHANGE; if (switchState((EnumKeys)(KEY_UP))) jetiKeys &= JETI_KEY_UP; if (switchState((EnumKeys)(KEY_DOWN))) jetiKeys &= JETI_KEY_DOWN; if (switchState((EnumKeys)(KEY_LEFT))) jetiKeys &= JETI_KEY_LEFT; if (switchState((EnumKeys)(KEY_RIGHT))) jetiKeys &= JETI_KEY_RIGHT; jetiReady = 0; // invalidate buffer JETI_EnableTXD(); }}
开发者ID:4408,项目名称:opentx,代码行数:14,
示例8: switchStatevoid cTrayIcon::onTray(QSystemTrayIcon::ActivationReason reason){#ifndef Q_OS_MAC if (reason==QSystemTrayIcon::Trigger) emit switchState();#endif}
开发者ID:Allexin,项目名称:ShareYourClipboard,代码行数:7,
示例9: getHit void getHit() { currState->hit(); auto x = dynamic_cast<InvincMarioState*>(currState); if (x) { return; } //if not invincible, convert to short mario switchState(new ShortMarioState()); }
开发者ID:tehnugget,项目名称:INFO3220-Patterns,代码行数:7,
示例10: getStarMan void getStarMan() { //better way would be to use a transition table auto x = dynamic_cast<InvincMarioState*>(currState); if (!x) { switchState(new InvincMarioState()); } }
开发者ID:tehnugget,项目名称:INFO3220-Patterns,代码行数:7,
示例11: sendEchoPacketstatic int sendEchoPacket(){ if (startMode%3 == 2) /* 赛尔 */ { *(u_int16_t *)(sendPacket+0x0E) = htons(0x0106); *(u_int16_t *)(sendPacket+0x10) = 0; memset(sendPacket+0x12, 0xa5, 42); switchState(ID_WAITECHO); /* 继续等待 */ return pcap_sendpacket(hPcap, sendPacket, 60); } if (sendCount == 0) { u_char echo[] = { 0x00,0x1E,0xFF,0xFF,0x37,0x77,0x7F,0x9F,0xFF,0xFF,0xD9,0x13,0xFF,0xFF,0x37,0x77, 0x7F,0x9F,0xFF,0xFF,0xF7,0x2B,0xFF,0xFF,0x37,0x77,0x7F,0x3F,0xFF }; printf(_(">> 发送心跳包以保持在线.../n")); fillEtherAddr(0x888E01BF); memcpy(sendPacket+0x10, echo, sizeof(echo)); setTimer(echoInterval); } fillEchoPacket(sendPacket); return pcap_sendpacket(hPcap, sendPacket, 0x2D);}
开发者ID:Durant35,项目名称:mentohust-SYSU,代码行数:25,
示例12: switchStateImapSession::~ImapSession() { switchState(ImapSessionState::EXIT); if (service_) delete service_; if (socket_) delete socket_;}
开发者ID:moncruist,项目名称:Nestor,代码行数:7,
示例13: newMvt void Dodge::onAnimationEnd() { State::onAnimationEnd(); Movement newMvt(_mvt); newMvt.setAction(Movement::Shield); switchState(newMvt & ~Movement::Up & ~Movement::Down); }
开发者ID:TurpIF,项目名称:EUSDAB,代码行数:7,
示例14: message void message(const NetMessage* msg) { T new_state = current->message(msg); if ( new_state != state ) { switchState(new_state); } }
开发者ID:LucasVini,项目名称:OldNetPanzer,代码行数:8,
示例15: switchStatevoid sstvRx::eraseImage(){ switchState(RESTART); while(SSTVState!=HUNTING) { QApplication::processEvents(); }}
开发者ID:cureton,项目名称:qsstv,代码行数:8,
示例16: switchStatevoid QgsAddRemoveMultiFrameCommand::undo(){ if ( checkFirstRun() ) { return; } switchState();}
开发者ID:Ariki,项目名称:QGIS,代码行数:8,
示例17: process void process() { T new_state = current->process(); if ( new_state != state ) { switchState(new_state); } }
开发者ID:LucasVini,项目名称:OldNetPanzer,代码行数:8,
示例18: switchState void Crouch::onRight(const Event & e) { State::onRight(e); if (e.edge == Event::RisingEdge) { switchState(Movement::Crouch | Movement::Right); setNextStateAnimationFrameToCurrentFrame(); } }
开发者ID:TurpIF,项目名称:EUSDAB,代码行数:9,
示例19: state_ImapSession::ImapSession(service::Service *service, net::SocketSingle *socket) : state_(ImapSessionState::START), service_(service), socket_(socket), onExitCallback_(nullptr) { if (service_ == nullptr) throw invalid_argument("ImapSession::ImapSession: service is nullptr"); if (socket_ == nullptr) throw invalid_argument("ImapSession::ImapSession: socket is nullptr"); switchState(ImapSessionState::CONNECTED);}
开发者ID:moncruist,项目名称:Nestor,代码行数:9,
示例20: mainint main(){ MemController<CarState> ctrl = MemController<CarState>(); CarState state; //initial state: state = ctrl.getLastElement(); memset(&state,0,sizeof(state)); ctrl.pushElement(state); while(1) { for(int i=0;i<5000;i++){;} int nios; // get the lastest car state from the shared memory state = ctrl.getLastElement(true); // print some diagnostics information int speed = state.motorEcus[0].iCurrentSpeed + state.motorEcus[1].iCurrentSpeed + state.motorEcus[2].iCurrentSpeed + state.motorEcus[3].iCurrentSpeed; LOG_DEBUG("/rSpeed: %+5d mm/s, OpMode: %#x ", speed, state.currMode); //LOG_DEBUG("yippee!"); // perform state switch if requested. if(state.reqMode != state.currMode) { switchState(&state); } state.counterCarControl=state.counterComm; setMotorSpeeds(&state); if(state.currMode==OPMODE_MANUDRIVE){ state.ip1=state.reqip1; state.ip2=state.reqip2; state.ip3=state.reqip3; state.ip4=state.reqip4; } else{ state.ip1=VCIPPart1; state.ip2=VCIPPart2; state.ip3=VCIPPart3; state.ip4=VCIPPart4; } ctrl.pushElement(state); // TODO: write a delay function w/ timer. Otherwise we might run into problems blocking the mutex from all the shared memory reads... //delay(10); for (int i = 0; i < 10000; i++) {;} } return -1;}
开发者ID:fjanssen,项目名称:Car2X,代码行数:57,
示例21: switchState void Run::onLeft(const Event & e) { State::onLeft(e); if (e.edge == Event::RisingEdge) { if (_mvt.flag() & Movement::Right) { switchState(Movement::Walk | Movement::Left); } else if (_mvt.flag() & Movement::Left) { switchState(Movement::Run | Movement::Left); } } else if (e.edge == Event::FallingEdge) { switchState(Movement::Idle | Movement::Left); } }
开发者ID:tcantenot,项目名称:EUSDAB,代码行数:19,
示例22: switchStatevoid KscreenEffect::prePaintScreen(ScreenPrePaintData &data, int time){ if (m_state == StateFadingIn || m_state == StateFadingOut) { m_timeLine.setCurrentTime(m_timeLine.currentTime() + time); if (m_timeLine.currentValue() >= 1.0) { switchState(); } } effects->prePaintScreen(data, time);}
开发者ID:aarontc,项目名称:kde-workspace,代码行数:10,
示例23: redovoid QgsAddRemoveItemCommand::redo(){ QUndoCommand::redo(); // call redo() on all children if ( mFirstRun ) { mFirstRun = false; return; } switchState();}
开发者ID:Gustry,项目名称:QGIS,代码行数:10,
示例24: undovoid QgsAddRemoveItemCommand::undo(){ QUndoCommand::undo(); // call undo() on all children, in reverse order if ( mFirstRun ) { mFirstRun = false; return; } switchState();}
开发者ID:Gustry,项目名称:QGIS,代码行数:10,
注:本文中的switchState函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 C++ switch_api_execute函数代码示例 C++ sweepwholelist函数代码示例 |