Changeset 249 in ntrip for trunk/BNC/bncgetthread.cpp
- Timestamp:
- Oct 14, 2006, 10:34:27 AM (18 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/BNC/bncgetthread.cpp
r244 r249 218 218 // ------------------ 219 219 while (true) { 220 221 if (_socket->state() != QAbstractSocket::ConnectedState) { 222 emit(newMessage(_staID + ": Socket not connected, reconnecting")); 223 tryReconnect(); 224 } 225 226 _socket->waitForReadyRead(_timeOut); 227 qint64 nBytes = _socket->bytesAvailable(); 228 if (nBytes > 0) { 229 char* data = new char[nBytes]; 230 _socket->read(data, nBytes); 231 _decoder->Decode(data, nBytes); 232 delete data; 233 for (list<Observation*>::iterator it = _decoder->_obsList.begin(); 234 it != _decoder->_obsList.end(); it++) { 235 emit newObs(_staID, *it); 236 _global_caster->newObs(_staID, *it); 237 } 238 _decoder->_obsList.clear(); 239 } 240 else { 241 emit(newMessage(_staID + ": Data Timeout, reconnecting")); 220 try { 221 if (_socket->state() != QAbstractSocket::ConnectedState) { 222 emit(newMessage(_staID + ": Socket not connected, reconnecting")); 223 tryReconnect(); 224 } 225 226 227 _socket->waitForReadyRead(_timeOut); 228 qint64 nBytes = _socket->bytesAvailable(); 229 if (nBytes > 0) { 230 char* data = new char[nBytes]; 231 _socket->read(data, nBytes); 232 _decoder->Decode(data, nBytes); 233 delete data; 234 for (list<Observation*>::iterator it = _decoder->_obsList.begin(); 235 it != _decoder->_obsList.end(); it++) { 236 emit newObs(_staID, *it); 237 _global_caster->newObs(_staID, *it); 238 } 239 _decoder->_obsList.clear(); 240 } 241 else { 242 emit(newMessage(_staID + ": Data Timeout, reconnecting")); 243 tryReconnect(); 244 } 245 } 246 catch (const char* msg) { 247 emit(newMessage(_staID + msg)); 242 248 tryReconnect(); 243 249 }
Note:
See TracChangeset
for help on using the changeset viewer.