8 #ifndef META_OCEAN_MEDIA_MF_MEDIA_FOUNDATION_H
9 #define META_OCEAN_MEDIA_MF_MEDIA_FOUNDATION_H
15 #ifndef OCEAN_PLATFORM_BUILD_WINDOWS
16 #error This library is available on windows platforms only!
20 #ifndef DISABLE_WARNINGS_BEGIN
22 #define DISABLE_WARNINGS_BEGIN _Pragma("warning(push, 0)")
23 #define DISABLE_WARNINGS_END _Pragma("warning(pop)")
25 #define DISABLE_WARNINGS_BEGIN
26 #define DISABLE_WARNINGS_END
30 DISABLE_WARNINGS_BEGIN
41 namespace MediaFoundation
59 #if defined(_WINDOWS) && defined(OCEAN_RUNTIME_SHARED)
60 #ifdef USE_OCEAN_MEDIA_MF_EXPORT
61 #define OCEAN_MEDIA_MF_EXPORT __declspec(dllexport)
63 #define OCEAN_MEDIA_MF_EXPORT __declspec(dllimport)
66 #define OCEAN_MEDIA_MF_EXPORT
75 #ifdef OCEAN_RUNTIME_STATIC
99 template <
class T>
void release(T *
object);
106 template <
typename T>
210 if (
object !=
nullptr)
This class wraps an unmanaged object (or reference) which needs to be released after usage.
Definition: ScopedObject.h:166
The namespace covering the entire Ocean framework.
Definition: Accessor.h:15