CmFwdDeclUtil.h 953 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. #pragma once
  2. namespace CamelotEngine {
  3. // Pre-declare classes
  4. // Allows use of pointers in header files without including individual .h
  5. // so decreases dependencies between files
  6. class Angle;
  7. class AxisAlignedBox;
  8. class Degree;
  9. class Math;
  10. class Matrix3;
  11. class Matrix4;
  12. class Plane;
  13. class Quaternion;
  14. class Radian;
  15. class Ray;
  16. class Sphere;
  17. class Vector2;
  18. class Vector3;
  19. class Vector4;
  20. class Color;
  21. class DynLib;
  22. class DynLibManager;
  23. class DataStream;
  24. class MemoryDataStream;
  25. class FileDataStream;
  26. class TextureData;
  27. class FileSystem;
  28. // Reflection
  29. class IReflectable;
  30. class RTTITypeBase;
  31. // Serialization
  32. class ISerializable;
  33. class SerializableType;
  34. typedef std::shared_ptr<DataStream> DataStreamPtr;
  35. typedef std::shared_ptr<MemoryDataStream> MemoryDataStreamPtr;
  36. typedef std::shared_ptr<FileDataStream> FileDataStreamPtr;
  37. typedef std::shared_ptr<TextureData> TextureDataPtr;
  38. }