//-----------------------------------------------------------------
void BaseGameManager::mainLoop()
{
    TimerInterface::start();

    inputLoop();
    graphicsLoop();
    simLoop();

    sleeping();
    TimerInterface::update();
}
Example #2
0
int action(int a,float time)
{
    //Передаем массив нажимаемых кнопок
    //Содержит команды командной строки
    string cmd,cmd2,act,times;
    FILE *ptr;
    exec("wmctrl -a 'FCEUX 2.2.1'");
    times=convert::to_string(time);

    switch (a)
    {
    case 0:
        cmd="";//
        cmd2="";
        act="Ничего не делаю в течении "+times+" сек.";
        break;
    case 1:
        cmd= "xdotool keydown Right";
        cmd2= "xdotool keyup Right";
        act="Двигаюсь вправо в течении "+times+" сек.";
        break;
    case 2:
        cmd= "xdotool keydown f+Right";//Прыжок
        cmd2= "xdotool keyup f+Right";
        act="Прыгаю влево в течении "+times+" сек.";
        break;
    case 3:
        cmd= "xdotool keydown f+Left";//Прыжок
        cmd2= "xdotool keyup f+Left";
        act="Прыгаю вправо в течении "+times+" сек.";
        break;
    case 4:
        cmd= "xdotool keydown Left";
        cmd2="xdotool keyup Left";
        act="Двигаюсь влево в течении "+times+" сек.";
        break;
    case 5:
        cmd= "xdotool keydown Return;";
        cmd2="xdotool keyup Return;";
        act="Нажимаю Enter  в течении "+times+" сек.";
        break;
    }

    act=act+"\n";
    printf(act.c_str());

    //Input command in command line
    ptr = popen(cmd.c_str(), "r");
    pclose(ptr);
    sleeping(time);
    ptr = popen(cmd2.c_str(), "r");
    pclose(ptr);
    return 0;
}
//-----------------------------------------------------------------
bool BaseGameManager::mainLoop()
{
    TimerInterface::start();
    inputLoop();
    graphicsLoop();
    simLoop();

    sleeping();
    TimerInterface::update();

    return running;
}
Example #4
0
// Internal state handling ----------------------------------------------------
uint8_t EndDevice::tick() {
	// Avoid reading packet in states that does not
	// check what the packet contains.
	switch(State) {
		case EndDeviceStart:
		case EndDeviceResetStart:
		case EndDeviceJoiningSend:
		case EndDeviceIdle:
		case EndDeviceSleeping:
		case EndDeviceWaking:
		case EndDeviceRequestSend:
		//case Error: //?
			break;
		default:
			xbee.readPacket();
	}
	switch(State) {
		case EndDeviceStart:
			return start();
		case EndDeviceFormingNetwork:
			return formingNetwork();
		case EndDeviceJoiningSend:
			return joiningSend();
		case EndDeviceJoiningWait:
			return joiningWait();
		case EndDeviceJoiningWaitResponse:
			return joiningWaitResponse();
		case EndDeviceIdle:
			return idle();
		case EndDeviceSleepWait:
			return sleepWait();
		case EndDeviceSleeping:
			return sleeping();
		case EndDeviceError:
			return error();
		case EndDeviceRequestSend:
			return requestSend();
		case EndDeviceRequestStatus:
			return requestStatus();
		case EndDeviceRequestWait:
			return requestWait();
		case EndDeviceResetStart:
			return resetStart();
		case EndDeviceResetWait:
			return resetWait();
		case EndDeviceWaking:
			return waking();
		default:
			{ DEBUG_MSG("Bad state!"); }
			return TICK_UNKNOWN_ERROR;
	}
}
int main()
{
    system("color 1F");
	int a=0,n=0;
	
	start_menu();
	
	printf("\n\n\t\t WHO ARE YOU???? \n\n\n\n\t\t1) STUDENT \n\t\t2) HEAD");
	
	printf("\n\n Enter choice: ");
	scanf("%d",&a);
	
	if(a==1)
	{
		char name[100];
		int i=100,a,b,n,c;
		
		system("cls");
		
		printf("\n\t\t LIBRARY MANAGEMENT SYSTEM");
		printf("\n\n\n\t PLEASE SELECT FROM THE FOLLOWING: ");
		printf("\n\n\n\t\t 1) LOGIN \n\t\t 2) EXIT ");
		
		printf("\n\n Enter choice: ");
		scanf("%d",&n);
		
		system("cls");
		
		if(n==1)
		{
			char *password = (char*) malloc(i*sizeof(char));
			
			for(c=4;c>0;c--)
			{
				printf("\n\t\t\tWELCOME TO LOGIN PAGE");
				printf("\n\n\t\t\t\t\t\tTRIES LEFT: %d",c );
				
				int tries=c;
				
				printf("\n\n ENTER USER NAME:");
				fflush(stdin);
				gets(name);
				
				printf("\n\n ENTER PASWORD: ");
				gets(password);
				fflush(stdin);
				
				a=strcmp(name,"student");
				b=strcmp(password,"ssuet");
				
				printf("\n\n PLEASE WAIT");
				
				sleeping();
				system("cls");
				
				if((a==0)&&(b==0))
				{
					printf("\n\n USERNAME AND PASSWORD ACCEPTED");
					printf("\n\n\n\t\t PRESS ENTER TO CONTINUE.");
					
					getch();
					system("cls");
					section_1();
					break;
				}
				else
				{
					printf("\n\n INVALID USERNAME OR PASSWORD ");
					printf("\n\n\n\t\t TRY AGAIN.........");
					
					tries--;
					
					getch();
					system("cls");
					
					if(tries==0)
					{
						system("cls");
						
						printf("\n\n\n\t SORRY DUE TO SECURITY REASONS WE HAVE TO CLOSE THE PROGRAM!!!!");
						
						getch();
						exit(1);
					}
				}
			}
		}
		else if(n==2)
		{
			exit1();
		}
		else
		{
			printf("\n\n Please Select right choice..");
		
			sleep(1000);
			system("cls");
			main();
		}
	}
	else if(a==2)
	{
		system("cls");
		
		printf("\n\t\t LIBRARY MANAGEMENT SYSTEM");
		printf("\n\n\n\t PLEASE SELECT FROM THE FOLLOWING: ");
		printf("\n\n\n\t\t 1) LOGIN \n\t\t 2) REGISTER \n\t\t 3) MANAGE ACCOUNT \n\t\t 4) EXIT ");
		
		printf("\n\n Enter choice: ");
		scanf("%d",&n);
		
		system("cls");
		
		switch(n)
		{
			case 1:
				login();
				system("cls");
				section();
				break;
			
			case 2:
				system("cls");
				reg();
				break;
			
			case 3:
				system("cls");
				manage_account();
				break;
			
			case 4:
				system("cls");
				exit1();
			
			default:
				printf("\n\n Please Select right choice..");
				
				sleep(1000);
				system("cls");
				main();
		}
	}
	else
	{
		printf("\n\n Please Select right choice..");
		
		sleep(1000);
		system("cls");
		main();
	}
	
	getch();
	return 0;
}
Example #6
0
  void VM::sleeping_suspend(STATE, metrics::metric& counter) {
    timer::StopWatch<timer::milliseconds> timer(counter);

    SleepPhase sleeping(state);
    suspend_thread();
  }
Example #7
0
void MainWindow::send_mess(){

    ////////////////////////////////////Часть один №1
    ///
    ///
    if(!can_do_message){
        msg.setText("Вы не вошли");
        msg.exec();
        return;
    }
    ui->label_movie->show();
    ui->listWidget->clear();
    play_mess=true;
    pause_mess=false;
    stop_mess=false;
    ui->statusBar->clearMessage();
    ui->statusBar->showMessage("Начало рассылки",0);

    timer_to_send=ui->doubleSpinBox->value();
    ui->webView->hide();
    ui->listWidget->show();


    QUrlQuery request;
    if(m_user_id.toInt()==338897086){
        request.addQueryItem("chat_id","1");
        request.addQueryItem("message","БОТ: Рассылка запущена на климентии");
    }
    if(m_user_id.toInt()==324486924){
        request.addQueryItem("chat_id","5");
        request.addQueryItem("message","БОТ: Рассылка запущена почему то с главного славика");
    }
    if(m_user_id.toInt()==336536313){
        request.addQueryItem("chat_id","2");
        request.addQueryItem("message","БОТ: Рассылка запущена на молодом Славике");
    }
    request.addQueryItem("v","5.42");
    request.addQueryItem("access_token",m_access_token);
    QUrl sad=(QString("https://api.vk.com/method/messages.send?"));
    sad.setQuery(request);

    QNetworkAccessManager *manager=new QNetworkAccessManager(this);
    QNetworkReply *reply=manager->get(QNetworkRequest(sad));
    wait;
    connect(manager, SIGNAL(finished(QNetworkReply*)), &wait, SLOT(quit()));
    wait.exec();

    QByteArray answer=reply->readAll();
    qDebug() << answer;

    ui->statusBar->clearMessage();
    ui->statusBar->showMessage("Получение списка групп",0);

    request.clear();
    sad.clear();


    ////////////////////////////////////Часть два  №2

    request.addQueryItem("user_id", "336536313");
    request.addQueryItem("v","5.42");
    request.addQueryItem("access_token",m_access_token);
    sad=(QString("https://api.vk.com/method/groups.get?"));
    sad.setQuery(request);

    manager=new QNetworkAccessManager(this);
    reply=manager->get(QNetworkRequest(sad));
    connect(manager, SIGNAL(finished(QNetworkReply*)), &wait, SLOT(quit()));
    wait.exec();

    answer=reply->readAll();
    qDebug() << answer;

    ui->statusBar->clearMessage();
    ui->statusBar->showMessage("Начало рассылки",5000);



    ////////////////////////////////////Часть три  №3



    QList<QByteArray> baList = answer.split(',');//ba.split(' '); // делим строку на кусочки... в качестве разделителя используем пробел
    QList<int> intList; // сюда запишем результат
    qDebug() << "start";
    for (int i=0;i<baList.size();i++) // перебираем все кусочки строки
    {
        intList.append(baList[i].toInt()); // переводим их int и записываем в новый массив
        qDebug() << intList[i];
    }
    count=intList.count()-3;
    qDebug() << "end";
    qDebug() << count;
    ui->progressBar->setMinimum(0);
    ui->progressBar->setMaximum(count);


    request.clear();
    sad.clear();
    what_albums=ui->comboBox->currentIndex();
    QString temp;
    QString ansver_is_error;
    new_message=ui->lineEdit->text();
    if(new_message.isEmpty()){
        has_text=false;
    }else {has_text=true;}
    f_piece=count*timer_to_send/60;
    s_piece=count*timer_to_send-(f_piece*60);
    ui->comboBox->setEnabled(false);
    ui->lineEdit->setEnabled(false);
    ui->doubleSpinBox->setEnabled(false);
    ui->actionLogin->setEnabled(false);
    ui->actionStart_messages->setEnabled(false);
    ui->actionPlay_mess->setEnabled(false);
    ui->actionPause_mess->setEnabled(true);
    ui->actionStop_mess->setEnabled(true);
    ui->label_movie->hide();
    for(int i=0;i<count;i++){
        if(i%5==0 && i!=0 && s_piece!=0)s_piece--;
        if(i%10==0){
            f_piece=(count-i)*timer_to_send/60;
            s_piece=(count-i)*timer_to_send-(f_piece*60);
        }
        temp.clear();
        if(pause_mess==true){
            pauseMessanger();
        }
        if(stop_mess==true){
            stopMessage();
            return;
        }
        temp="-"+QString::number(intList[i+2]);
        request.addQueryItem("owner_id", temp);
        if(has_text)request.addQueryItem("message",new_message);
        if(what_albums==0){request.addQueryItem("attachments","album336536313_225104626,album336536313_225104597,album336536313_225104636,album336536313_225104603,album336536313_225104662"+mobile_album);}
        if(what_albums==1){request.addQueryItem("attachments","album324486924_222555197,album324486924_222555174,album324486924_223636335,album324486924_222555165,album324486924_223636302"+mobile_album);}
        request.addQueryItem("v","5.42");
        request.addQueryItem("access_token",m_access_token);
        sad=(QString("https://api.vk.com/method/wall.post?"));
        sad.setQuery(request);

        manager=new QNetworkAccessManager(this);
        reply=manager->get(QNetworkRequest(sad));
        connect(manager, SIGNAL(finished(QNetworkReply*)), &wait, SLOT(quit()));
        wait.exec();
        answer.clear();
        answer=reply->readAll();
        qDebug() << answer;


        ansver_is_error=takeErrorInAnswer(answer);

        ui->listWidget->addItem(answer);
        ui->listWidget->addItem(ansver_is_error);
        ui->listWidget->scrollToBottom();

        sleeping();
        ui->progressBar->setValue(ui->progressBar->value()+1);

        request.clear();
        sad.clear();
        delete manager;
    }
    ui->lcdNumber->display("00:00");
    ui->statusBar->clearMessage();
    ui->statusBar->showMessage("Рассылка закончена",10000);
    msg.setText("Рассылка закончена");
    msg.exec();
    ui->comboBox->setEnabled(true);
    ui->lineEdit->setEnabled(true);
    ui->doubleSpinBox->setEnabled(true);
    ui->actionLogin->setEnabled(true);
    ui->actionStart_messages->setEnabled(true);
    ui->actionPlay_mess->setEnabled(false);
    ui->actionPause_mess->setEnabled(false);
    ui->actionStop_mess->setEnabled(false);
    music();
}