MCPcopy Create free account
hub / github.com/csyonghe/Spire / DeclareOutput

Method DeclareOutput

Source/SpireCore/GLSLCodeGen.cpp:945–958  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

943 outputIndex = pOutputIndex;
944 }
945 virtual void DeclareOutput(CodeGenContext & ctx, ILStage *) override
946 {
947 for (auto & field : world->OutputType->Members)
948 {
949 if (isPatch)
950 ctx.GlobalHeader << "patch ";
951 ctx.GlobalHeader << "out ";
952 codeGen->PrintDef(ctx.GlobalHeader, field.Value.Type.Ptr(), AddWorldNameSuffix(field.Key, world->Name));
953 ctx.GlobalHeader << "[";
954 if (arraySize != 0)
955 ctx.GlobalHeader << arraySize;
956 ctx.GlobalHeader<<"]; \n";
957 }
958 }
959 virtual void ProcessExportInstruction(CodeGenContext & ctx, ExportInstruction * instr) override
960 {
961 ctx.Body << AddWorldNameSuffix(instr->ComponentName, world->Name) << "[" << outputIndex << "] = ";

Callers 2

GenerateHullShaderMethod · 0.45

Calls 3

AddWorldNameSuffixFunction · 0.85
PrintDefMethod · 0.80
PtrMethod · 0.45

Tested by

no test coverage detected