All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
CollisionBvhFactory.h
1 // Copyright eeGeo Ltd (2012-2014), All Rights Reserved
2 
3 #pragma once
4 
5 #include "Types.h"
6 #include "Collision.h"
7 #include "ICollisionBvhFactory.h"
8 #include "Space.h"
9 
10 namespace Eegeo
11 {
12  namespace Collision
13  {
15  {
16  public:
17  CollisionBvhFactory(CollisionGroup::Type collisionGroup);
18 
20  CollisionGroup::Type collisionGroup,
21  bool counterClockwiseWinding
22  );
23 
24  virtual CollisionBvh* Create(const dv3& ecefOrigin,
25  const ReaderCollisionResult& readerCollisionResult,
26  const ReaderMeshResults& readerMeshResults);
27  protected:
28 
29  virtual CollisionBvh* Create(const dv3& ecefOrigin,
30  const ReaderCollisionResult& readerCollisionResult,
31  const CollisionMaterialTable* pMaterialTable);
32 
33  private:
34  CollisionGroup::Type m_collisionGroup;
35  bool m_counterClockwiseWinding;
36 
37  };
38 
39  }
40 }