No Description
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

UnityClassRegistration.cpp 16KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386
  1. extern "C" void RegisterStaticallyLinkedModulesGranular()
  2. {
  3. void RegisterModule_SharedInternals();
  4. RegisterModule_SharedInternals();
  5. void RegisterModule_Core();
  6. RegisterModule_Core();
  7. void RegisterModule_AndroidJNI();
  8. RegisterModule_AndroidJNI();
  9. void RegisterModule_Animation();
  10. RegisterModule_Animation();
  11. void RegisterModule_Audio();
  12. RegisterModule_Audio();
  13. void RegisterModule_GraphicsStateCollectionSerializer();
  14. RegisterModule_GraphicsStateCollectionSerializer();
  15. void RegisterModule_HierarchyCore();
  16. RegisterModule_HierarchyCore();
  17. void RegisterModule_IMGUI();
  18. RegisterModule_IMGUI();
  19. void RegisterModule_ImageConversion();
  20. RegisterModule_ImageConversion();
  21. void RegisterModule_Input();
  22. RegisterModule_Input();
  23. void RegisterModule_InputLegacy();
  24. RegisterModule_InputLegacy();
  25. void RegisterModule_InputForUI();
  26. RegisterModule_InputForUI();
  27. void RegisterModule_JSONSerialize();
  28. RegisterModule_JSONSerialize();
  29. void RegisterModule_Physics();
  30. RegisterModule_Physics();
  31. void RegisterModule_Physics2D();
  32. RegisterModule_Physics2D();
  33. void RegisterModule_Properties();
  34. RegisterModule_Properties();
  35. void RegisterModule_RuntimeInitializeOnLoadManagerInitializer();
  36. RegisterModule_RuntimeInitializeOnLoadManagerInitializer();
  37. void RegisterModule_ScreenCapture();
  38. RegisterModule_ScreenCapture();
  39. void RegisterModule_SpriteShape();
  40. RegisterModule_SpriteShape();
  41. void RegisterModule_Subsystems();
  42. RegisterModule_Subsystems();
  43. void RegisterModule_TLS();
  44. RegisterModule_TLS();
  45. void RegisterModule_Terrain();
  46. RegisterModule_Terrain();
  47. void RegisterModule_TextRendering();
  48. RegisterModule_TextRendering();
  49. void RegisterModule_TextCoreFontEngine();
  50. RegisterModule_TextCoreFontEngine();
  51. void RegisterModule_TextCoreTextEngine();
  52. RegisterModule_TextCoreTextEngine();
  53. void RegisterModule_UI();
  54. RegisterModule_UI();
  55. void RegisterModule_UIElements();
  56. RegisterModule_UIElements();
  57. void RegisterModule_UnityAnalyticsCommon();
  58. RegisterModule_UnityAnalyticsCommon();
  59. void RegisterModule_UnityWebRequest();
  60. RegisterModule_UnityWebRequest();
  61. void RegisterModule_VFX();
  62. RegisterModule_VFX();
  63. void RegisterModule_XR();
  64. RegisterModule_XR();
  65. void RegisterModule_VR();
  66. RegisterModule_VR();
  67. }
  68. template <typename T> void RegisterUnityClass(const char*);
  69. template <typename T> void RegisterStrippedType(int, const char*, const char*);
  70. void InvokeRegisterStaticallyLinkedModuleClasses()
  71. {
  72. // Do nothing (we're in stripping mode)
  73. }
  74. class Animator; template <> void RegisterUnityClass<Animator>(const char*);
  75. class AnimatorController; template <> void RegisterUnityClass<AnimatorController>(const char*);
  76. class AnimatorOverrideController; template <> void RegisterUnityClass<AnimatorOverrideController>(const char*);
  77. class RuntimeAnimatorController; template <> void RegisterUnityClass<RuntimeAnimatorController>(const char*);
  78. class AudioBehaviour; template <> void RegisterUnityClass<AudioBehaviour>(const char*);
  79. class AudioClip; template <> void RegisterUnityClass<AudioClip>(const char*);
  80. class AudioListener; template <> void RegisterUnityClass<AudioListener>(const char*);
  81. class AudioManager; template <> void RegisterUnityClass<AudioManager>(const char*);
  82. class AudioResource; template <> void RegisterUnityClass<AudioResource>(const char*);
  83. class BaseVideoTexture; template <> void RegisterUnityClass<BaseVideoTexture>(const char*);
  84. class SampleClip; template <> void RegisterUnityClass<SampleClip>(const char*);
  85. class WebCamTexture; template <> void RegisterUnityClass<WebCamTexture>(const char*);
  86. class Behaviour; template <> void RegisterUnityClass<Behaviour>(const char*);
  87. class BuildSettings; template <> void RegisterUnityClass<BuildSettings>(const char*);
  88. class Camera; template <> void RegisterUnityClass<Camera>(const char*);
  89. namespace Unity { class Component; } template <> void RegisterUnityClass<Unity::Component>(const char*);
  90. class ComputeShader; template <> void RegisterUnityClass<ComputeShader>(const char*);
  91. class Cubemap; template <> void RegisterUnityClass<Cubemap>(const char*);
  92. class CubemapArray; template <> void RegisterUnityClass<CubemapArray>(const char*);
  93. class DelayedCallManager; template <> void RegisterUnityClass<DelayedCallManager>(const char*);
  94. class EditorExtension; template <> void RegisterUnityClass<EditorExtension>(const char*);
  95. class GameManager; template <> void RegisterUnityClass<GameManager>(const char*);
  96. class GameObject; template <> void RegisterUnityClass<GameObject>(const char*);
  97. class GlobalGameManager; template <> void RegisterUnityClass<GlobalGameManager>(const char*);
  98. class GraphicsSettings; template <> void RegisterUnityClass<GraphicsSettings>(const char*);
  99. class InputManager; template <> void RegisterUnityClass<InputManager>(const char*);
  100. class LODGroup; template <> void RegisterUnityClass<LODGroup>(const char*);
  101. class LevelGameManager; template <> void RegisterUnityClass<LevelGameManager>(const char*);
  102. class Light; template <> void RegisterUnityClass<Light>(const char*);
  103. class LightProbeProxyVolume; template <> void RegisterUnityClass<LightProbeProxyVolume>(const char*);
  104. class LightProbes; template <> void RegisterUnityClass<LightProbes>(const char*);
  105. class LightingSettings; template <> void RegisterUnityClass<LightingSettings>(const char*);
  106. class LightmapSettings; template <> void RegisterUnityClass<LightmapSettings>(const char*);
  107. class LowerResBlitTexture; template <> void RegisterUnityClass<LowerResBlitTexture>(const char*);
  108. class Material; template <> void RegisterUnityClass<Material>(const char*);
  109. class Mesh; template <> void RegisterUnityClass<Mesh>(const char*);
  110. class MeshFilter; template <> void RegisterUnityClass<MeshFilter>(const char*);
  111. class MeshRenderer; template <> void RegisterUnityClass<MeshRenderer>(const char*);
  112. class MonoBehaviour; template <> void RegisterUnityClass<MonoBehaviour>(const char*);
  113. class MonoManager; template <> void RegisterUnityClass<MonoManager>(const char*);
  114. class MonoScript; template <> void RegisterUnityClass<MonoScript>(const char*);
  115. class NamedObject; template <> void RegisterUnityClass<NamedObject>(const char*);
  116. class Object; template <> void RegisterUnityClass<Object>(const char*);
  117. class PlayerSettings; template <> void RegisterUnityClass<PlayerSettings>(const char*);
  118. class PreloadData; template <> void RegisterUnityClass<PreloadData>(const char*);
  119. class QualitySettings; template <> void RegisterUnityClass<QualitySettings>(const char*);
  120. class RayTracingShader; template <> void RegisterUnityClass<RayTracingShader>(const char*);
  121. namespace UI { class RectTransform; } template <> void RegisterUnityClass<UI::RectTransform>(const char*);
  122. class ReflectionProbe; template <> void RegisterUnityClass<ReflectionProbe>(const char*);
  123. class RenderSettings; template <> void RegisterUnityClass<RenderSettings>(const char*);
  124. class RenderTexture; template <> void RegisterUnityClass<RenderTexture>(const char*);
  125. class Renderer; template <> void RegisterUnityClass<Renderer>(const char*);
  126. class ResourceManager; template <> void RegisterUnityClass<ResourceManager>(const char*);
  127. class RuntimeInitializeOnLoadManager; template <> void RegisterUnityClass<RuntimeInitializeOnLoadManager>(const char*);
  128. class Shader; template <> void RegisterUnityClass<Shader>(const char*);
  129. class ShaderNameRegistry; template <> void RegisterUnityClass<ShaderNameRegistry>(const char*);
  130. class Skybox; template <> void RegisterUnityClass<Skybox>(const char*);
  131. class SortingGroup; template <> void RegisterUnityClass<SortingGroup>(const char*);
  132. class Sprite; template <> void RegisterUnityClass<Sprite>(const char*);
  133. class SpriteAtlas; template <> void RegisterUnityClass<SpriteAtlas>(const char*);
  134. class SpriteRenderer; template <> void RegisterUnityClass<SpriteRenderer>(const char*);
  135. class TagManager; template <> void RegisterUnityClass<TagManager>(const char*);
  136. class TextAsset; template <> void RegisterUnityClass<TextAsset>(const char*);
  137. class Texture; template <> void RegisterUnityClass<Texture>(const char*);
  138. class Texture2D; template <> void RegisterUnityClass<Texture2D>(const char*);
  139. class Texture2DArray; template <> void RegisterUnityClass<Texture2DArray>(const char*);
  140. class Texture3D; template <> void RegisterUnityClass<Texture3D>(const char*);
  141. class TimeManager; template <> void RegisterUnityClass<TimeManager>(const char*);
  142. class Transform; template <> void RegisterUnityClass<Transform>(const char*);
  143. class Collider; template <> void RegisterUnityClass<Collider>(const char*);
  144. class PhysicsManager; template <> void RegisterUnityClass<PhysicsManager>(const char*);
  145. class Rigidbody; template <> void RegisterUnityClass<Rigidbody>(const char*);
  146. class Collider2D; template <> void RegisterUnityClass<Collider2D>(const char*);
  147. class EdgeCollider2D; template <> void RegisterUnityClass<EdgeCollider2D>(const char*);
  148. class Physics2DSettings; template <> void RegisterUnityClass<Physics2DSettings>(const char*);
  149. class PolygonCollider2D; template <> void RegisterUnityClass<PolygonCollider2D>(const char*);
  150. class Rigidbody2D; template <> void RegisterUnityClass<Rigidbody2D>(const char*);
  151. class SpriteShapeRenderer; template <> void RegisterUnityClass<SpriteShapeRenderer>(const char*);
  152. class Terrain; template <> void RegisterUnityClass<Terrain>(const char*);
  153. class TerrainData; template <> void RegisterUnityClass<TerrainData>(const char*);
  154. namespace TextRendering { class Font; } template <> void RegisterUnityClass<TextRendering::Font>(const char*);
  155. namespace TextRenderingPrivate { class TextMesh; } template <> void RegisterUnityClass<TextRenderingPrivate::TextMesh>(const char*);
  156. namespace UI { class Canvas; } template <> void RegisterUnityClass<UI::Canvas>(const char*);
  157. namespace UI { class CanvasGroup; } template <> void RegisterUnityClass<UI::CanvasGroup>(const char*);
  158. namespace UI { class CanvasRenderer; } template <> void RegisterUnityClass<UI::CanvasRenderer>(const char*);
  159. class UIRenderer; template <> void RegisterUnityClass<UIRenderer>(const char*);
  160. class VFXManager; template <> void RegisterUnityClass<VFXManager>(const char*);
  161. class VisualEffect; template <> void RegisterUnityClass<VisualEffect>(const char*);
  162. class VisualEffectAsset; template <> void RegisterUnityClass<VisualEffectAsset>(const char*);
  163. class VisualEffectObject; template <> void RegisterUnityClass<VisualEffectObject>(const char*);
  164. void RegisterAllClasses()
  165. {
  166. void RegisterBuiltinTypes();
  167. RegisterBuiltinTypes();
  168. //Total: 90 non stripped classes
  169. //0. Animator
  170. RegisterUnityClass<Animator>("Animation");
  171. //1. AnimatorController
  172. RegisterUnityClass<AnimatorController>("Animation");
  173. //2. AnimatorOverrideController
  174. RegisterUnityClass<AnimatorOverrideController>("Animation");
  175. //3. RuntimeAnimatorController
  176. RegisterUnityClass<RuntimeAnimatorController>("Animation");
  177. //4. AudioBehaviour
  178. RegisterUnityClass<AudioBehaviour>("Audio");
  179. //5. AudioClip
  180. RegisterUnityClass<AudioClip>("Audio");
  181. //6. AudioListener
  182. RegisterUnityClass<AudioListener>("Audio");
  183. //7. AudioManager
  184. RegisterUnityClass<AudioManager>("Audio");
  185. //8. AudioResource
  186. RegisterUnityClass<AudioResource>("Audio");
  187. //9. BaseVideoTexture
  188. RegisterUnityClass<BaseVideoTexture>("Audio");
  189. //10. SampleClip
  190. RegisterUnityClass<SampleClip>("Audio");
  191. //11. WebCamTexture
  192. RegisterUnityClass<WebCamTexture>("Audio");
  193. //12. Behaviour
  194. RegisterUnityClass<Behaviour>("Core");
  195. //13. BuildSettings
  196. RegisterUnityClass<BuildSettings>("Core");
  197. //14. Camera
  198. RegisterUnityClass<Camera>("Core");
  199. //15. Component
  200. RegisterUnityClass<Unity::Component>("Core");
  201. //16. ComputeShader
  202. RegisterUnityClass<ComputeShader>("Core");
  203. //17. Cubemap
  204. RegisterUnityClass<Cubemap>("Core");
  205. //18. CubemapArray
  206. RegisterUnityClass<CubemapArray>("Core");
  207. //19. DelayedCallManager
  208. RegisterUnityClass<DelayedCallManager>("Core");
  209. //20. EditorExtension
  210. RegisterUnityClass<EditorExtension>("Core");
  211. //21. GameManager
  212. RegisterUnityClass<GameManager>("Core");
  213. //22. GameObject
  214. RegisterUnityClass<GameObject>("Core");
  215. //23. GlobalGameManager
  216. RegisterUnityClass<GlobalGameManager>("Core");
  217. //24. GraphicsSettings
  218. RegisterUnityClass<GraphicsSettings>("Core");
  219. //25. InputManager
  220. RegisterUnityClass<InputManager>("Core");
  221. //26. LODGroup
  222. RegisterUnityClass<LODGroup>("Core");
  223. //27. LevelGameManager
  224. RegisterUnityClass<LevelGameManager>("Core");
  225. //28. Light
  226. RegisterUnityClass<Light>("Core");
  227. //29. LightProbeProxyVolume
  228. RegisterUnityClass<LightProbeProxyVolume>("Core");
  229. //30. LightProbes
  230. RegisterUnityClass<LightProbes>("Core");
  231. //31. LightingSettings
  232. RegisterUnityClass<LightingSettings>("Core");
  233. //32. LightmapSettings
  234. RegisterUnityClass<LightmapSettings>("Core");
  235. //33. LowerResBlitTexture
  236. RegisterUnityClass<LowerResBlitTexture>("Core");
  237. //34. Material
  238. RegisterUnityClass<Material>("Core");
  239. //35. Mesh
  240. RegisterUnityClass<Mesh>("Core");
  241. //36. MeshFilter
  242. RegisterUnityClass<MeshFilter>("Core");
  243. //37. MeshRenderer
  244. RegisterUnityClass<MeshRenderer>("Core");
  245. //38. MonoBehaviour
  246. RegisterUnityClass<MonoBehaviour>("Core");
  247. //39. MonoManager
  248. RegisterUnityClass<MonoManager>("Core");
  249. //40. MonoScript
  250. RegisterUnityClass<MonoScript>("Core");
  251. //41. NamedObject
  252. RegisterUnityClass<NamedObject>("Core");
  253. //42. Object
  254. //Skipping Object
  255. //43. PlayerSettings
  256. RegisterUnityClass<PlayerSettings>("Core");
  257. //44. PreloadData
  258. RegisterUnityClass<PreloadData>("Core");
  259. //45. QualitySettings
  260. RegisterUnityClass<QualitySettings>("Core");
  261. //46. RayTracingShader
  262. RegisterUnityClass<RayTracingShader>("Core");
  263. //47. RectTransform
  264. RegisterUnityClass<UI::RectTransform>("Core");
  265. //48. ReflectionProbe
  266. RegisterUnityClass<ReflectionProbe>("Core");
  267. //49. RenderSettings
  268. RegisterUnityClass<RenderSettings>("Core");
  269. //50. RenderTexture
  270. RegisterUnityClass<RenderTexture>("Core");
  271. //51. Renderer
  272. RegisterUnityClass<Renderer>("Core");
  273. //52. ResourceManager
  274. RegisterUnityClass<ResourceManager>("Core");
  275. //53. RuntimeInitializeOnLoadManager
  276. RegisterUnityClass<RuntimeInitializeOnLoadManager>("Core");
  277. //54. Shader
  278. RegisterUnityClass<Shader>("Core");
  279. //55. ShaderNameRegistry
  280. RegisterUnityClass<ShaderNameRegistry>("Core");
  281. //56. Skybox
  282. RegisterUnityClass<Skybox>("Core");
  283. //57. SortingGroup
  284. RegisterUnityClass<SortingGroup>("Core");
  285. //58. Sprite
  286. RegisterUnityClass<Sprite>("Core");
  287. //59. SpriteAtlas
  288. RegisterUnityClass<SpriteAtlas>("Core");
  289. //60. SpriteRenderer
  290. RegisterUnityClass<SpriteRenderer>("Core");
  291. //61. TagManager
  292. RegisterUnityClass<TagManager>("Core");
  293. //62. TextAsset
  294. RegisterUnityClass<TextAsset>("Core");
  295. //63. Texture
  296. RegisterUnityClass<Texture>("Core");
  297. //64. Texture2D
  298. RegisterUnityClass<Texture2D>("Core");
  299. //65. Texture2DArray
  300. RegisterUnityClass<Texture2DArray>("Core");
  301. //66. Texture3D
  302. RegisterUnityClass<Texture3D>("Core");
  303. //67. TimeManager
  304. RegisterUnityClass<TimeManager>("Core");
  305. //68. Transform
  306. RegisterUnityClass<Transform>("Core");
  307. //69. Collider
  308. RegisterUnityClass<Collider>("Physics");
  309. //70. PhysicsManager
  310. RegisterUnityClass<PhysicsManager>("Physics");
  311. //71. Rigidbody
  312. RegisterUnityClass<Rigidbody>("Physics");
  313. //72. Collider2D
  314. RegisterUnityClass<Collider2D>("Physics2D");
  315. //73. EdgeCollider2D
  316. RegisterUnityClass<EdgeCollider2D>("Physics2D");
  317. //74. Physics2DSettings
  318. RegisterUnityClass<Physics2DSettings>("Physics2D");
  319. //75. PolygonCollider2D
  320. RegisterUnityClass<PolygonCollider2D>("Physics2D");
  321. //76. Rigidbody2D
  322. RegisterUnityClass<Rigidbody2D>("Physics2D");
  323. //77. SpriteShapeRenderer
  324. RegisterUnityClass<SpriteShapeRenderer>("SpriteShape");
  325. //78. Terrain
  326. RegisterUnityClass<Terrain>("Terrain");
  327. //79. TerrainData
  328. RegisterUnityClass<TerrainData>("Terrain");
  329. //80. Font
  330. RegisterUnityClass<TextRendering::Font>("TextRendering");
  331. //81. TextMesh
  332. RegisterUnityClass<TextRenderingPrivate::TextMesh>("TextRendering");
  333. //82. Canvas
  334. RegisterUnityClass<UI::Canvas>("UI");
  335. //83. CanvasGroup
  336. RegisterUnityClass<UI::CanvasGroup>("UI");
  337. //84. CanvasRenderer
  338. RegisterUnityClass<UI::CanvasRenderer>("UI");
  339. //85. UIRenderer
  340. RegisterUnityClass<UIRenderer>("UIElements");
  341. //86. VFXManager
  342. RegisterUnityClass<VFXManager>("VFX");
  343. //87. VisualEffect
  344. RegisterUnityClass<VisualEffect>("VFX");
  345. //88. VisualEffectAsset
  346. RegisterUnityClass<VisualEffectAsset>("VFX");
  347. //89. VisualEffectObject
  348. RegisterUnityClass<VisualEffectObject>("VFX");
  349. }