obs-studio/libobs-opengl/GL/modules/FuncCpp_Struct.lua

155 lines
5.1 KiB
Lua

local struct = require "Structure"
local common = require "CommonStruct"
local my_struct =
{
{ type="file", style="header", name="GetFilename",
{ type="write", name="FilePreamble", optional=true} ,
{ type="block", name="IncludeGuard(hFile, spec, options)",
{ type="blank"},
{ type="write", name="Init(hFile, spec, options)", },
{ type="blank"},
{ type="write", name="StdTypedefs(hFile, specData, options)",},
{ type="blank"},
{ type="write", name="SpecTypedefs(hFile, specData, options)",},
{ type="blank"},
{ type="block", name="Decl(hFile, spec, options)",
{ type="block", name="ExtVarDecl(hFile, spec, options)",
{ type="ext-iter",
{ type="write", name="ExtVariableDecl(hFile, extName, specData, spec, options)" },
{ type="blank", last=true },
},
},
{ type="block", name="EnumDecl(hFile, spec, options)",
{ type="enum-seen",
{ type="ext-iter",
{type="enum-iter",
{ type="write", name="EnumDecl(hFile, enum, enumTable, spec, options, enumSeen)", },
{ type="blank", last=true },
},
},
{ type="version-iter",
{type="enum-iter",
{ type="write", name="EnumDecl(hFile, enum, enumTable, spec, options, enumSeen)", },
{ type="blank", last=true },
},
},
},
},
{ type="blank"},
{ type="block", name="FuncPtrDecl(hFile, spec, options)",
{ type="func-seen",
{ type="ext-iter",
{ type="block", name="ExtFuncPtrDecl(hFile, extName, spec, options)", cond="func-iter",
{type="func-iter",
{ type="write", name="FuncPtrDecl(hFile, func, spec, options, funcSeen)", },
},
},
{ type="blank"},
},
{ type="version-iter",
{type="func-iter",
{ type="write", name="FuncPtrDecl(hFile, func, spec, options, funcSeen)", },
{ type="blank", last=true },
},
},
},
},
{ type="blank"},
{ type="block", name="FuncDecl(hFile, spec, options)",
{ type="func-seen",
{ type="ext-iter",
{ type="block", name="ExtFuncDecl(hFile, extName, spec, options)", cond="func-iter",
{type="func-iter",
{ type="write", name="FuncDecl(hFile, func, spec, options, funcSeen)", },
},
},
{ type="blank"},
},
{ type="version-iter",
{type="func-iter",
{ type="write", name="FuncDecl(hFile, func, spec, options, funcSeen)", },
{ type="blank", last=true },
},
},
},
},
{ type="blank"},
{ type="block", name="SysDecl(hFile, spec, options)",
{ type="write", name="UtilityDecls(hFile, spec, options)",},
{ type="blank" },
{ type="write", name="MainLoaderFuncDecl(hFile, spec, options)",},
{ type="blank" },
{ type="write", name="VersioningFuncDecls(hFile, spec, options)",},
{ type="blank" },
},
},
},
},
{ type="file", style="source", name="GetFilename",
{ type="write", name="FilePreamble", optional=true} ,
{ type="write", name="Includes(hFile, basename, spec, options)",},
{ type="blank"},
{ type="write", name="LoaderData(hFile, spec, options)",},
{ type="blank"},
{ type="block", name="Def(hFile, spec, options)",
{ type="block", name="ExtVarDef(hFile, spec, options)",
{ type="ext-iter",
{ type="write", name="ExtVariableDef(hFile, extName, specData, spec, options)",},
{ type="blank", last=true},
},
},
{ type="blank"},
{ type="block", name="PtrDefs(hFile, spec, options)",
{ type="func-seen",
{ type="ext-iter",
{ type="block", name="ExtFuncPtrDef(hFile, extName, spec, options)", cond="func-iter",
{ type="func-iter",
{ type="write", name="FuncPtrDef(hFile, func, spec, options, funcSeen)", },
},
{ type="blank"},
{ type="block", name="ExtLoader(hFile, extName, spec, options)",
{ type="func-iter",
{ type="write", name="ExtFuncLoader(hFile, func, spec, options)", }
}
},
{ type="blank"},
},
},
{ type="block", name="CoreFuncPtrDef(hFile, spec, options)",
cond="core-funcs",
{ type="version-iter",
{type="func-iter",
{ type="write", name="FuncPtrDef(hFile, func, spec, options, funcSeen)", },
{ type="blank", last=true },
},
},
{ type="block", name="CoreLoader(hFile, spec, options)",
{ type="version-iter",
{type="func-iter",
{ type="write", name="CoreFuncLoader(hFile, func, spec, options)", },
},
},
},
{ type="blank"},
},
{ type="write", name="ExtStringFuncDef(hFile, specData, spec, options, funcSeen)"},
},
},
{ type="blank"},
{ type="block", name="SysDef(hFile, spec, options)",
{ type="write", name="UtilityDefs(hFile, specData, spec, options)",},
{ type="blank" },
{ type="write", name="MainLoaderFunc(hFile, specData, spec, options)",},
{ type="blank" },
{ type="write", name="VersioningFuncs(hFile, specData, spec, options)", cond="version-iter"},
{ type="blank", cond="version-iter" },
},
},
},
}
my_struct = struct.BuildStructure(my_struct)
return my_struct