BsPrerequisites.h 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. #pragma once
  2. #include "CmPrerequisites.h"
  3. #if (CM_PLATFORM == CM_PLATFORM_WIN32) && !defined(__MINGW32__)
  4. # ifdef BS_EXPORTS
  5. # define BS_EXPORT __declspec(dllexport)
  6. # else
  7. # if defined( __MINGW32__ )
  8. # define BS_EXPORT
  9. # else
  10. # define BS_EXPORT __declspec(dllimport)
  11. # endif
  12. # endif
  13. #elif defined ( CM_GCC_VISIBILITY )
  14. # define BS_EXPORT __attribute__ ((visibility("default")))
  15. #else
  16. # define BS_EXPORT
  17. #endif
  18. #include "CmGameObject.h"
  19. #include "BsEnums.h"
  20. namespace BansheeEngine
  21. {
  22. class VirtualButton;
  23. class VirtualInput;
  24. class InputConfiguration;
  25. // GUI
  26. class GUIManager;
  27. class GUIWidget;
  28. class GUIElement;
  29. class GUILabel;
  30. class GUIButton;
  31. class GUITexture;
  32. class GUIToggle;
  33. class GUIInputBox;
  34. class GUIScrollBarHandle;
  35. class GUIScrollBarVert;
  36. class GUIScrollBarHorz;
  37. class GUIScrollArea;
  38. class GUISkin;
  39. struct GUIElementStyle;
  40. class GUIMouseEvent;
  41. class GUITextInputEvent;
  42. class GUICommandEvent;
  43. class GUIVirtualButtonEvent;
  44. class GUIArea;
  45. class GUILayout;
  46. class GUILayoutX;
  47. class GUILayoutY;
  48. class GUIFixedSpace;
  49. class GUIFlexibleSpace;
  50. class GUIInputCaret;
  51. class GUIInputSelection;
  52. struct GUILayoutOptions;
  53. class GUIOptions;
  54. class GUIToggleGroup;
  55. class GUIListBox;
  56. class GUIDropDownDataEntry;
  57. class GUIDropDownBox;
  58. class DragAndDropManager;
  59. class GUIMenu;
  60. class GUIMenuItem;
  61. class GUIContent;
  62. class GUIContextMenu;
  63. class GUIDropDownHitBox;
  64. // 2D
  65. class TextSprite;
  66. class ImageSprite;
  67. class SpriteTexture;
  68. class OverlayManager;
  69. // Components
  70. class Overlay;
  71. class Renderable;
  72. class Camera;
  73. typedef std::shared_ptr<TextSprite> TextSpritePtr;
  74. typedef std::shared_ptr<SpriteTexture> SpriteTexturePtr;
  75. typedef std::shared_ptr<Overlay> OverlayPtr;
  76. typedef std::shared_ptr<Camera> CameraPtr;
  77. typedef std::shared_ptr<Renderable> RenderablePtr;
  78. typedef std::shared_ptr<GUIToggleGroup> GUIToggleGroupPtr;
  79. typedef GameObjectHandle<GUIWidget> HGUIWidget;
  80. typedef GameObjectHandle<Camera> HCamera;
  81. typedef GameObjectHandle<Renderable> HRenderable;
  82. typedef ResourceHandle<SpriteTexture> HSpriteTexture;
  83. enum TypeID_Banshee
  84. {
  85. TID_Camera = 30000,
  86. TID_Renderable = 30001,
  87. TID_SpriteTexture = 30002
  88. };
  89. }