Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void Protocol::process(int code) {
- qDebug()<<"process"<<code;
- switch ( STATE ) {
- qDebug()<<"PROCESS "<<code;
- case STATES::INIT:
- qDebug()<<"INIT";
- emit signal_state( QString("INIT") );
- mCommander->rezerve();
- STATE = STATES::REZERVE_SEND;
- emit signal_state ( QString("REZERVE_SEND") );
- break;
- case STATES::REZERVE_SEND:
- if (code == 42) {
- STATE = STATES::PREPARED_OK;
- emit signal_state(QString("PREPARED_OK"));
- process();
- }
- else {
- emit signal_state(QString("PREPARED_FAILED"));
- STATE = STATES::PREPARED_FAILED;
- }
- break;
- case STATES::PREPARED_OK:
- mCommander->sendRaw();
- STATE = STATES::RAW_SENT;
- emit signal_state( QString("RAW_SENT") );
- //process();
- break;
- case STATES::PREPARED_FAILED:
- break;
- case STATES::RAW_SENT:
- if (code == 88) {
- STATE = STATES::RAW_CONFIRMED;
- emit signal_state(QString("RAW_CONFIRMED"));
- process();
- }
- else {
- qDebug()<<"RAW_SENT -> RAW_NOT_CONFIRMED "<<code;
- STATE = STATES::RAW_NOT_CONFIRMED;
- emit signal_state(QString("RAW_NOT_CONFIRMED"));
- }
- break;
- case STATES::RAW_CONFIRMED:
- mCommander->sendFile();
- STATE = STATES::FILE_SENT;
- emit signal_state(QString("FILE_SENT_CMD"));
- break;
- case STATES::FILE_SENT:
- if (code == 77) {
- emit signal_state(QString("FILE_SENT_CONFIRMED"));
- STATE = STATES::FILE_SENT_CONFIRMED;
- process();
- }
- else {
- emit signal_state(QString("FILE_SENT_NOT_CONFIRMED"));
- STATE = STATES::FILE_SENT_NOT_CONFIRMED;
- }
- break;
- case STATES::FILE_SENT_CONFIRMED:
- STATE = STATES::FINAL;
- emit signal_state(QString("FINAL"));
- emit confirmed();
- break;
- case STATES::FINAL:
- break;
- }
- return;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement