[libcamera-devel] [PATCH v2 11/12] android: camera_stream: Define explicit move constructor and destructors

Laurent Pinchart laurent.pinchart at ideasonboard.com
Wed Oct 20 04:40:38 CEST 2021


Hi Hiro,

On Wed, Oct 20, 2021 at 11:18:42AM +0900, Hirokazu Honda wrote:
> On Tue, Oct 19, 2021 at 8:48 PM Umang Jain <umang.jain at ideasonboard.com> wrote:
> >
> > From: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
> >
> > There's no need for the move constructor and the destructor to be
> > inline. Define them explicitly, with default implementations. This
> > allows usage of the CameraStream class without a complete definition of
> > the PostProcessor class.
> 
> What is complete definition meant here?

It means a full definition of the class (as obtained by including
post_processor.h), as opposed to a forward declaration.

> > Signed-off-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
> > Reviewed-by: Umang Jain<umang.jain at ideasonboard.com>
> > Reviewed-by: Jacopo Mondi <jacopo at jmondi.org>
> > ---
> >  src/android/camera_stream.cpp | 4 ++++
> >  src/android/camera_stream.h   | 2 ++
> >  2 files changed, 6 insertions(+)
> >
> > diff --git a/src/android/camera_stream.cpp b/src/android/camera_stream.cpp
> > index 8e6ccb83..f44a2717 100644
> > --- a/src/android/camera_stream.cpp
> > +++ b/src/android/camera_stream.cpp
> > @@ -56,6 +56,10 @@ CameraStream::CameraStream(CameraDevice *const cameraDevice,
> >  {
> >  }
> >
> > +CameraStream::CameraStream(CameraStream &&other) = default;
> > +
> > +CameraStream::~CameraStream() = default;
> > +
> >  const StreamConfiguration &CameraStream::configuration() const
> >  {
> >         return config_->at(index_);
> > diff --git a/src/android/camera_stream.h b/src/android/camera_stream.h
> > index 85064268..f242336e 100644
> > --- a/src/android/camera_stream.h
> > +++ b/src/android/camera_stream.h
> > @@ -112,6 +112,8 @@ public:
> >         CameraStream(CameraDevice *const cameraDevice,
> >                      libcamera::CameraConfiguration *config, Type type,
> >                      camera3_stream_t *camera3Stream, unsigned int index);
> > +       CameraStream(CameraStream &&other);
> > +       ~CameraStream();
> >
> >         Type type() const { return type_; }
> >         camera3_stream_t *camera3Stream() const { return camera3Stream_; }

-- 
Regards,

Laurent Pinchart


More information about the libcamera-devel mailing list