Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
mfactivate_p.h
Go to the documentation of this file.
1// Copyright (C) 2016 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3
4#ifndef MFACTIVATE_H
5#define MFACTIVATE_H
6
7//
8// W A R N I N G
9// -------------
10//
11// This file is not part of the Qt API. It exists purely as an
12// implementation detail. This header file may change from version to
13// version without notice, or even be removed.
14//
15// We mean it.
16//
17
18#include <mfidl.h>
19#include <private/qcomobject_p.h>
20
22
23namespace QtPrivate {
24
25template <>
26struct QComObjectTraits<IMFActivate>
27{
28 static constexpr bool isGuidOf(REFIID riid) noexcept
29 {
30 return QComObjectTraits<IMFActivate, IMFAttributes>::isGuidOf(riid);
31 }
32};
33
34} // namespace QtPrivate
35
36class MFAbstractActivate : public QComObject<IMFActivate>
37{
38public:
39 explicit MFAbstractActivate();
40
41 //from IMFAttributes
42 STDMETHODIMP GetItem(REFGUID guidKey, PROPVARIANT *pValue) override
43 {
44 return m_attributes->GetItem(guidKey, pValue);
45 }
46
47 STDMETHODIMP GetItemType(REFGUID guidKey, MF_ATTRIBUTE_TYPE *pType) override
48 {
49 return m_attributes->GetItemType(guidKey, pType);
50 }
51
52 STDMETHODIMP CompareItem(REFGUID guidKey, REFPROPVARIANT Value, BOOL *pbResult) override
53 {
54 return m_attributes->CompareItem(guidKey, Value, pbResult);
55 }
56
57 STDMETHODIMP Compare(IMFAttributes *pTheirs, MF_ATTRIBUTES_MATCH_TYPE MatchType, BOOL *pbResult) override
58 {
59 return m_attributes->Compare(pTheirs, MatchType, pbResult);
60 }
61
62 STDMETHODIMP GetUINT32(REFGUID guidKey, UINT32 *punValue) override
63 {
64 return m_attributes->GetUINT32(guidKey, punValue);
65 }
66
67 STDMETHODIMP GetUINT64(REFGUID guidKey, UINT64 *punValue) override
68 {
69 return m_attributes->GetUINT64(guidKey, punValue);
70 }
71
72 STDMETHODIMP GetDouble(REFGUID guidKey, double *pfValue) override
73 {
74 return m_attributes->GetDouble(guidKey, pfValue);
75 }
76
77 STDMETHODIMP GetGUID(REFGUID guidKey, GUID *pguidValue) override
78 {
79 return m_attributes->GetGUID(guidKey, pguidValue);
80 }
81
82 STDMETHODIMP GetStringLength(REFGUID guidKey, UINT32 *pcchLength) override
83 {
84 return m_attributes->GetStringLength(guidKey, pcchLength);
85 }
86
87 STDMETHODIMP GetString(REFGUID guidKey, LPWSTR pwszValue, UINT32 cchBufSize, UINT32 *pcchLength) override
88 {
89 return m_attributes->GetString(guidKey, pwszValue, cchBufSize, pcchLength);
90 }
91
92 STDMETHODIMP GetAllocatedString(REFGUID guidKey, LPWSTR *ppwszValue, UINT32 *pcchLength) override
93 {
94 return m_attributes->GetAllocatedString(guidKey, ppwszValue, pcchLength);
95 }
96
97 STDMETHODIMP GetBlobSize(REFGUID guidKey, UINT32 *pcbBlobSize) override
98 {
99 return m_attributes->GetBlobSize(guidKey, pcbBlobSize);
100 }
101
102 STDMETHODIMP GetBlob(REFGUID guidKey, UINT8 *pBuf, UINT32 cbBufSize, UINT32 *pcbBlobSize) override
103 {
104 return m_attributes->GetBlob(guidKey, pBuf, cbBufSize, pcbBlobSize);
105 }
106
107 STDMETHODIMP GetAllocatedBlob(REFGUID guidKey, UINT8 **ppBuf, UINT32 *pcbSize) override
108 {
109 return m_attributes->GetAllocatedBlob(guidKey, ppBuf, pcbSize);
110 }
111
112 STDMETHODIMP GetUnknown(REFGUID guidKey, REFIID riid, LPVOID *ppv) override
113 {
114 return m_attributes->GetUnknown(guidKey, riid, ppv);
115 }
116
117 STDMETHODIMP SetItem(REFGUID guidKey, REFPROPVARIANT Value) override
118 {
119 return m_attributes->SetItem(guidKey, Value);
120 }
121
122 STDMETHODIMP DeleteItem(REFGUID guidKey) override
123 {
124 return m_attributes->DeleteItem(guidKey);
125 }
126
127 STDMETHODIMP DeleteAllItems() override
128 {
129 return m_attributes->DeleteAllItems();
130 }
131
132 STDMETHODIMP SetUINT32(REFGUID guidKey, UINT32 unValue) override
133 {
134 return m_attributes->SetUINT32(guidKey, unValue);
135 }
136
137 STDMETHODIMP SetUINT64(REFGUID guidKey, UINT64 unValue) override
138 {
139 return m_attributes->SetUINT64(guidKey, unValue);
140 }
141
142 STDMETHODIMP SetDouble(REFGUID guidKey, double fValue) override
143 {
144 return m_attributes->SetDouble(guidKey, fValue);
145 }
146
147 STDMETHODIMP SetGUID(REFGUID guidKey, REFGUID guidValue) override
148 {
149 return m_attributes->SetGUID(guidKey, guidValue);
150 }
151
152 STDMETHODIMP SetString(REFGUID guidKey, LPCWSTR wszValue) override
153 {
154 return m_attributes->SetString(guidKey, wszValue);
155 }
156
157 STDMETHODIMP SetBlob(REFGUID guidKey, const UINT8 *pBuf, UINT32 cbBufSize) override
158 {
159 return m_attributes->SetBlob(guidKey, pBuf, cbBufSize);
160 }
161
162 STDMETHODIMP SetUnknown(REFGUID guidKey, IUnknown *pUnknown) override
163 {
164 return m_attributes->SetUnknown(guidKey, pUnknown);
165 }
166
167 STDMETHODIMP LockStore() override
168 {
169 return m_attributes->LockStore();
170 }
171
172 STDMETHODIMP UnlockStore() override
173 {
174 return m_attributes->UnlockStore();
175 }
176
177 STDMETHODIMP GetCount(UINT32 *pcItems) override
178 {
179 return m_attributes->GetCount(pcItems);
180 }
181
182 STDMETHODIMP GetItemByIndex(UINT32 unIndex, GUID *pguidKey, PROPVARIANT *pValue) override
183 {
184 return m_attributes->GetItemByIndex(unIndex, pguidKey, pValue);
185 }
186
187 STDMETHODIMP CopyAllItems(IMFAttributes *pDest) override
188 {
189 return m_attributes->CopyAllItems(pDest);
190 }
191
192protected:
193 // Destructor is not public. Caller should call Release.
194 ~MFAbstractActivate() override;
195
196private:
197 IMFAttributes *m_attributes = nullptr;
198};
199
201
202#endif // MFACTIVATE_H
STDMETHODIMP GetUINT64(REFGUID guidKey, UINT64 *punValue) override
STDMETHODIMP SetGUID(REFGUID guidKey, REFGUID guidValue) override
STDMETHODIMP SetUINT64(REFGUID guidKey, UINT64 unValue) override
STDMETHODIMP GetDouble(REFGUID guidKey, double *pfValue) override
STDMETHODIMP GetStringLength(REFGUID guidKey, UINT32 *pcchLength) override
STDMETHODIMP SetString(REFGUID guidKey, LPCWSTR wszValue) override
STDMETHODIMP GetAllocatedString(REFGUID guidKey, LPWSTR *ppwszValue, UINT32 *pcchLength) override
STDMETHODIMP SetItem(REFGUID guidKey, REFPROPVARIANT Value) override
STDMETHODIMP GetGUID(REFGUID guidKey, GUID *pguidValue) override
STDMETHODIMP DeleteItem(REFGUID guidKey) override
STDMETHODIMP SetUINT32(REFGUID guidKey, UINT32 unValue) override
STDMETHODIMP GetString(REFGUID guidKey, LPWSTR pwszValue, UINT32 cchBufSize, UINT32 *pcchLength) override
STDMETHODIMP GetBlobSize(REFGUID guidKey, UINT32 *pcbBlobSize) override
STDMETHODIMP GetUnknown(REFGUID guidKey, REFIID riid, LPVOID *ppv) override
STDMETHODIMP Compare(IMFAttributes *pTheirs, MF_ATTRIBUTES_MATCH_TYPE MatchType, BOOL *pbResult) override
STDMETHODIMP GetItem(REFGUID guidKey, PROPVARIANT *pValue) override
STDMETHODIMP SetBlob(REFGUID guidKey, const UINT8 *pBuf, UINT32 cbBufSize) override
STDMETHODIMP GetBlob(REFGUID guidKey, UINT8 *pBuf, UINT32 cbBufSize, UINT32 *pcbBlobSize) override
~MFAbstractActivate() override
STDMETHODIMP CopyAllItems(IMFAttributes *pDest) override
STDMETHODIMP UnlockStore() override
STDMETHODIMP GetCount(UINT32 *pcItems) override
STDMETHODIMP GetAllocatedBlob(REFGUID guidKey, UINT8 **ppBuf, UINT32 *pcbSize) override
STDMETHODIMP SetDouble(REFGUID guidKey, double fValue) override
STDMETHODIMP GetUINT32(REFGUID guidKey, UINT32 *punValue) override
STDMETHODIMP GetItemByIndex(UINT32 unIndex, GUID *pguidKey, PROPVARIANT *pValue) override
STDMETHODIMP SetUnknown(REFGUID guidKey, IUnknown *pUnknown) override
STDMETHODIMP CompareItem(REFGUID guidKey, REFPROPVARIANT Value, BOOL *pbResult) override
STDMETHODIMP GetItemType(REFGUID guidKey, MF_ATTRIBUTE_TYPE *pType) override
STDMETHODIMP LockStore() override
STDMETHODIMP DeleteAllItems() override
Combined button and popup list for selecting options.
\macro QT_NO_KEYWORDS >
IUIViewSettingsInterop __RPC__in REFIID riid
IUIViewSettingsInterop __RPC__in REFIID __RPC__deref_out_opt void ** ppv
static constexpr bool isGuidOf(REFIID riid) noexcept