@@ -311,6 +311,7 @@ private:
return static_cast<RPiCameraData *>(camera->_d());
}
+ bool registerCamera();
int queueAllBuffers(Camera *camera);
int prepareBuffers(Camera *camera);
void freeBuffers(Camera *camera);
@@ -1010,6 +1011,11 @@ bool PipelineHandlerRPi::match(DeviceEnumerator *enumerator)
if (!isp_)
return false;
+ return registerCamera();
+}
+
+bool PipelineHandlerRPi::registerCamera()
+{
std::unique_ptr<RPiCameraData> data = std::make_unique<RPiCameraData>(this);
if (!data->dmaHeap_.isValid())
return false;
@@ -1170,7 +1176,7 @@ bool PipelineHandlerRPi::match(DeviceEnumerator *enumerator)
const std::string &id = data->sensor_->id();
std::shared_ptr<Camera> camera =
Camera::create(std::move(data), id, streams);
- registerCamera(std::move(camera));
+ PipelineHandler::registerCamera(std::move(camera));
return true;
}