libcamera: Rationalize IPA and handlers names
The names used by the IPA interface and the names used for buffer completions handlers in libcamera clash in the use of the term "buffer". For example video device buffer completion handler is called "bufferReady" and the IPA event to ask the IPA to compute parameters are called "fillParamsBuffers". This makes it hard to recognize which function handles video device completion signals and which ones handle the IPA interface events. Rationalize the naming scheme in the IPA interface function and events and the signal handlers in the pipelines, according to the following table. Remove the name "buffer" from the IPA interface events and events handler and reserve it for the buffer completion handlers. Rename the IPA interface events and function to use the 'params' and 'stats' names as well. IPA Interface: - fillParamsBuffer -> computeParams [FUNCTION] - processStatsBuffer -> processStats [FUNCTION] - paramFilled -> paramsComputed [EVENT] Pipeline handler: - bufferReady -> videoBufferReady [BUFFER HANDLER] - paramReady -> paramBufferReady [BUFFER HANDLER] - statReady -> statBufferReady [BUFFER HANDLER] - paramFilled -> paramsComputed [IPA EVENT HANDLER] Cosmetic change only, no functional changes intended. Signed-off-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com> Reviewed-by: Milan Zamazal <mzamazal@redhat.com> Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
This commit is contained in:
@@ -88,7 +88,7 @@ public:
|
||||
|
||||
private:
|
||||
void metadataReady(unsigned int id, const ControlList &metadata);
|
||||
void paramsBufferReady(unsigned int id);
|
||||
void paramsComputed(unsigned int id);
|
||||
void setSensorControls(unsigned int id, const ControlList &sensorControls,
|
||||
const ControlList &lensControls);
|
||||
};
|
||||
@@ -1156,7 +1156,7 @@ int IPU3CameraData::loadIPA()
|
||||
return -ENOENT;
|
||||
|
||||
ipa_->setSensorControls.connect(this, &IPU3CameraData::setSensorControls);
|
||||
ipa_->paramsBufferReady.connect(this, &IPU3CameraData::paramsBufferReady);
|
||||
ipa_->paramsComputed.connect(this, &IPU3CameraData::paramsComputed);
|
||||
ipa_->metadataReady.connect(this, &IPU3CameraData::metadataReady);
|
||||
|
||||
/*
|
||||
@@ -1217,7 +1217,7 @@ void IPU3CameraData::setSensorControls([[maybe_unused]] unsigned int id,
|
||||
focusLens->setFocusPosition(focusValue.get<int32_t>());
|
||||
}
|
||||
|
||||
void IPU3CameraData::paramsBufferReady(unsigned int id)
|
||||
void IPU3CameraData::paramsComputed(unsigned int id)
|
||||
{
|
||||
IPU3Frames::Info *info = frameInfos_.find(id);
|
||||
if (!info)
|
||||
@@ -1328,7 +1328,7 @@ void IPU3CameraData::cio2BufferReady(FrameBuffer *buffer)
|
||||
if (request->findBuffer(&rawStream_))
|
||||
pipe()->completeBuffer(request, buffer);
|
||||
|
||||
ipa_->fillParamsBuffer(info->id, info->paramBuffer->cookie());
|
||||
ipa_->computeParams(info->id, info->paramBuffer->cookie());
|
||||
}
|
||||
|
||||
void IPU3CameraData::paramBufferReady(FrameBuffer *buffer)
|
||||
@@ -1372,8 +1372,8 @@ void IPU3CameraData::statBufferReady(FrameBuffer *buffer)
|
||||
return;
|
||||
}
|
||||
|
||||
ipa_->processStatsBuffer(info->id, request->metadata().get(controls::SensorTimestamp).value_or(0),
|
||||
info->statBuffer->cookie(), info->effectiveSensorControls);
|
||||
ipa_->processStats(info->id, request->metadata().get(controls::SensorTimestamp).value_or(0),
|
||||
info->statBuffer->cookie(), info->effectiveSensorControls);
|
||||
}
|
||||
|
||||
/*
|
||||
|
||||
@@ -463,7 +463,7 @@ public:
|
||||
|
||||
int queueRequestDevice(Camera *camera, Request *request) override;
|
||||
|
||||
void bufferReady(FrameBuffer *buffer);
|
||||
void imageBufferReady(FrameBuffer *buffer);
|
||||
|
||||
bool match(DeviceEnumerator *enumerator) override;
|
||||
|
||||
@@ -877,7 +877,7 @@ int PipelineHandlerMaliC55::queueRequestDevice(Camera *camera, Request *request)
|
||||
return 0;
|
||||
}
|
||||
|
||||
void PipelineHandlerMaliC55::bufferReady(FrameBuffer *buffer)
|
||||
void PipelineHandlerMaliC55::imageBufferReady(FrameBuffer *buffer)
|
||||
{
|
||||
Request *request = buffer->request();
|
||||
|
||||
@@ -991,7 +991,7 @@ bool PipelineHandlerMaliC55::match(DeviceEnumerator *enumerator)
|
||||
if (frPipe->cap->open() < 0)
|
||||
return false;
|
||||
|
||||
frPipe->cap->bufferReady.connect(this, &PipelineHandlerMaliC55::bufferReady);
|
||||
frPipe->cap->bufferReady.connect(this, &PipelineHandlerMaliC55::imageBufferReady);
|
||||
|
||||
dsFitted_ = !!media_->getEntityByName("mali-c55 ds");
|
||||
if (dsFitted_) {
|
||||
@@ -1007,7 +1007,7 @@ bool PipelineHandlerMaliC55::match(DeviceEnumerator *enumerator)
|
||||
if (dsPipe->cap->open() < 0)
|
||||
return false;
|
||||
|
||||
dsPipe->cap->bufferReady.connect(this, &PipelineHandlerMaliC55::bufferReady);
|
||||
dsPipe->cap->bufferReady.connect(this, &PipelineHandlerMaliC55::imageBufferReady);
|
||||
}
|
||||
|
||||
ispSink = isp_->entity()->getPadByIndex(0);
|
||||
|
||||
@@ -114,7 +114,7 @@ public:
|
||||
ControlInfoMap ipaControls_;
|
||||
|
||||
private:
|
||||
void paramFilled(unsigned int frame, unsigned int bytesused);
|
||||
void paramsComputed(unsigned int frame, unsigned int bytesused);
|
||||
void setSensorControls(unsigned int frame,
|
||||
const ControlList &sensorControls);
|
||||
|
||||
@@ -180,9 +180,9 @@ private:
|
||||
const RkISP1CameraConfiguration &config);
|
||||
int createCamera(MediaEntity *sensor);
|
||||
void tryCompleteRequest(RkISP1FrameInfo *info);
|
||||
void bufferReady(FrameBuffer *buffer);
|
||||
void paramReady(FrameBuffer *buffer);
|
||||
void statReady(FrameBuffer *buffer);
|
||||
void imageBufferReady(FrameBuffer *buffer);
|
||||
void paramBufferReady(FrameBuffer *buffer);
|
||||
void statBufferReady(FrameBuffer *buffer);
|
||||
void dewarpBufferReady(FrameBuffer *buffer);
|
||||
void frameStart(uint32_t sequence);
|
||||
|
||||
@@ -367,7 +367,7 @@ int RkISP1CameraData::loadIPA(unsigned int hwRevision)
|
||||
return -ENOENT;
|
||||
|
||||
ipa_->setSensorControls.connect(this, &RkISP1CameraData::setSensorControls);
|
||||
ipa_->paramsBufferReady.connect(this, &RkISP1CameraData::paramFilled);
|
||||
ipa_->paramsComputed.connect(this, &RkISP1CameraData::paramsComputed);
|
||||
ipa_->metadataReady.connect(this, &RkISP1CameraData::metadataReady);
|
||||
|
||||
/*
|
||||
@@ -400,7 +400,7 @@ int RkISP1CameraData::loadIPA(unsigned int hwRevision)
|
||||
return 0;
|
||||
}
|
||||
|
||||
void RkISP1CameraData::paramFilled(unsigned int frame, unsigned int bytesused)
|
||||
void RkISP1CameraData::paramsComputed(unsigned int frame, unsigned int bytesused)
|
||||
{
|
||||
PipelineHandlerRkISP1 *pipe = RkISP1CameraData::pipe();
|
||||
RkISP1FrameInfo *info = frameInfo_.find(frame);
|
||||
@@ -1120,8 +1120,8 @@ int PipelineHandlerRkISP1::queueRequestDevice(Camera *camera, Request *request)
|
||||
if (data->selfPath_ && info->selfPathBuffer)
|
||||
data->selfPath_->queueBuffer(info->selfPathBuffer);
|
||||
} else {
|
||||
data->ipa_->fillParamsBuffer(data->frame_,
|
||||
info->paramBuffer->cookie());
|
||||
data->ipa_->computeParams(data->frame_,
|
||||
info->paramBuffer->cookie());
|
||||
}
|
||||
|
||||
data->frame_++;
|
||||
@@ -1333,11 +1333,11 @@ bool PipelineHandlerRkISP1::match(DeviceEnumerator *enumerator)
|
||||
if (hasSelfPath_ && !selfPath_.init(media_))
|
||||
return false;
|
||||
|
||||
mainPath_.bufferReady().connect(this, &PipelineHandlerRkISP1::bufferReady);
|
||||
mainPath_.bufferReady().connect(this, &PipelineHandlerRkISP1::imageBufferReady);
|
||||
if (hasSelfPath_)
|
||||
selfPath_.bufferReady().connect(this, &PipelineHandlerRkISP1::bufferReady);
|
||||
stat_->bufferReady.connect(this, &PipelineHandlerRkISP1::statReady);
|
||||
param_->bufferReady.connect(this, &PipelineHandlerRkISP1::paramReady);
|
||||
selfPath_.bufferReady().connect(this, &PipelineHandlerRkISP1::imageBufferReady);
|
||||
stat_->bufferReady.connect(this, &PipelineHandlerRkISP1::statBufferReady);
|
||||
param_->bufferReady.connect(this, &PipelineHandlerRkISP1::paramBufferReady);
|
||||
|
||||
/* If dewarper is present, create its instance. */
|
||||
DeviceMatch dwp("dw100");
|
||||
@@ -1398,7 +1398,7 @@ void PipelineHandlerRkISP1::tryCompleteRequest(RkISP1FrameInfo *info)
|
||||
completeRequest(request);
|
||||
}
|
||||
|
||||
void PipelineHandlerRkISP1::bufferReady(FrameBuffer *buffer)
|
||||
void PipelineHandlerRkISP1::imageBufferReady(FrameBuffer *buffer)
|
||||
{
|
||||
ASSERT(activeCamera_);
|
||||
RkISP1CameraData *data = cameraData(activeCamera_);
|
||||
@@ -1423,7 +1423,7 @@ void PipelineHandlerRkISP1::bufferReady(FrameBuffer *buffer)
|
||||
if (isRaw_) {
|
||||
const ControlList &ctrls =
|
||||
data->delayedCtrls_->get(metadata.sequence);
|
||||
data->ipa_->processStatsBuffer(info->frame, 0, ctrls);
|
||||
data->ipa_->processStats(info->frame, 0, ctrls);
|
||||
}
|
||||
} else {
|
||||
if (isRaw_)
|
||||
@@ -1507,7 +1507,7 @@ void PipelineHandlerRkISP1::dewarpBufferReady(FrameBuffer *buffer)
|
||||
tryCompleteRequest(info);
|
||||
}
|
||||
|
||||
void PipelineHandlerRkISP1::paramReady(FrameBuffer *buffer)
|
||||
void PipelineHandlerRkISP1::paramBufferReady(FrameBuffer *buffer)
|
||||
{
|
||||
ASSERT(activeCamera_);
|
||||
RkISP1CameraData *data = cameraData(activeCamera_);
|
||||
@@ -1520,7 +1520,7 @@ void PipelineHandlerRkISP1::paramReady(FrameBuffer *buffer)
|
||||
tryCompleteRequest(info);
|
||||
}
|
||||
|
||||
void PipelineHandlerRkISP1::statReady(FrameBuffer *buffer)
|
||||
void PipelineHandlerRkISP1::statBufferReady(FrameBuffer *buffer)
|
||||
{
|
||||
ASSERT(activeCamera_);
|
||||
RkISP1CameraData *data = cameraData(activeCamera_);
|
||||
@@ -1538,8 +1538,8 @@ void PipelineHandlerRkISP1::statReady(FrameBuffer *buffer)
|
||||
if (data->frame_ <= buffer->metadata().sequence)
|
||||
data->frame_ = buffer->metadata().sequence + 1;
|
||||
|
||||
data->ipa_->processStatsBuffer(info->frame, info->statBuffer->cookie(),
|
||||
data->delayedCtrls_->get(buffer->metadata().sequence));
|
||||
data->ipa_->processStats(info->frame, info->statBuffer->cookie(),
|
||||
data->delayedCtrls_->get(buffer->metadata().sequence));
|
||||
}
|
||||
|
||||
REGISTER_PIPELINE_HANDLER(PipelineHandlerRkISP1, "rkisp1")
|
||||
|
||||
@@ -225,7 +225,7 @@ public:
|
||||
int setupFormats(V4L2SubdeviceFormat *format,
|
||||
V4L2Subdevice::Whence whence,
|
||||
Transform transform = Transform::Identity);
|
||||
void bufferReady(FrameBuffer *buffer);
|
||||
void imageBufferReady(FrameBuffer *buffer);
|
||||
void clearIncompleteRequests();
|
||||
|
||||
unsigned int streamIndex(const Stream *stream) const
|
||||
@@ -784,7 +784,7 @@ int SimpleCameraData::setupFormats(V4L2SubdeviceFormat *format,
|
||||
return 0;
|
||||
}
|
||||
|
||||
void SimpleCameraData::bufferReady(FrameBuffer *buffer)
|
||||
void SimpleCameraData::imageBufferReady(FrameBuffer *buffer)
|
||||
{
|
||||
SimplePipelineHandler *pipe = SimpleCameraData::pipe();
|
||||
|
||||
@@ -1364,7 +1364,7 @@ int SimplePipelineHandler::start(Camera *camera, [[maybe_unused]] const ControlL
|
||||
return ret;
|
||||
}
|
||||
|
||||
video->bufferReady.connect(data, &SimpleCameraData::bufferReady);
|
||||
video->bufferReady.connect(data, &SimpleCameraData::imageBufferReady);
|
||||
|
||||
ret = video->streamOn();
|
||||
if (ret < 0) {
|
||||
@@ -1408,7 +1408,7 @@ void SimplePipelineHandler::stopDevice(Camera *camera)
|
||||
video->streamOff();
|
||||
video->releaseBuffers();
|
||||
|
||||
video->bufferReady.disconnect(data, &SimpleCameraData::bufferReady);
|
||||
video->bufferReady.disconnect(data, &SimpleCameraData::imageBufferReady);
|
||||
|
||||
data->clearIncompleteRequests();
|
||||
data->conversionBuffers_.clear();
|
||||
|
||||
@@ -47,7 +47,7 @@ public:
|
||||
int init(MediaDevice *media);
|
||||
void addControl(uint32_t cid, const ControlInfo &v4l2info,
|
||||
ControlInfoMap::Map *ctrls);
|
||||
void bufferReady(FrameBuffer *buffer);
|
||||
void imageBufferReady(FrameBuffer *buffer);
|
||||
|
||||
const std::string &id() const { return id_; }
|
||||
|
||||
@@ -476,7 +476,7 @@ int UVCCameraData::init(MediaDevice *media)
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
video_->bufferReady.connect(this, &UVCCameraData::bufferReady);
|
||||
video_->bufferReady.connect(this, &UVCCameraData::imageBufferReady);
|
||||
|
||||
/* Generate the camera ID. */
|
||||
if (!generateId()) {
|
||||
@@ -747,7 +747,7 @@ void UVCCameraData::addControl(uint32_t cid, const ControlInfo &v4l2Info,
|
||||
ctrls->emplace(id, info);
|
||||
}
|
||||
|
||||
void UVCCameraData::bufferReady(FrameBuffer *buffer)
|
||||
void UVCCameraData::imageBufferReady(FrameBuffer *buffer)
|
||||
{
|
||||
Request *request = buffer->request();
|
||||
|
||||
|
||||
@@ -56,8 +56,8 @@ public:
|
||||
|
||||
int init();
|
||||
int allocateMockIPABuffers();
|
||||
void bufferReady(FrameBuffer *buffer);
|
||||
void paramsBufferReady(unsigned int id, const Flags<ipa::vimc::TestFlag> flags);
|
||||
void imageBufferReady(FrameBuffer *buffer);
|
||||
void paramsComputed(unsigned int id, const Flags<ipa::vimc::TestFlag> flags);
|
||||
|
||||
MediaDevice *media_;
|
||||
std::unique_ptr<CameraSensor> sensor_;
|
||||
@@ -492,7 +492,7 @@ bool PipelineHandlerVimc::match(DeviceEnumerator *enumerator)
|
||||
return false;
|
||||
}
|
||||
|
||||
data->ipa_->paramsBufferReady.connect(data.get(), &VimcCameraData::paramsBufferReady);
|
||||
data->ipa_->paramsComputed.connect(data.get(), &VimcCameraData::paramsComputed);
|
||||
|
||||
std::string conf = data->ipa_->configurationFile("vimc.conf");
|
||||
Flags<ipa::vimc::TestFlag> inFlags = ipa::vimc::TestFlag::Flag2;
|
||||
@@ -548,7 +548,7 @@ int VimcCameraData::init()
|
||||
if (video_->open())
|
||||
return -ENODEV;
|
||||
|
||||
video_->bufferReady.connect(this, &VimcCameraData::bufferReady);
|
||||
video_->bufferReady.connect(this, &VimcCameraData::imageBufferReady);
|
||||
|
||||
raw_ = V4L2VideoDevice::fromEntityName(media_, "Raw Capture 1");
|
||||
if (raw_->open())
|
||||
@@ -596,7 +596,7 @@ int VimcCameraData::init()
|
||||
return 0;
|
||||
}
|
||||
|
||||
void VimcCameraData::bufferReady(FrameBuffer *buffer)
|
||||
void VimcCameraData::imageBufferReady(FrameBuffer *buffer)
|
||||
{
|
||||
PipelineHandlerVimc *pipe =
|
||||
static_cast<PipelineHandlerVimc *>(this->pipe());
|
||||
@@ -621,7 +621,7 @@ void VimcCameraData::bufferReady(FrameBuffer *buffer)
|
||||
pipe->completeBuffer(request, buffer);
|
||||
pipe->completeRequest(request);
|
||||
|
||||
ipa_->fillParamsBuffer(request->sequence(), mockIPABufs_[0]->cookie());
|
||||
ipa_->computeParams(request->sequence(), mockIPABufs_[0]->cookie());
|
||||
}
|
||||
|
||||
int VimcCameraData::allocateMockIPABuffers()
|
||||
@@ -639,8 +639,8 @@ int VimcCameraData::allocateMockIPABuffers()
|
||||
return video_->exportBuffers(kBufCount, &mockIPABufs_);
|
||||
}
|
||||
|
||||
void VimcCameraData::paramsBufferReady([[maybe_unused]] unsigned int id,
|
||||
[[maybe_unused]] const Flags<ipa::vimc::TestFlag> flags)
|
||||
void VimcCameraData::paramsComputed([[maybe_unused]] unsigned int id,
|
||||
[[maybe_unused]] const Flags<ipa::vimc::TestFlag> flags)
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
@@ -351,7 +351,7 @@ void SoftwareIsp::stop()
|
||||
*/
|
||||
void SoftwareIsp::process(uint32_t frame, FrameBuffer *input, FrameBuffer *output)
|
||||
{
|
||||
ipa_->fillParamsBuffer(frame);
|
||||
ipa_->computeParams(frame);
|
||||
debayer_->invokeMethod(&DebayerCpu::process,
|
||||
ConnectionTypeQueued, frame, input, output, debayerParams_);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user