//============================================================================== void StretchableLayoutManager::layOutComponents (Component** const components, int numComponents, int x, int y, int w, int h, const bool vertically, const bool resizeOtherDimension) { setTotalSize (vertically ? h : w); int pos = vertically ? y : x; for (int i = 0; i < numComponents; ++i) { const ItemLayoutProperties* const layout = getInfoFor (i); if (layout != nullptr) { Component* const c = components[i]; if (c != nullptr) { if (i == numComponents - 1) { // if it's the last item, crop it to exactly fit the available space.. if (resizeOtherDimension) { if (vertically) c->setBounds (x, pos, w, jmax (layout->currentSize, h - pos)); else c->setBounds (pos, y, jmax (layout->currentSize, w - pos), h); } else { if (vertically) c->setBounds (c->getX(), pos, c->getWidth(), jmax (layout->currentSize, h - pos)); else c->setBounds (pos, c->getY(), jmax (layout->currentSize, w - pos), c->getHeight()); } } else { if (resizeOtherDimension) { if (vertically) c->setBounds (x, pos, w, layout->currentSize); else c->setBounds (pos, y, layout->currentSize, h); } else { if (vertically) c->setBounds (c->getX(), pos, c->getWidth(), layout->currentSize); else c->setBounds (pos, c->getY(), layout->currentSize, c->getHeight()); } } } pos += layout->currentSize; } } }
void Application::displayError(QAbstractSocket::SocketError socketError) { if (socketError == QTcpSocket::RemoteHostClosedError) return; QString errStr("Network error: "); errStr.append(tcpClient.errorString()); Q_EMIT newMessage(errStr); tcpClient.close(); setTotalSize(0); setCurrentWritten(0); setProgressString(""); Q_EMIT newMessage("Client ready"); setButtonsAreLocked(false); }
void Application::onConnected() { QByteArray block; QDataStream stream(&block, QIODevice::WriteOnly); stream.setVersion(QDataStream::Qt_5_4); QFile file(m_filePath); file.open(QIODevice::ReadOnly); QByteArray buf = file.readAll(); stream << quint64(file.size()); stream << buf; tcpClient.write(block); tcpClient.flush(); setTotalSize((int)file.size()); }
void DIA_encodingBase::refresh(void) { uint32_t time=clock.getElapsedMS(); if(time>_nextUpdate) { uint32_t deltaTime=time-_lastClock; uint32_t deltaFrame=_currentFrameCount-_lastFrameCount; uint64_t deltaDts=_currentDts-_lastDts; if(sampleIndex>ADM_ENCODING_SAMPLE) { uint32_t qSum=0; for(int i=0;i<ADM_ENCODING_SAMPLE;i++) qSum+=samples[i].qz; qSum/=ADM_ENCODING_SAMPLE; aprintf("Q:%d\n",qSum); setAverageQz(qSum); } if(sampleIndex>ADM_ENCODING_SAMPLE) { int start=sampleIndex%ADM_ENCODING_SAMPLE; int end=(sampleIndex+ADM_ENCODING_SAMPLE-1)%ADM_ENCODING_SAMPLE; uint64_t deltaTime=samples[end].sampleTime-samples[start].sampleTime; uint64_t deltaSize=samples[end].size-samples[start].size; aprintf("dTime:%d dSize:%d\n",deltaTime,deltaSize); if(deltaTime>1000) { float delta; delta=deltaSize; delta/=deltaTime; delta*=8; // byte -> bit delta*=1000; // b/us -> kb/s aprintf("br:%d\n",(int)delta); setAverageBitrateKbits((uint32_t)delta); } } if(deltaFrame) { float thisAverage; //printf("**********************************DFrame=%d, DTime=%d\n",(int)deltaFrame,(int)deltaTime); thisAverage=((float)deltaFrame); thisAverage/=deltaTime; thisAverage*=1000; _fps_average=_fps_average*0.5+0.5*thisAverage; //printf("************** Fps:%d\n",(int)_fps_average); setFps(_fps_average); float percent=(float)_currentDts/(float)_totalDurationUs; if(percent>1.0) percent=1.0; percent*=100; setPercent((uint32_t)percent); setFrameCount(_currentFrameCount); setElapsedTimeMs(time); } if(deltaDts ) { float dtsPerSec=deltaDts; dtsPerSec/=deltaTime; dtsPerSec/=1000.; // dts advance per second float leftDts=_totalDurationUs-_currentDts; //printf("***************%u to encoding\n",(int)(leftDts/1000000)); //printf("Advanc=%d ms/sec\n",(int)(dtsPerSec*1000)); if(dtsPerSec>0.01) { leftDts=leftDts/dtsPerSec; _remainingTimeUs=(_remainingTimeUs/2)+(leftDts/2); leftDts=_remainingTimeUs; leftDts/=1000.; // us -> ms //printf("***************%u s left\n",(int)(leftDts/1000)); setRemainingTimeMS((uint32_t)leftDts); } } _nextUpdate=time+GUI_UPDATE_RATE; setAudioSize(_audioSize); setVideoSize(_videoSize); setTotalSize(_audioSize+_videoSize); _lastFrameCount=_currentFrameCount; _lastDts=_currentDts; _lastClock=time; } UI_purge(); }