TypeDeclarations.cpp 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. // Jolt Physics Library (https://github.com/jrouwe/JoltPhysics)
  2. // SPDX-FileCopyrightText: 2021 Jorrit Rouwe
  3. // SPDX-License-Identifier: MIT
  4. #include <Jolt/Jolt.h>
  5. #include <Jolt/ObjectStream/TypeDeclarations.h>
  6. JPH_NAMESPACE_BEGIN
  7. JPH_IMPLEMENT_RTTI_OUTSIDE_CLASS(uint8) { }
  8. JPH_IMPLEMENT_RTTI_OUTSIDE_CLASS(uint16) { }
  9. JPH_IMPLEMENT_RTTI_OUTSIDE_CLASS(int) { }
  10. JPH_IMPLEMENT_RTTI_OUTSIDE_CLASS(uint32) { }
  11. JPH_IMPLEMENT_RTTI_OUTSIDE_CLASS(uint64) { }
  12. JPH_IMPLEMENT_RTTI_OUTSIDE_CLASS(float) { }
  13. JPH_IMPLEMENT_RTTI_OUTSIDE_CLASS(double) { }
  14. JPH_IMPLEMENT_RTTI_OUTSIDE_CLASS(bool) { }
  15. JPH_IMPLEMENT_RTTI_OUTSIDE_CLASS(String) { }
  16. JPH_IMPLEMENT_RTTI_OUTSIDE_CLASS(Float3) { }
  17. JPH_IMPLEMENT_RTTI_OUTSIDE_CLASS(Float4) { }
  18. JPH_IMPLEMENT_RTTI_OUTSIDE_CLASS(Double3) { }
  19. JPH_IMPLEMENT_RTTI_OUTSIDE_CLASS(Vec3) { }
  20. JPH_IMPLEMENT_RTTI_OUTSIDE_CLASS(DVec3) { }
  21. JPH_IMPLEMENT_RTTI_OUTSIDE_CLASS(Vec4) { }
  22. JPH_IMPLEMENT_RTTI_OUTSIDE_CLASS(UVec4) { }
  23. JPH_IMPLEMENT_RTTI_OUTSIDE_CLASS(Quat) { }
  24. JPH_IMPLEMENT_RTTI_OUTSIDE_CLASS(Mat44) { }
  25. JPH_IMPLEMENT_RTTI_OUTSIDE_CLASS(DMat44) { }
  26. JPH_IMPLEMENT_SERIALIZABLE_OUTSIDE_CLASS(Color)
  27. {
  28. JPH_ADD_ATTRIBUTE(Color, r)
  29. JPH_ADD_ATTRIBUTE(Color, g)
  30. JPH_ADD_ATTRIBUTE(Color, b)
  31. JPH_ADD_ATTRIBUTE(Color, a)
  32. }
  33. JPH_IMPLEMENT_SERIALIZABLE_OUTSIDE_CLASS(AABox)
  34. {
  35. JPH_ADD_ATTRIBUTE(AABox, mMin)
  36. JPH_ADD_ATTRIBUTE(AABox, mMax)
  37. }
  38. JPH_IMPLEMENT_SERIALIZABLE_OUTSIDE_CLASS(Triangle)
  39. {
  40. JPH_ADD_ATTRIBUTE(Triangle, mV)
  41. JPH_ADD_ATTRIBUTE(Triangle, mMaterialIndex)
  42. JPH_ADD_ATTRIBUTE(Triangle, mUserData)
  43. }
  44. JPH_IMPLEMENT_SERIALIZABLE_OUTSIDE_CLASS(IndexedTriangleNoMaterial)
  45. {
  46. JPH_ADD_ATTRIBUTE(IndexedTriangleNoMaterial, mIdx)
  47. }
  48. JPH_IMPLEMENT_SERIALIZABLE_OUTSIDE_CLASS(IndexedTriangle)
  49. {
  50. JPH_ADD_BASE_CLASS(IndexedTriangle, IndexedTriangleNoMaterial)
  51. JPH_ADD_ATTRIBUTE(IndexedTriangle, mMaterialIndex)
  52. JPH_ADD_ATTRIBUTE(IndexedTriangle, mUserData)
  53. }
  54. JPH_IMPLEMENT_SERIALIZABLE_OUTSIDE_CLASS(Plane)
  55. {
  56. JPH_ADD_ATTRIBUTE(Plane, mNormalAndConstant)
  57. }
  58. JPH_NAMESPACE_END