package vendor:directx/dxc

⌘K
Ctrl+K
or
/

    Index

    Types (77)
    Constants (74)
    Procedure Groups (0)

    This section is empty.

    Types

    ArgPair ¶

    ArgPair :: struct {
    	pName:  [^]u16,
    	pValue: [^]u16,
    }

    BOOL ¶

    BOOL :: sys_windows.BOOL

    BSTR ¶

    BSTR :: [^]u16

    Buffer ¶

    Buffer :: struct {
    	Ptr:      rawptr,
    	Size:     uint,
    	Encoding: u32,
    }

    CLSID ¶

    CLSID :: sys_windows.GUID

    DXC_OUT_KIND ¶

    DXC_OUT_KIND :: enum u32 {
    	NONE           = 0, 
    	OBJECT         = 1, 
    	ERRORS         = 2, 
    	PDB            = 3, 
    	SHADER_HASH    = 4, 
    	DISASSEMBLY    = 5, 
    	HLSL           = 6, 
    	TEXT           = 7, 
    	REFLECTION     = 8, 
    	ROOT_SIGNATURE = 9, 
    	EXTRA_OUTPUTS  = 10, 
    	FORCE_DWORD    = 4294967295, 
    }

    Define ¶

    Define :: struct {
    	Name:  [^]u16,
    	Value: [^]u16,
    }

    FILETIME ¶

    FILETIME :: sys_windows.FILETIME

    HRESULT ¶

    HRESULT :: sys_windows.HRESULT

    IAssembler ¶

    IAssembler :: struct #raw_union {
    	iunknown:             sys_windows.IUnknown,
    	using idxcassembler_vtable: ^IAssembler_VTable,
    }

    IAssembler_VTable ¶

    IAssembler_VTable :: struct {
    	using iunknown_vtable: sys_windows.IUnknown_VTable,
    	AssembleToContainer: proc "stdcall" (this: ^IAssembler, pShader: ^IBlob, ppResult: ^^IOperationResult) -> sys_windows.HRESULT,
    }

    IBlob ¶

    IBlob :: struct #raw_union {
    	iunknown:          sys_windows.IUnknown,
    	using id3d10blob_vtable: ^IBlob_VTable,
    }

    IBlobEncoding ¶

    IBlobEncoding :: struct #raw_union {
    	idxcblob:                IBlob,
    	using idxcblobencoding_vtable: ^IBlobEncoding_VTable,
    }

    IBlobEncoding_VTable ¶

    IBlobEncoding_VTable :: struct {
    	using idxcblob_vtable: IBlob_VTable,
    	GetEncoding:     proc "stdcall" (this: ^IBlobEncoding, pKnown: ^sys_windows.BOOL, pCodePage: ^u32) -> sys_windows.HRESULT,
    }

    IBlobUtf16 ¶

    IBlobUtf16 :: struct #raw_union {
    	idxcblobencoding:     IBlobEncoding,
    	using idxcblobutf16_vtable: ^IBlobUtf16_VTable,
    }

    IBlobUtf16_VTable ¶

    IBlobUtf16_VTable :: struct {
    	using idxcblobencoding_vtable: IBlobEncoding_VTable,
    	GetStringPointer:        proc "stdcall" (this: ^IBlobUtf16) -> [^]u16,
    	GetStringLength:         proc "stdcall" (this: ^IBlobUtf16) -> uint,
    }

    IBlobUtf8 ¶

    IBlobUtf8 :: struct #raw_union {
    	idxcblobencoding:    IBlobEncoding,
    	using idxcblobutf8_vtable: ^IBlobUtf8_VTable,
    }

    IBlobUtf8_VTable ¶

    IBlobUtf8_VTable :: struct {
    	using idxcblobencoding_vtable: IBlobEncoding_VTable,
    	GetStringPointer:        proc "stdcall" (this: ^IBlobUtf8) -> cstring,
    	GetStringLength:         proc "stdcall" (this: ^IBlobUtf8) -> uint,
    }

    IBlob_VTable ¶

    IBlob_VTable :: struct {
    	using iunknown_vtable: sys_windows.IUnknown_VTable,
    	GetBufferPointer: proc "stdcall" (this: ^IBlob) -> rawptr,
    	GetBufferSize:    proc "stdcall" (this: ^IBlob) -> uint,
    }

    ICompiler ¶

    ICompiler :: struct #raw_union {
    	iunknown:            sys_windows.IUnknown,
    	using idxccompiler_vtable: ^ICompiler_VTable,
    }

    ICompiler2 ¶

    ICompiler2 :: struct #raw_union {
    	icompiler:            ICompiler,
    	using idxccompiler2_vtable: ^ICompiler2_VTable,
    }

    ICompiler2_VTable ¶

    ICompiler2_VTable :: struct {
    	using idxccompiler_vtable: ^ICompiler_VTable,
    	CompileWithDebug:    proc "stdcall" (this: ^ICompiler2, pSource: ^Buffer, pSourceName: [^]u16, pEntryPoint: [^]u16, pTargetProfile: [^]u16, pArguments: [^][^]u16, argCount: u32, pDefines: [^]Define, defineCount: u32, pIncludeHandler: ^IIncludeHandler, ppResult: ^^IOperationResult, ppDebugBlobName: ^[^]u16, ppDebugBlob: ^^IBlob) -> sys_windows.HRESULT,
    }

    ICompiler3 ¶

    ICompiler3 :: struct #raw_union {
    	iunknown:             sys_windows.IUnknown,
    	using idxccompiler3_vtable: ^ICompiler3_VTable,
    }

    ICompiler3_VTable ¶

    ICompiler3_VTable :: struct {
    	using iunknown_vtable: sys_windows.IUnknown_VTable,
    	Compile:         proc "stdcall" (this: ^ICompiler3, pSource: ^Buffer, pArguments: [^][^]u16, argCount: u32, pIncludeHandler: ^IIncludeHandler, riid: ^sys_windows.GUID, ppResult: rawptr) -> sys_windows.HRESULT,
    	Disassemble:     proc "stdcall" (this: ^ICompiler3, pObject: ^Buffer, riid: ^sys_windows.GUID, ppResult: rawptr) -> sys_windows.HRESULT,
    }

    ICompilerArgs ¶

    ICompilerArgs :: struct #raw_union {
    	iunknown:                sys_windows.IUnknown,
    	using idxccompilerargs_vtable: ^ICompilerArgs_VTable,
    }

    ICompilerArgs_VTable ¶

    ICompilerArgs_VTable :: struct {
    	using iunknown_vtable: sys_windows.IUnknown_VTable,
    	GetArguments:     proc "stdcall" (this: ^ICompilerArgs) -> [^][^]u16,
    	GetCount:         proc "stdcall" (this: ^ICompilerArgs) -> u32,
    	AddArguments:     proc "stdcall" (this: ^ICompilerArgs, pArguments: [^][^]u16, argCount: u32) -> sys_windows.HRESULT,
    	AddArgumentsUTF8: proc "stdcall" (this: ^ICompilerArgs, pArguments: [^]cstring, argCount: u32) -> sys_windows.HRESULT,
    	AddDefines:       proc "stdcall" (this: ^ICompilerArgs, pDefines: [^]Define, defineCount: u32) -> sys_windows.HRESULT,
    }

    ICompiler_VTable ¶

    ICompiler_VTable :: struct {
    	using iunknown_vtable: sys_windows.IUnknown_VTable,
    	Compile:         proc "stdcall" (this: ^ICompiler, pSource: ^Buffer, pSourceName: [^]u16, pEntryPoint: [^]u16, pTargetProfile: [^]u16, pArguments: [^][^]u16, argCount: u32, pDefines: [^]Define, defineCount: u32, pIncludeHandler: ^IIncludeHandler, ppResult: ^^IOperationResult) -> sys_windows.HRESULT,
    	Preprocess:      proc "stdcall" (this: ^ICompiler, pSource: ^Buffer, pSourceName: [^]u16, pArguments: [^][^]u16, argCount: u32, pDefines: [^]Define, defineCount: u32, pIncludeHandler: ^IIncludeHandler, ppResult: ^^IOperationResult) -> sys_windows.HRESULT,
    	Disassemble:     proc "stdcall" (this: ^ICompiler, pSource: ^Buffer, ppDisassembly: ^IBlobEncoding) -> sys_windows.HRESULT,
    }

    IContainerBuilder ¶

    IContainerBuilder :: struct #raw_union {
    	iunknown:                    sys_windows.IUnknown,
    	using idxccontainerbuilder_vtable: ^IContainerBuilder_VTable,
    }

    IContainerBuilder_VTable ¶

    IContainerBuilder_VTable :: struct {
    	using iunknown_vtable: sys_windows.IUnknown_VTable,
    	Load:               proc "stdcall" (this: ^IContainerBuilder, pDxilContainerHeader: ^IBlob) -> sys_windows.HRESULT,
    	AddPart:            proc "stdcall" (this: ^IContainerBuilder, fourCC: u32, pSource: ^IBlob) -> sys_windows.HRESULT,
    	RemovePart:         proc "stdcall" (this: ^IContainerBuilder, fourCC: u32) -> sys_windows.HRESULT,
    	SerializeContainer: proc "stdcall" (this: ^IContainerBuilder, ppResult: ^^IOperationResult) -> sys_windows.HRESULT,
    }

    IContainerReflection ¶

    IContainerReflection :: struct #raw_union {
    	iunknown:                       sys_windows.IUnknown,
    	using idxccontainerreflection_vtable: ^IContainerReflection_VTable,
    }

    IContainerReflection_VTable ¶

    IContainerReflection_VTable :: struct {
    	using iunknown_vtable: sys_windows.IUnknown_VTable,
    	Load:              proc "stdcall" (this: ^IContainerReflection, pContainer: ^IBlob) -> sys_windows.HRESULT,
    	GetPartCount:      proc "stdcall" (this: ^IContainerReflection, pResult: ^u32) -> sys_windows.HRESULT,
    	GetPartKind:       proc "stdcall" (this: ^IContainerReflection, idx: u32, pResult: ^u32) -> sys_windows.HRESULT,
    	GetPartContent:    proc "stdcall" (this: ^IContainerReflection, idx: u32, ppResult: ^^IBlob) -> sys_windows.HRESULT,
    	FindFirstPartKind: proc "stdcall" (this: ^IContainerReflection, kind: u32, pResult: ^u32) -> sys_windows.HRESULT,
    	GetPartReflection: proc "stdcall" (this: ^IContainerReflection, idx: u32, iid: ^sys_windows.GUID, ppvObject: rawptr) -> sys_windows.HRESULT,
    }

    IExtraOutputs ¶

    IExtraOutputs :: struct #raw_union {
    	iunknown:                sys_windows.IUnknown,
    	using idxcextraoutputs_vtable: ^IExtraOutputs_VTable,
    }

    IExtraOutputs_VTable ¶

    IExtraOutputs_VTable :: struct {
    	using iunknown_vtable: sys_windows.IUnknown_VTable,
    	GetOutputCount:  proc "stdcall" (this: ^IExtraOutputs) -> u32,
    	GetOutput:       proc "stdcall" (this: ^IExtraOutputs, uIndex: u32, iid: ^sys_windows.GUID, ppvObject: rawptr, ppOutputType: ^^IBlobUtf16, ppOutputName: ^^IBlobUtf16) -> sys_windows.HRESULT,
    }

    IID ¶

    IID :: sys_windows.GUID

    IIncludeHandler ¶

    IIncludeHandler :: struct #raw_union {
    	iunknown:                  sys_windows.IUnknown,
    	using idxcincludehandler_vtable: ^IIncludeHandler_VTable,
    }

    IIncludeHandler_VTable ¶

    IIncludeHandler_VTable :: struct {
    	using iunknown_vtable: sys_windows.IUnknown_VTable,
    	LoadSource:      proc "stdcall" (this: ^IIncludeHandler, pFilename: [^]u16, ppIncludeSource: ^^IBlob) -> sys_windows.HRESULT,
    }

    ILibrary ¶

    ILibrary :: struct #raw_union {
    	iunknown:           sys_windows.IUnknown,
    	using idxclibrary_vtable: ^ILibrary_VTable,
    }

    ILibrary_VTable ¶

    ILibrary_VTable :: struct {
    	using iunknown_vtable:            sys_windows.IUnknown_VTable,
    	SetMalloc:                        proc "stdcall" (this: ^ILibrary, pMalloc: ^IMalloc) -> sys_windows.HRESULT,
    	CreateBlobFromBlob:               proc "stdcall" (this: ^ILibrary, pBlob: ^IBlob, offset: u32, length: u32, ppResult: ^^IBlob) -> sys_windows.HRESULT,
    	CreateBlobFromFile:               proc "stdcall" (this: ^ILibrary, pFileName: [^]u16, codePage: ^u32, pBlobEncoding: ^^IBlobEncoding) -> sys_windows.HRESULT,
    	CreateBlobWithEncodingFromPinned: proc "stdcall" (this: ^ILibrary, pText: rawptr, size: u32, codePage: u32, pBlobEncoding: ^^IBlobEncoding) -> sys_windows.HRESULT,
    	CreateBlobWithEncodingOnHeapCopy: proc "stdcall" (this: ^ILibrary, pText: rawptr, size: u32, codePage: u32, pBlobEncoding: ^^IBlobEncoding) -> sys_windows.HRESULT,
    	CreateBlobWithEncodingOnMalloc:   proc "stdcall" (this: ^ILibrary, pText: rawptr, pIMalloc: ^IMalloc, size: u32, codePage: u32, pBlobEncoding: ^^IBlobEncoding) -> sys_windows.HRESULT,
    	CreateIncludeHandler:             proc "stdcall" (this: ^ILibrary, ppResult: ^^IIncludeHandler) -> sys_windows.HRESULT,
    	CreateStreamFromBlobReadOnly:     proc "stdcall" (this: ^ILibrary, pBlob: ^IBlob, ppStream: ^^IStream) -> sys_windows.HRESULT,
    	GetBlobAsUtf8:                    proc "stdcall" (this: ^ILibrary, pBlob: ^IBlob, pBlobEncoding: ^^IBlobEncoding) -> sys_windows.HRESULT,
    	GetBlobAsUtf16:                   proc "stdcall" (this: ^ILibrary, pBlob: ^IBlob, pBlobEncoding: ^^IBlobEncoding) -> sys_windows.HRESULT,
    }

    ILinker ¶

    ILinker :: struct #raw_union {
    	iunknown:          sys_windows.IUnknown,
    	using idxclinker_vtable: ^ILinker_VTable,
    }

    ILinker_VTable ¶

    ILinker_VTable :: struct {
    	using iunknown_vtable: sys_windows.IUnknown_VTable,
    	RegisterLibrary: proc "stdcall" (this: ^ILinker, pLibName: ^IBlob) -> sys_windows.HRESULT,
    	Link:            proc "stdcall" (this: ^ILinker, pEntryName: [^]u16, pTargetProfile: [^]u16, pLibNames: [^][^]u16, libCount: u32, pArguments: [^][^]u16, argCount: u32, ppResult: ^^IOperationResult) -> sys_windows.HRESULT,
    }

    IMalloc ¶

    IMalloc :: struct #raw_union {
    	iunknown:       sys_windows.IUnknown,
    	using imalloc_vtable: ^IMalloc_VTable,
    }
    Related Procedures With Parameters

    IMalloc_VTable ¶

    IMalloc_VTable :: struct {
    	using iunknown_vtable: sys_windows.IUnknown_VTable,
    	Alloc:           proc "stdcall" (this: ^IMalloc, cb: uint) -> rawptr,
    	Realloc:         proc "stdcall" (this: ^IMalloc, pv: rawptr, cb: uint) -> rawptr,
    	Free:            proc "stdcall" (this: ^IMalloc, pv: rawptr),
    	GetSize:         proc "stdcall" (this: ^IMalloc, pv: rawptr) -> uint,
    	DidAlloc:        proc "stdcall" (this: ^IMalloc, pv: rawptr) -> i32,
    	HeapMinimize:    proc "stdcall" (this: ^IMalloc),
    }

    IOperationResult ¶

    IOperationResult :: struct #raw_union {
    	iunknown:                   sys_windows.IUnknown,
    	using idxcoperationresult_vtable: ^IOperationResult_VTable,
    }

    IOperationResult_VTable ¶

    IOperationResult_VTable :: struct {
    	using iunknown_vtable: sys_windows.IUnknown_VTable,
    	GetStatus:       proc "stdcall" (this: ^IOperationResult, pStatus: ^sys_windows.HRESULT) -> sys_windows.HRESULT,
    	GetResult:       proc "stdcall" (this: ^IOperationResult, ppResult: ^^IBlob) -> sys_windows.HRESULT,
    	GetErrorBuffer:  proc "stdcall" (this: ^IOperationResult, ppErrors: ^^IBlobEncoding) -> sys_windows.HRESULT,
    }

    IOptimizer ¶

    IOptimizer :: struct #raw_union {
    	iunknown:             sys_windows.IUnknown,
    	using idxcoptimizer_vtable: ^IOptimizer_VTable,
    }

    IOptimizerPass ¶

    IOptimizerPass :: struct #raw_union {
    	iunknown:                 sys_windows.IUnknown,
    	using idxcoptimizerpass_vtable: ^IOptimizerPass_VTable,
    }

    IOptimizerPass_VTable ¶

    IOptimizerPass_VTable :: struct {
    	using iunknown_vtable:   sys_windows.IUnknown_VTable,
    	GetOptionName:           proc "stdcall" (this: ^IOptimizerPass, ppResult: ^[^]u16) -> sys_windows.HRESULT,
    	GetDescription:          proc "stdcall" (this: ^IOptimizerPass, ppResult: ^[^]u16) -> sys_windows.HRESULT,
    	GetOptionArgCount:       proc "stdcall" (this: ^IOptimizerPass, pCount: ^u32) -> sys_windows.HRESULT,
    	GetOptionArgName:        proc "stdcall" (this: ^IOptimizerPass, argIndex: u32, ppResult: ^[^]u16) -> sys_windows.HRESULT,
    	GetOptionArgDescription: proc "stdcall" (this: ^IOptimizerPass, argIndex: u32, ppResult: ^[^]u16) -> sys_windows.HRESULT,
    }

    IOptimizer_VTable ¶

    IOptimizer_VTable :: struct {
    	using iunknown_vtable: sys_windows.IUnknown_VTable,
    	GetAvailablePassCount: proc "stdcall" (this: ^IOptimizer, pCount: ^u32) -> sys_windows.HRESULT,
    	GetAvailablePass:      proc "stdcall" (this: ^IOptimizer, index: u32, ppResult: ^^IOptimizerPass) -> sys_windows.HRESULT,
    	RunOptimizer:          proc "stdcall" (this: ^IOptimizer, pBlob: ^IBlob, ppOptions: [^][^]u16, optionCount: u32, pOutputModule: ^^IBlob, ppOutputText: ^^IBlobEncoding) -> sys_windows.HRESULT,
    }

    IPdbUtils ¶

    IPdbUtils :: struct #raw_union {
    	iunknown:            sys_windows.IUnknown,
    	using idxcpdbutils_vtable: ^IPdbUtils_VTable,
    }

    IPdbUtils_VTable ¶

    IPdbUtils_VTable :: struct {
    	using iunknown_vtable: sys_windows.IUnknown_VTable,
    	Load:                  proc "stdcall" (this: ^IPdbUtils, pPdbOrDxil: ^IBlob) -> sys_windows.HRESULT,
    	GetSourceCount:        proc "stdcall" (this: ^IPdbUtils, pCount: ^u32) -> sys_windows.HRESULT,
    	GetSource:             proc "stdcall" (this: ^IPdbUtils, uIndex: u32, ppResult: ^^IBlobEncoding) -> sys_windows.HRESULT,
    	GetSourceName:         proc "stdcall" (this: ^IPdbUtils, uIndex: u32, pResult: ^[^]u16) -> sys_windows.HRESULT,
    	GetFlagCount:          proc "stdcall" (this: ^IPdbUtils, pCount: ^u32) -> sys_windows.HRESULT,
    	GetFlag:               proc "stdcall" (this: ^IPdbUtils, uIndex: u32, pResult: ^[^]u16) -> sys_windows.HRESULT,
    	GetArgCount:           proc "stdcall" (this: ^IPdbUtils, pCount: ^u32) -> sys_windows.HRESULT,
    	GetArg:                proc "stdcall" (this: ^IPdbUtils, uIndex: u32, pResult: ^[^]u16) -> sys_windows.HRESULT,
    	GetArgPairCount:       proc "stdcall" (this: ^IPdbUtils, pCount: ^u32) -> sys_windows.HRESULT,
    	GetArgPair:            proc "stdcall" (this: ^IPdbUtils, uIndex: u32, pName: ^[^]u16, pValue: ^[^]u16) -> sys_windows.HRESULT,
    	GetDefineCount:        proc "stdcall" (this: ^IPdbUtils, pCount: ^u32) -> sys_windows.HRESULT,
    	GetDefine:             proc "stdcall" (this: ^IPdbUtils, uIndex: u32, pResult: ^[^]u16) -> sys_windows.HRESULT,
    	GetTargetProfile:      proc "stdcall" (this: ^IPdbUtils, pResult: ^[^]u16) -> sys_windows.HRESULT,
    	GetEntryPoint:         proc "stdcall" (this: ^IPdbUtils, pResult: ^[^]u16) -> sys_windows.HRESULT,
    	GetMainFileName:       proc "stdcall" (this: ^IPdbUtils, pResult: ^[^]u16) -> sys_windows.HRESULT,
    	GetHash:               proc "stdcall" (this: ^IPdbUtils, ppResult: ^^IBlob) -> sys_windows.HRESULT,
    	GetName:               proc "stdcall" (this: ^IPdbUtils, pResult: ^[^]u16) -> sys_windows.HRESULT,
    	IsFullPDB:             proc "stdcall" (this: ^IPdbUtils) -> sys_windows.BOOL,
    	GetFullPDB:            proc "stdcall" (this: ^IPdbUtils, ppFullPDB: ^^IBlob) -> sys_windows.HRESULT,
    	GetVersionInfo:        proc "stdcall" (this: ^IPdbUtils, ppVersionInfo: ^^IVersionInfo) -> sys_windows.HRESULT,
    	SetCompiler:           proc "stdcall" (this: ^IPdbUtils, pCompiler: ^ICompiler3) -> sys_windows.HRESULT,
    	CompileForFullPDB:     proc "stdcall" (this: ^IPdbUtils, ppResult: ^^IResult) -> sys_windows.HRESULT,
    	OverrideArgs:          proc "stdcall" (this: ^IPdbUtils, pArgPairs: ^ArgPair, uNumArgPairs: u32) -> sys_windows.HRESULT,
    	OverrideRootSignature: proc "stdcall" (this: ^IPdbUtils, pRootSignature: [^]u16) -> sys_windows.HRESULT,
    }

    IResult ¶

    IResult :: struct #raw_union {
    	idxcoperationresult: IOperationResult,
    	using idxcresult_vtable: ^IResult_VTable,
    }

    IResult_VTable ¶

    IResult_VTable :: struct {
    	using idxcoperationresult_vtable: IOperationResult_VTable,
    	HasOutput:                  proc "stdcall" (this: ^IResult, dxcOutKind: DXC_OUT_KIND) -> sys_windows.BOOL,
    	GetOutput:                  proc "stdcall" (this: ^IResult, dxcOutKind: DXC_OUT_KIND, iid: ^sys_windows.GUID, ppvObject: rawptr, ppOutputName: ^^IBlobUtf16) -> sys_windows.HRESULT,
    	GetNumOutputs:              proc "stdcall" (this: ^IResult) -> u32,
    	GetOutputByIndex:           proc "stdcall" (this: ^IResult, Index: u32) -> DXC_OUT_KIND,
    	PrimaryOutput:              proc "stdcall" (this: ^IResult) -> DXC_OUT_KIND,
    }

    ISequentialStream ¶

    ISequentialStream :: struct #raw_union {
    	iunknown:                 sys_windows.IUnknown,
    	using isequentialstream_vtable: ^ISequentialStream_VTable,
    }

    ISequentialStream_VTable ¶

    ISequentialStream_VTable :: struct {
    	using iunknown_vtable: sys_windows.IUnknown_VTable,
    	Read:            proc "stdcall" (this: ^ISequentialStream, pv: rawptr, cb: u32, pcbRead: ^u32) -> sys_windows.HRESULT,
    	Write:           proc "stdcall" (this: ^ISequentialStream, pv: rawptr, cb: u32, pcbWritten: ^u32) -> sys_windows.HRESULT,
    }

    IStream ¶

    IStream :: struct #raw_union {
    	isequentialstream: ISequentialStream,
    	using istream_vtable: ^IStream_VTable,
    }

    IStream_VTable ¶

    IStream_VTable :: struct {
    	using isequentialstream_vtable: ISequentialStream_VTable,
    	Seek:                     proc "stdcall" (this: ^IStream, dlibMove: i64, dwOrigin: u32, plibNewPosition: ^u64) -> sys_windows.HRESULT,
    	SetSize:                  proc "stdcall" (this: ^IStream, libNewSize: u64) -> sys_windows.HRESULT,
    	CopyTo:                   proc "stdcall" (this: ^IStream, pstm: ^IStream, cb: u64, pcbRead: ^u64, pcbWritten: ^u64) -> sys_windows.HRESULT,
    	Commit:                   proc "stdcall" (this: ^IStream, grfCommitFlags: u32) -> sys_windows.HRESULT,
    	Revert:                   proc "stdcall" (this: ^IStream) -> sys_windows.HRESULT,
    	LockRegion:               proc "stdcall" (this: ^IStream, libOffset: u64, cb: u64, dwLockType: u32) -> sys_windows.HRESULT,
    	UnlockRegion:             proc "stdcall" (this: ^IStream, libOffset: u64, cb: u64, dwLockType: u32) -> sys_windows.HRESULT,
    	Stat:                     proc "stdcall" (this: ^IStream, pstatstg: ^STATSTG, grfStatFlag: u32) -> sys_windows.HRESULT,
    	Clone:                    proc "stdcall" (this: ^IStream, ppstm: ^^IStream) -> sys_windows.HRESULT,
    }

    IUnknown ¶

    IUnknown :: sys_windows.IUnknown

    IUnknown_VTable ¶

    IUnknown_VTable :: sys_windows.IUnknown_VTable

    IUtils ¶

    IUtils :: struct #raw_union {
    	iunknown:         sys_windows.IUnknown,
    	using idxcutils_vtable: ^IUtils_VTable,
    }

    IUtils_VTable ¶

    IUtils_VTable :: struct {
    	using iunknown_vtable:        sys_windows.IUnknown_VTable,
    	CreateBlobFromBlob:           proc "stdcall" (this: ^IUtils, pBlob: ^IBlob, offset: u32, length: u32, ppResult: ^^IBlob) -> sys_windows.HRESULT,
    	CreateBlobFromPinned:         proc "stdcall" (this: ^IUtils, pData: rawptr, size: u32, codePage: u32, pBlobEncoding: ^^IBlobEncoding) -> sys_windows.HRESULT,
    	MoveToBlob:                   proc "stdcall" (this: ^IUtils, pData: rawptr, pIMalloc: ^IMalloc, size: u32, codePage: u32, pBlobEncoding: ^^IBlobEncoding) -> sys_windows.HRESULT,
    	CreateBlob:                   proc "stdcall" (this: ^IUtils, pData: rawptr, size: u32, codePage: u32, pBlobEncoding: ^^IBlobEncoding) -> sys_windows.HRESULT,
    	LoadFile:                     proc "stdcall" (this: ^IUtils, pFileName: [^]u16, pCodePage: ^u32, pBlobEncoding: ^^IBlobEncoding) -> sys_windows.HRESULT,
    	CreateReadOnlyStreamFromBlob: proc "stdcall" (this: ^IUtils, pBlob: ^IBlob, ppStream: ^^IStream) -> sys_windows.HRESULT,
    	CreateDefaultIncludeHandler:  proc "stdcall" (this: ^IUtils, ppResult: ^^IIncludeHandler) -> sys_windows.HRESULT,
    	GetBlobAsUtf8:                proc "stdcall" (this: ^IUtils, pBlob: ^IBlob, pBlobEncoding: ^^IBlobUtf8) -> sys_windows.HRESULT,
    	GetBlobAsUtf16:               proc "stdcall" (this: ^IUtils, pBlob: ^IBlob, pBlobEncoding: ^^IBlobUtf16) -> sys_windows.HRESULT,
    	GetDxilContainerPart:         proc "stdcall" (this: ^IUtils, pShader: ^Buffer, Part: u32, ppPartData: rawptr, pPartSizeInBytes: ^u32) -> sys_windows.HRESULT,
    	CreateReflection:             proc "stdcall" (this: ^IUtils, pData: ^Buffer, iid: ^sys_windows.GUID, ppvReflection: rawptr) -> sys_windows.HRESULT,
    	BuildArguments:               proc "stdcall" (this: ^IUtils, pSourceName: [^]u16, pEntryPoint: [^]u16, pTargetProfile: [^]u16, pArguments: [^][^]u16, argCount: u32, pDefines: [^]Define, defineCount: u32, ppArgs: ^[^]ICompilerArgs) -> sys_windows.HRESULT,
    	GetPDBContents:               proc "stdcall" (this: ^IUtils, pPDBBlob: ^IBlob, ppHash: ^^IBlob, ppContainer: ^^IBlob) -> sys_windows.HRESULT,
    }

    IValidator ¶

    IValidator :: struct #raw_union {
    	iunknown:             sys_windows.IUnknown,
    	using idxcvalidator_vtable: ^IValidator_VTable,
    }

    IValidator2 ¶

    IValidator2 :: struct #raw_union {
    	idxcvalidator:         IValidator,
    	using idxcvalidator2_vtable: ^IValidator2_VTable,
    }

    IValidator2_VTable ¶

    IValidator2_VTable :: struct {
    	using idxcvalidator_vtable: IValidator_VTable,
    	ValidateWithDebug:    proc "stdcall" (this: ^IValidator2, pShader: ^IBlob, Flags: u32, pOptDebugBitcode: ^Buffer, ppResult: ^^IOperationResult) -> sys_windows.HRESULT,
    }

    IValidator_VTable ¶

    IValidator_VTable :: struct {
    	using iunknown_vtable: sys_windows.IUnknown_VTable,
    	Validate:        proc "stdcall" (this: ^IValidator, pShader: ^IBlob, Flags: u32, ppResult: ^^IOperationResult) -> sys_windows.HRESULT,
    }

    IVersionInfo ¶

    IVersionInfo :: struct #raw_union {
    	iunknown:               sys_windows.IUnknown,
    	using idxcversioninfo_vtable: ^IVersionInfo_VTable,
    }

    IVersionInfo2 ¶

    IVersionInfo2 :: struct #raw_union {
    	idxcversioninfo:         IVersionInfo,
    	using idxcversioninfo2_vtable: ^IVersionInfo2_VTable,
    }

    IVersionInfo2_VTable ¶

    IVersionInfo2_VTable :: struct {
    	using idxcversioninfo_vtable: IVersionInfo_VTable,
    	GetCommitInfo:          proc "stdcall" (this: ^IVersionInfo2, pCommitCount: ^u32, pCommitHash: ^[^]u8) -> sys_windows.HRESULT,
    }

    IVersionInfo3 ¶

    IVersionInfo3 :: struct #raw_union {
    	iunknown:                sys_windows.IUnknown,
    	using idxcversioninfo3_vtable: ^IVersionInfo3_VTable,
    }

    IVersionInfo3_VTable ¶

    IVersionInfo3_VTable :: struct {
    	using iunknown_vtable:  sys_windows.IUnknown_VTable,
    	GetCustomVersionString: proc "stdcall" (this: ^IVersionInfo3, pVersionString: ^cstring) -> sys_windows.HRESULT,
    }

    IVersionInfo_VTable ¶

    IVersionInfo_VTable :: struct {
    	using iunknown_vtable: sys_windows.IUnknown_VTable,
    	GetVersion:      proc "stdcall" (this: ^IVersionInfo, pMajor: ^u32, pMinor: ^u32) -> sys_windows.HRESULT,
    	GetFlags:        proc "stdcall" (this: ^IVersionInfo, pFlags: ^VersionInfoFlags) -> sys_windows.HRESULT,
    }

    STATSTG ¶

    STATSTG :: struct {
    	pwcsName:          [^]u16,
    	type:              u32,
    	cbSize:            u64,
    	mtime:             sys_windows.FILETIME,
    	ctime:             sys_windows.FILETIME,
    	atime:             sys_windows.FILETIME,
    	grfMode:           u32,
    	grfLocksSupported: u32,
    	clsid:             sys_windows.GUID,
    	grfStateBits:      u32,
    	reserved:          u32,
    }

    ULONG ¶

    ULONG :: u32

    VersionInfoFlags ¶

    VersionInfoFlags :: enum u32 {
    	None     = 0, 
    	Debug    = 1, 
    	Internal = 2, 
    }

    pCreateInstance2Proc ¶

    pCreateInstance2Proc :: proc "c" (pMalloc: ^IMalloc, rclsid: ^sys_windows.GUID, riid: ^sys_windows.GUID, ppv: rawptr) -> sys_windows.HRESULT

    pCreateInstanceProc ¶

    pCreateInstanceProc :: proc "c" (rclsid: ^sys_windows.GUID, riid: ^sys_windows.GUID, ppv: rawptr) -> sys_windows.HRESULT

    wstring ¶

    wstring :: [^]u16

    Constants

    ARG_ALL_RESOURCES_BOUND ¶

    ARG_ALL_RESOURCES_BOUND :: "-all_resources_bound"

    ARG_AVOID_FLOW_CONTROL ¶

    ARG_AVOID_FLOW_CONTROL :: "-Gfa"

    ARG_DEBUG ¶

    ARG_DEBUG :: "-Zi"

    ARG_DEBUG_NAME_FOR_BINARY ¶

    ARG_DEBUG_NAME_FOR_BINARY :: "-Zsb"

    ARG_DEBUG_NAME_FOR_SOURCE ¶

    ARG_DEBUG_NAME_FOR_SOURCE :: "-Zss"

    ARG_ENABLE_BACKWARDS_COMPATIBILITY ¶

    ARG_ENABLE_BACKWARDS_COMPATIBILITY :: "-Gec"

    ARG_ENABLE_STRICTNESS ¶

    ARG_ENABLE_STRICTNESS :: "-Ges"

    ARG_IEEE_STRICTNESS ¶

    ARG_IEEE_STRICTNESS :: "-Gis"

    ARG_OPTIMIZATION_LEVEL0 ¶

    ARG_OPTIMIZATION_LEVEL0 :: "-O0"

    ARG_OPTIMIZATION_LEVEL1 ¶

    ARG_OPTIMIZATION_LEVEL1 :: "-O1"

    ARG_OPTIMIZATION_LEVEL2 ¶

    ARG_OPTIMIZATION_LEVEL2 :: "-O2"

    ARG_OPTIMIZATION_LEVEL3 ¶

    ARG_OPTIMIZATION_LEVEL3 :: "-O3"

    ARG_PACK_MATRIX_COLUMN_MAJOR ¶

    ARG_PACK_MATRIX_COLUMN_MAJOR :: "-Zpc"

    ARG_PACK_MATRIX_ROW_MAJOR ¶

    ARG_PACK_MATRIX_ROW_MAJOR :: "-Zpr"

    ARG_PREFER_FLOW_CONTROL ¶

    ARG_PREFER_FLOW_CONTROL :: "-Gfp"

    ARG_RESOURCES_MAY_ALIAS ¶

    ARG_RESOURCES_MAY_ALIAS :: "-res_may_alias"

    ARG_SKIP_OPTIMIZATIONS ¶

    ARG_SKIP_OPTIMIZATIONS :: "-Od"

    ARG_SKIP_VALIDATION ¶

    ARG_SKIP_VALIDATION :: "-Vd"

    ARG_WARNINGS_ARE_ERRORS ¶

    ARG_WARNINGS_ARE_ERRORS :: "-WX"

    Assembler_CLSID_STRING ¶

    Assembler_CLSID_STRING :: "D728DB68-F903-4F80-94CD-DCCF76EC7151"

    CP_ACP ¶

    CP_ACP :: 0

    CP_UTF16 ¶

    CP_UTF16 :: 1200

    CP_UTF8 ¶

    CP_UTF8 :: 65001

    CompilerArgs_CLSID_STRING ¶

    CompilerArgs_CLSID_STRING :: "3E56AE82-224D-470F-A1A1-FE3016EE9F9D"

    Compiler_CLSID_STRING ¶

    Compiler_CLSID_STRING :: "73E22D93-E6CE-47F3-B5BF-F0664F39C1B0"

    ContainerBuilder_CLSID_STRING ¶

    ContainerBuilder_CLSID_STRING :: "94134294-411f-4574-b4d0-8741e25240d2"

    ContainerReflection_CLSID_STRING ¶

    ContainerReflection_CLSID_STRING :: "b9f54489-55b8-400c-ba3a-1675e4728b91"

    CreateInstance2_ProcName ¶

    CreateInstance2_ProcName :: "DxcCreateInstance2"

    CreateInstance_ProcName ¶

    CreateInstance_ProcName :: "DxcCreateInstance"

    DiaDataSource_CLSID_STRING ¶

    DiaDataSource_CLSID_STRING :: "CD1F6B73-2AB0-484D-8EDC-EBE7A43CA09F"

    EXTRA_OUTPUT_NAME_STDERR ¶

    EXTRA_OUTPUT_NAME_STDERR :: "*stderr*"

    EXTRA_OUTPUT_NAME_STDOUT ¶

    EXTRA_OUTPUT_NAME_STDOUT :: "*stdout*"

    IAssembler_UUID_STRING ¶

    IAssembler_UUID_STRING :: "091F7A26-1C1F-4948-904B-E6E3A8A771D5"

    IBlobEncoding_UUID_STRRING ¶

    IBlobEncoding_UUID_STRRING :: "7241D424-2646-4191-97C0-98E96E42FC68"

    IBlobUtf16_UUID_STRING ¶

    IBlobUtf16_UUID_STRING :: "A3F84EAB-0FAA-497E-A39C-EE6ED60B2D84"

    IBlobUtf8_UUID_STRING ¶

    IBlobUtf8_UUID_STRING :: "3DA636C9-BA71-4024-A301-30CBF125305B"

    IBlob_UUID_STRING ¶

    IBlob_UUID_STRING :: "8BA5FB08-5195-40E2-AC58-0D989C3A0102"

    ICompiler2_UUID_STRING ¶

    ICompiler2_UUID_STRING :: "A005A9D9-B8BB-4594-B5C9-0E633BEC4D37"

    ICompiler3_UUID_STRING ¶

    ICompiler3_UUID_STRING :: "228B4687-5A6A-4730-900C-9702B2203F54"

    ICompilerArgs_UUID_STRING ¶

    ICompilerArgs_UUID_STRING :: "73EFFE2A-70DC-45F8-9690-EFF64C02429D"

    ICompiler_UUID_STRING ¶

    ICompiler_UUID_STRING :: "8C210BF3-011F-4422-8D70-6F9ACB8DB617"

    IContainerBuilder_UUID_STRING ¶

    IContainerBuilder_UUID_STRING :: "334B1F50-2292-4B35-99A1-25588D8C17FE"

    IContainerReflection_UUID_STRING ¶

    IContainerReflection_UUID_STRING :: "D2C21B26-8350-4BDC-976A-331CE6F4C54C"

    IExtraOutputs_UUID_STRING ¶

    IExtraOutputs_UUID_STRING :: "319B37A2-A5C2-494A-A5DE-4801B2FAF989"

    IIncludeHandler_UUID_STRING ¶

    IIncludeHandler_UUID_STRING :: "7F61FC7D-950D-467F-B3E3-3C02FB49187C"

    ILibrary_UUID_STRING ¶

    ILibrary_UUID_STRING :: "E5204DC7-D18C-4C3C-BDFB-851673980FE7"

    ILinker_UUID_STRING ¶

    ILinker_UUID_STRING :: "F1B5BE2A-62DD-4327-A1C2-42AC1E1E78E6"

    IOperationResult_UUID_STRING ¶

    IOperationResult_UUID_STRING :: "CEDB484A-D4E9-445A-B991-CA21CA157DC2"

    IOptimizerPass_UUID_STRING ¶

    IOptimizerPass_UUID_STRING :: "AE2CD79F-CC22-453F-9B6B-B124E7A5204C"

    IOptimizer_UUID_STRING ¶

    IOptimizer_UUID_STRING :: "25740E2E-9CBA-401B-9119-4FB42F39F270"

    IPdbUtils_UUID_STRING ¶

    IPdbUtils_UUID_STRING :: "E6C9647E-9D6A-4C3B-B94C-524B5A6C343D"

    IResult_UUID_STRING ¶

    IResult_UUID_STRING :: "58346CDA-DDE7-4497-9461-6F87AF5E0659"

    IUtils_UUID_STRING ¶

    IUtils_UUID_STRING :: "4605C4CB-2019-492A-ADA4-65F20BB7D67F"

    IValidator2_UUID_STRING ¶

    IValidator2_UUID_STRING :: "458E1FD1-B1B2-4750-A6E1-9C10F03BED92"

    IValidator_UUID_STRING ¶

    IValidator_UUID_STRING :: "A6E82BD2-1FD7-4826-9811-2857E797F49A"

    IVersionInfo2_UUID_STRING ¶

    IVersionInfo2_UUID_STRING :: "FB6904C4-42F0-4B62-9C46-983AF7DA7C83"

    IVersionInfo3_UUID_STRING ¶

    IVersionInfo3_UUID_STRING :: "5E13E843-9D25-473C-9AD2-03B2D0B44B1E"

    IVersionInfo_UUID_STRING ¶

    IVersionInfo_UUID_STRING :: "B04F5B50-2059-4F12-A8FF-A1E0CDE1CC7E"

    Library_CLSID_STRING ¶

    Library_CLSID_STRING :: "6245D6AF-66E0-48FD-80B4-4D271796748C"

    Linker_CLSID_STRING ¶

    Linker_CLSID_STRING :: "EF6A8087-B0EA-4D56-9E45-D07E1A8B7806"

    Optimizer_CLSID_STRING ¶

    Optimizer_CLSID_STRING :: "AE2CD79F-CC22-453F-9B6B-B124E7A5204C"

    PART_DXIL ¶

    PART_DXIL :: u32('D') | (u32('X') << 8) | (u32('I') << 16) | (u32('L') << 24)

    PART_INPUT_SIGNATURE ¶

    PART_INPUT_SIGNATURE :: u32('I') | (u32('S') << 8) | (u32('G') << 16) | (u32('1') << 24)

    PART_OUTPUT_SIGNATURE ¶

    PART_OUTPUT_SIGNATURE :: u32('O') | (u32('S') << 8) | (u32('G') << 16) | (u32('1') << 24)

    PART_PATCH_CONSTANT_SIGNATURE ¶

    PART_PATCH_CONSTANT_SIGNATURE :: u32('P') | (u32('S') << 8) | (u32('G') << 16) | (u32('1') << 24)

    PART_PDB ¶

    PART_PDB :: u32('I') | (u32('L') << 8) | (u32('D') << 16) | (u32('B') << 24)

    PART_PDB_NAME ¶

    PART_PDB_NAME :: u32('I') | (u32('L') << 8) | (u32('D') << 16) | (u32('N') << 24)

    PART_PRIVATE_DATA ¶

    PART_PRIVATE_DATA :: u32('P') | (u32('R') << 8) | (u32('I') << 16) | (u32('V') << 24)

    PART_REFLECTION_DATA ¶

    PART_REFLECTION_DATA :: u32('S') | (u32('T') << 8) | (u32('A') << 16) | (u32('T') << 24)

    PART_ROOT_SIGNATURE ¶

    PART_ROOT_SIGNATURE :: u32('R') | (u32('T') << 8) | (u32('S') << 16) | (u32('0') << 24)

    PART_SHADER_HASH ¶

    PART_SHADER_HASH :: u32('H') | (u32('A') << 8) | (u32('S') << 16) | (u32('H') << 24)

    PdbUtils_CLSID_STRING ¶

    PdbUtils_CLSID_STRING :: "54621dfb-f2ce-457e-ae8c-ec355faeec7c"

    Utils_CLSID_STRING ¶

    Utils_CLSID_STRING :: Library_CLSID_STRING

    Validator_CLSID_STRING ¶

    Validator_CLSID_STRING :: "8CA3E215-F728-4CF3-8CDD-88AF917587A1"

    Variables

    Assembler_CLSID ¶

    Assembler_CLSID: ^sys_windows.GUID = …

    CompilerArgs_CLSID ¶

    CompilerArgs_CLSID: ^sys_windows.GUID = …

    Compiler_CLSID ¶

    Compiler_CLSID: ^sys_windows.GUID = …

    ContainerBuilder_CLSID ¶

    ContainerBuilder_CLSID: ^sys_windows.GUID = …

    ContainerReflection_CLSID ¶

    ContainerReflection_CLSID: ^sys_windows.GUID = …

    DiaDataSource_CLSID ¶

    DiaDataSource_CLSID: ^sys_windows.GUID = …

    IAssembler_UUID ¶

    IAssembler_UUID: ^sys_windows.GUID = …

    IBlobEncoding_UUID ¶

    IBlobEncoding_UUID: ^sys_windows.GUID = …

    IBlobUtf16_UUID ¶

    IBlobUtf16_UUID: ^sys_windows.GUID = …

    IBlobUtf8_UUID ¶

    IBlobUtf8_UUID: ^sys_windows.GUID = …

    IBlob_UUID ¶

    IBlob_UUID: ^sys_windows.GUID = …

    ICompiler2_UUID ¶

    ICompiler2_UUID: ^sys_windows.GUID = …

    ICompiler3_UUID ¶

    ICompiler3_UUID: ^sys_windows.GUID = …

    ICompilerArgs_UUID ¶

    ICompilerArgs_UUID: ^sys_windows.GUID = …

    ICompiler_UUID ¶

    ICompiler_UUID: ^sys_windows.GUID = …

    IContainerBuilder_UUID ¶

    IContainerBuilder_UUID: ^sys_windows.GUID = …

    IContainerReflection_UUID ¶

    IContainerReflection_UUID: ^sys_windows.GUID = …

    IExtraOutputs_UUID ¶

    IExtraOutputs_UUID: ^sys_windows.GUID = …

    IIncludeHandler_UUID ¶

    IIncludeHandler_UUID: ^sys_windows.GUID = …

    ILibrary_UUID ¶

    ILibrary_UUID: ^sys_windows.GUID = …

    ILinker_UUID ¶

    ILinker_UUID: ^sys_windows.GUID = …

    IOperationResult_UUID ¶

    IOperationResult_UUID: ^sys_windows.GUID = …

    IOptimizerPass_UUID ¶

    IOptimizerPass_UUID: ^sys_windows.GUID = …

    IOptimizer_UUID ¶

    IOptimizer_UUID: ^sys_windows.GUID = …

    IPdbUtils_UUID ¶

    IPdbUtils_UUID: ^sys_windows.GUID = …

    IResult_UUID ¶

    IResult_UUID: ^sys_windows.GUID = …

    IUtils_UUID ¶

    IUtils_UUID: ^sys_windows.GUID = …

    IValidator2_UUID ¶

    IValidator2_UUID: ^sys_windows.GUID = …

    IValidator_UUID ¶

    IValidator_UUID: ^sys_windows.GUID = …

    IVersionInfo2_UUID ¶

    IVersionInfo2_UUID: ^sys_windows.GUID = …

    IVersionInfo3_UUID ¶

    IVersionInfo3_UUID: ^sys_windows.GUID = …

    IVersionInfo_UUID ¶

    IVersionInfo_UUID: ^sys_windows.GUID = …

    Library_CLSID ¶

    Library_CLSID: ^sys_windows.GUID = …

    Linker_CLSID ¶

    Linker_CLSID: ^sys_windows.GUID = …

    Optimizer_CLSID ¶

    Optimizer_CLSID: ^sys_windows.GUID = …

    PdbUtils_CLSID ¶

    PdbUtils_CLSID: ^sys_windows.GUID = …

    Utils_CLSID ¶

    Utils_CLSID: ^sys_windows.GUID = …

    Validator_CLSID ¶

    Validator_CLSID: ^sys_windows.GUID = …

    Procedures

    CreateInstance ¶

    CreateInstance :: proc "c" (rclsid: ^sys_windows.GUID, riid: ^sys_windows.GUID, ppv: rawptr) -> sys_windows.HRESULT ---

    CreateInstance2 ¶

    CreateInstance2 :: proc "c" (pMalloc: ^IMalloc, rclsid: ^sys_windows.GUID, riid: ^sys_windows.GUID, ppv: rawptr) -> sys_windows.HRESULT ---

    make_fourcc ¶

    make_fourcc :: proc "contextless" (ch0, ch1, ch2, ch3: u32) -> u32 {…}

    Procedure Groups

    This section is empty.

    Source Files

    Generation Information

    Generated with odin version dev-2024-12 (vendor "odin") Windows_amd64 @ 2024-12-20 21:10:47.444790100 +0000 UTC