using System; using System.Collections.Generic; using System.Text; using SharpGLTF.SchemaReflection; namespace SharpGLTF { class NodeVisibilityExtension : SchemaProcessor { private static string SchemaUri => KhronosExtensions.KhronosExtensionPath("KHR_node_visibility", "node.KHR_node_visibility.schema.json"); private const string ExtensionRootClassName = "KHR_node_visibility glTF Node Extension"; public override IEnumerable<(string, SchemaType.Context)> ReadSchema() { var ctx = SchemaProcessing.LoadExtensionSchemaContext(SchemaUri); yield return ("ext.NodeVisibility.g", ctx); } public override void PrepareTypes(CodeGen.CSharpEmitter newEmitter, SchemaType.Context ctx) { newEmitter.SetRuntimeName(ExtensionRootClassName, "_NodeVisibility"); } } }