ipa: raspberrypi: Remove MdParserRPi

With the recent change to pass a ControlList to the IPA with exposure
and gain values used for a frame, RPiController::MdParserRPi is not
needed any more. Remove all traces of it.

The derived CamHelper objects now pass nullptr values for the parser to
the base CamHelper class when sensors do not use metadata.

Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
Tested-by: David Plowman <david.plowman@raspberrypi.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
This commit is contained in:
Naushir Patuck 2021-03-02 15:11:09 +00:00 committed by Laurent Pinchart
parent cd07b604ba
commit 9d4431d621
6 changed files with 6 additions and 77 deletions

View file

@ -88,8 +88,10 @@ uint32_t CamHelper::GetVBlanking(double &exposure, double minFrameDuration,
void CamHelper::SetCameraMode(const CameraMode &mode) void CamHelper::SetCameraMode(const CameraMode &mode)
{ {
mode_ = mode; mode_ = mode;
parser_->SetBitsPerPixel(mode.bitdepth); if (parser_) {
parser_->SetLineLengthBytes(0); /* We use SetBufferSize. */ parser_->SetBitsPerPixel(mode.bitdepth);
parser_->SetLineLengthBytes(0); /* We use SetBufferSize. */
}
initialized_ = true; initialized_ = true;
} }

View file

@ -19,8 +19,6 @@
#include "cam_helper.hpp" #include "cam_helper.hpp"
#if ENABLE_EMBEDDED_DATA #if ENABLE_EMBEDDED_DATA
#include "md_parser.hpp" #include "md_parser.hpp"
#else
#include "md_parser_rpi.hpp"
#endif #endif
using namespace RPiController; using namespace RPiController;
@ -62,7 +60,7 @@ CamHelperImx219::CamHelperImx219()
#if ENABLE_EMBEDDED_DATA #if ENABLE_EMBEDDED_DATA
: CamHelper(new MdParserImx219(), frameIntegrationDiff) : CamHelper(new MdParserImx219(), frameIntegrationDiff)
#else #else
: CamHelper(new MdParserRPi(), frameIntegrationDiff) : CamHelper(nullptr, frameIntegrationDiff)
#endif #endif
{ {
} }

View file

@ -8,7 +8,6 @@
#include <assert.h> #include <assert.h>
#include "cam_helper.hpp" #include "cam_helper.hpp"
#include "md_parser_rpi.hpp"
using namespace RPiController; using namespace RPiController;
@ -38,7 +37,7 @@ private:
*/ */
CamHelperOv5647::CamHelperOv5647() CamHelperOv5647::CamHelperOv5647()
: CamHelper(new MdParserRPi(), frameIntegrationDiff) : CamHelper(nullptr, frameIntegrationDiff)
{ {
} }

View file

@ -1,37 +0,0 @@
/* SPDX-License-Identifier: BSD-2-Clause */
/*
* Copyright (C) 2020, Raspberry Pi (Trading) Limited
*
* md_parser_rpi.cpp - Metadata parser for generic Raspberry Pi metadata
*/
#include <string.h>
#include "md_parser_rpi.hpp"
using namespace RPiController;
MdParserRPi::MdParserRPi()
{
}
MdParser::Status MdParserRPi::Parse(void *data)
{
if (buffer_size_bytes_ < sizeof(rpiMetadata))
return ERROR;
memcpy(&metadata, data, sizeof(rpiMetadata));
return OK;
}
MdParser::Status MdParserRPi::GetExposureLines(unsigned int &lines)
{
lines = metadata.exposure;
return OK;
}
MdParser::Status MdParserRPi::GetGainCode(unsigned int &gain_code)
{
gain_code = metadata.gain;
return OK;
}

View file

@ -1,32 +0,0 @@
/* SPDX-License-Identifier: BSD-2-Clause */
/*
* Copyright (C) 2019, Raspberry Pi (Trading) Limited
*
* md_parser_rpi.hpp - Raspberry Pi metadata parser interface
*/
#pragma once
#include "md_parser.hpp"
namespace RPiController {
class MdParserRPi : public MdParser
{
public:
MdParserRPi();
Status Parse(void *data) override;
Status GetExposureLines(unsigned int &lines) override;
Status GetGainCode(unsigned int &gain_code) override;
private:
// This must be the same struct that is filled into the metadata buffer
// in the pipeline handler.
struct rpiMetadata
{
uint32_t exposure;
uint32_t gain;
};
rpiMetadata metadata;
};
}

View file

@ -17,7 +17,6 @@ rpi_ipa_includes = [
rpi_ipa_sources = files([ rpi_ipa_sources = files([
'raspberrypi.cpp', 'raspberrypi.cpp',
'md_parser.cpp', 'md_parser.cpp',
'md_parser_rpi.cpp',
'cam_helper.cpp', 'cam_helper.cpp',
'cam_helper_ov5647.cpp', 'cam_helper_ov5647.cpp',
'cam_helper_imx219.cpp', 'cam_helper_imx219.cpp',