vrecko
virtual reality framework
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
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
13
class
SP_Object_DataInterface
{
14
public
:
15
SP_Object_DataInterface
() {};
16
~SP_Object_DataInterface
() {};
17
18
virtual
bool
isHierarchyCreated
() {
return
false
; }
19
20
protected
:
21
};
22
23
class
SP_ObjectInterface
{
24
public
:
25
SP_ObjectInterface
() {};
26
~SP_ObjectInterface
() {};
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
include
vrecko
SP_ObjectInterface.h
Generated on Tue Feb 19 2013 10:23:41 for vrecko by
1.8.3.1