private static string TransformTemplate( string filePath, NumDefine[] defines, PasteToken[] attributeTypes ) { var debug = new InfoSinkBase(SinkType.String); var info = new InfoSinkBase(SinkType.String); var infoSink = new InfoSink(info, debug); var intermediate = new GLSLIntermediate(); var symbols = new SymbolLookup(); symbols.SetPreambleManually(Profile.CoreProfile); foreach (var x in defines) { symbols.DefineAs(x.Name, x.Value); } foreach (var t in attributeTypes) { symbols.AddPasteToken(t.Name, t.Value); } var preprocessor = new Standalone(infoSink, intermediate, symbols); preprocessor.Run(filePath, out string result); return(result); }
public static void Main(string[] args) { var infoSink = new InfoSink { debug = new InfoSinkBase(), info = new InfoSinkBase() }; var intermediate = new GLSLIntermediate(); var preprocessor = new Standalone(infoSink, intermediate); string result = null; //const string fileName = "Sample.vert"; const string fileName = "notex.vert"; string original = null; using (var fs = File.OpenRead(fileName)) using (var sr = new StreamReader(fs)) { original = sr.ReadToEnd(); } Console.WriteLine(original); Console.WriteLine(original.Length); if (preprocessor.Run(fileName, out result)) { Console.WriteLine(result); Console.WriteLine(result.Length); } }
public static void Main(string[] args) { var infoSink = new InfoSink {debug = new InfoSinkBase(), info = new InfoSinkBase()}; var intermediate = new GLSLIntermediate (); var preprocessor = new Standalone (infoSink, intermediate); string result = null; //const string fileName = "Sample.vert"; const string fileName = "notex.vert"; string original = null; using (var fs = File.OpenRead (fileName)) using (var sr = new StreamReader(fs)) { original = sr.ReadToEnd (); } Console.WriteLine (original); Console.WriteLine (original.Length); if (preprocessor.Run (fileName, out result)) { Console.WriteLine (result); Console.WriteLine (result.Length); } }
static Standalone InitialisePreprocessor(InfoSink infoSink) { var intermediate = new GLSLIntermediate(); var symbols = new SymbolLookup(); symbols.SetPreambleManually(Profile.CoreProfile); symbols.DefineAs("GL_ARB_shader_storage_buffer_object", 1); return(new Standalone(infoSink, intermediate, symbols)); }
public void TestCase() { var debug = new InfoSinkBase (SinkType.String); var info = new InfoSinkBase (SinkType.String); var infoSink = new InfoSink(info, debug); var intermediate = new GLSLIntermediate (); var symbols = new SymbolLookup (); symbols.SetPreambleManually (Profile.CoreProfile); symbols.DefineAs ("GL_ARB_shader_storage_buffer_object", 1); var preprocessor = new Standalone (infoSink, intermediate, symbols); string result; Assert.IsTrue(preprocessor.Run("Sample.vert", out result)); Assert.IsNotNull (result); }
public void TestCase() { var debug = new InfoSinkBase(SinkType.String); var info = new InfoSinkBase(SinkType.String); var infoSink = new InfoSink(info, debug); var intermediate = new GLSLIntermediate(); var symbols = new SymbolLookup(); symbols.SetPreambleManually(Profile.CoreProfile); symbols.DefineAs("GL_ARB_shader_storage_buffer_object", 1); var preprocessor = new Standalone(infoSink, intermediate, symbols); string result; Assert.IsTrue(preprocessor.Run("Sample.vert", out result)); Assert.IsNotNull(result); }
static Standalone InitialisePreprocessor(InfoSink infoSink) { var intermediate = new GLSLIntermediate (); var symbols = new SymbolLookup (); symbols.SetPreambleManually (Profile.CoreProfile); symbols.DefineAs ("GL_ARB_shader_storage_buffer_object", 1); return new Standalone (infoSink, intermediate, symbols); }
public Standalone(InfoSink infoSink, GLSLIntermediate intermediate, SymbolLookup symbols) { mInfoSink = infoSink; mIntermediate = intermediate; mSymbols = symbols; }
internal ParseContext( int version, Profile profile, InfoSink infoSink, bool forwardCompatible, SymbolLookup symbols, GLSLIntermediate intermediate) { mIntermediate = intermediate; mVersion = version; mProfile = profile; mInfoSink = infoSink; mExtensionBehaviors = new Dictionary<string, ExtensionBehavior> (); contextPragma = new Pragma (true, false); mSymbols = symbols; }