qcam: Move static timestamp to MainWindow

The 'last' buffer timestamp is stored as a static. Rename the variable
to a more descritive 'lastBufferTime' and move it to the class instance.

Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
This commit is contained in:
Kieran Bingham 2019-07-04 11:26:43 +01:00
parent b817bcec6b
commit b3ad7b8654
2 changed files with 7 additions and 5 deletions

View file

@ -144,6 +144,8 @@ int MainWindow::startCapture()
requests.push_back(request);
}
lastBufferTime_ = 0;
ret = camera_->start();
if (ret) {
std::cout << "Failed to start capture" << std::endl;
@ -187,16 +189,14 @@ void MainWindow::stopCapture()
void MainWindow::requestComplete(Request *request,
const std::map<Stream *, Buffer *> &buffers)
{
static uint64_t last = 0;
if (request->status() == Request::RequestCancelled)
return;
Buffer *buffer = buffers.begin()->second;
double fps = buffer->timestamp() - last;
fps = last && fps ? 1000000000.0 / fps : 0.0;
last = buffer->timestamp();
double fps = buffer->timestamp() - lastBufferTime_;
fps = lastBufferTime_ && fps ? 1000000000.0 / fps : 0.0;
lastBufferTime_ = buffer->timestamp();
std::cout << "seq: " << std::setw(6) << std::setfill('0') << buffer->sequence()
<< " buf: " << buffer->index()

View file

@ -48,6 +48,8 @@ private:
bool isCapturing_;
std::unique_ptr<CameraConfiguration> config_;
uint64_t lastBufferTime_;
ViewFinder *viewfinder_;
};