ShaderPrecache.cs 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149
  1. // WARNING - AUTOGENERATED - DO NOT EDIT
  2. //
  3. // Generated using `sharpie urho`
  4. //
  5. // ShaderPrecache.cs
  6. //
  7. // Copyright 2015 Xamarin Inc. All rights reserved.
  8. using System;
  9. using System.Runtime.InteropServices;
  10. using System.Collections.Generic;
  11. using Urho.Urho2D;
  12. using Urho.Gui;
  13. using Urho.Resources;
  14. using Urho.IO;
  15. using Urho.Navigation;
  16. using Urho.Network;
  17. namespace Urho
  18. {
  19. /// <summary>
  20. /// Utility class for collecting used shader combinations during runtime for precaching.
  21. /// </summary>
  22. public unsafe partial class ShaderPrecache : UrhoObject
  23. {
  24. unsafe partial void OnShaderPrecacheCreated ();
  25. [Preserve]
  26. public ShaderPrecache (IntPtr handle) : base (handle)
  27. {
  28. OnShaderPrecacheCreated ();
  29. }
  30. [Preserve]
  31. protected ShaderPrecache (UrhoObjectFlag emptyFlag) : base (emptyFlag)
  32. {
  33. OnShaderPrecacheCreated ();
  34. }
  35. [DllImport (Consts.NativeImport, CallingConvention = CallingConvention.Cdecl)]
  36. internal static extern int ShaderPrecache_GetType (IntPtr handle);
  37. private StringHash UrhoGetType ()
  38. {
  39. Runtime.ValidateRefCounted (this);
  40. return new StringHash (ShaderPrecache_GetType (handle));
  41. }
  42. [DllImport (Consts.NativeImport, CallingConvention = CallingConvention.Cdecl)]
  43. internal static extern IntPtr ShaderPrecache_GetTypeName (IntPtr handle);
  44. private string GetTypeName ()
  45. {
  46. Runtime.ValidateRefCounted (this);
  47. return Marshal.PtrToStringAnsi (ShaderPrecache_GetTypeName (handle));
  48. }
  49. [DllImport (Consts.NativeImport, CallingConvention = CallingConvention.Cdecl)]
  50. internal static extern int ShaderPrecache_GetTypeStatic ();
  51. private static StringHash GetTypeStatic ()
  52. {
  53. Runtime.Validate (typeof(ShaderPrecache));
  54. return new StringHash (ShaderPrecache_GetTypeStatic ());
  55. }
  56. [DllImport (Consts.NativeImport, CallingConvention = CallingConvention.Cdecl)]
  57. internal static extern IntPtr ShaderPrecache_GetTypeNameStatic ();
  58. private static string GetTypeNameStatic ()
  59. {
  60. Runtime.Validate (typeof(ShaderPrecache));
  61. return Marshal.PtrToStringAnsi (ShaderPrecache_GetTypeNameStatic ());
  62. }
  63. [DllImport (Consts.NativeImport, CallingConvention = CallingConvention.Cdecl)]
  64. internal static extern IntPtr ShaderPrecache_ShaderPrecache (IntPtr context, string fileName);
  65. [Preserve]
  66. public ShaderPrecache (Context context, string fileName) : base (UrhoObjectFlag.Empty)
  67. {
  68. Runtime.Validate (typeof(ShaderPrecache));
  69. handle = ShaderPrecache_ShaderPrecache ((object)context == null ? IntPtr.Zero : context.Handle, fileName);
  70. Runtime.RegisterObject (this);
  71. OnShaderPrecacheCreated ();
  72. }
  73. [DllImport (Consts.NativeImport, CallingConvention = CallingConvention.Cdecl)]
  74. internal static extern void ShaderPrecache_StoreShaders (IntPtr handle, IntPtr vs, IntPtr ps);
  75. /// <summary>
  76. /// Collect a shader combination. Called by Graphics when shaders have been set.
  77. /// </summary>
  78. public void StoreShaders (ShaderVariation vs, ShaderVariation ps)
  79. {
  80. Runtime.ValidateRefCounted (this);
  81. ShaderPrecache_StoreShaders (handle, (object)vs == null ? IntPtr.Zero : vs.Handle, (object)ps == null ? IntPtr.Zero : ps.Handle);
  82. }
  83. [DllImport (Consts.NativeImport, CallingConvention = CallingConvention.Cdecl)]
  84. internal static extern void ShaderPrecache_LoadShaders_File (IntPtr graphics, IntPtr source);
  85. /// <summary>
  86. /// Load shaders from an XML file.
  87. /// </summary>
  88. public static void LoadShaders (Graphics graphics, File source)
  89. {
  90. Runtime.Validate (typeof(ShaderPrecache));
  91. ShaderPrecache_LoadShaders_File ((object)graphics == null ? IntPtr.Zero : graphics.Handle, (object)source == null ? IntPtr.Zero : source.Handle);
  92. }
  93. [DllImport (Consts.NativeImport, CallingConvention = CallingConvention.Cdecl)]
  94. internal static extern void ShaderPrecache_LoadShaders_MemoryBuffer (IntPtr graphics, IntPtr source);
  95. /// <summary>
  96. /// Load shaders from an XML file.
  97. /// </summary>
  98. public static void LoadShaders (Graphics graphics, MemoryBuffer source)
  99. {
  100. Runtime.Validate (typeof(ShaderPrecache));
  101. ShaderPrecache_LoadShaders_MemoryBuffer ((object)graphics == null ? IntPtr.Zero : graphics.Handle, (object)source == null ? IntPtr.Zero : source.Handle);
  102. }
  103. public override StringHash Type {
  104. get {
  105. return UrhoGetType ();
  106. }
  107. }
  108. public override string TypeName {
  109. get {
  110. return GetTypeName ();
  111. }
  112. }
  113. [Preserve]
  114. public static StringHash TypeStatic {
  115. get {
  116. return GetTypeStatic ();
  117. }
  118. }
  119. public static string TypeNameStatic {
  120. get {
  121. return GetTypeNameStatic ();
  122. }
  123. }
  124. }
  125. }