vrecko
virtual reality framework
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
SP_ObjectInterface.h
Go to the documentation of this file.
1 
2 #ifndef SP_OBJECTINTERFACE_H
3 #define SP_OBJECTINTERFACE_H
4 
5 #include <vrecko/Export>
6 
7 #include <osg/Vec3>
8 #include <stddef.h> // only for NULL definition
9 #include <vrecko/SP_CommonDefs.h>
10 
11 namespace vrecko {
12 
14 public:
17 
18  virtual bool isHierarchyCreated() { return false; }
19 
20 protected:
21 };
22 
24 public:
27 
29  inline int getId() { return objIntId; };
30  // usually one of the SP_OBJECT_INTERFACE_ID__* constants
31 
40  virtual bool getCollisions(CollisionParams * params, COLLISION_POINTS_VECTOR ** colPoints, unsigned long obj1ID, unsigned long obj2ID, float time) { return false; }
41 
42 // virtual bool getCollision(SP_Object_DataInterface& object_data1, SP_Object_DataInterface& object_data2) {return false;}
43 // virtual bool getRayIntersection(SP_Object_DataInterface& object_data, osg::Vec3& intersection_point) {return false;}
44 // virtual bool getSeparation(SP_Object_DataInterface& object_data1, SP_Object_DataInterface& object_data2, double& sep_distance, osg::Vec3* point_on_object1 = NULL, osg::Vec3* point_on_object2 = NULL) {return false;}
45 // virtual bool getExtentInAxis(SP_Object_DataInterface& object_data, osg::Vec3 axis) {return false;}
46 
47 protected:
48  int objIntId;
49 };
50 
51 }
52 
53 #endif
54