ReactOS  0.4.15-dev-1018-g0695ecb
tmpfile.c File Reference
#include <stdarg.h>
#include "windef.h"
#include "winbase.h"
#include "wingdi.h"
#include "winuser.h"
#include "winerror.h"
#include "vfw.h"
#include "avifile_private.h"
#include "extrachunk.h"
#include "wine/debug.h"
Include dependency graph for tmpfile.c:

Go to the source code of this file.

Classes

struct  _ITmpFileImpl
 

Typedefs

typedef struct _ITmpFileImpl ITmpFileImpl
 

Functions

 WINE_DEFAULT_DEBUG_CHANNEL (avifile)
 
static ITmpFileImplimpl_from_IAVIFile (IAVIFile *iface)
 
static HRESULT WINAPI ITmpFile_fnQueryInterface (IAVIFile *iface, REFIID refiid, LPVOID *obj)
 
static ULONG WINAPI ITmpFile_fnAddRef (IAVIFile *iface)
 
static ULONG WINAPI ITmpFile_fnRelease (IAVIFile *iface)
 
static HRESULT WINAPI ITmpFile_fnInfo (IAVIFile *iface, AVIFILEINFOW *afi, LONG size)
 
static HRESULT WINAPI ITmpFile_fnGetStream (IAVIFile *iface, PAVISTREAM *avis, DWORD fccType, LONG lParam)
 
static HRESULT WINAPI ITmpFile_fnCreateStream (IAVIFile *iface, PAVISTREAM *avis, AVISTREAMINFOW *asi)
 
static HRESULT WINAPI ITmpFile_fnWriteData (IAVIFile *iface, DWORD ckid, LPVOID lpData, LONG size)
 
static HRESULT WINAPI ITmpFile_fnReadData (IAVIFile *iface, DWORD ckid, LPVOID lpData, LONG *size)
 
static HRESULT WINAPI ITmpFile_fnEndRecord (IAVIFile *iface)
 
static HRESULT WINAPI ITmpFile_fnDeleteStream (IAVIFile *iface, DWORD fccType, LONG lParam)
 
PAVIFILE AVIFILE_CreateAVITempFile (int nStreams, const PAVISTREAM *ppStreams)
 

Variables

static const struct IAVIFileVtbl itmpft
 

Typedef Documentation

◆ ITmpFileImpl

Function Documentation

◆ AVIFILE_CreateAVITempFile()

PAVIFILE AVIFILE_CreateAVITempFile ( int  nStreams,
const PAVISTREAM ppStreams 
)

Definition at line 220 of file tmpfile.c.

221 {
222  ITmpFileImpl *tmpFile;
223  int i;
224 
225  tmpFile = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(ITmpFileImpl));
226  if (tmpFile == NULL)
227  return NULL;
228 
229  tmpFile->IAVIFile_iface.lpVtbl = &itmpft;
230  tmpFile->ref = 1;
231  memset(&tmpFile->fInfo, 0, sizeof(tmpFile->fInfo));
232 
233  tmpFile->fInfo.dwStreams = nStreams;
234  tmpFile->ppStreams = HeapAlloc(GetProcessHeap(), 0, nStreams * sizeof(PAVISTREAM));
235  if (tmpFile->ppStreams == NULL) {
236  HeapFree(GetProcessHeap(), 0, tmpFile);
237  return NULL;
238  }
239 
240  for (i = 0; i < nStreams; i++) {
241  AVISTREAMINFOW sInfo;
242 
243  tmpFile->ppStreams[i] = ppStreams[i];
244 
245  AVIStreamAddRef(ppStreams[i]);
246  AVIStreamInfoW(ppStreams[i], &sInfo, sizeof(sInfo));
247  if (i == 0) {
248  tmpFile->fInfo.dwScale = sInfo.dwScale;
249  tmpFile->fInfo.dwRate = sInfo.dwRate;
250  if (!sInfo.dwScale || !sInfo.dwRate) {
251  tmpFile->fInfo.dwScale = 1;
252  tmpFile->fInfo.dwRate = 100;
253  }
254  }
255 
258 
259  {
260  DWORD tmp;
261 
262  tmp = MulDiv(AVIStreamSampleToTime(ppStreams[i], sInfo.dwLength),
263  tmpFile->fInfo.dwScale, tmpFile->fInfo.dwRate * 1000);
264  if (tmpFile->fInfo.dwLength < tmp)
265  tmpFile->fInfo.dwLength = tmp;
266 
267  tmp = sInfo.rcFrame.right - sInfo.rcFrame.left;
268  if (tmpFile->fInfo.dwWidth < tmp)
269  tmpFile->fInfo.dwWidth = tmp;
270  tmp = sInfo.rcFrame.bottom - sInfo.rcFrame.top;
271  if (tmpFile->fInfo.dwHeight < tmp)
272  tmpFile->fInfo.dwHeight = tmp;
273  }
274  }
275 
276  return &tmpFile->IAVIFile_iface;
277 }
DWORD dwSuggestedBufferSize
Definition: avifil32.idl:40
HRESULT WINAPI AVIStreamInfoW(PAVISTREAM pstream, LPAVISTREAMINFOW asi, LONG size)
Definition: api.c:522
LONG top
Definition: windef.h:307
LONG left
Definition: windef.h:306
PAVISTREAM * ppStreams
Definition: tmpfile.c:42
LONG WINAPI AVIStreamSampleToTime(PAVISTREAM pstream, LONG lSample)
Definition: api.c:894
LONG right
Definition: windef.h:308
static const struct IAVIFileVtbl itmpft
Definition: tmpfile.c:207
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
Definition: glfuncs.h:248
ULONG WINAPI AVIStreamAddRef(PAVISTREAM pstream)
Definition: api.c:434
smooth NULL
Definition: ftsmooth.c:416
INT nStreams
Definition: api.c:60
#define GetProcessHeap()
Definition: compat.h:484
DWORD dwWidth
Definition: avifil32.idl:75
PVOID WINAPI HeapAlloc(HANDLE, DWORD, SIZE_T)
DWORD dwLength
Definition: avifil32.idl:79
DWORD dwHeight
Definition: avifil32.idl:76
DWORD dwScale
Definition: avifil32.idl:77
unsigned long DWORD
Definition: ntddk_ex.h:95
LONG ref
Definition: tmpfile.c:39
DWORD dwSuggestedBufferSize
Definition: avifil32.idl:74
DWORD dwRate
Definition: avifil32.idl:78
DWORD dwStreams
Definition: avifil32.idl:73
#define HEAP_ZERO_MEMORY
Definition: compat.h:134
LONG bottom
Definition: windef.h:309
#define memset(x, y, z)
Definition: compat.h:39
#define HeapFree(x, y, z)
Definition: compat.h:483
#define MulDiv(x, y, z)
Definition: gdifloat.h:86
AVIFILEINFOW fInfo
Definition: tmpfile.c:41
IAVIFile IAVIFile_iface
Definition: tmpfile.c:38

Referenced by AVIMakeFileFromStreams().

◆ impl_from_IAVIFile()

static ITmpFileImpl* impl_from_IAVIFile ( IAVIFile iface)
inlinestatic

Definition at line 45 of file tmpfile.c.

46 {
47  return CONTAINING_RECORD(iface, ITmpFileImpl, IAVIFile_iface);
48 }
PFLT_MESSAGE_WAITER_QUEUE CONTAINING_RECORD(Csq, DEVICE_EXTENSION, IrpQueue)) -> WaiterQ.mLock) _IRQL_raises_(DISPATCH_LEVEL) VOID NTAPI FltpAcquireMessageWaiterLock(_In_ PIO_CSQ Csq, _Out_ PKIRQL Irql)
Definition: Messaging.c:560

Referenced by ITmpFile_fnAddRef(), ITmpFile_fnGetStream(), ITmpFile_fnInfo(), ITmpFile_fnQueryInterface(), and ITmpFile_fnRelease().

◆ ITmpFile_fnAddRef()

static ULONG WINAPI ITmpFile_fnAddRef ( IAVIFile iface)
static

Definition at line 68 of file tmpfile.c.

69 {
72 
73  TRACE("(%p) -> %d\n", iface, ref);
74 
75  return ref;
76 }
Definition: send.c:48
GLenum GLint ref
Definition: glext.h:6028
#define TRACE(s)
Definition: solgame.cpp:4
static ITmpFileImpl * impl_from_IAVIFile(IAVIFile *iface)
Definition: tmpfile.c:45
#define InterlockedIncrement
Definition: armddk.h:53
unsigned int ULONG
Definition: retypes.h:1

◆ ITmpFile_fnCreateStream()

static HRESULT WINAPI ITmpFile_fnCreateStream ( IAVIFile iface,
PAVISTREAM avis,
AVISTREAMINFOW asi 
)
static

Definition at line 168 of file tmpfile.c.

170 {
171  TRACE("(%p,%p,%p)\n",iface,avis,asi);
172 
173  return AVIERR_UNSUPPORTED;
174 }
#define AVIERR_UNSUPPORTED
Definition: vfw.h:1743
#define TRACE(s)
Definition: solgame.cpp:4

◆ ITmpFile_fnDeleteStream()

static HRESULT WINAPI ITmpFile_fnDeleteStream ( IAVIFile iface,
DWORD  fccType,
LONG  lParam 
)
static

Definition at line 199 of file tmpfile.c.

201 {
202  TRACE("(%p,0x%08X,%d)\n", iface, fccType, lParam);
203 
204  return AVIERR_UNSUPPORTED;
205 }
#define AVIERR_UNSUPPORTED
Definition: vfw.h:1743
#define TRACE(s)
Definition: solgame.cpp:4
LPARAM lParam
Definition: combotst.c:139

◆ ITmpFile_fnEndRecord()

static HRESULT WINAPI ITmpFile_fnEndRecord ( IAVIFile iface)
static

Definition at line 192 of file tmpfile.c.

193 {
194  TRACE("(%p)\n",iface);
195 
196  return AVIERR_OK;
197 }
#define TRACE(s)
Definition: solgame.cpp:4
#define AVIERR_OK
Definition: vfw.h:1740

◆ ITmpFile_fnGetStream()

static HRESULT WINAPI ITmpFile_fnGetStream ( IAVIFile iface,
PAVISTREAM avis,
DWORD  fccType,
LONG  lParam 
)
static

Definition at line 121 of file tmpfile.c.

123 {
125 
126  ULONG nStream = (ULONG)-1;
127 
128  TRACE("(%p,%p,0x%08X,%d)\n", iface, avis, fccType, lParam);
129 
130  if (avis == NULL || lParam < 0)
131  return AVIERR_BADPARAM;
132 
133  if (fccType != streamtypeANY) {
134  /* search the number of the specified stream */
135  ULONG i;
136 
137  for (i = 0; i < This->fInfo.dwStreams; i++) {
138  AVISTREAMINFOW sInfo;
139  HRESULT hr;
140 
141  hr = AVIStreamInfoW(This->ppStreams[i], &sInfo, sizeof(sInfo));
142  if (FAILED(hr))
143  return hr;
144 
145  if (sInfo.fccType == fccType) {
146  if (lParam == 0) {
147  nStream = i;
148  break;
149  } else
150  lParam--;
151  }
152  }
153  } else
154  nStream = lParam;
155 
156  /* Does the requested stream exist ? */
157  if (nStream < This->fInfo.dwStreams && This->ppStreams[nStream] != NULL) {
158  *avis = This->ppStreams[nStream];
159  AVIStreamAddRef(*avis);
160 
161  return AVIERR_OK;
162  }
163 
164  /* Sorry, but the specified stream doesn't exist */
165  return AVIERR_NODATA;
166 }
#define AVIERR_NODATA
Definition: vfw.h:1757
HRESULT hr
Definition: shlfolder.c:183
HRESULT WINAPI AVIStreamInfoW(PAVISTREAM pstream, LPAVISTREAMINFOW asi, LONG size)
Definition: api.c:522
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
Definition: glfuncs.h:248
ULONG WINAPI AVIStreamAddRef(PAVISTREAM pstream)
Definition: api.c:434
smooth NULL
Definition: ftsmooth.c:416
#define AVIERR_BADPARAM
Definition: vfw.h:1748
#define TRACE(s)
Definition: solgame.cpp:4
LONG HRESULT
Definition: typedefs.h:79
static ITmpFileImpl * impl_from_IAVIFile(IAVIFile *iface)
Definition: tmpfile.c:45
#define AVIERR_OK
Definition: vfw.h:1740
unsigned int ULONG
Definition: retypes.h:1
#define streamtypeANY
Definition: vfw.h:903
LPARAM lParam
Definition: combotst.c:139

◆ ITmpFile_fnInfo()

static HRESULT WINAPI ITmpFile_fnInfo ( IAVIFile iface,
AVIFILEINFOW afi,
LONG  size 
)
static

Definition at line 102 of file tmpfile.c.

104 {
106 
107  TRACE("(%p,%p,%d)\n",iface,afi,size);
108 
109  if (afi == NULL)
110  return AVIERR_BADPARAM;
111  if (size < 0)
112  return AVIERR_BADSIZE;
113 
114  memcpy(afi, &This->fInfo, min((DWORD)size, sizeof(This->fInfo)));
115 
116  if ((DWORD)size < sizeof(This->fInfo))
117  return AVIERR_BUFFERTOOSMALL;
118  return AVIERR_OK;
119 }
smooth NULL
Definition: ftsmooth.c:416
#define AVIERR_BUFFERTOOSMALL
Definition: vfw.h:1758
#define AVIERR_BADPARAM
Definition: vfw.h:1748
#define TRACE(s)
Definition: solgame.cpp:4
GLsizeiptr size
Definition: glext.h:5919
#define AVIERR_BADSIZE
Definition: vfw.h:1749
static ITmpFileImpl * impl_from_IAVIFile(IAVIFile *iface)
Definition: tmpfile.c:45
unsigned long DWORD
Definition: ntddk_ex.h:95
#define memcpy(s1, s2, n)
Definition: mkisofs.h:878
#define AVIERR_OK
Definition: vfw.h:1740
#define min(a, b)
Definition: monoChain.cc:55

◆ ITmpFile_fnQueryInterface()

static HRESULT WINAPI ITmpFile_fnQueryInterface ( IAVIFile iface,
REFIID  refiid,
LPVOID obj 
)
static

Definition at line 50 of file tmpfile.c.

52 {
54 
55  TRACE("(%p,%s,%p)\n", This, debugstr_guid(refiid), obj);
56 
57  if (IsEqualGUID(&IID_IUnknown, refiid) ||
58  IsEqualGUID(&IID_IAVIFile, refiid)) {
59  *obj = iface;
60  IAVIFile_AddRef(iface);
61 
62  return S_OK;
63  }
64 
65  return OLE_E_ENUM_NOMORE;
66 }
#define OLE_E_ENUM_NOMORE
Definition: winerror.h:2616
#define IAVIFile_AddRef(p)
Definition: vfw.h:1603
#define debugstr_guid
Definition: kernel32.h:35
#define TRACE(s)
Definition: solgame.cpp:4
const GUID IID_IUnknown
static ITmpFileImpl * impl_from_IAVIFile(IAVIFile *iface)
Definition: tmpfile.c:45
#define S_OK
Definition: intsafe.h:59
BOOL WINAPI IsEqualGUID(REFGUID rguid1, REFGUID rguid2)
Definition: compobj.c:4112

◆ ITmpFile_fnReadData()

static HRESULT WINAPI ITmpFile_fnReadData ( IAVIFile iface,
DWORD  ckid,
LPVOID  lpData,
LONG size 
)
static

Definition at line 184 of file tmpfile.c.

186 {
187  TRACE("(%p,0x%08X,%p,%p)\n", iface, ckid, lpData, size);
188 
189  return AVIERR_UNSUPPORTED;
190 }
#define AVIERR_UNSUPPORTED
Definition: vfw.h:1743
#define TRACE(s)
Definition: solgame.cpp:4
GLsizeiptr size
Definition: glext.h:5919

◆ ITmpFile_fnRelease()

static ULONG WINAPI ITmpFile_fnRelease ( IAVIFile iface)
static

Definition at line 78 of file tmpfile.c.

79 {
82 
83  TRACE("(%p) -> %d\n", iface, ref);
84 
85  if (!ref) {
86  unsigned int i;
87 
88  for (i = 0; i < This->fInfo.dwStreams; i++) {
89  if (This->ppStreams[i] != NULL) {
90  AVIStreamRelease(This->ppStreams[i]);
91 
92  This->ppStreams[i] = NULL;
93  }
94  }
95 
97  }
98 
99  return ref;
100 }
Definition: send.c:48
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
Definition: glfuncs.h:248
GLenum GLint ref
Definition: glext.h:6028
smooth NULL
Definition: ftsmooth.c:416
#define TRACE(s)
Definition: solgame.cpp:4
#define GetProcessHeap()
Definition: compat.h:484
static ITmpFileImpl * impl_from_IAVIFile(IAVIFile *iface)
Definition: tmpfile.c:45
ULONG WINAPI AVIStreamRelease(PAVISTREAM pstream)
Definition: api.c:449
#define InterlockedDecrement
Definition: armddk.h:52
unsigned int ULONG
Definition: retypes.h:1
#define HeapFree(x, y, z)
Definition: compat.h:483

◆ ITmpFile_fnWriteData()

static HRESULT WINAPI ITmpFile_fnWriteData ( IAVIFile iface,
DWORD  ckid,
LPVOID  lpData,
LONG  size 
)
static

Definition at line 176 of file tmpfile.c.

178 {
179  TRACE("(%p,0x%08X,%p,%d)\n", iface, ckid, lpData, size);
180 
181  return AVIERR_UNSUPPORTED;
182 }
#define AVIERR_UNSUPPORTED
Definition: vfw.h:1743
#define TRACE(s)
Definition: solgame.cpp:4
GLsizeiptr size
Definition: glext.h:5919

◆ WINE_DEFAULT_DEBUG_CHANNEL()

WINE_DEFAULT_DEBUG_CHANNEL ( avifile  )

Variable Documentation

◆ itmpft

const struct IAVIFileVtbl itmpft
static
Initial value:
= {
}
static HRESULT WINAPI ITmpFile_fnDeleteStream(IAVIFile *iface, DWORD fccType, LONG lParam)
Definition: tmpfile.c:199
static HRESULT WINAPI ITmpFile_fnGetStream(IAVIFile *iface, PAVISTREAM *avis, DWORD fccType, LONG lParam)
Definition: tmpfile.c:121
static ULONG WINAPI ITmpFile_fnAddRef(IAVIFile *iface)
Definition: tmpfile.c:68
static HRESULT WINAPI ITmpFile_fnInfo(IAVIFile *iface, AVIFILEINFOW *afi, LONG size)
Definition: tmpfile.c:102
static HRESULT WINAPI ITmpFile_fnEndRecord(IAVIFile *iface)
Definition: tmpfile.c:192
static HRESULT WINAPI ITmpFile_fnWriteData(IAVIFile *iface, DWORD ckid, LPVOID lpData, LONG size)
Definition: tmpfile.c:176
static ULONG WINAPI ITmpFile_fnRelease(IAVIFile *iface)
Definition: tmpfile.c:78
static HRESULT WINAPI ITmpFile_fnQueryInterface(IAVIFile *iface, REFIID refiid, LPVOID *obj)
Definition: tmpfile.c:50
static HRESULT WINAPI ITmpFile_fnCreateStream(IAVIFile *iface, PAVISTREAM *avis, AVISTREAMINFOW *asi)
Definition: tmpfile.c:168
static HRESULT WINAPI ITmpFile_fnReadData(IAVIFile *iface, DWORD ckid, LPVOID lpData, LONG *size)
Definition: tmpfile.c:184

Definition at line 207 of file tmpfile.c.

Referenced by AVIFILE_CreateAVITempFile().