Track Namespace Reference

Used in libtrack, a library used by both the game and track editor. More...


Classes

class  AABBDrawable
 A drawable with an axis aligned bounding box. More...
class  AxisAlignedBoundingBox
 A three dimensional volume that can be expressed as a cuboid, where each face is perpendicular to an axis. More...
class  AABBBounded
 An object that can find its AxisAlignedBoundingBox. More...
class  Savable
 A class that an object that can be loaded even if the class changes. More...
class  ClassLoaderBase
 A non-template class with the properties we want of a ClassLoader. More...
class  SaveableClassList
 Read and write objects of any class derived from Savable from/to a file. More...
class  ClassLoader
 An object which will be used to load a class from a file, when we are not sure of the exact type of the object when loading. More...
class  DataCheck
 Make sure we can access necessary data files. More...
class  Drawable
 Base clase for anything which can be drawn in game. More...
class  Plane
 A three dimensional plane. More...
class  Line
 A three dimensional line, half line, or line segment. More...
struct  LightSettings
 A light that illuminates the track and cars on it. More...
struct  FogSettings
 A graphical effect that blends distant objects to a colour. More...
class  Lighting
 Defines lighting and atmospheric effects for a track. More...
class  BulletMesh
 A DrawableMesh which can produce shapes for the Bullet physics library. More...
class  DrawableMesh
 A mesh that can be drawn using OpenGL commands. More...
class  MeshFaces
 Describe some faces from a mesh. More...
class  NearTrack
 An object which has an attachment point to an AI mesh. More...
class  OcclusionTester
 Tests if an object can be seen. More...
class  Path
 A graph describing the track layout. More...
struct  one_over_two_to_the_power_of
struct  one_over_two_to_the_power_of< 0 >
class  PathEdge
 Information to store along the edges. More...
class  PathEdgeEnd
 Information about an Edge that is recorded for each end of the edge, but can be different to multiple edges at the same vertex. More...
class  PathVertex
 Information to store at the vertices of a Path. More...
class  PieceDistortion
 defines the transformation that can be put on a single mesh piece of a track. More...
class  Segment
 A small, distortable, part of the track with a mesh for graphics, AI navigation, the walls for the physics engine and the floors for the physics engine. More...
class  SegmentConnection
 A description of an end of a TrackMesh that should be covered over by another track mesh. More...
class  Skybox
 basic skybox that can be loaded from a input stream. More...
class  StartingPosition
 The marker where cars start the race from. More...
class  Texture
 Wrapper for OpenGL Texture object. More...
class  Theme
 A track theme. More...
class  CollisionDeallocator
 Deletes a collision shape and associated mesh together. More...
struct  EdgeProperties
class  Track
 A playable stage. More...
class  TrackAttachment
 An object in a Track that is locked to the Path. More...
class  TrackBooster
 A booster attached to the track. More...
class  TrackMesh
 A mesh that can be chained together and distorted to make a track with corners and twists. More...
class  UniqueIdentifier
 Class that gives its instances unique names. More...

Namespaces

namespace  EditAssist
 Features for that mostly make sense for an editor.

Enumerations

enum  SensorIndex {
  SENSOR_NAVIGABLE_DISTANCE = 0, SENSOR_UNSIGNED_ANGLE = 1, SENSOR_LAP_DISTANCE = 2, SENSOR_LAP_DIFFERENTIAL = 3,
  SENSOR_COUNT = 4
}
 The index of the properties returned by NearTrack::scan_direction(). More...

Functions

void register_all_classes_with_savable_class_list ()
 Initalize the SavableClassList.
std::ostream & operator<< (std::ostream &destination, const FogSettings &fog_settings)
 Serialize a Track::FogSettings.
std::ostream & operator<< (std::ostream &destination, const LightSettings &light_settings)
 Serialize a Track::LightSettings.
std::ostream & operator<< (std::ostream &dest, const Lighting &lighting)
bool check_on_face (btScalar s, btScalar t)
 Return true if given face coordinates are on the triangle, false if they are off of it.
std::ostream & operator<< (std::ostream &destination, const Path &path)
std::ostream & operator<< (std::ostream &destination, const PathEdge &path_edge)
AxisAlignedBoundingBoxoperator|= (AxisAlignedBoundingBox &box, const PathEdge &path_edge)
 Expand an AxisAlignedBoundingBox minimally to contain a PathEdge with control points.
std::ostream & operator<< (std::ostream &destination, const PathEdgeEnd &path_edge_end)
std::ostream & operator<< (std::ostream &destination, const PathVertex &path_vertex)
AxisAlignedBoundingBoxoperator|= (AxisAlignedBoundingBox &box, const PathVertex &path_vertex)
 Expand an AxisAlignedBoundingBox almost minimally to contain a PathVertex.
std::ostream & operator<< (std::ostream &destination, StartingPosition starting_position)
 Track (std::istream &source, const Theme &theme, bool editor_in)
 Track (const Theme &theme, bool editor_in)
 ~Track ()
const Pathget_path () const
std::ostream & operator<< (std::ostream &destination, const Track &track)
 write a track to a stream, so it can be loaded with Track(stream)
const Themeget_theme () const
boost::shared_ptr< btCollisionShape > get_collision_shape () const
boost::shared_ptr< btCollisionShape > get_floor_shape () const
const MeshFacesget_ai_mesh () const
void update_ai_mesh ()
void scan_ai_graph ()
const MeshFaces::Graphget_ai_graph () const
btScalar get_lap_length () const
void set_filename (std::string filename_in)
std::string get_filename () const
void scan_theme ()
const Lightingget_lighting () const
void set_lighting (const Lighting &lighting)
std::ostream & operator<< (std::ostream &destination, const TrackAttachment &attachment)
std::ostream & operator<< (std::ostream &destination, TrackBooster booster)

Variables

const btScalar max_scalar = std::numeric_limits<btScalar>::max()
const unsigned int latest_class_record_version = 1
 The version of the data written about an object to find its class at load time.
const unsigned int latest_class_record_vector_version = 1
 The version of a list of classes of unknown type.
const unsigned int lighting_newest_version = 1
const unsigned int fog_settings_newest_version = 1
const unsigned int light_settings_newest_version = 1
const unsigned int path_newest_version = 2
const unsigned int path_edge_newest_version = 2
const unsigned int path_edge_end_newest_version = 1
const unsigned int path_vertex_newest_version = 1
const unsigned int latest_starting_position_version = 1
const unsigned int latest_track_attachment_file_version = 2
const unsigned int latest_track_booster_version = 1


Detailed Description

Used in libtrack, a library used by both the game and track editor.

Todo:
Make some Windows equivalent since unistd.h's chdir is a posix thing.


Enumeration Type Documentation

enum Track::SensorIndex

The index of the properties returned by NearTrack::scan_direction().

Enumerator:
SENSOR_NAVIGABLE_DISTANCE  distance available despite curves
SENSOR_UNSIGNED_ANGLE  sum of angles divided by navigable distance
SENSOR_LAP_DISTANCE  the advance in lap position divided by navigable distance.
SENSOR_LAP_DIFFERENTIAL  the gradient of the lap position
SENSOR_COUNT  the number of sensor values calculated by NearTrack::scan_direction().

Definition at line 24 of file NearTrack.h.


Function Documentation

void Track::Track::register_all_classes_with_savable_class_list (  ) 

Initalize the SavableClassList.

On first call, creates lots of ClasssLoaders. After that does nothing.

Definition at line 21 of file ClassLoader.cpp.

std::ostream& Track::operator<< ( std::ostream &  dest,
const FogSettings &  fog 
)

Serialize a Track::FogSettings.

Definition at line 59 of file Lighting.cpp.

std::ostream& Track::operator<< ( std::ostream &  dest,
const LightSettings &  ls 
)

Serialize a Track::LightSettings.

Definition at line 93 of file Lighting.cpp.

std::ostream & Track::operator<< ( std::ostream &  dest,
const Lighting &  lighting 
)

Definition at line 224 of file Lighting.cpp.

bool Track::check_on_face ( btScalar  s,
btScalar  t 
)

Return true if given face coordinates are on the triangle, false if they are off of it.

Definition at line 33 of file NearTrack.cpp.

std::ostream & Track::operator<< ( std::ostream &  destination,
const Path &  path 
)

Definition at line 102 of file Path.cpp.

std::ostream & Track::operator<< ( std::ostream &  destination,
const PathEdge &  path_edge 
)

Definition at line 562 of file PathEdge.cpp.

AxisAlignedBoundingBox& Track::operator|= ( AxisAlignedBoundingBox &  box,
const PathEdge &  path_edge 
)

Expand an AxisAlignedBoundingBox minimally to contain a PathEdge with control points.

Definition at line 573 of file PathEdge.cpp.

std::ostream & Track::operator<< ( std::ostream &  destination,
const PathEdgeEnd &  path_edge_end 
)

Definition at line 43 of file PathEdgeEnd.cpp.

std::ostream & Track::operator<< ( std::ostream &  destination,
const PathVertex &  path_vertex 
)

Definition at line 323 of file PathVertex.cpp.

AxisAlignedBoundingBox& Track::operator|= ( AxisAlignedBoundingBox &  box,
const PathVertex &  path_vertex 
)

Expand an AxisAlignedBoundingBox almost minimally to contain a PathVertex.

Definition at line 333 of file PathVertex.cpp.

std::ostream & Track::operator<< ( std::ostream &  destination,
StartingPosition  starting_position 
)

Definition at line 73 of file StartingPosition.cpp.

Track::Track ( std::istream &  source,
const Theme &  theme,
bool  editor_in 
)

Definition at line 34 of file Track.cpp.

Track::Track ( const Theme &  theme,
bool  editor_in 
)

Definition at line 48 of file Track.cpp.

Track::~Track (  ) 

Definition at line 58 of file Track.cpp.

const Path& Track::get_path (  )  const

Definition at line 63 of file Track.cpp.

std::ostream& Track::operator<< ( std::ostream &  destination,
const Track &  track 
)

write a track to a stream, so it can be loaded with Track(stream)

Parameters:
destination The stream to write to. If the stream is read back from the position it was in before this function call using
 Track::Track(stream) 
, then the resulting Track will be the same as the one passed in.
track The track to write to a file.
Returns:
The same stream reference as destination, however it will have the track written to it when the function completes.

Definition at line 73 of file Track.cpp.

const Theme& Track::get_theme (  )  const

Definition at line 82 of file Track.cpp.

boost::shared_ptr<btCollisionShape> Track::get_collision_shape (  )  const

Definition at line 116 of file Track.cpp.

boost::shared_ptr<btCollisionShape> Track::get_floor_shape (  )  const

Definition at line 126 of file Track.cpp.

const MeshFaces& Track::get_ai_mesh (  )  const

Definition at line 135 of file Track.cpp.

void Track::update_ai_mesh (  ) 

Definition at line 140 of file Track.cpp.

void Track::scan_ai_graph (  ) 

Definition at line 160 of file Track.cpp.

const MeshFaces::Graph& Track::get_ai_graph (  )  const

Definition at line 369 of file Track.cpp.

btScalar Track::get_lap_length (  )  const

Definition at line 374 of file Track.cpp.

void Track::set_filename ( std::string  filename_in  ) 

Definition at line 379 of file Track.cpp.

std::string Track::get_filename (  )  const

Definition at line 384 of file Track.cpp.

void Track::scan_theme (  ) 

Definition at line 389 of file Track.cpp.

const Lighting& Track::get_lighting (  )  const

Definition at line 404 of file Track.cpp.

void Track::set_lighting ( const Lighting &  lighting  ) 

Definition at line 409 of file Track.cpp.

std::ostream & Track::operator<< ( std::ostream &  destination,
const TrackAttachment &  attachment 
)

Definition at line 112 of file TrackAttachment.cpp.

std::ostream & Track::operator<< ( std::ostream &  destination,
TrackBooster  booster 
)

Definition at line 61 of file TrackBooster.cpp.


Variable Documentation

const btScalar Track::max_scalar = std::numeric_limits<btScalar>::max()

Definition at line 18 of file AxisAlignedBoundingBox.cpp.

const unsigned int Track::latest_class_record_version = 1

The version of the data written about an object to find its class at load time.

Definition at line 56 of file ClassLoader.h.

const unsigned int Track::latest_class_record_vector_version = 1

The version of a list of classes of unknown type.

Definition at line 58 of file ClassLoader.h.

const unsigned int Track::lighting_newest_version = 1

Definition at line 22 of file Lighting.cpp.

const unsigned int Track::fog_settings_newest_version = 1

Definition at line 23 of file Lighting.cpp.

const unsigned int Track::light_settings_newest_version = 1

Definition at line 24 of file Lighting.cpp.

const unsigned int Track::path_newest_version = 2

Definition at line 21 of file Path.cpp.

const unsigned int Track::path_edge_newest_version = 2

Definition at line 20 of file PathEdge.cpp.

const unsigned int Track::path_edge_end_newest_version = 1

Definition at line 19 of file PathEdgeEnd.cpp.

const unsigned int Track::path_vertex_newest_version = 1

Definition at line 21 of file PathVertex.cpp.

const unsigned int Track::latest_starting_position_version = 1

Definition at line 27 of file StartingPosition.cpp.

const unsigned int Track::latest_track_attachment_file_version = 2

Definition at line 23 of file TrackAttachment.cpp.

const unsigned int Track::latest_track_booster_version = 1

Definition at line 27 of file TrackBooster.cpp.


Get Racer at SourceForge.net. Fast, secure and Free Open Source software downloads

Generated at Mon Sep 6 00:41:18 2010 by Doxygen version 1.4.7 for Racer version svn335.