apps: lc-compliance: Re-organize source directory

Before adding more tests and more helper classes to lc-compliance,
reorganize the source tree to split test and helpers in two separate
directories.

While at it, rename the 'SimpleCapture' class and its derived classes to
just 'Capture'. Rename the source files accordingly.

Re-sort headers inclusions to please checkstyle.py too.

Signed-off-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>
Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
Reviewed-by: Stefan Klug <stefan.klug@ideasonboard.com>
Tested-by: Stefan Klug <stefan.klug@ideasonboard.com>
This commit is contained in:
Jacopo Mondi 2023-12-22 17:22:40 +01:00
parent b20e1e1c5a
commit ed632bf37e
4 changed files with 39 additions and 32 deletions

View file

@ -0,0 +1,66 @@
/* SPDX-License-Identifier: GPL-2.0-or-later */
/*
* Copyright (C) 2020-2021, Google Inc.
*
* simple_capture.h - Simple capture helper
*/
#pragma once
#include <memory>
#include <libcamera/libcamera.h>
#include "../common/event_loop.h"
class Capture
{
public:
void configure(libcamera::StreamRole role);
protected:
Capture(std::shared_ptr<libcamera::Camera> camera);
virtual ~Capture();
void start();
void stop();
virtual void requestComplete(libcamera::Request *request) = 0;
EventLoop *loop_;
std::shared_ptr<libcamera::Camera> camera_;
std::unique_ptr<libcamera::FrameBufferAllocator> allocator_;
std::unique_ptr<libcamera::CameraConfiguration> config_;
std::vector<std::unique_ptr<libcamera::Request>> requests_;
};
class CaptureBalanced : public Capture
{
public:
CaptureBalanced(std::shared_ptr<libcamera::Camera> camera);
void capture(unsigned int numRequests);
private:
int queueRequest(libcamera::Request *request);
void requestComplete(libcamera::Request *request) override;
unsigned int queueCount_;
unsigned int captureCount_;
unsigned int captureLimit_;
};
class CaptureUnbalanced : public Capture
{
public:
CaptureUnbalanced(std::shared_ptr<libcamera::Camera> camera);
void capture(unsigned int numRequests);
private:
void requestComplete(libcamera::Request *request) override;
unsigned int captureCount_;
unsigned int captureLimit_;
};