aboutsummaryrefslogtreecommitdiff
path: root/Src/Plugins/DSP/dsp_sps/dxi/include/DeferZeroFill.h
blob: 4aa13e8e78a5163e480191f3fc91822782f7df31 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
// IDeferZeroFill interface exposed a custom memory allocator and media sample.
//
// Copyright (C) 1997- Cakewalk Music Software.  All rights reserved.
//

#ifndef _DEFERZEROFILL_H_
#define _DEFERZEROFILL_H_

/////////////////////////////////////////////////////////////////////////////
// Clients that wish to create real copies of the GUID must first include INITGUID.H

// {447DA113-4AC8-4833-849A-2BA285E1E52B}
DEFINE_GUID(IID_IDeferZeroFill,
0x447da113, 0x4ac8, 0x4833, 0x84, 0x9a, 0x2b, 0xa2, 0x85, 0xe1, 0xe5, 0x2b);

#undef  INTERFACE
#define INTERFACE IDeferZeroFill

DECLARE_INTERFACE_( IDeferZeroFill, IUnknown )
{
	// *** IUnknown methods ***
	STDMETHOD_(HRESULT,	QueryInterface)( THIS_ REFIID riid, LPVOID* ppvObj ) PURE;
	STDMETHOD_(ULONG,		AddRef)( THIS )  PURE;
	STDMETHOD_(ULONG,		Release)( THIS ) PURE;

	// *** IDeferZeroFill methods ***
	STDMETHOD_(BOOL,		get_NeedsZerofill)( THIS ) PURE;
	STDMETHOD_(void,		put_NeedsZerofill)( THIS_ BOOL bZero ) PURE;
	STDMETHOD_(HRESULT,	GetRawPointer)( THIS_ BYTE** ppBuffer ) PURE;
};

#endif // _DEFERZEROFILL_H_