TIQuery.h 1.1 KB

123456789101112131415161718192021222324252627282930313233
  1. // David Eberly, Geometric Tools, Redmond WA 98052
  2. // Copyright (c) 1998-2020
  3. // Distributed under the Boost Software License, Version 1.0.
  4. // https://www.boost.org/LICENSE_1_0.txt
  5. // https://www.geometrictools.com/License/Boost/LICENSE_1_0.txt
  6. // Version: 4.0.2019.08.13
  7. #pragma once
  8. #include <Mathematics/Math.h>
  9. namespace WwiseGTE
  10. {
  11. // Test-intersection queries.
  12. template <typename Real, typename Type0, typename Type1>
  13. class TIQuery
  14. {
  15. public:
  16. struct Result
  17. {
  18. // A TIQuery-base class B must define a B::Result struct with
  19. // member 'bool intersect'. A TIQuery-derived class D must also
  20. // derive a D::Result from B:Result but may have no members. The
  21. // member 'intersect' is 'true' iff the primitives intersect. The
  22. // operator() is const for conceptual constness, but derived
  23. // classes can use internal data to support the queries and tag
  24. // that data with the mutable modifier.
  25. };
  26. Result operator()(Type0 const& primitive0, Type1 const& primitive1) const;
  27. };
  28. }