[Com0com-cvs] hub4com/plugins/tcp comport.cpp, 1.9, 1.10 comport.h, 1.6, 1.7 import.h, 1.3, 1.4 por
The virtual serial port driver for Windows.
Brought to you by:
vfrolov
From: Vyacheslav F. <vf...@us...> - 2008-11-24 16:31:02
|
Update of /cvsroot/com0com/hub4com/plugins/tcp In directory ddv4jf1.ch3.sourceforge.com:/tmp/cvs-serv1198/plugins/tcp Modified Files: comport.cpp comport.h import.h port.cpp Log Message: Removed pOnXoffXon Index: comport.cpp =================================================================== RCS file: /cvsroot/com0com/hub4com/plugins/tcp/comport.cpp,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** comport.cpp 24 Nov 2008 12:37:00 -0000 1.9 --- comport.cpp 24 Nov 2008 16:30:56 -0000 1.10 *************** *** 20,23 **** --- 20,26 ---- * * $Log$ + * Revision 1.10 2008/11/24 16:30:56 vfrolov + * Removed pOnXoffXon + * * Revision 1.9 2008/11/24 12:37:00 vfrolov * Changed plugin API *************** *** 132,138 **** --- 135,145 ---- writeQueueLimit(256), writeQueued(0), + writeSuspended(FALSE), writeLost(0), writeLostTotal(0) { + writeQueueLimitSendXoff = (writeQueueLimit*2)/3; + writeQueueLimitSendXon = writeQueueLimit/3; + string path; *************** *** 330,338 **** } - if (writeQueued <= writeQueueLimit/2 && (writeQueued + len) > writeQueueLimit/2) - pOnXoffXon(hMasterPort, TRUE); - writeQueued += len; //cout << "Started Write " << name << " " << len << " " << writeQueued << endl; } --- 337,353 ---- } writeQueued += len; + if (writeQueued > writeQueueLimitSendXoff && !writeSuspended) { + writeSuspended = TRUE; + + HUB_MSG msg; + + msg.type = HUB_MSG_TYPE_ADD_XOFF_XON; + msg.u.val = TRUE; + + pOnRead(hMasterPort, &msg); + } + //cout << "Started Write " << name << " " << len << " " << writeQueued << endl; } *************** *** 409,416 **** writeLost += len - done; - if (writeQueued > writeQueueLimit/2 && (writeQueued - len) <= writeQueueLimit/2) - pOnXoffXon(hMasterPort, FALSE); - writeQueued -= len; } --- 424,439 ---- writeLost += len - done; writeQueued -= len; + + if (writeQueued <= writeQueueLimitSendXon && writeSuspended) { + writeSuspended = FALSE; + + HUB_MSG msg; + + msg.type = HUB_MSG_TYPE_ADD_XOFF_XON; + msg.u.val = FALSE; + + pOnRead(hMasterPort, &msg); + } } Index: import.h =================================================================== RCS file: /cvsroot/com0com/hub4com/plugins/tcp/import.h,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** import.h 24 Nov 2008 12:37:00 -0000 1.3 --- import.h 24 Nov 2008 16:30:56 -0000 1.4 *************** *** 20,23 **** --- 20,26 ---- * * $Log$ + * Revision 1.4 2008/11/24 16:30:56 vfrolov + * Removed pOnXoffXon + * * Revision 1.3 2008/11/24 12:37:00 vfrolov * Changed plugin API *************** *** 37,41 **** extern ROUTINE_BUF_ALLOC *pBufAlloc; extern ROUTINE_BUF_FREE *pBufFree; - extern ROUTINE_ON_XOFF_XON *pOnXoffXon; extern ROUTINE_ON_READ *pOnRead; /////////////////////////////////////////////////////////////// --- 40,43 ---- Index: port.cpp =================================================================== RCS file: /cvsroot/com0com/hub4com/plugins/tcp/port.cpp,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** port.cpp 24 Nov 2008 12:37:00 -0000 1.8 --- port.cpp 24 Nov 2008 16:30:56 -0000 1.9 *************** *** 20,23 **** --- 20,26 ---- * * $Log$ + * Revision 1.9 2008/11/24 16:30:56 vfrolov + * Removed pOnXoffXon + * * Revision 1.8 2008/11/24 12:37:00 vfrolov * Changed plugin API *************** *** 296,300 **** ROUTINE_BUF_ALLOC *pBufAlloc; ROUTINE_BUF_FREE *pBufFree; - ROUTINE_ON_XOFF_XON *pOnXoffXon; ROUTINE_ON_READ *pOnRead; /////////////////////////////////////////////////////////////// --- 299,302 ---- *************** *** 305,309 **** if (!ROUTINE_IS_VALID(pHubRoutines, pBufAlloc) || !ROUTINE_IS_VALID(pHubRoutines, pBufFree) || - !ROUTINE_IS_VALID(pHubRoutines, pOnXoffXon) || !ROUTINE_IS_VALID(pHubRoutines, pOnRead)) { --- 307,310 ---- *************** *** 313,317 **** pBufAlloc = pHubRoutines->pBufAlloc; pBufFree = pHubRoutines->pBufFree; - pOnXoffXon = pHubRoutines->pOnXoffXon; pOnRead = pHubRoutines->pOnRead; --- 314,317 ---- Index: comport.h =================================================================== RCS file: /cvsroot/com0com/hub4com/plugins/tcp/comport.h,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** comport.h 24 Nov 2008 12:37:00 -0000 1.6 --- comport.h 24 Nov 2008 16:30:56 -0000 1.7 *************** *** 20,23 **** --- 20,26 ---- * * $Log$ + * Revision 1.7 2008/11/24 16:30:56 vfrolov + * Removed pOnXoffXon + * * Revision 1.6 2008/11/24 12:37:00 vfrolov * Changed plugin API *************** *** 129,133 **** --- 132,139 ---- DWORD writeQueueLimit; + DWORD writeQueueLimitSendXoff; + DWORD writeQueueLimitSendXon; DWORD writeQueued; + BOOL writeSuspended; DWORD writeLost; DWORD writeLostTotal; |