interop.h 598 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. //
  2. // Struct defines that we use to cast blittable classes,
  3. // so that the C++ compiler will return a value that our P/Invoke
  4. // layer can consume
  5. //
  6. #ifndef URHO_INTEROP_H
  7. #define URHO_INTEROP_H
  8. namespace Interop {
  9. struct IntVector2 {
  10. int a, b;
  11. };
  12. struct Vector2 {
  13. float x, y;
  14. };
  15. struct Vector3 {
  16. float x, y, z;
  17. };
  18. struct Vector4 {
  19. float x, y, z, w;
  20. };
  21. struct Quaternion {
  22. float w, x, y, z;
  23. };
  24. struct Color {
  25. float r, g, b, a;
  26. };
  27. struct BoundingBox {
  28. Vector3 min, max;
  29. bool defined;
  30. };
  31. struct Plane {
  32. Vector3 normal, absNormal;
  33. float d;
  34. };
  35. }
  36. #endif