diff --git a/.gitignore b/.gitignore index 524bee2..cb55d82 100644 --- a/.gitignore +++ b/.gitignore @@ -5,4 +5,5 @@ timeout cmake_install.cmake serial-port/ lib/ -Ymodem*/ \ No newline at end of file +Ymodem*/ +build/ \ No newline at end of file diff --git a/YmodemFileReceive.cpp b/YmodemFileReceive.cpp index 3c439dc..2d5553d 100644 --- a/YmodemFileReceive.cpp +++ b/YmodemFileReceive.cpp @@ -2,7 +2,7 @@ #include #include #include - +#include #include #include #include "TimeoutSerial.h" @@ -20,8 +20,6 @@ YmodemFileReceive::YmodemFileReceive() : setTimeMax(5); setErrorMax(999); - readTimer.async_wait(readTimeOut); - writeTimer.async_wait(writeTimeOut); } YmodemFileReceive::~YmodemFileReceive() @@ -52,6 +50,7 @@ bool YmodemFileReceive::startReceive() progress = 0; status = StatusEstablish; + io.run(); serialPort->setTimeout(posix_time::seconds(0)); return true; } @@ -83,7 +82,7 @@ void YmodemFileReceive::readTimeOut(const boost::system::error_code& e) if((status == StatusEstablish) || (status == StatusTransmit)) { readTimer.expires_from_now(boost::posix_time::millisec(READ_TIME_OUT)); - readTimer.async_wait(readTimeOut); + readTimer.async_wait(boost::bind(&YmodemFileReceive::readTimeOut,this,_1)); } } @@ -139,7 +138,7 @@ Ymodem::Code YmodemFileReceive::callback(Status status, uint8_t *buff, uint32_t YmodemFileReceive::status = StatusError; writeTimer.expires_from_now(boost::posix_time::millisec(WRITE_TIME_OUT)); - writeTimer.async_wait(writeTimeOut); + writeTimer.async_wait(boost::bind(&YmodemFileReceive::writeTimeOut,this,_1)); return CodeCan; } @@ -149,7 +148,7 @@ Ymodem::Code YmodemFileReceive::callback(Status status, uint8_t *buff, uint32_t YmodemFileReceive::status = StatusError; writeTimer.expires_from_now(boost::posix_time::millisec(WRITE_TIME_OUT)); - writeTimer.async_wait(writeTimeOut); + writeTimer.async_wait(boost::bind(&YmodemFileReceive::writeTimeOut,this,_1)); return CodeCan; } @@ -187,7 +186,7 @@ Ymodem::Code YmodemFileReceive::callback(Status status, uint8_t *buff, uint32_t YmodemFileReceive::status = StatusFinish; writeTimer.expires_from_now(boost::posix_time::millisec(WRITE_TIME_OUT)); - writeTimer.async_wait(writeTimeOut); + writeTimer.async_wait(boost::bind(&YmodemFileReceive::writeTimeOut,this,_1)); return CodeAck; } @@ -200,7 +199,7 @@ Ymodem::Code YmodemFileReceive::callback(Status status, uint8_t *buff, uint32_t writeTimer.expires_from_now(boost::posix_time::millisec(WRITE_TIME_OUT)); - writeTimer.async_wait(writeTimeOut); + writeTimer.async_wait(boost::bind(&YmodemFileReceive::writeTimeOut,this,_1)); return CodeCan; } @@ -210,7 +209,7 @@ Ymodem::Code YmodemFileReceive::callback(Status status, uint8_t *buff, uint32_t YmodemFileReceive::status = StatusTimeout; writeTimer.expires_from_now(boost::posix_time::millisec(WRITE_TIME_OUT)); - writeTimer.async_wait(writeTimeOut); + writeTimer.async_wait(boost::bind(&YmodemFileReceive::writeTimeOut,this,_1)); return CodeCan; } @@ -222,7 +221,7 @@ Ymodem::Code YmodemFileReceive::callback(Status status, uint8_t *buff, uint32_t YmodemFileReceive::status = StatusError; writeTimer.expires_from_now(boost::posix_time::millisec(WRITE_TIME_OUT)); - writeTimer.async_wait(writeTimeOut); + writeTimer.async_wait(boost::bind(&YmodemFileReceive::writeTimeOut,this,_1)); return CodeCan; } diff --git a/build/.cmake/api/v1/reply/index-2021-08-26T09-17-06-0267.json b/build/.cmake/api/v1/reply/index-2021-08-26T09-17-06-0267.json deleted file mode 100644 index 99e330d..0000000 --- a/build/.cmake/api/v1/reply/index-2021-08-26T09-17-06-0267.json +++ /dev/null @@ -1,94 +0,0 @@ -{ - "cmake" : - { - "generator" : - { - "name" : "Unix Makefiles" - }, - "paths" : - { - "cmake" : "/usr/bin/cmake", - "cpack" : "/usr/bin/cpack", - "ctest" : "/usr/bin/ctest", - "root" : "/usr/share/cmake-3.16" - }, - "version" : - { - "isDirty" : false, - "major" : 3, - "minor" : 16, - "patch" : 3, - "string" : "3.16.3", - "suffix" : "" - } - }, - "objects" : - [ - { - "jsonFile" : "codemodel-v2-2f061e11e865d7291da7.json", - "kind" : "codemodel", - "version" : - { - "major" : 2, - "minor" : 0 - } - }, - { - "jsonFile" : "cache-v2-9de8371d03fa8cbf9def.json", - "kind" : "cache", - "version" : - { - "major" : 2, - "minor" : 0 - } - } - ], - "reply" : - { - "client-vscode" : - { - "query.json" : - { - "requests" : - [ - { - "kind" : "cache", - "version" : 2 - }, - { - "kind" : "codemodel", - "version" : 2 - }, - { - "kind" : "toolchains", - "version" : 1 - } - ], - "responses" : - [ - { - "jsonFile" : "cache-v2-9de8371d03fa8cbf9def.json", - "kind" : "cache", - "version" : - { - "major" : 2, - "minor" : 0 - } - }, - { - "jsonFile" : "codemodel-v2-2f061e11e865d7291da7.json", - "kind" : "codemodel", - "version" : - { - "major" : 2, - "minor" : 0 - } - }, - { - "error" : "unknown request kind 'toolchains'" - } - ] - } - } - } -}