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:
@@ -28,7 +28,7 @@ V4L2Camera::~V4L2Camera()
|
||||
close();
|
||||
}
|
||||
|
||||
int V4L2Camera::open()
|
||||
int V4L2Camera::open(StreamConfiguration *streamConfig)
|
||||
{
|
||||
if (camera_->acquire() < 0) {
|
||||
LOG(V4L2Compat, Error) << "Failed to acquire camera";
|
||||
@@ -43,6 +43,7 @@ int V4L2Camera::open()
|
||||
|
||||
bufferAllocator_ = new FrameBufferAllocator(camera_);
|
||||
|
||||
*streamConfig = config_->at(0);
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -64,11 +65,6 @@ void V4L2Camera::unbind()
|
||||
efd_ = -1;
|
||||
}
|
||||
|
||||
void V4L2Camera::getStreamConfig(StreamConfiguration *streamConfig)
|
||||
{
|
||||
*streamConfig = config_->at(0);
|
||||
}
|
||||
|
||||
std::vector<V4L2Camera::Buffer> V4L2Camera::completedBuffers()
|
||||
{
|
||||
std::vector<Buffer> v;
|
||||
|
||||
@@ -37,11 +37,11 @@ public:
|
||||
V4L2Camera(std::shared_ptr<Camera> camera);
|
||||
~V4L2Camera();
|
||||
|
||||
int open();
|
||||
int open(StreamConfiguration *streamConfig);
|
||||
void close();
|
||||
void bind(int efd);
|
||||
void unbind();
|
||||
void getStreamConfig(StreamConfiguration *streamConfig);
|
||||
|
||||
std::vector<Buffer> completedBuffers();
|
||||
|
||||
int configure(StreamConfiguration *streamConfigOut,
|
||||
|
||||
@@ -63,13 +63,12 @@ int V4L2CameraProxy::open(V4L2CameraFile *file)
|
||||
* with count = 0.
|
||||
*/
|
||||
|
||||
int ret = vcam_->open();
|
||||
int ret = vcam_->open(&streamConfig_);
|
||||
if (ret < 0) {
|
||||
refcount_--;
|
||||
return ret;
|
||||
}
|
||||
|
||||
vcam_->getStreamConfig(&streamConfig_);
|
||||
setFmtFromConfig(streamConfig_);
|
||||
|
||||
files_.insert(file);
|
||||
|
||||
Reference in New Issue
Block a user