Home   Index   About
Ultimate Pack


Custom Search
Overview
Group
Quick Info

ACMSTREAMHEADER

The ACMSTREAMHEADER structure defines the header used to identify an ACM conversion source and destination buffer pair for a conversion stream.

typedef struct {

DWORD cbStruct;

DWORD fdwStatus;

DWORD dwUser;

LPBYTE pbSrc;

DWORD cbSrcLength;

DWORD cbSrcLengthUsed;

DWORD dwSrcUser;

LPBYTE pbDst;

DWORD cbDstLength;

DWORD cbDstLengthUsed;

DWORD dwDstUser;

DWORD dwReservedDriver[10];

} ACMSTREAMHEADER;

Members

cbStruct

Size, in bytes, of the ACMSTREAMHEADER structure. This member must be initialized before the application calls any ACM stream functions using this structure. The size specified in this member must be large enough to contain the base ACMSTREAMHEADER structure.

fdwStatus

Flags giving information about the conversion buffers. This member must be initialized to zero before the application calls the acmStreamPrepareHeader function and should not be modified by the application while the stream header remains prepared.

ACMSTREAMHEADER_STATUSF_DONE

Set by the ACM or driver to indicate that it is finished with the conversion and is returning the buffers to the application.

ACMSTREAMHEADER_STATUSF_INQUEUE

Set by the ACM or driver to indicate that the buffers are queued for conversion.

ACMSTREAMHEADER_STATUSF_PREPARED

Set by the ACM to indicate that the buffers have been prepared by using the acmStreamPrepareHeader function.

dwUser

User data. This can be any instance data specified by the application.

pbSrc

Address of the source buffer. This pointer must always refer to the same location while the stream header remains prepared. If an application needs to change the source location, it must unprepare the header and reprepare it with the alternate location.

cbSrcLength

Length, in bytes, of the source buffer pointed to by pbSrc. When the header is prepared, this member must specify the maximum size that will be used in the source buffer. Conversions can be performed on source lengths less than or equal to the original prepared size. However, this member must be reset to the original size when an application unprepares the header.

cbSrcLengthUsed

Amount of data, in bytes, used for the conversion. This member is not valid until the conversion is complete. This value can be less than or equal to cbSrcLength. An application must use the cbSrcLengthUsed member when advancing to the next piece of source data for the conversion stream.

dwSrcUser

User data. This can be any instance data specified by the application.

pbDst

Address of the destination buffer. This pointer must always refer to the same location while the stream header remains prepared. If an application needs to change the destination location, it must unprepare the header and reprepare it with the alternate location.

cbDstLength

Length, in bytes, of the destination buffer pointed to by pbDst. When the header is prepared, this member must specify the maximum size that will be used in the destination buffer.

cbDstLengthUsed

Amount of data, in bytes, returned by a conversion. This member is not valid until the conversion is complete. This value can be less than or equal to cbDstLength. An application must use the cbDstLengthUsed member when advancing to the next destination location for the conversion stream.

dwDstUser

User data. This can be any instance data specified by the application.

dwReservedDriver

Reserved; do not use. This member requires no initialization by the application and should never be modified while the header remains prepared.

Remarks

Before an ACMSTREAMHEADER structure can be used for a conversion, it must be prepared by using the acmStreamPrepareHeader function. When an application is finished with an ACMSTREAMHEADER structure, it must call the acmStreamUnprepareHeader function before freeing the source and destination buffers.

See Also

acmStreamPrepareHeader
, acmStreamUnprepareHeader


Last news from Greatis Software

Nostalgia .Net     Nostalgia .Net     .Net is powerful, but not all-powerful, so sometimes we need to use Win32 API for our .Net applications. It's simple enough with Platform Invoke if you have Win32 skill, but we do not always have time to dig the ancient documentation, declare the special types that are compatible with Win32, find the values of the Win32's constants and so on. Nostalgia .Net offers several simple-to-use classes, and components that will allow you to forget about the headache of Win32 and just use the power of Win32 in your application the same way as you use the native. Net classes.  More »

Recommended software for developers

Ultimate Pack for Delphi and C++ Builder     Ultimate Pack     Component pack for Delphi and C++ Builder that contains runtime form designer, runtime object inspector, print suite and much more for the very special price.  More »

Form Designer .Net     Form Designer .Net     Unique runtime form design solution that allows to edit any form in .Net WinForms application at runtime with full source codes for only 300 euro!  More »

Print Suite .Net     Print Suite .Net     Print Suite .Net is a set of components for easy printing texts, images and grids from your WinForms applications. Full C# source codes are available  More »

Gradient Controls .Net     Gradient Controls .Net     Gradient Controls .Net offers controls with gradient background feature. Labels, panels and so on... Full C# source codes are available  More »

iGrid     Greatis iGrid     iGrid plots drawing grid right over your desktop, so you can use it everywhere, with any drawing application without any special plugins for different graphic editors.  More »


All the contacts and projects

Dmitry Vasiliev (just.dmitry)

Related Links

Software for Visual Studio .NET developers
Software for Delphi and C++ Builder developers
Software for Visual Basic 6 developers
Delphi Tips&Tricks
MegaDetailed.NET

More Online Helps

Win32 Programmer's Reference
Win32 Multimedia Programmer's Reference
OLE Programmer's Reference
Microsoft Windows Pen API Programmer's Reference
Microsoft Windows Sockets 2 Reference
Microsoft Windows Telephony API (TAPI) Programmer's Reference
Unix Manual Pages

Free Tech Secrets ;) Copyright © 2008-2011 Free Tech Secrets ;) greatis just4fun network just4fun