[libcamera-devel,3/3] libcamera: Declare empty virtual destructors as defaulted
diff mbox series

Message ID 20201023051021.16389-4-laurent.pinchart@ideasonboard.com
State Accepted
Headers show
Series
  • libcamera: Miscellaneous constructors and destructors cleanups
Related show

Commit Message

Laurent Pinchart Oct. 23, 2020, 5:10 a.m. UTC
The base class of polymorphic classes is required to declare a
destructor. Several of these are empty, and can thus be declared as
defaulted.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
---
 include/libcamera/bound_method.h               | 4 ++--
 include/libcamera/internal/control_validator.h | 2 +-
 include/libcamera/internal/ipa_proxy.h         | 2 +-
 include/libcamera/internal/media_object.h      | 2 +-
 include/libcamera/internal/pipeline_handler.h  | 4 ++--
 include/libcamera/ipa/ipa_interface.h          | 2 +-
 src/android/jpeg/encoder.h                     | 2 +-
 src/android/post_processor.h                   | 2 +-
 src/cam/options.h                              | 2 +-
 src/libcamera/pipeline/rkisp1/timeline.h       | 4 ++--
 src/qcam/viewfinder.h                          | 2 +-
 11 files changed, 14 insertions(+), 14 deletions(-)

Comments

Umang Jain Oct. 23, 2020, 5:30 a.m. UTC | #1
Hi Laurent,

On 10/23/20 10:40 AM, Laurent Pinchart wrote:
> The base class of polymorphic classes is required to declare a
> destructor. Several of these are empty, and can thus be declared as
> defaulted.
>
> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Umang Jain <email@uajain.com>
> ---
>   include/libcamera/bound_method.h               | 4 ++--
>   include/libcamera/internal/control_validator.h | 2 +-
>   include/libcamera/internal/ipa_proxy.h         | 2 +-
>   include/libcamera/internal/media_object.h      | 2 +-
>   include/libcamera/internal/pipeline_handler.h  | 4 ++--
>   include/libcamera/ipa/ipa_interface.h          | 2 +-
>   src/android/jpeg/encoder.h                     | 2 +-
>   src/android/post_processor.h                   | 2 +-
>   src/cam/options.h                              | 2 +-
>   src/libcamera/pipeline/rkisp1/timeline.h       | 4 ++--
>   src/qcam/viewfinder.h                          | 2 +-
>   11 files changed, 14 insertions(+), 14 deletions(-)
>
> diff --git a/include/libcamera/bound_method.h b/include/libcamera/bound_method.h
> index d1e4448304a9..95a956530877 100644
> --- a/include/libcamera/bound_method.h
> +++ b/include/libcamera/bound_method.h
> @@ -26,7 +26,7 @@ enum ConnectionType {
>   class BoundMethodPackBase
>   {
>   public:
> -	virtual ~BoundMethodPackBase() {}
> +	virtual ~BoundMethodPackBase() = default;
>   };
>   
>   template<typename R, typename... Args>
> @@ -61,7 +61,7 @@ public:
>   		: obj_(obj), object_(object), connectionType_(type)
>   	{
>   	}
> -	virtual ~BoundMethodBase() {}
> +	virtual ~BoundMethodBase() = default;
>   
>   	template<typename T, typename std::enable_if_t<!std::is_same<Object, T>::value> * = nullptr>
>   	bool match(T *obj) { return obj == obj_; }
> diff --git a/include/libcamera/internal/control_validator.h b/include/libcamera/internal/control_validator.h
> index 4a00b9b7f686..206006954cd9 100644
> --- a/include/libcamera/internal/control_validator.h
> +++ b/include/libcamera/internal/control_validator.h
> @@ -16,7 +16,7 @@ class ControlId;
>   class ControlValidator
>   {
>   public:
> -	virtual ~ControlValidator() {}
> +	virtual ~ControlValidator() = default;
>   
>   	virtual const std::string &name() const = 0;
>   	virtual bool validate(unsigned int id) const = 0;
> diff --git a/include/libcamera/internal/ipa_proxy.h b/include/libcamera/internal/ipa_proxy.h
> index b429ce5a68a3..49399f4eb856 100644
> --- a/include/libcamera/internal/ipa_proxy.h
> +++ b/include/libcamera/internal/ipa_proxy.h
> @@ -42,7 +42,7 @@ class IPAProxyFactory
>   {
>   public:
>   	IPAProxyFactory(const char *name);
> -	virtual ~IPAProxyFactory() {}
> +	virtual ~IPAProxyFactory() = default;
>   
>   	virtual std::unique_ptr<IPAProxy> create(IPAModule *ipam) = 0;
>   
> diff --git a/include/libcamera/internal/media_object.h b/include/libcamera/internal/media_object.h
> index 54311c14895b..43a35bef8f35 100644
> --- a/include/libcamera/internal/media_object.h
> +++ b/include/libcamera/internal/media_object.h
> @@ -31,7 +31,7 @@ protected:
>   		: dev_(dev), id_(id)
>   	{
>   	}
> -	virtual ~MediaObject() {}
> +	virtual ~MediaObject() = default;
>   
>   	MediaDevice *dev_;
>   	unsigned int id_;
> diff --git a/include/libcamera/internal/pipeline_handler.h b/include/libcamera/internal/pipeline_handler.h
> index a4e1b529c461..c12c8904858e 100644
> --- a/include/libcamera/internal/pipeline_handler.h
> +++ b/include/libcamera/internal/pipeline_handler.h
> @@ -40,7 +40,7 @@ public:
>   		: pipe_(pipe)
>   	{
>   	}
> -	virtual ~CameraData() {}
> +	virtual ~CameraData() = default;
>   
>   	Camera *camera_;
>   	PipelineHandler *pipe_;
> @@ -118,7 +118,7 @@ class PipelineHandlerFactory
>   {
>   public:
>   	PipelineHandlerFactory(const char *name);
> -	virtual ~PipelineHandlerFactory() {}
> +	virtual ~PipelineHandlerFactory() = default;
>   
>   	std::shared_ptr<PipelineHandler> create(CameraManager *manager);
>   
> diff --git a/include/libcamera/ipa/ipa_interface.h b/include/libcamera/ipa/ipa_interface.h
> index 5016ec25ea9c..322b7079070e 100644
> --- a/include/libcamera/ipa/ipa_interface.h
> +++ b/include/libcamera/ipa/ipa_interface.h
> @@ -150,7 +150,7 @@ struct CameraSensorInfo;
>   class IPAInterface
>   {
>   public:
> -	virtual ~IPAInterface() {}
> +	virtual ~IPAInterface() = default;
>   
>   	virtual int init(const IPASettings &settings) = 0;
>   	virtual int start() = 0;
> diff --git a/src/android/jpeg/encoder.h b/src/android/jpeg/encoder.h
> index 270ea6091798..0ca2ba38c528 100644
> --- a/src/android/jpeg/encoder.h
> +++ b/src/android/jpeg/encoder.h
> @@ -14,7 +14,7 @@
>   class Encoder
>   {
>   public:
> -	virtual ~Encoder() {}
> +	virtual ~Encoder() = default;
>   
>   	virtual int configure(const libcamera::StreamConfiguration &cfg) = 0;
>   	virtual int encode(const libcamera::FrameBuffer &source,
> diff --git a/src/android/post_processor.h b/src/android/post_processor.h
> index 5f87a5d1bc30..e0f91880f0bf 100644
> --- a/src/android/post_processor.h
> +++ b/src/android/post_processor.h
> @@ -16,7 +16,7 @@ class CameraMetadata;
>   class PostProcessor
>   {
>   public:
> -	virtual ~PostProcessor() {}
> +	virtual ~PostProcessor() = default;
>   
>   	virtual int configure(const libcamera::StreamConfiguration &inCfg,
>   			      const libcamera::StreamConfiguration &outCfg) = 0;
> diff --git a/src/cam/options.h b/src/cam/options.h
> index 184866195eef..f02eeca2eef9 100644
> --- a/src/cam/options.h
> +++ b/src/cam/options.h
> @@ -73,7 +73,7 @@ public:
>   	{
>   	};
>   
> -	virtual ~KeyValueParser() {}
> +	virtual ~KeyValueParser() = default;
>   
>   	bool addOption(const char *name, OptionType type, const char *help,
>   		       OptionArgument argument = ArgumentNone);
> diff --git a/src/libcamera/pipeline/rkisp1/timeline.h b/src/libcamera/pipeline/rkisp1/timeline.h
> index 88f99329873d..0c37b06fa6df 100644
> --- a/src/libcamera/pipeline/rkisp1/timeline.h
> +++ b/src/libcamera/pipeline/rkisp1/timeline.h
> @@ -22,7 +22,7 @@ public:
>   	FrameAction(unsigned int frame, unsigned int type)
>   		: frame_(frame), type_(type) {}
>   
> -	virtual ~FrameAction() {}
> +	virtual ~FrameAction() = default;
>   
>   	unsigned int frame() const { return frame_; }
>   	unsigned int type() const { return type_; }
> @@ -38,7 +38,7 @@ class Timeline
>   {
>   public:
>   	Timeline();
> -	virtual ~Timeline() {}
> +	virtual ~Timeline() = default;
>   
>   	virtual void reset();
>   	virtual void scheduleAction(std::unique_ptr<FrameAction> action);
> diff --git a/src/qcam/viewfinder.h b/src/qcam/viewfinder.h
> index 67da1df26a0c..e33dc4525224 100644
> --- a/src/qcam/viewfinder.h
> +++ b/src/qcam/viewfinder.h
> @@ -22,7 +22,7 @@ struct MappedBuffer {
>   class ViewFinder
>   {
>   public:
> -	virtual ~ViewFinder() {}
> +	virtual ~ViewFinder() = default;
>   
>   	virtual const QList<libcamera::PixelFormat> &nativeFormats() const = 0;
>
Kieran Bingham Oct. 23, 2020, 8:53 a.m. UTC | #2
Hi Laurent,

On 23/10/2020 06:10, Laurent Pinchart wrote:
> The base class of polymorphic classes is required to declare a
> destructor. Several of these are empty, and can thus be declared as
> defaulted.
> 
> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>

What about these?:

src/ipa/raspberrypi/controller/algorithm.hpp:   virtual ~Algorithm() {}
src/ipa/raspberrypi/md_parser.hpp:      virtual ~MdParser() {}


If you've intentionally left those out, or with those fixed:

Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>


> ---
>  include/libcamera/bound_method.h               | 4 ++--
>  include/libcamera/internal/control_validator.h | 2 +-
>  include/libcamera/internal/ipa_proxy.h         | 2 +-
>  include/libcamera/internal/media_object.h      | 2 +-
>  include/libcamera/internal/pipeline_handler.h  | 4 ++--
>  include/libcamera/ipa/ipa_interface.h          | 2 +-
>  src/android/jpeg/encoder.h                     | 2 +-
>  src/android/post_processor.h                   | 2 +-
>  src/cam/options.h                              | 2 +-
>  src/libcamera/pipeline/rkisp1/timeline.h       | 4 ++--
>  src/qcam/viewfinder.h                          | 2 +-
>  11 files changed, 14 insertions(+), 14 deletions(-)


> diff --git a/include/libcamera/bound_method.h b/include/libcamera/bound_method.h
> index d1e4448304a9..95a956530877 100644
> --- a/include/libcamera/bound_method.h
> +++ b/include/libcamera/bound_method.h
> @@ -26,7 +26,7 @@ enum ConnectionType {
>  class BoundMethodPackBase
>  {
>  public:
> -	virtual ~BoundMethodPackBase() {}
> +	virtual ~BoundMethodPackBase() = default;
>  };
>  
>  template<typename R, typename... Args>
> @@ -61,7 +61,7 @@ public:
>  		: obj_(obj), object_(object), connectionType_(type)
>  	{
>  	}
> -	virtual ~BoundMethodBase() {}
> +	virtual ~BoundMethodBase() = default;
>  
>  	template<typename T, typename std::enable_if_t<!std::is_same<Object, T>::value> * = nullptr>
>  	bool match(T *obj) { return obj == obj_; }
> diff --git a/include/libcamera/internal/control_validator.h b/include/libcamera/internal/control_validator.h
> index 4a00b9b7f686..206006954cd9 100644
> --- a/include/libcamera/internal/control_validator.h
> +++ b/include/libcamera/internal/control_validator.h
> @@ -16,7 +16,7 @@ class ControlId;
>  class ControlValidator
>  {
>  public:
> -	virtual ~ControlValidator() {}
> +	virtual ~ControlValidator() = default;
>  
>  	virtual const std::string &name() const = 0;
>  	virtual bool validate(unsigned int id) const = 0;
> diff --git a/include/libcamera/internal/ipa_proxy.h b/include/libcamera/internal/ipa_proxy.h
> index b429ce5a68a3..49399f4eb856 100644
> --- a/include/libcamera/internal/ipa_proxy.h
> +++ b/include/libcamera/internal/ipa_proxy.h
> @@ -42,7 +42,7 @@ class IPAProxyFactory
>  {
>  public:
>  	IPAProxyFactory(const char *name);
> -	virtual ~IPAProxyFactory() {}
> +	virtual ~IPAProxyFactory() = default;
>  
>  	virtual std::unique_ptr<IPAProxy> create(IPAModule *ipam) = 0;
>  
> diff --git a/include/libcamera/internal/media_object.h b/include/libcamera/internal/media_object.h
> index 54311c14895b..43a35bef8f35 100644
> --- a/include/libcamera/internal/media_object.h
> +++ b/include/libcamera/internal/media_object.h
> @@ -31,7 +31,7 @@ protected:
>  		: dev_(dev), id_(id)
>  	{
>  	}
> -	virtual ~MediaObject() {}
> +	virtual ~MediaObject() = default;
>  
>  	MediaDevice *dev_;
>  	unsigned int id_;
> diff --git a/include/libcamera/internal/pipeline_handler.h b/include/libcamera/internal/pipeline_handler.h
> index a4e1b529c461..c12c8904858e 100644
> --- a/include/libcamera/internal/pipeline_handler.h
> +++ b/include/libcamera/internal/pipeline_handler.h
> @@ -40,7 +40,7 @@ public:
>  		: pipe_(pipe)
>  	{
>  	}
> -	virtual ~CameraData() {}
> +	virtual ~CameraData() = default;
>  
>  	Camera *camera_;
>  	PipelineHandler *pipe_;
> @@ -118,7 +118,7 @@ class PipelineHandlerFactory
>  {
>  public:
>  	PipelineHandlerFactory(const char *name);
> -	virtual ~PipelineHandlerFactory() {}
> +	virtual ~PipelineHandlerFactory() = default;
>  
>  	std::shared_ptr<PipelineHandler> create(CameraManager *manager);
>  
> diff --git a/include/libcamera/ipa/ipa_interface.h b/include/libcamera/ipa/ipa_interface.h
> index 5016ec25ea9c..322b7079070e 100644
> --- a/include/libcamera/ipa/ipa_interface.h
> +++ b/include/libcamera/ipa/ipa_interface.h
> @@ -150,7 +150,7 @@ struct CameraSensorInfo;
>  class IPAInterface
>  {
>  public:
> -	virtual ~IPAInterface() {}
> +	virtual ~IPAInterface() = default;
>  
>  	virtual int init(const IPASettings &settings) = 0;
>  	virtual int start() = 0;
> diff --git a/src/android/jpeg/encoder.h b/src/android/jpeg/encoder.h
> index 270ea6091798..0ca2ba38c528 100644
> --- a/src/android/jpeg/encoder.h
> +++ b/src/android/jpeg/encoder.h
> @@ -14,7 +14,7 @@
>  class Encoder
>  {
>  public:
> -	virtual ~Encoder() {}
> +	virtual ~Encoder() = default;
>  
>  	virtual int configure(const libcamera::StreamConfiguration &cfg) = 0;
>  	virtual int encode(const libcamera::FrameBuffer &source,
> diff --git a/src/android/post_processor.h b/src/android/post_processor.h
> index 5f87a5d1bc30..e0f91880f0bf 100644
> --- a/src/android/post_processor.h
> +++ b/src/android/post_processor.h
> @@ -16,7 +16,7 @@ class CameraMetadata;
>  class PostProcessor
>  {
>  public:
> -	virtual ~PostProcessor() {}
> +	virtual ~PostProcessor() = default;
>  
>  	virtual int configure(const libcamera::StreamConfiguration &inCfg,
>  			      const libcamera::StreamConfiguration &outCfg) = 0;
> diff --git a/src/cam/options.h b/src/cam/options.h
> index 184866195eef..f02eeca2eef9 100644
> --- a/src/cam/options.h
> +++ b/src/cam/options.h
> @@ -73,7 +73,7 @@ public:
>  	{
>  	};
>  
> -	virtual ~KeyValueParser() {}
> +	virtual ~KeyValueParser() = default;
>  
>  	bool addOption(const char *name, OptionType type, const char *help,
>  		       OptionArgument argument = ArgumentNone);
> diff --git a/src/libcamera/pipeline/rkisp1/timeline.h b/src/libcamera/pipeline/rkisp1/timeline.h
> index 88f99329873d..0c37b06fa6df 100644
> --- a/src/libcamera/pipeline/rkisp1/timeline.h
> +++ b/src/libcamera/pipeline/rkisp1/timeline.h
> @@ -22,7 +22,7 @@ public:
>  	FrameAction(unsigned int frame, unsigned int type)
>  		: frame_(frame), type_(type) {}
>  
> -	virtual ~FrameAction() {}
> +	virtual ~FrameAction() = default;
>  
>  	unsigned int frame() const { return frame_; }
>  	unsigned int type() const { return type_; }
> @@ -38,7 +38,7 @@ class Timeline
>  {
>  public:
>  	Timeline();
> -	virtual ~Timeline() {}
> +	virtual ~Timeline() = default;
>  
>  	virtual void reset();
>  	virtual void scheduleAction(std::unique_ptr<FrameAction> action);
> diff --git a/src/qcam/viewfinder.h b/src/qcam/viewfinder.h
> index 67da1df26a0c..e33dc4525224 100644
> --- a/src/qcam/viewfinder.h
> +++ b/src/qcam/viewfinder.h
> @@ -22,7 +22,7 @@ struct MappedBuffer {
>  class ViewFinder
>  {
>  public:
> -	virtual ~ViewFinder() {}
> +	virtual ~ViewFinder() = default;
>  
>  	virtual const QList<libcamera::PixelFormat> &nativeFormats() const = 0;
>  
>
Laurent Pinchart Oct. 23, 2020, 7:52 p.m. UTC | #3
Hi Kieran,

On Fri, Oct 23, 2020 at 09:53:19AM +0100, Kieran Bingham wrote:
> On 23/10/2020 06:10, Laurent Pinchart wrote:
> > The base class of polymorphic classes is required to declare a
> > destructor. Several of these are empty, and can thus be declared as
> > defaulted.
> > 
> > Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> 
> What about these?:
> 
> src/ipa/raspberrypi/controller/algorithm.hpp:   virtual ~Algorithm() {}
> src/ipa/raspberrypi/md_parser.hpp:      virtual ~MdParser() {}
> 
> If you've intentionally left those out, or with those fixed:

That was intentional indeed as I was thinking about going through the
RPi IPA in the future to propose aligning it better with the coding
style, but now that you make me think about it, I don't see a good
reason not to address these two locations already. I'll thus fix it.

> Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
> 
> > ---
> >  include/libcamera/bound_method.h               | 4 ++--
> >  include/libcamera/internal/control_validator.h | 2 +-
> >  include/libcamera/internal/ipa_proxy.h         | 2 +-
> >  include/libcamera/internal/media_object.h      | 2 +-
> >  include/libcamera/internal/pipeline_handler.h  | 4 ++--
> >  include/libcamera/ipa/ipa_interface.h          | 2 +-
> >  src/android/jpeg/encoder.h                     | 2 +-
> >  src/android/post_processor.h                   | 2 +-
> >  src/cam/options.h                              | 2 +-
> >  src/libcamera/pipeline/rkisp1/timeline.h       | 4 ++--
> >  src/qcam/viewfinder.h                          | 2 +-
> >  11 files changed, 14 insertions(+), 14 deletions(-)
> >
> > diff --git a/include/libcamera/bound_method.h b/include/libcamera/bound_method.h
> > index d1e4448304a9..95a956530877 100644
> > --- a/include/libcamera/bound_method.h
> > +++ b/include/libcamera/bound_method.h
> > @@ -26,7 +26,7 @@ enum ConnectionType {
> >  class BoundMethodPackBase
> >  {
> >  public:
> > -	virtual ~BoundMethodPackBase() {}
> > +	virtual ~BoundMethodPackBase() = default;
> >  };
> >  
> >  template<typename R, typename... Args>
> > @@ -61,7 +61,7 @@ public:
> >  		: obj_(obj), object_(object), connectionType_(type)
> >  	{
> >  	}
> > -	virtual ~BoundMethodBase() {}
> > +	virtual ~BoundMethodBase() = default;
> >  
> >  	template<typename T, typename std::enable_if_t<!std::is_same<Object, T>::value> * = nullptr>
> >  	bool match(T *obj) { return obj == obj_; }
> > diff --git a/include/libcamera/internal/control_validator.h b/include/libcamera/internal/control_validator.h
> > index 4a00b9b7f686..206006954cd9 100644
> > --- a/include/libcamera/internal/control_validator.h
> > +++ b/include/libcamera/internal/control_validator.h
> > @@ -16,7 +16,7 @@ class ControlId;
> >  class ControlValidator
> >  {
> >  public:
> > -	virtual ~ControlValidator() {}
> > +	virtual ~ControlValidator() = default;
> >  
> >  	virtual const std::string &name() const = 0;
> >  	virtual bool validate(unsigned int id) const = 0;
> > diff --git a/include/libcamera/internal/ipa_proxy.h b/include/libcamera/internal/ipa_proxy.h
> > index b429ce5a68a3..49399f4eb856 100644
> > --- a/include/libcamera/internal/ipa_proxy.h
> > +++ b/include/libcamera/internal/ipa_proxy.h
> > @@ -42,7 +42,7 @@ class IPAProxyFactory
> >  {
> >  public:
> >  	IPAProxyFactory(const char *name);
> > -	virtual ~IPAProxyFactory() {}
> > +	virtual ~IPAProxyFactory() = default;
> >  
> >  	virtual std::unique_ptr<IPAProxy> create(IPAModule *ipam) = 0;
> >  
> > diff --git a/include/libcamera/internal/media_object.h b/include/libcamera/internal/media_object.h
> > index 54311c14895b..43a35bef8f35 100644
> > --- a/include/libcamera/internal/media_object.h
> > +++ b/include/libcamera/internal/media_object.h
> > @@ -31,7 +31,7 @@ protected:
> >  		: dev_(dev), id_(id)
> >  	{
> >  	}
> > -	virtual ~MediaObject() {}
> > +	virtual ~MediaObject() = default;
> >  
> >  	MediaDevice *dev_;
> >  	unsigned int id_;
> > diff --git a/include/libcamera/internal/pipeline_handler.h b/include/libcamera/internal/pipeline_handler.h
> > index a4e1b529c461..c12c8904858e 100644
> > --- a/include/libcamera/internal/pipeline_handler.h
> > +++ b/include/libcamera/internal/pipeline_handler.h
> > @@ -40,7 +40,7 @@ public:
> >  		: pipe_(pipe)
> >  	{
> >  	}
> > -	virtual ~CameraData() {}
> > +	virtual ~CameraData() = default;
> >  
> >  	Camera *camera_;
> >  	PipelineHandler *pipe_;
> > @@ -118,7 +118,7 @@ class PipelineHandlerFactory
> >  {
> >  public:
> >  	PipelineHandlerFactory(const char *name);
> > -	virtual ~PipelineHandlerFactory() {}
> > +	virtual ~PipelineHandlerFactory() = default;
> >  
> >  	std::shared_ptr<PipelineHandler> create(CameraManager *manager);
> >  
> > diff --git a/include/libcamera/ipa/ipa_interface.h b/include/libcamera/ipa/ipa_interface.h
> > index 5016ec25ea9c..322b7079070e 100644
> > --- a/include/libcamera/ipa/ipa_interface.h
> > +++ b/include/libcamera/ipa/ipa_interface.h
> > @@ -150,7 +150,7 @@ struct CameraSensorInfo;
> >  class IPAInterface
> >  {
> >  public:
> > -	virtual ~IPAInterface() {}
> > +	virtual ~IPAInterface() = default;
> >  
> >  	virtual int init(const IPASettings &settings) = 0;
> >  	virtual int start() = 0;
> > diff --git a/src/android/jpeg/encoder.h b/src/android/jpeg/encoder.h
> > index 270ea6091798..0ca2ba38c528 100644
> > --- a/src/android/jpeg/encoder.h
> > +++ b/src/android/jpeg/encoder.h
> > @@ -14,7 +14,7 @@
> >  class Encoder
> >  {
> >  public:
> > -	virtual ~Encoder() {}
> > +	virtual ~Encoder() = default;
> >  
> >  	virtual int configure(const libcamera::StreamConfiguration &cfg) = 0;
> >  	virtual int encode(const libcamera::FrameBuffer &source,
> > diff --git a/src/android/post_processor.h b/src/android/post_processor.h
> > index 5f87a5d1bc30..e0f91880f0bf 100644
> > --- a/src/android/post_processor.h
> > +++ b/src/android/post_processor.h
> > @@ -16,7 +16,7 @@ class CameraMetadata;
> >  class PostProcessor
> >  {
> >  public:
> > -	virtual ~PostProcessor() {}
> > +	virtual ~PostProcessor() = default;
> >  
> >  	virtual int configure(const libcamera::StreamConfiguration &inCfg,
> >  			      const libcamera::StreamConfiguration &outCfg) = 0;
> > diff --git a/src/cam/options.h b/src/cam/options.h
> > index 184866195eef..f02eeca2eef9 100644
> > --- a/src/cam/options.h
> > +++ b/src/cam/options.h
> > @@ -73,7 +73,7 @@ public:
> >  	{
> >  	};
> >  
> > -	virtual ~KeyValueParser() {}
> > +	virtual ~KeyValueParser() = default;
> >  
> >  	bool addOption(const char *name, OptionType type, const char *help,
> >  		       OptionArgument argument = ArgumentNone);
> > diff --git a/src/libcamera/pipeline/rkisp1/timeline.h b/src/libcamera/pipeline/rkisp1/timeline.h
> > index 88f99329873d..0c37b06fa6df 100644
> > --- a/src/libcamera/pipeline/rkisp1/timeline.h
> > +++ b/src/libcamera/pipeline/rkisp1/timeline.h
> > @@ -22,7 +22,7 @@ public:
> >  	FrameAction(unsigned int frame, unsigned int type)
> >  		: frame_(frame), type_(type) {}
> >  
> > -	virtual ~FrameAction() {}
> > +	virtual ~FrameAction() = default;
> >  
> >  	unsigned int frame() const { return frame_; }
> >  	unsigned int type() const { return type_; }
> > @@ -38,7 +38,7 @@ class Timeline
> >  {
> >  public:
> >  	Timeline();
> > -	virtual ~Timeline() {}
> > +	virtual ~Timeline() = default;
> >  
> >  	virtual void reset();
> >  	virtual void scheduleAction(std::unique_ptr<FrameAction> action);
> > diff --git a/src/qcam/viewfinder.h b/src/qcam/viewfinder.h
> > index 67da1df26a0c..e33dc4525224 100644
> > --- a/src/qcam/viewfinder.h
> > +++ b/src/qcam/viewfinder.h
> > @@ -22,7 +22,7 @@ struct MappedBuffer {
> >  class ViewFinder
> >  {
> >  public:
> > -	virtual ~ViewFinder() {}
> > +	virtual ~ViewFinder() = default;
> >  
> >  	virtual const QList<libcamera::PixelFormat> &nativeFormats() const = 0;
> >

Patch
diff mbox series

diff --git a/include/libcamera/bound_method.h b/include/libcamera/bound_method.h
index d1e4448304a9..95a956530877 100644
--- a/include/libcamera/bound_method.h
+++ b/include/libcamera/bound_method.h
@@ -26,7 +26,7 @@  enum ConnectionType {
 class BoundMethodPackBase
 {
 public:
-	virtual ~BoundMethodPackBase() {}
+	virtual ~BoundMethodPackBase() = default;
 };
 
 template<typename R, typename... Args>
@@ -61,7 +61,7 @@  public:
 		: obj_(obj), object_(object), connectionType_(type)
 	{
 	}
-	virtual ~BoundMethodBase() {}
+	virtual ~BoundMethodBase() = default;
 
 	template<typename T, typename std::enable_if_t<!std::is_same<Object, T>::value> * = nullptr>
 	bool match(T *obj) { return obj == obj_; }
diff --git a/include/libcamera/internal/control_validator.h b/include/libcamera/internal/control_validator.h
index 4a00b9b7f686..206006954cd9 100644
--- a/include/libcamera/internal/control_validator.h
+++ b/include/libcamera/internal/control_validator.h
@@ -16,7 +16,7 @@  class ControlId;
 class ControlValidator
 {
 public:
-	virtual ~ControlValidator() {}
+	virtual ~ControlValidator() = default;
 
 	virtual const std::string &name() const = 0;
 	virtual bool validate(unsigned int id) const = 0;
diff --git a/include/libcamera/internal/ipa_proxy.h b/include/libcamera/internal/ipa_proxy.h
index b429ce5a68a3..49399f4eb856 100644
--- a/include/libcamera/internal/ipa_proxy.h
+++ b/include/libcamera/internal/ipa_proxy.h
@@ -42,7 +42,7 @@  class IPAProxyFactory
 {
 public:
 	IPAProxyFactory(const char *name);
-	virtual ~IPAProxyFactory() {}
+	virtual ~IPAProxyFactory() = default;
 
 	virtual std::unique_ptr<IPAProxy> create(IPAModule *ipam) = 0;
 
diff --git a/include/libcamera/internal/media_object.h b/include/libcamera/internal/media_object.h
index 54311c14895b..43a35bef8f35 100644
--- a/include/libcamera/internal/media_object.h
+++ b/include/libcamera/internal/media_object.h
@@ -31,7 +31,7 @@  protected:
 		: dev_(dev), id_(id)
 	{
 	}
-	virtual ~MediaObject() {}
+	virtual ~MediaObject() = default;
 
 	MediaDevice *dev_;
 	unsigned int id_;
diff --git a/include/libcamera/internal/pipeline_handler.h b/include/libcamera/internal/pipeline_handler.h
index a4e1b529c461..c12c8904858e 100644
--- a/include/libcamera/internal/pipeline_handler.h
+++ b/include/libcamera/internal/pipeline_handler.h
@@ -40,7 +40,7 @@  public:
 		: pipe_(pipe)
 	{
 	}
-	virtual ~CameraData() {}
+	virtual ~CameraData() = default;
 
 	Camera *camera_;
 	PipelineHandler *pipe_;
@@ -118,7 +118,7 @@  class PipelineHandlerFactory
 {
 public:
 	PipelineHandlerFactory(const char *name);
-	virtual ~PipelineHandlerFactory() {}
+	virtual ~PipelineHandlerFactory() = default;
 
 	std::shared_ptr<PipelineHandler> create(CameraManager *manager);
 
diff --git a/include/libcamera/ipa/ipa_interface.h b/include/libcamera/ipa/ipa_interface.h
index 5016ec25ea9c..322b7079070e 100644
--- a/include/libcamera/ipa/ipa_interface.h
+++ b/include/libcamera/ipa/ipa_interface.h
@@ -150,7 +150,7 @@  struct CameraSensorInfo;
 class IPAInterface
 {
 public:
-	virtual ~IPAInterface() {}
+	virtual ~IPAInterface() = default;
 
 	virtual int init(const IPASettings &settings) = 0;
 	virtual int start() = 0;
diff --git a/src/android/jpeg/encoder.h b/src/android/jpeg/encoder.h
index 270ea6091798..0ca2ba38c528 100644
--- a/src/android/jpeg/encoder.h
+++ b/src/android/jpeg/encoder.h
@@ -14,7 +14,7 @@ 
 class Encoder
 {
 public:
-	virtual ~Encoder() {}
+	virtual ~Encoder() = default;
 
 	virtual int configure(const libcamera::StreamConfiguration &cfg) = 0;
 	virtual int encode(const libcamera::FrameBuffer &source,
diff --git a/src/android/post_processor.h b/src/android/post_processor.h
index 5f87a5d1bc30..e0f91880f0bf 100644
--- a/src/android/post_processor.h
+++ b/src/android/post_processor.h
@@ -16,7 +16,7 @@  class CameraMetadata;
 class PostProcessor
 {
 public:
-	virtual ~PostProcessor() {}
+	virtual ~PostProcessor() = default;
 
 	virtual int configure(const libcamera::StreamConfiguration &inCfg,
 			      const libcamera::StreamConfiguration &outCfg) = 0;
diff --git a/src/cam/options.h b/src/cam/options.h
index 184866195eef..f02eeca2eef9 100644
--- a/src/cam/options.h
+++ b/src/cam/options.h
@@ -73,7 +73,7 @@  public:
 	{
 	};
 
-	virtual ~KeyValueParser() {}
+	virtual ~KeyValueParser() = default;
 
 	bool addOption(const char *name, OptionType type, const char *help,
 		       OptionArgument argument = ArgumentNone);
diff --git a/src/libcamera/pipeline/rkisp1/timeline.h b/src/libcamera/pipeline/rkisp1/timeline.h
index 88f99329873d..0c37b06fa6df 100644
--- a/src/libcamera/pipeline/rkisp1/timeline.h
+++ b/src/libcamera/pipeline/rkisp1/timeline.h
@@ -22,7 +22,7 @@  public:
 	FrameAction(unsigned int frame, unsigned int type)
 		: frame_(frame), type_(type) {}
 
-	virtual ~FrameAction() {}
+	virtual ~FrameAction() = default;
 
 	unsigned int frame() const { return frame_; }
 	unsigned int type() const { return type_; }
@@ -38,7 +38,7 @@  class Timeline
 {
 public:
 	Timeline();
-	virtual ~Timeline() {}
+	virtual ~Timeline() = default;
 
 	virtual void reset();
 	virtual void scheduleAction(std::unique_ptr<FrameAction> action);
diff --git a/src/qcam/viewfinder.h b/src/qcam/viewfinder.h
index 67da1df26a0c..e33dc4525224 100644
--- a/src/qcam/viewfinder.h
+++ b/src/qcam/viewfinder.h
@@ -22,7 +22,7 @@  struct MappedBuffer {
 class ViewFinder
 {
 public:
-	virtual ~ViewFinder() {}
+	virtual ~ViewFinder() = default;
 
 	virtual const QList<libcamera::PixelFormat> &nativeFormats() const = 0;