Component.cs 1.1 KB

1234567891011121314151617181920212223242526272829303132
  1. using System;
  2. using System.Runtime.CompilerServices;
  3. namespace BansheeEngine
  4. {
  5. public class Component : GameObject
  6. {
  7. // Internal use only
  8. protected Component()
  9. { }
  10. public SceneObject SceneObject
  11. {
  12. get { return Internal_GetSceneObject(mCachedPtr); }
  13. }
  14. [MethodImpl(MethodImplOptions.InternalCall)]
  15. internal static extern Component Internal_AddComponent(SceneObject parent, Type type);
  16. [MethodImpl(MethodImplOptions.InternalCall)]
  17. internal static extern Component Internal_GetComponent(SceneObject parent, Type type);
  18. [MethodImpl(MethodImplOptions.InternalCall)]
  19. internal static extern Component[] Internal_GetComponents(SceneObject parent);
  20. [MethodImpl(MethodImplOptions.InternalCall)]
  21. internal static extern Component Internal_RemoveComponent(SceneObject parent, Type type);
  22. [MethodImpl(MethodImplOptions.InternalCall)]
  23. internal static extern SceneObject Internal_GetSceneObject(IntPtr nativeInstance);
  24. }
  25. }