BsScriptImportOptions.h 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107
  1. #pragma once
  2. #include "BsScriptEditorPrerequisites.h"
  3. #include "BsScriptObject.h"
  4. #include "BsPixelData.h"
  5. #include "BsGpuProgram.h"
  6. namespace BansheeEngine
  7. {
  8. class BS_SCR_BED_EXPORT ScriptImportOptionsBase : public ScriptObjectBase
  9. {
  10. public:
  11. SPtr<ImportOptions> getImportOptions() const { return mImportOptions; }
  12. protected:
  13. ScriptImportOptionsBase(MonoObject* instance);
  14. virtual ~ScriptImportOptionsBase() {}
  15. SPtr<ImportOptions> mImportOptions;
  16. };
  17. class BS_SCR_BED_EXPORT ScriptImportOptions : public ScriptObject <ScriptImportOptions, ScriptImportOptionsBase>
  18. {
  19. public:
  20. static String getAssemblyName() { return BansheeEditorAssemblyName; }
  21. static String getNamespace() { return "BansheeEditor"; }
  22. static String getTypeName() { return "ImportOptions"; }
  23. static void initRuntimeData() { }
  24. static MonoObject* create(const SPtr<ImportOptions>& importOptions);
  25. private:
  26. ScriptImportOptions(MonoObject* instance)
  27. :ScriptObject(instance)
  28. { }
  29. };
  30. class BS_SCR_BED_EXPORT ScriptTextureImportOptions : public ScriptObject<ScriptTextureImportOptions, ScriptImportOptionsBase>
  31. {
  32. public:
  33. SCRIPT_OBJ(BansheeEditorAssemblyName, "BansheeEditor", "TextureImportOptions")
  34. static MonoObject* create();
  35. static MonoObject* create(const SPtr<TextureImportOptions>& options);
  36. private:
  37. SPtr<TextureImportOptions> getTexImportOptions();
  38. static void internal_CreateInstance(MonoObject* instance);
  39. static PixelFormat internal_GetPixelFormat(ScriptTextureImportOptions* thisPtr);
  40. static void internal_SetPixelFormat(ScriptTextureImportOptions* thisPtr, PixelFormat value);
  41. static bool internal_GetGenerateMipmaps(ScriptTextureImportOptions* thisPtr);
  42. static void internal_SetGenerateMipmaps(ScriptTextureImportOptions* thisPtr, bool value);
  43. static UINT32 internal_GetMaxMipmapLevel(ScriptTextureImportOptions* thisPtr);
  44. static void internal_SetMaxMipmapLevel(ScriptTextureImportOptions* thisPtr, UINT32 value);
  45. ScriptTextureImportOptions(MonoObject* instance);
  46. };
  47. class BS_SCR_BED_EXPORT ScriptFontImportOptions : public ScriptObject <ScriptFontImportOptions, ScriptImportOptionsBase>
  48. {
  49. public:
  50. SCRIPT_OBJ(BansheeEditorAssemblyName, "BansheeEditor", "FontImportOptions")
  51. static MonoObject* create();
  52. static MonoObject* create(const SPtr<FontImportOptions>& options);
  53. private:
  54. SPtr<FontImportOptions> getFontImportOptions();
  55. static void internal_CreateInstance(MonoObject* instance);
  56. static MonoArray* internal_GetFontSizes(ScriptFontImportOptions* thisPtr);
  57. static void internal_SetFontSizes(ScriptFontImportOptions* thisPtr, MonoArray* value);
  58. static UINT32 internal_GetDPI(ScriptFontImportOptions* thisPtr);
  59. static void internal_SetDPI(ScriptFontImportOptions* thisPtr, UINT32 value);
  60. static bool internal_GetAntialiasing(ScriptFontImportOptions* thisPtr);
  61. static void internal_SetAntialiasing(ScriptFontImportOptions* thisPtr, bool value);
  62. static MonoArray* internal_GetCharRanges(ScriptFontImportOptions* thisPtr);
  63. static void internal_SetCharRanges(ScriptFontImportOptions* thisPtr, MonoArray* value);
  64. ScriptFontImportOptions(MonoObject* instance);
  65. };
  66. class BS_SCR_BED_EXPORT ScriptGpuProgramImportOptions : public ScriptObject <ScriptGpuProgramImportOptions, ScriptImportOptionsBase>
  67. {
  68. public:
  69. SCRIPT_OBJ(BansheeEditorAssemblyName, "BansheeEditor", "GpuProgramImportOptions")
  70. static MonoObject* create();
  71. static MonoObject* create(const SPtr<GpuProgramImportOptions>& options);
  72. private:
  73. SPtr<GpuProgramImportOptions> getGpuProgImportOptions();
  74. static void internal_CreateInstance(MonoObject* instance);
  75. static MonoString* internal_GetEntryPoint(ScriptGpuProgramImportOptions* thisPtr);
  76. static void internal_SetEntryPoint(ScriptGpuProgramImportOptions* thisPtr, MonoString* value);
  77. static GpuLanguage internal_GetLanguage(ScriptGpuProgramImportOptions* thisPtr);
  78. static void internal_SetLanguage(ScriptGpuProgramImportOptions* thisPtr, GpuLanguage value);
  79. static GpuProgramProfile internal_GetProfile(ScriptGpuProgramImportOptions* thisPtr);
  80. static void internal_SetProfile(ScriptGpuProgramImportOptions* thisPtr, GpuProgramProfile value);
  81. static GpuProgramType internal_GetType(ScriptGpuProgramImportOptions* thisPtr);
  82. static void internal_SetType(ScriptGpuProgramImportOptions* thisPtr, GpuProgramType value);
  83. ScriptGpuProgramImportOptions(MonoObject* instance);
  84. };
  85. }