File Annotation

Not logged in
4e2933c620 2015-04-21        kinaba: /***********************************************************************\
4e2933c620 2015-04-21        kinaba: *                                msacm.d                                *
4e2933c620 2015-04-21        kinaba: *                                                                       *
4e2933c620 2015-04-21        kinaba: *                       Windows API header module                       *
4e2933c620 2015-04-21        kinaba: *                                                                       *
4e2933c620 2015-04-21        kinaba: *                 Translated from MinGW Windows headers                 *
4e2933c620 2015-04-21        kinaba: *                           by Stewart Gordon                           *
4e2933c620 2015-04-21        kinaba: *                                                                       *
4e2933c620 2015-04-21        kinaba: *                       Placed into public domain                       *
4e2933c620 2015-04-21        kinaba: \***********************************************************************/
4e2933c620 2015-04-21        kinaba: module win32.msacm;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: private import win32.basetsd, win32.mmsystem, win32.windef;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: alias HANDLE HACMDRIVERID, HACMDRIVER;
4e2933c620 2015-04-21        kinaba: alias HANDLE* LPHACMDRIVER;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: /* Comment from MinGW
4e2933c620 2015-04-21        kinaba: 	found through experimentation
4e2933c620 2015-04-21        kinaba:  */
4e2933c620 2015-04-21        kinaba: const size_t
4e2933c620 2015-04-21        kinaba: 	ACMDRIVERDETAILS_SHORTNAME_CHARS =  32,
4e2933c620 2015-04-21        kinaba: 	ACMDRIVERDETAILS_LONGNAME_CHARS  = 128,
4e2933c620 2015-04-21        kinaba: 	ACMDRIVERDETAILS_COPYRIGHT_CHARS =  80,
4e2933c620 2015-04-21        kinaba: 	ACMDRIVERDETAILS_LICENSING_CHARS = 128;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: /* Comment from MinGW
4e2933c620 2015-04-21        kinaba: 	I don't know the right values for these macros
4e2933c620 2015-04-21        kinaba:  */
4e2933c620 2015-04-21        kinaba: const size_t
4e2933c620 2015-04-21        kinaba: 	ACMFORMATDETAILS_FORMAT_CHARS       = 256,
4e2933c620 2015-04-21        kinaba: 	ACMFORMATTAGDETAILS_FORMATTAG_CHARS = 256,
4e2933c620 2015-04-21        kinaba: 	ACMDRIVERDETAILS_FEATURES_CHARS     = 256;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct ACMFORMATDETAILSA {
4e2933c620 2015-04-21        kinaba: 	DWORD          cbStruct = ACMFORMATDETAILSA.sizeof;  // are they?
4e2933c620 2015-04-21        kinaba: 	DWORD          dwFormatIndex;
4e2933c620 2015-04-21        kinaba: 	DWORD          dwFormatTag;
4e2933c620 2015-04-21        kinaba: 	DWORD          fdwSupport;
4e2933c620 2015-04-21        kinaba: 	LPWAVEFORMATEX pwfx;
4e2933c620 2015-04-21        kinaba: 	DWORD          cbwfx;
4e2933c620 2015-04-21        kinaba: 	char[ACMFORMATDETAILS_FORMAT_CHARS] szFormat;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias ACMFORMATDETAILSA* LPACMFORMATDETAILSA;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct ACMFORMATDETAILSW {
4e2933c620 2015-04-21        kinaba: 	DWORD          cbStruct = ACMFORMATDETAILSW.sizeof;
4e2933c620 2015-04-21        kinaba: 	DWORD          dwFormatIndex;
4e2933c620 2015-04-21        kinaba: 	DWORD          dwFormatTag;
4e2933c620 2015-04-21        kinaba: 	DWORD          fdwSupport;
4e2933c620 2015-04-21        kinaba: 	LPWAVEFORMATEX pwfx;
4e2933c620 2015-04-21        kinaba: 	DWORD          cbwfx;
4e2933c620 2015-04-21        kinaba: 	WCHAR[ACMFORMATDETAILS_FORMAT_CHARS] szFormat;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias ACMFORMATDETAILSW* LPACMFORMATDETAILSW;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct ACMFORMATTAGDETAILSA {
4e2933c620 2015-04-21        kinaba: 	DWORD cbStruct = ACMFORMATTAGDETAILSA.sizeof;
4e2933c620 2015-04-21        kinaba: 	DWORD dwFormatTagIndex;
4e2933c620 2015-04-21        kinaba: 	DWORD dwFormatTag;
4e2933c620 2015-04-21        kinaba: 	DWORD cbFormatSize;
4e2933c620 2015-04-21        kinaba: 	DWORD fdwSupport;
4e2933c620 2015-04-21        kinaba: 	DWORD cStandardFormats;
4e2933c620 2015-04-21        kinaba: 	char[ACMFORMATTAGDETAILS_FORMATTAG_CHARS] szFormatTag;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias ACMFORMATTAGDETAILSA* LPACMFORMATTAGDETAILSA;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct ACMFORMATTAGDETAILSW {
4e2933c620 2015-04-21        kinaba: 	DWORD cbStruct = ACMFORMATTAGDETAILSW.sizeof;
4e2933c620 2015-04-21        kinaba: 	DWORD dwFormatTagIndex;
4e2933c620 2015-04-21        kinaba: 	DWORD dwFormatTag;
4e2933c620 2015-04-21        kinaba: 	DWORD cbFormatSize;
4e2933c620 2015-04-21        kinaba: 	DWORD fdwSupport;
4e2933c620 2015-04-21        kinaba: 	DWORD cStandardFormats;
4e2933c620 2015-04-21        kinaba: 	WCHAR[ACMFORMATTAGDETAILS_FORMATTAG_CHARS] szFormatTag;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias ACMFORMATTAGDETAILSW* LPACMFORMATTAGDETAILSW;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct ACMDRIVERDETAILSA {
4e2933c620 2015-04-21        kinaba: 	DWORD  cbStruct = ACMDRIVERDETAILSA.sizeof;
4e2933c620 2015-04-21        kinaba: 	FOURCC fccType;
4e2933c620 2015-04-21        kinaba: 	FOURCC fccComp;
4e2933c620 2015-04-21        kinaba: 	WORD   wMid;
4e2933c620 2015-04-21        kinaba: 	WORD   wPid;
4e2933c620 2015-04-21        kinaba: 	DWORD  vdwACM;
4e2933c620 2015-04-21        kinaba: 	DWORD  vdwDriver;
4e2933c620 2015-04-21        kinaba: 	DWORD  fdwSupport;
4e2933c620 2015-04-21        kinaba: 	DWORD  cFormatTags;
4e2933c620 2015-04-21        kinaba: 	DWORD  cFilterTags;
4e2933c620 2015-04-21        kinaba: 	HICON  hicon;
4e2933c620 2015-04-21        kinaba: 	char[ACMDRIVERDETAILS_SHORTNAME_CHARS] szShortName;
4e2933c620 2015-04-21        kinaba: 	char[ACMDRIVERDETAILS_LONGNAME_CHARS]  szLongName;
4e2933c620 2015-04-21        kinaba: 	char[ACMDRIVERDETAILS_COPYRIGHT_CHARS] szCopyright;
4e2933c620 2015-04-21        kinaba: 	char[ACMDRIVERDETAILS_LICENSING_CHARS] szLicensing;
4e2933c620 2015-04-21        kinaba: 	char[ACMDRIVERDETAILS_FEATURES_CHARS]  szFeatures;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias ACMDRIVERDETAILSA* LPACMDRIVERDETAILSA;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: struct ACMDRIVERDETAILSW {
4e2933c620 2015-04-21        kinaba: 	DWORD  cbStruct = ACMDRIVERDETAILSW.sizeof;
4e2933c620 2015-04-21        kinaba: 	FOURCC fccType;
4e2933c620 2015-04-21        kinaba: 	FOURCC fccComp;
4e2933c620 2015-04-21        kinaba: 	WORD   wMid;
4e2933c620 2015-04-21        kinaba: 	WORD   wPid;
4e2933c620 2015-04-21        kinaba: 	DWORD  vdwACM;
4e2933c620 2015-04-21        kinaba: 	DWORD  vdwDriver;
4e2933c620 2015-04-21        kinaba: 	DWORD  fdwSupport;
4e2933c620 2015-04-21        kinaba: 	DWORD  cFormatTags;
4e2933c620 2015-04-21        kinaba: 	DWORD  cFilterTags;
4e2933c620 2015-04-21        kinaba: 	HICON  hicon;
4e2933c620 2015-04-21        kinaba: 	WCHAR[ACMDRIVERDETAILS_SHORTNAME_CHARS] szShortName;
4e2933c620 2015-04-21        kinaba: 	WCHAR[ACMDRIVERDETAILS_LONGNAME_CHARS]  szLongName;
4e2933c620 2015-04-21        kinaba: 	WCHAR[ACMDRIVERDETAILS_COPYRIGHT_CHARS] szCopyright;
4e2933c620 2015-04-21        kinaba: 	WCHAR[ACMDRIVERDETAILS_LICENSING_CHARS] szLicensing;
4e2933c620 2015-04-21        kinaba: 	WCHAR[ACMDRIVERDETAILS_FEATURES_CHARS]  szFeatures;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: alias ACMDRIVERDETAILSW* LPACMDRIVERDETAILSW;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: extern (Windows) {
4e2933c620 2015-04-21        kinaba: 	alias BOOL function(HACMDRIVERID hadid, LPACMFORMATDETAILSA pafd,
4e2933c620 2015-04-21        kinaba: 	  DWORD_PTR dwInstance, DWORD fdwSupport) ACMFORMATENUMCBA;
4e2933c620 2015-04-21        kinaba: 	alias BOOL function(HACMDRIVERID hadid, LPACMFORMATDETAILSW pafd,
4e2933c620 2015-04-21        kinaba: 	  DWORD_PTR dwInstance, DWORD fdwSupport) ACMFORMATENUMCBW;
4e2933c620 2015-04-21        kinaba: 	alias BOOL function(HACMDRIVERID hadid, LPACMFORMATTAGDETAILSA paftd,
4e2933c620 2015-04-21        kinaba: 	  DWORD_PTR dwInstance, DWORD fdwSupport) ACMFORMATTAGENUMCBA;
4e2933c620 2015-04-21        kinaba: 	alias BOOL function(HACMDRIVERID hadid, LPACMFORMATTAGDETAILSW paftd,
4e2933c620 2015-04-21        kinaba: 	  DWORD_PTR dwInstance, DWORD fdwSupport) ACMFORMATTAGENUMCBW;
4e2933c620 2015-04-21        kinaba: 	alias BOOL function(HACMDRIVERID hadid, DWORD_PTR dwInstance,
4e2933c620 2015-04-21        kinaba: 	  DWORD fdwSupport) ACMDRIVERENUMCB;
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: 	MMRESULT acmDriverOpen(LPHACMDRIVER phad, HACMDRIVERID hadid,
4e2933c620 2015-04-21        kinaba: 	  DWORD fdwOpen);
4e2933c620 2015-04-21        kinaba: 	MMRESULT acmDriverEnum(ACMDRIVERENUMCB fnCallback, DWORD_PTR dwInstance,
4e2933c620 2015-04-21        kinaba: 	  DWORD fdwEnum);
4e2933c620 2015-04-21        kinaba: 	MMRESULT acmFormatEnumA(HACMDRIVER had, LPACMFORMATDETAILSA pafd,
4e2933c620 2015-04-21        kinaba: 	  ACMFORMATENUMCBA fnCallback, DWORD_PTR dwInstance, DWORD fdwEnum);
4e2933c620 2015-04-21        kinaba: 	MMRESULT acmFormatEnumW(HACMDRIVER had, LPACMFORMATDETAILSW pafd,
4e2933c620 2015-04-21        kinaba: 	  ACMFORMATENUMCBW fnCallback, DWORD_PTR dwInstance, DWORD fdwEnum);
4e2933c620 2015-04-21        kinaba: 	MMRESULT acmDriverClose(HACMDRIVER had, DWORD fdwClose);
4e2933c620 2015-04-21        kinaba: 	MMRESULT acmDriverDetailsA(HACMDRIVERID hadid, LPACMDRIVERDETAILSA padd,
4e2933c620 2015-04-21        kinaba: 	  DWORD fdwDetails);
4e2933c620 2015-04-21        kinaba: 	MMRESULT acmDriverDetailsW(HACMDRIVERID hadid, LPACMDRIVERDETAILSW padd,
4e2933c620 2015-04-21        kinaba: 	  DWORD fdwDetails);
4e2933c620 2015-04-21        kinaba: 	MMRESULT acmFormatTagEnumA(HACMDRIVER had, LPACMFORMATTAGDETAILSA paftd,
4e2933c620 2015-04-21        kinaba: 	  ACMFORMATTAGENUMCBA fnCallback, DWORD_PTR dwInstance, DWORD fdwEnum);
4e2933c620 2015-04-21        kinaba: 	MMRESULT acmFormatTagEnumW(HACMDRIVER had, LPACMFORMATTAGDETAILSW paftd,
4e2933c620 2015-04-21        kinaba: 	  ACMFORMATTAGENUMCBW fnCallback, DWORD_PTR dwInstance, DWORD fdwEnum);
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: version (Unicode) {
4e2933c620 2015-04-21        kinaba: 	alias ACMFORMATDETAILSW ACMFORMATDETAILS;
4e2933c620 2015-04-21        kinaba: 	alias ACMFORMATTAGDETAILSW ACMFORMATTAGDETAILS;
4e2933c620 2015-04-21        kinaba: 	alias ACMDRIVERDETAILSW ACMDRIVERDETAILS;
4e2933c620 2015-04-21        kinaba: 	alias ACMFORMATENUMCBW ACMFORMATENUMCB;
4e2933c620 2015-04-21        kinaba: 	alias ACMFORMATTAGENUMCBW ACMFORMATTAGENUMCB;
4e2933c620 2015-04-21        kinaba: 	alias acmFormatEnumW acmFormatEnum;
4e2933c620 2015-04-21        kinaba: 	alias acmDriverDetailsW acmDriverDetails;
4e2933c620 2015-04-21        kinaba: 	alias acmFormatTagEnumW acmFormatTagEnum;
4e2933c620 2015-04-21        kinaba: } else {
4e2933c620 2015-04-21        kinaba: 	alias ACMFORMATDETAILSA ACMFORMATDETAILS;
4e2933c620 2015-04-21        kinaba: 	alias ACMFORMATTAGDETAILSA ACMFORMATTAGDETAILS;
4e2933c620 2015-04-21        kinaba: 	alias ACMDRIVERDETAILSA ACMDRIVERDETAILS;
4e2933c620 2015-04-21        kinaba: 	alias ACMFORMATENUMCBA ACMFORMATENUMCB;
4e2933c620 2015-04-21        kinaba: 	alias ACMFORMATTAGENUMCBA ACMFORMATTAGENUMCB;
4e2933c620 2015-04-21        kinaba: 	alias acmFormatEnumA acmFormatEnum;
4e2933c620 2015-04-21        kinaba: 	alias acmDriverDetailsA acmDriverDetails;
4e2933c620 2015-04-21        kinaba: 	alias acmFormatTagEnumA acmFormatTagEnum;
4e2933c620 2015-04-21        kinaba: }
4e2933c620 2015-04-21        kinaba: 
4e2933c620 2015-04-21        kinaba: alias ACMFORMATDETAILS* LPACMFORMATDETAILS;
4e2933c620 2015-04-21        kinaba: alias ACMFORMATTAGDETAILS* LPACMFORMATTAGDETAILS;
4e2933c620 2015-04-21        kinaba: alias ACMDRIVERDETAILS* LPACMDRIVERDETAILS;