summaryrefslogtreecommitdiffstats
path: root/src/plugins/common/evr/evrcustompresenter.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/common/evr/evrcustompresenter.h')
-rw-r--r--src/plugins/common/evr/evrcustompresenter.h65
1 files changed, 31 insertions, 34 deletions
diff --git a/src/plugins/common/evr/evrcustompresenter.h b/src/plugins/common/evr/evrcustompresenter.h
index 199dee774..bd04bd952 100644
--- a/src/plugins/common/evr/evrcustompresenter.h
+++ b/src/plugins/common/evr/evrcustompresenter.h
@@ -58,6 +58,7 @@ class QAbstractVideoSurface;
template<class T>
class AsyncCallback : public IMFAsyncCallback
{
+ Q_DISABLE_COPY(AsyncCallback)
public:
typedef HRESULT (T::*InvokeFn)(IMFAsyncResult *asyncResult);
@@ -66,7 +67,7 @@ public:
}
// IUnknown
- STDMETHODIMP QueryInterface(REFIID iid, void** ppv)
+ STDMETHODIMP QueryInterface(REFIID iid, void** ppv) override
{
if (!ppv)
return E_POINTER;
@@ -83,23 +84,23 @@ public:
return S_OK;
}
- STDMETHODIMP_(ULONG) AddRef() {
+ STDMETHODIMP_(ULONG) AddRef() override {
// Delegate to parent class.
return m_parent->AddRef();
}
- STDMETHODIMP_(ULONG) Release() {
+ STDMETHODIMP_(ULONG) Release() override {
// Delegate to parent class.
return m_parent->Release();
}
// IMFAsyncCallback methods
- STDMETHODIMP GetParameters(DWORD*, DWORD*)
+ STDMETHODIMP GetParameters(DWORD*, DWORD*) override
{
// Implementation of this method is optional.
return E_NOTIMPL;
}
- STDMETHODIMP Invoke(IMFAsyncResult* asyncResult)
+ STDMETHODIMP Invoke(IMFAsyncResult* asyncResult) override
{
return (m_parent->*m_invokeFn)(asyncResult);
}
@@ -110,6 +111,7 @@ public:
class Scheduler
{
+ Q_DISABLE_COPY(Scheduler)
public:
enum ScheduleEvent
{
@@ -164,6 +166,7 @@ private:
class SamplePool
{
+ Q_DISABLE_COPY(SamplePool)
public:
SamplePool();
~SamplePool();
@@ -188,6 +191,7 @@ class EVRCustomPresenter
, public IMFGetService
, public IMFTopologyServiceLookupClient
{
+ Q_DISABLE_COPY(EVRCustomPresenter)
public:
// Defines the state of the presenter.
enum RenderState
@@ -216,40 +220,40 @@ public:
};
EVRCustomPresenter(QAbstractVideoSurface *surface = 0);
- ~EVRCustomPresenter();
+ ~EVRCustomPresenter() override;
bool isValid() const;
// IUnknown methods
- STDMETHODIMP QueryInterface(REFIID riid, void ** ppv);
- STDMETHODIMP_(ULONG) AddRef();
- STDMETHODIMP_(ULONG) Release();
+ STDMETHODIMP QueryInterface(REFIID riid, void ** ppv) override;
+ STDMETHODIMP_(ULONG) AddRef() override;
+ STDMETHODIMP_(ULONG) Release() override;
// IMFGetService methods
- STDMETHODIMP GetService(REFGUID guidService, REFIID riid, LPVOID *ppvObject);
+ STDMETHODIMP GetService(REFGUID guidService, REFIID riid, LPVOID *ppvObject) override;
// IMFVideoPresenter methods
- STDMETHODIMP ProcessMessage(MFVP_MESSAGE_TYPE message, ULONG_PTR param);
- STDMETHODIMP GetCurrentMediaType(IMFVideoMediaType** mediaType);
+ STDMETHODIMP ProcessMessage(MFVP_MESSAGE_TYPE message, ULONG_PTR param) override;
+ STDMETHODIMP GetCurrentMediaType(IMFVideoMediaType** mediaType) override;
// IMFClockStateSink methods
- STDMETHODIMP OnClockStart(MFTIME systemTime, LONGLONG clockStartOffset);
- STDMETHODIMP OnClockStop(MFTIME systemTime);
- STDMETHODIMP OnClockPause(MFTIME systemTime);
- STDMETHODIMP OnClockRestart(MFTIME systemTime);
- STDMETHODIMP OnClockSetRate(MFTIME systemTime, float rate);
+ STDMETHODIMP OnClockStart(MFTIME systemTime, LONGLONG clockStartOffset) override;
+ STDMETHODIMP OnClockStop(MFTIME systemTime) override;
+ STDMETHODIMP OnClockPause(MFTIME systemTime) override;
+ STDMETHODIMP OnClockRestart(MFTIME systemTime) override;
+ STDMETHODIMP OnClockSetRate(MFTIME systemTime, float rate) override;
// IMFRateSupport methods
- STDMETHODIMP GetSlowestRate(MFRATE_DIRECTION direction, BOOL thin, float *rate);
- STDMETHODIMP GetFastestRate(MFRATE_DIRECTION direction, BOOL thin, float *rate);
- STDMETHODIMP IsRateSupported(BOOL thin, float rate, float *nearestSupportedRate);
+ STDMETHODIMP GetSlowestRate(MFRATE_DIRECTION direction, BOOL thin, float *rate) override;
+ STDMETHODIMP GetFastestRate(MFRATE_DIRECTION direction, BOOL thin, float *rate) override;
+ STDMETHODIMP IsRateSupported(BOOL thin, float rate, float *nearestSupportedRate) override;
// IMFVideoDeviceID methods
- STDMETHODIMP GetDeviceID(IID* deviceID);
+ STDMETHODIMP GetDeviceID(IID* deviceID) override;
// IMFTopologyServiceLookupClient methods
- STDMETHODIMP InitServicePointers(IMFTopologyServiceLookup *lookup);
- STDMETHODIMP ReleaseServicePointers();
+ STDMETHODIMP InitServicePointers(IMFTopologyServiceLookup *lookup) override;
+ STDMETHODIMP ReleaseServicePointers() override;
void supportedFormatsChanged();
void setSurface(QAbstractVideoSurface *surface);
@@ -258,7 +262,7 @@ public:
void stopSurface();
void presentSample(IMFSample *sample);
- bool event(QEvent *);
+ bool event(QEvent *) override;
private:
HRESULT checkShutdown() const
@@ -324,17 +328,10 @@ private:
// Holds information related to frame-stepping.
struct FrameStep
{
- FrameStep()
- : state(FrameStepNone)
- , steps(0)
- , sampleNoRef(0)
- {
- }
-
- FrameStepState state;
+ FrameStepState state = FrameStepNone;
QList<IMFSample*> samples;
- DWORD steps;
- DWORD_PTR sampleNoRef;
+ DWORD steps = 0;
+ DWORD_PTR sampleNoRef = 0;
};
long m_refCount;