v4l2: camera: Merge getStreamConfig() with open()
The V4L2CameraProxy always calls V4L2Camera::getStreamConfig() right after V4L2Camera::open(), and never afterwards. Simplify the code by returning the initial configuration from V4L2Camera::open() and removing V4L2Camera::getStreamConfig(). Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com> Reviewed-by: Paul Elder <paul.elder@ideasonboard.com>
This commit is contained in:
parent
852b9d0a76
commit
3bd1985545
3 changed files with 5 additions and 10 deletions
|
@ -28,7 +28,7 @@ V4L2Camera::~V4L2Camera()
|
||||||
close();
|
close();
|
||||||
}
|
}
|
||||||
|
|
||||||
int V4L2Camera::open()
|
int V4L2Camera::open(StreamConfiguration *streamConfig)
|
||||||
{
|
{
|
||||||
if (camera_->acquire() < 0) {
|
if (camera_->acquire() < 0) {
|
||||||
LOG(V4L2Compat, Error) << "Failed to acquire camera";
|
LOG(V4L2Compat, Error) << "Failed to acquire camera";
|
||||||
|
@ -43,6 +43,7 @@ int V4L2Camera::open()
|
||||||
|
|
||||||
bufferAllocator_ = new FrameBufferAllocator(camera_);
|
bufferAllocator_ = new FrameBufferAllocator(camera_);
|
||||||
|
|
||||||
|
*streamConfig = config_->at(0);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -64,11 +65,6 @@ void V4L2Camera::unbind()
|
||||||
efd_ = -1;
|
efd_ = -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
void V4L2Camera::getStreamConfig(StreamConfiguration *streamConfig)
|
|
||||||
{
|
|
||||||
*streamConfig = config_->at(0);
|
|
||||||
}
|
|
||||||
|
|
||||||
std::vector<V4L2Camera::Buffer> V4L2Camera::completedBuffers()
|
std::vector<V4L2Camera::Buffer> V4L2Camera::completedBuffers()
|
||||||
{
|
{
|
||||||
std::vector<Buffer> v;
|
std::vector<Buffer> v;
|
||||||
|
|
|
@ -37,11 +37,11 @@ public:
|
||||||
V4L2Camera(std::shared_ptr<Camera> camera);
|
V4L2Camera(std::shared_ptr<Camera> camera);
|
||||||
~V4L2Camera();
|
~V4L2Camera();
|
||||||
|
|
||||||
int open();
|
int open(StreamConfiguration *streamConfig);
|
||||||
void close();
|
void close();
|
||||||
void bind(int efd);
|
void bind(int efd);
|
||||||
void unbind();
|
void unbind();
|
||||||
void getStreamConfig(StreamConfiguration *streamConfig);
|
|
||||||
std::vector<Buffer> completedBuffers();
|
std::vector<Buffer> completedBuffers();
|
||||||
|
|
||||||
int configure(StreamConfiguration *streamConfigOut,
|
int configure(StreamConfiguration *streamConfigOut,
|
||||||
|
|
|
@ -63,13 +63,12 @@ int V4L2CameraProxy::open(V4L2CameraFile *file)
|
||||||
* with count = 0.
|
* with count = 0.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
int ret = vcam_->open();
|
int ret = vcam_->open(&streamConfig_);
|
||||||
if (ret < 0) {
|
if (ret < 0) {
|
||||||
refcount_--;
|
refcount_--;
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
vcam_->getStreamConfig(&streamConfig_);
|
|
||||||
setFmtFromConfig(streamConfig_);
|
setFmtFromConfig(streamConfig_);
|
||||||
|
|
||||||
files_.insert(file);
|
files_.insert(file);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue