void Connection::processBuffer() { Buffer* buffer; char* nextHeader; char* nextBuffer; while (!queue.isEmpty() ){ buffer=queue.dequeue(); nextHeader=buffer->getHeader(); nextBuffer=buffer->getBuffer(); //qDebug() << "processBuffer " << nextHeader[0]; // emit a signal to show what buffer we have if(nextHeader[0]==SPECTRUM_BUFFER){ emit spectrumBuffer(nextHeader,nextBuffer); } else if(nextHeader[0]==AUDIO_BUFFER) { emit audioBuffer(nextHeader,nextBuffer); } else if(nextHeader[0]==BANDSCOPE_BUFFER) { //qDebug() << "socketData: bandscope"; emit bandscopeBuffer(nextHeader,nextBuffer); } else { qDebug() << "Connection::socketData: invalid header: " << nextHeader[0]; } } }
void Connection::processBuffer() { Buffer* buffer; char* nextHeader; char* nextBuffer; // We only want to mute the audio (actually not for full duplex) // the spectrum display should show the microphone waveform /* if(muted) { // If Rx muted, clear queue and don't process buffer - gvj queue.clear(); } */ while (!queue.isEmpty()){ buffer=queue.dequeue(); nextHeader=buffer->getHeader(); nextBuffer=buffer->getBuffer(); // emit a signal to show what buffer we have //qDebug() << "processBuffer " << nextHeader[0]; if(nextHeader[0]==SPECTRUM_BUFFER){ emit spectrumBuffer(nextHeader,nextBuffer); } else if(nextHeader[0]==AUDIO_BUFFER) { // need to add a duplex state if(!muted) emit audioBuffer(nextHeader,nextBuffer); } else if(nextHeader[0]==BANDSCOPE_BUFFER) { //qDebug() << "socketData: bandscope"; emit bandscopeBuffer(nextHeader,nextBuffer); } else { qDebug() << "Connection::socketData: invalid header: " << nextHeader[0]; queue.clear(); } } }