OpenShot Library | libopenshot  0.7.0
RendererBase.h
Go to the documentation of this file.
1 
9 // Copyright (c) 2008-2019 OpenShot Studios, LLC
10 //
11 // SPDX-License-Identifier: LGPL-3.0-or-later
12 
13 #ifndef OPENSHOT_RENDERER_BASE_H
14 #define OPENSHOT_RENDERER_BASE_H
15 
16 #include "Frame.h"
17 #include <cstdint>
18 #include <cstdlib> // for realloc
19 #include <memory>
20 
21 namespace openshot
22 {
23  class Frame;
24 
32  {
33  public:
34 
36  void paint(const std::shared_ptr<openshot::Frame> & frame);
37 
39  virtual void OverrideWidget(uintptr_t qwidget_address) = 0;
40 
41  protected:
42  RendererBase();
43  virtual ~RendererBase();
44 
45  virtual void render(std::shared_ptr<QImage> image) = 0;
46  };
47 
48 }
49 
50 #endif
openshot::RendererBase::RendererBase
RendererBase()
Definition: RendererBase.cpp:16
openshot
This namespace is the default namespace for all code in the openshot library.
Definition: Compressor.h:28
openshot::RendererBase::OverrideWidget
virtual void OverrideWidget(uintptr_t qwidget_address)=0
Allow manual override of the QWidget that is used to display.
openshot::RendererBase::paint
void paint(const std::shared_ptr< openshot::Frame > &frame)
Paint(render) a video Frame.
Definition: RendererBase.cpp:24
Frame.h
Header file for Frame class.
openshot::RendererBase::~RendererBase
virtual ~RendererBase()
Definition: RendererBase.cpp:20
openshot::RendererBase
This is the base class of all Renderers in libopenshot.
Definition: RendererBase.h:31
openshot::RendererBase::render
virtual void render(std::shared_ptr< QImage > image)=0