HoverRace  2.0
Classes | Typedefs | Functions | Variables
HoverRace::Model Namespace Reference

Classes

class  CheckPoint
 
class  ContactEffect
 Base class for all contact effects. More...
 
struct  ContactSpec
 
class  Cylinder
 
class  CylinderShape
 
class  Element
 Represents all objects (wall, floor, ceiling, etc.) that can be found in a maze. More...
 
struct  ElementNetState
 
class  ElemHeap
 A managed pile of FreeElement instances. More...
 
class  FreeElement
 
class  FuelGain
 
class  GameOptions
 
class  GameSession
 
class  InertialMoment
 
class  Level
 
class  LineSegmentShape
 
class  LostOfControl
 
class  ObstacleCollisionReport
 
class  PhysicalCollision
 
class  PolygonShape
 
class  PowerUpEffect
 
struct  RoomContactSpec
 
struct  SectionId
 
class  ShapeInterface
 
class  SpeedDoubler
 
class  SurfaceElement
 
class  Track
 A track level. More...
 
class  TrackEntry
 The metadata for a track. More...
 
class  TrackFormatExn
 Exception thrown when a track could not be loaded. More...
 
class  TrackList
 Sorted list of track headers. More...
 

Typedefs

using ContactEffectList = std::vector< ContactEffect * >
 
typedef BOOL(* MR_ActorActorContactFunc) (const ShapeInterface *pActor0, const ShapeInterface *pActor1, ContactSpec &pAnswer)
 
typedef BOOL(* MR_ActorActorLongitudeFunc) (const ShapeInterface *pActor0, const ShapeInterface *pActor1, MR_Angle &pLongitude)
 

Functions

BOOL DetectActorContact (const ShapeInterface *pActor, const ShapeInterface *pObstacle, ContactSpec &pAnswer)
 
BOOL DetectFeatureContact (const ShapeInterface *pActor, const PolygonShape *pFeature, ContactSpec &pAnswer)
 
void DetectRoomContact (const ShapeInterface *pActor, const PolygonShape *pRoom, RoomContactSpec &pAnswer)
 
BOOL GetActorForceLongitude (const ShapeInterface *pActor, const ShapeInterface *pObstacle, MR_Angle &pLongitude)
 
BOOL GetFeatureForceLongitude (const ShapeInterface *pActor, const PolygonShape *pFeature, MR_Angle &pLongitude)
 
BOOL GetPolygonInclusion (const PolygonShape &pPolygon, const MR_2DCoordinate &pPosition)
 
BOOL GetWallForceLongitude (const ShapeInterface *, const PolygonShape *pRoom, int pWallIndex, MR_Angle &pLongitude)
 
static void MR_AddContactWall (int pWallIndex, RoomContactSpec &pAnswer)
 
static BOOL MR_AreLineCrossing (MR_Int32 pAX0, MR_Int32 pAY0, MR_Int32 pAX1, MR_Int32 pAY1, MR_Int32 pBX0, MR_Int32 pBY0, MR_Int32 pBX1, MR_Int32 pBY1)
 
static BOOL MR_CylinderCylinderContact (const CylinderShape *pActor0, const CylinderShape *pActor1, ContactSpec &pAnswer)
 
static BOOL MR_CylinderLineContact (const CylinderShape *pActor0, const LineSegmentShape *pActor1, ContactSpec &pAnswer)
 
static BOOL MR_CylinderPolygonContact (const CylinderShape *pActor0, const PolygonShape *pActor1, ContactSpec &pAnswer)
 
static void MR_CylinderRoomContact (const CylinderShape *pActor, const PolygonShape *pRoom, RoomContactSpec &pAnswer)
 
static BOOL MR_Is1Outside0 (const PolygonShape *pActor0, const PolygonShape *pActor1)
 
static BOOL MR_IsOnLeft (const MR_2DCoordinate &pPointToCheck, const MR_2DCoordinate &pVectorOrigin, const MR_2DCoordinate &pVectorDest)
 
static BOOL MR_LineCylinderContact (const LineSegmentShape *pActor0, const CylinderShape *pActor1, ContactSpec &pAnswer)
 
static BOOL MR_LineLineContact (const LineSegmentShape *pActor0, const LineSegmentShape *pActor1, ContactSpec &pAnswer)
 
static BOOL MR_LinePolygonContact (const LineSegmentShape *pActor0, const PolygonShape *pActor1, ContactSpec &pAnswer)
 
static void MR_LineRoomContact (const LineSegmentShape *pActor, const PolygonShape *pRoom, RoomContactSpec &pAnswer)
 
static BOOL MR_PolygonCylinderContact (const PolygonShape *pActor0, const CylinderShape *pActor1, ContactSpec &pAnswer)
 
static BOOL MR_PolygonLineContact (const PolygonShape *pActor0, const LineSegmentShape *pActor1, ContactSpec &pAnswer)
 
static BOOL MR_PolygonPolygonContact (const PolygonShape *pActor0, const PolygonShape *pActor1, ContactSpec &pAnswer)
 
static void MR_PolygonRoomContact (const PolygonShape *pActor, const PolygonShape *pRoom, RoomContactSpec &pAnswer)
 
static BOOL MR_TestBoundingBox (const ShapeInterface *pActor0, const ShapeInterface *pActor1)
 
static BOOL MR_TestLevelShape (const ShapeInterface *pActor0, const ShapeInterface *pActor1, ContactSpec &pAnswer)
 

Variables

static const MR_ActorActorContactFunc MR_ActorActorContactMatrix [3][3]
 

Typedef Documentation

using HoverRace::Model::ContactEffectList = typedef std::vector<ContactEffect*>
typedef BOOL(* HoverRace::Model::MR_ActorActorContactFunc) (const ShapeInterface *pActor0, const ShapeInterface *pActor1, ContactSpec &pAnswer)
typedef BOOL(* HoverRace::Model::MR_ActorActorLongitudeFunc) (const ShapeInterface *pActor0, const ShapeInterface *pActor1, MR_Angle &pLongitude)

Function Documentation

BOOL MR_DllDeclare HoverRace::Model::DetectActorContact ( const ShapeInterface pActor,
const ShapeInterface pObstacle,
ContactSpec pAnswer 
)
BOOL MR_DllDeclare HoverRace::Model::DetectFeatureContact ( const ShapeInterface pActor,
const PolygonShape pFeature,
ContactSpec pAnswer 
)
void MR_DllDeclare HoverRace::Model::DetectRoomContact ( const ShapeInterface pActor,
const PolygonShape pRoom,
RoomContactSpec pAnswer 
)
BOOL MR_DllDeclare HoverRace::Model::GetActorForceLongitude ( const ShapeInterface pActor,
const ShapeInterface pObstacle,
MR_Angle pLongitude 
)
BOOL MR_DllDeclare HoverRace::Model::GetFeatureForceLongitude ( const ShapeInterface pActor,
const PolygonShape pFeature,
MR_Angle pLongitude 
)
BOOL MR_DllDeclare HoverRace::Model::GetPolygonInclusion ( const PolygonShape pPolygon,
const MR_2DCoordinate pPosition 
)
BOOL MR_DllDeclare HoverRace::Model::GetWallForceLongitude ( const ShapeInterface ,
const PolygonShape pRoom,
int  pWallIndex,
MR_Angle pLongitude 
)
void HoverRace::Model::MR_AddContactWall ( int  pWallIndex,
RoomContactSpec pAnswer 
)
static
BOOL HoverRace::Model::MR_AreLineCrossing ( MR_Int32  pAX0,
MR_Int32  pAY0,
MR_Int32  pAX1,
MR_Int32  pAY1,
MR_Int32  pBX0,
MR_Int32  pBY0,
MR_Int32  pBX1,
MR_Int32  pBY1 
)
static
BOOL HoverRace::Model::MR_CylinderCylinderContact ( const CylinderShape pActor0,
const CylinderShape pActor1,
ContactSpec pAnswer 
)
static
BOOL HoverRace::Model::MR_CylinderLineContact ( const CylinderShape pActor0,
const LineSegmentShape pActor1,
ContactSpec pAnswer 
)
static
BOOL HoverRace::Model::MR_CylinderPolygonContact ( const CylinderShape pActor0,
const PolygonShape pActor1,
ContactSpec pAnswer 
)
static
void HoverRace::Model::MR_CylinderRoomContact ( const CylinderShape pActor,
const PolygonShape pRoom,
RoomContactSpec pAnswer 
)
static
BOOL HoverRace::Model::MR_Is1Outside0 ( const PolygonShape pActor0,
const PolygonShape pActor1 
)
static
BOOL HoverRace::Model::MR_IsOnLeft ( const MR_2DCoordinate pPointToCheck,
const MR_2DCoordinate pVectorOrigin,
const MR_2DCoordinate pVectorDest 
)
static
BOOL HoverRace::Model::MR_LineCylinderContact ( const LineSegmentShape pActor0,
const CylinderShape pActor1,
ContactSpec pAnswer 
)
static
BOOL HoverRace::Model::MR_LineLineContact ( const LineSegmentShape pActor0,
const LineSegmentShape pActor1,
ContactSpec pAnswer 
)
static
BOOL HoverRace::Model::MR_LinePolygonContact ( const LineSegmentShape pActor0,
const PolygonShape pActor1,
ContactSpec pAnswer 
)
static
void HoverRace::Model::MR_LineRoomContact ( const LineSegmentShape pActor,
const PolygonShape pRoom,
RoomContactSpec pAnswer 
)
static
BOOL HoverRace::Model::MR_PolygonCylinderContact ( const PolygonShape pActor0,
const CylinderShape pActor1,
ContactSpec pAnswer 
)
static
BOOL HoverRace::Model::MR_PolygonLineContact ( const PolygonShape pActor0,
const LineSegmentShape pActor1,
ContactSpec pAnswer 
)
static
BOOL HoverRace::Model::MR_PolygonPolygonContact ( const PolygonShape pActor0,
const PolygonShape pActor1,
ContactSpec pAnswer 
)
static
void HoverRace::Model::MR_PolygonRoomContact ( const PolygonShape pActor,
const PolygonShape pRoom,
RoomContactSpec pAnswer 
)
static
BOOL HoverRace::Model::MR_TestBoundingBox ( const ShapeInterface pActor0,
const ShapeInterface pActor1 
)
static
BOOL HoverRace::Model::MR_TestLevelShape ( const ShapeInterface pActor0,
const ShapeInterface pActor1,
ContactSpec pAnswer 
)
static

Variable Documentation

const MR_ActorActorContactFunc HoverRace::Model::MR_ActorActorContactMatrix[3][3]
static
Initial value:
=
{
{
},
{
},
{
}
}
static BOOL MR_CylinderPolygonContact(const CylinderShape *pActor0, const PolygonShape *pActor1, ContactSpec &pAnswer)
Definition: ShapeCollisions.cpp:339
static BOOL MR_LineLineContact(const LineSegmentShape *pActor0, const LineSegmentShape *pActor1, ContactSpec &pAnswer)
Definition: ShapeCollisions.cpp:281
BOOL(* MR_ActorActorContactFunc)(const ShapeInterface *pActor0, const ShapeInterface *pActor1, ContactSpec &pAnswer)
Definition: ShapeCollisions.cpp:34
static BOOL MR_CylinderCylinderContact(const CylinderShape *pActor0, const CylinderShape *pActor1, ContactSpec &pAnswer)
Definition: ShapeCollisions.cpp:240
static BOOL MR_CylinderLineContact(const CylinderShape *pActor0, const LineSegmentShape *pActor1, ContactSpec &pAnswer)
Definition: ShapeCollisions.cpp:310
static BOOL MR_LinePolygonContact(const LineSegmentShape *pActor0, const PolygonShape *pActor1, ContactSpec &pAnswer)
Definition: ShapeCollisions.cpp:374
static BOOL MR_PolygonCylinderContact(const PolygonShape *pActor0, const CylinderShape *pActor1, ContactSpec &pAnswer)
Definition: ShapeCollisions.cpp:440
static BOOL MR_PolygonLineContact(const PolygonShape *pActor0, const LineSegmentShape *pActor1, ContactSpec &pAnswer)
Definition: ShapeCollisions.cpp:447
static BOOL MR_PolygonPolygonContact(const PolygonShape *pActor0, const PolygonShape *pActor1, ContactSpec &pAnswer)
Definition: ShapeCollisions.cpp:287
static BOOL MR_LineCylinderContact(const LineSegmentShape *pActor0, const CylinderShape *pActor1, ContactSpec &pAnswer)
Definition: ShapeCollisions.cpp:433