From b1f9e28cd155459ab2843690c248ed9f4767bc3f Mon Sep 17 00:00:00 2001 From: Fire-Head Date: Sun, 2 Jun 2019 06:00:38 +0300 Subject: skeleton updated, windows specific stuff added --- dxsdk/Include/dmort.h | 75 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 75 insertions(+) create mode 100644 dxsdk/Include/dmort.h (limited to 'dxsdk/Include/dmort.h') diff --git a/dxsdk/Include/dmort.h b/dxsdk/Include/dmort.h new file mode 100644 index 00000000..cfe25a4a --- /dev/null +++ b/dxsdk/Include/dmort.h @@ -0,0 +1,75 @@ +//------------------------------------------------------------------------------ +// File: DMORt.h +// +// Desc: Miscellaneous runtime support for DirectShow Media Objects +// +// Copyright (c) 1999 - 2001, Microsoft Corporation. All rights reserved. +//------------------------------------------------------------------------------ + + +#ifndef __DMORT_H__ +#define __DMORT_H__ + +// +// Mediatype helpers. MoInitMediaType() goes with MoFreeMediaType(), and +// MoCreateMediaType() goes with MoDeleteMediaType(). Don't mix them! +// + + + +// +// Takes a pointer to an already allocated DMO_MEDIA_TYPE structure, allocates +// a format block of cbFormat bytes, and sets appropriate members of +// DMO_MEDIA_TYPE to point to the newly allocated format block. Also +// initializes the IUnknown pointer inside DMO_MEDIA_TYPE to NULL. +// +// The format block allocated by MoInitMediaType must be freed by calling +// MoFreeMediaType(). +// +STDAPI MoInitMediaType(DMO_MEDIA_TYPE *pmt, DWORD cbFormat); + +// +// Frees the format block and releases any IUnknown, but does not free the +// DMO_MEDIA_TYPE structure itself. Input parameter must point to an +// DMO_MEDIA_TYPE structure previously initialized by MoInitMediaType(). +// +STDAPI MoFreeMediaType(DMO_MEDIA_TYPE *pmt); + +// +// Copies the DMO_MEDIA_TYPE members. Also duplicates the format block and +// the IUnknown pointer. Both parameters must point to valid DMO_MEDIA_TYPE +// structures. Target structure must be later freed using MoFreeMediaType(). +// +STDAPI MoCopyMediaType(DMO_MEDIA_TYPE *pmtDest, const DMO_MEDIA_TYPE *pmtSrc); + + + +// +// Allocates a new DMO_MEDIA_TYPE structure and initializes it just like +// MoInitMediaType. I.e., this function allocates both the format block +// and the DMO_MEDIA_TYPE structure itself. Pointer to DMO_MEDIA_TYPE is +// returned as *ppmt. +// +// DMO_MEDIA_TYPE structures allocated by MoCreateMediaType() must be freed +// by calling MoDeleteMediaType(). +// +STDAPI MoCreateMediaType(DMO_MEDIA_TYPE **ppmt, DWORD cbFormat); + +// +// Frees any format block, releases any IUnknown, and deletes the +// DMO_MEDIA_TYPE structure itself. The input parameter must point to an +// DMO_MEDIA_TYPE structure previously allocated by MoCreateMediaType(). +// +STDAPI MoDeleteMediaType(DMO_MEDIA_TYPE *pmt); + +// +// Allocates a new DMO_MEDIA_TYPE structure and copies pmtSrc into it like +// MoCopyMediaType. I.e., this function allocates a new DMO_MEDIA_TYPE struct +// as well as a new format block for the target mediatype. Trager mediatype +// must later be freed using MoDeleteMediaType(). +// +STDAPI MoDuplicateMediaType(DMO_MEDIA_TYPE **ppmtDest, const DMO_MEDIA_TYPE *pmtSrc); + + + +#endif //__DMORT_H__ -- cgit v1.2.3