Message ID | 20210709145825.2943443-3-naush@raspberrypi.com |
---|---|
State | Accepted |
Headers | show |
Series |
|
Related | show |
Hi Naush, On Fri, Jul 09, 2021 at 03:58:19PM +0100, Naushir Patuck wrote: > The constructor sets all fields to 0. This replaces the memset(0) and default > value initialisation usage in the agc and lux controllers respectively. > > Signed-off-by: Naushir Patuck <naush@raspberrypi.com> > Reviewed-by: David Plowman <david.plowman@raspberrypi.com> > Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com> > --- > src/ipa/raspberrypi/controller/device_status.h | 6 ++++++ > src/ipa/raspberrypi/controller/rpi/agc.cpp | 1 - > src/ipa/raspberrypi/controller/rpi/lux.cpp | 9 +-------- > 3 files changed, 7 insertions(+), 9 deletions(-) > > diff --git a/src/ipa/raspberrypi/controller/device_status.h b/src/ipa/raspberrypi/controller/device_status.h > index 733378dbfa27..73df7ce228dd 100644 > --- a/src/ipa/raspberrypi/controller/device_status.h > +++ b/src/ipa/raspberrypi/controller/device_status.h > @@ -14,6 +14,12 @@ > */ > > struct DeviceStatus { > + DeviceStatus() > + : shutter_speed(std::chrono::seconds(0)), analogue_gain(0.0), > + lens_position(0.0), aperture(0.0), flash_intensity(0.0) > + { > + } > + > /* time shutter is open */ > libcamera::utils::Duration shutter_speed; > double analogue_gain; > diff --git a/src/ipa/raspberrypi/controller/rpi/agc.cpp b/src/ipa/raspberrypi/controller/rpi/agc.cpp > index 6c3a4eb2a04d..f57783f821ec 100644 > --- a/src/ipa/raspberrypi/controller/rpi/agc.cpp > +++ b/src/ipa/raspberrypi/controller/rpi/agc.cpp > @@ -172,7 +172,6 @@ Agc::Agc(Controller *controller) > // it's not been calculated yet (i.e. Process hasn't yet run). > memset(&status_, 0, sizeof(status_)); > status_.ev = ev_; > - memset(&last_device_status_, 0, sizeof(last_device_status_)); > > char const *Agc::Name() const > diff --git a/src/ipa/raspberrypi/controller/rpi/lux.cpp b/src/ipa/raspberrypi/controller/rpi/lux.cpp > index f58d69397e1c..6367b17dc7f4 100644 > --- a/src/ipa/raspberrypi/controller/rpi/lux.cpp > +++ b/src/ipa/raspberrypi/controller/rpi/lux.cpp > @@ -60,14 +60,7 @@ void Lux::Prepare(Metadata *image_metadata) > > void Lux::Process(StatisticsPtr &stats, Metadata *image_metadata) > { > - // set some initial values to shut the compiler up > - DeviceStatus device_status = { > - .shutter_speed = 1.0ms, > - .analogue_gain = 1.0, > - .lens_position = 0.0, > - .aperture = 0.0, > - .flash_intensity = 0.0 > - }; > + DeviceStatus device_status; > if (image_metadata->Get("device.status", device_status) == 0) { > double current_gain = device_status.analogue_gain; > double current_aperture = device_status.aperture; I do also see an geq.cpp: DeviceStatus device_status = {}; which doesn't hurt though Reviewed-by: Jacopo Mondi <jacopo@jmondi.org> Thanks j > -- > 2.25.1 >
On Fri, Jul 09, 2021 at 06:10:18PM +0200, Jacopo Mondi wrote: > Hi Naush, > > On Fri, Jul 09, 2021 at 03:58:19PM +0100, Naushir Patuck wrote: > > The constructor sets all fields to 0. This replaces the memset(0) and default > > value initialisation usage in the agc and lux controllers respectively. > > > > Signed-off-by: Naushir Patuck <naush@raspberrypi.com> > > Reviewed-by: David Plowman <david.plowman@raspberrypi.com> > > Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com> > > --- > > src/ipa/raspberrypi/controller/device_status.h | 6 ++++++ > > src/ipa/raspberrypi/controller/rpi/agc.cpp | 1 - > > src/ipa/raspberrypi/controller/rpi/lux.cpp | 9 +-------- > > 3 files changed, 7 insertions(+), 9 deletions(-) > > > > diff --git a/src/ipa/raspberrypi/controller/device_status.h b/src/ipa/raspberrypi/controller/device_status.h > > index 733378dbfa27..73df7ce228dd 100644 > > --- a/src/ipa/raspberrypi/controller/device_status.h > > +++ b/src/ipa/raspberrypi/controller/device_status.h > > @@ -14,6 +14,12 @@ > > */ > > > > struct DeviceStatus { > > + DeviceStatus() > > + : shutter_speed(std::chrono::seconds(0)), analogue_gain(0.0), > > + lens_position(0.0), aperture(0.0), flash_intensity(0.0) > > + { > > + } > > + > > /* time shutter is open */ > > libcamera::utils::Duration shutter_speed; > > double analogue_gain; > > diff --git a/src/ipa/raspberrypi/controller/rpi/agc.cpp b/src/ipa/raspberrypi/controller/rpi/agc.cpp > > index 6c3a4eb2a04d..f57783f821ec 100644 > > --- a/src/ipa/raspberrypi/controller/rpi/agc.cpp > > +++ b/src/ipa/raspberrypi/controller/rpi/agc.cpp > > @@ -172,7 +172,6 @@ Agc::Agc(Controller *controller) > > // it's not been calculated yet (i.e. Process hasn't yet run). > > memset(&status_, 0, sizeof(status_)); > > status_.ev = ev_; > > - memset(&last_device_status_, 0, sizeof(last_device_status_)); > > > > > char const *Agc::Name() const > > diff --git a/src/ipa/raspberrypi/controller/rpi/lux.cpp b/src/ipa/raspberrypi/controller/rpi/lux.cpp > > index f58d69397e1c..6367b17dc7f4 100644 > > --- a/src/ipa/raspberrypi/controller/rpi/lux.cpp > > +++ b/src/ipa/raspberrypi/controller/rpi/lux.cpp > > @@ -60,14 +60,7 @@ void Lux::Prepare(Metadata *image_metadata) > > > > void Lux::Process(StatisticsPtr &stats, Metadata *image_metadata) > > { > > - // set some initial values to shut the compiler up > > - DeviceStatus device_status = { > > - .shutter_speed = 1.0ms, > > - .analogue_gain = 1.0, > > - .lens_position = 0.0, > > - .aperture = 0.0, > > - .flash_intensity = 0.0 > > - }; > > + DeviceStatus device_status; > > if (image_metadata->Get("device.status", device_status) == 0) { > > double current_gain = device_status.analogue_gain; > > double current_aperture = device_status.aperture; > > I do also see an > geq.cpp: DeviceStatus device_status = {}; > > which doesn't hurt though I can fix this when applying. Naush, is that OK with you ? Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> > Reviewed-by: Jacopo Mondi <jacopo@jmondi.org>
diff --git a/src/ipa/raspberrypi/controller/device_status.h b/src/ipa/raspberrypi/controller/device_status.h index 733378dbfa27..73df7ce228dd 100644 --- a/src/ipa/raspberrypi/controller/device_status.h +++ b/src/ipa/raspberrypi/controller/device_status.h @@ -14,6 +14,12 @@ */ struct DeviceStatus { + DeviceStatus() + : shutter_speed(std::chrono::seconds(0)), analogue_gain(0.0), + lens_position(0.0), aperture(0.0), flash_intensity(0.0) + { + } + /* time shutter is open */ libcamera::utils::Duration shutter_speed; double analogue_gain; diff --git a/src/ipa/raspberrypi/controller/rpi/agc.cpp b/src/ipa/raspberrypi/controller/rpi/agc.cpp index 6c3a4eb2a04d..f57783f821ec 100644 --- a/src/ipa/raspberrypi/controller/rpi/agc.cpp +++ b/src/ipa/raspberrypi/controller/rpi/agc.cpp @@ -172,7 +172,6 @@ Agc::Agc(Controller *controller) // it's not been calculated yet (i.e. Process hasn't yet run). memset(&status_, 0, sizeof(status_)); status_.ev = ev_; - memset(&last_device_status_, 0, sizeof(last_device_status_)); } char const *Agc::Name() const diff --git a/src/ipa/raspberrypi/controller/rpi/lux.cpp b/src/ipa/raspberrypi/controller/rpi/lux.cpp index f58d69397e1c..6367b17dc7f4 100644 --- a/src/ipa/raspberrypi/controller/rpi/lux.cpp +++ b/src/ipa/raspberrypi/controller/rpi/lux.cpp @@ -60,14 +60,7 @@ void Lux::Prepare(Metadata *image_metadata) void Lux::Process(StatisticsPtr &stats, Metadata *image_metadata) { - // set some initial values to shut the compiler up - DeviceStatus device_status = { - .shutter_speed = 1.0ms, - .analogue_gain = 1.0, - .lens_position = 0.0, - .aperture = 0.0, - .flash_intensity = 0.0 - }; + DeviceStatus device_status; if (image_metadata->Get("device.status", device_status) == 0) { double current_gain = device_status.analogue_gain; double current_aperture = device_status.aperture;