HoverRace  2.0
Public Member Functions | Protected Member Functions | Private Types | Private Attributes | List of all members
HoverRace::ObjFac1::DoubleSpeedSource Class Reference

#include <DoubleSpeedSource.h>

+ Inheritance diagram for HoverRace::ObjFac1::DoubleSpeedSource:

Public Member Functions

 DoubleSpeedSource ()
 
 ~DoubleSpeedSource ()
 
- Public Member Functions inherited from HoverRace::Model::FreeElement
 FreeElement (const Util::ObjectFromFactoryId &id={0, 0})
 
virtual ~FreeElement ()
 
virtual bool AssignPermNumber (int pNumber)
 Assign a permanent hook number. More...
 
virtual const ShapeInterfaceGetGivingContactEffectShape ()
 Get the shape that gives an effect when touching while moving. More...
 
virtual ElementNetState GetNetState () const
 
virtual const ShapeInterfaceGetObstacleShape ()
 Get the shape that stops other elements' movement. More...
 
virtual void PlayExternalSounds (int pDB, int pPan)
 
virtual void PlayInternalSounds ()
 
virtual void Render (VideoServices::Viewport3D *pDest, MR_SimulationTime pTime)
 
virtual void SetNetState (int pDataLen, const MR_UInt8 *pData)
 
virtual void SetOwnerId (int pOwnerId)
 
virtual int Simulate (MR_SimulationTime pTimeSlice, Track &track, int pRoom)
 Advance the simulation. More...
 
- Public Member Functions inherited from HoverRace::Model::Element
 Element (const Util::ObjectFromFactoryId &id)
 
virtual ~Element ()
 
virtual void AddRenderer ()
 
virtual void ApplyEffect (const ContactEffect *pEffect, MR_SimulationTime pTime, MR_SimulationTime pDuration, BOOL pValidDirection, MR_Angle pHorizontalDirection, MR_Int32 pZMin, MR_Int32 pZMax, Track &track)
 
void ApplyEffects (const ContactEffectList *pList, MR_SimulationTime pTime, MR_SimulationTime pDuration, BOOL pValidDirection, MR_Angle pHorizontalDirection, MR_Int32 pZMin, MR_Int32 pZMax, Track &track)
 
void Serialize (Parcel::ObjStream &) overridefinal
 
- Public Member Functions inherited from HoverRace::Util::ObjectFromFactory
 ObjectFromFactory (const ObjectFromFactoryId &pId) noexcept
 
virtual ~ObjectFromFactory ()
 
const ObjectFromFactoryIdGetTypeId () const noexcept
 

Protected Member Functions

MR_Int32 AxisX () const override
 
MR_Int32 AxisY () const override
 
const Model::ContactEffectListGetEffectList () override
 
const Model::ShapeInterfaceGetReceivingContactEffectShape () override
 Get the shape that gives an effect when touched by a moving element. More...
 
MR_Int32 RayLen () const override
 
MR_Int32 ZMax () const override
 
MR_Int32 ZMin () const override
 
- Protected Member Functions inherited from HoverRace::Model::CylinderShape
eShape ShapeType () const override
 
MR_Int32 XMax () const override
 
MR_Int32 XMin () const override
 
MR_Int32 XPos () const override
 
MR_Int32 YMax () const override
 
MR_Int32 YMin () const override
 
MR_Int32 YPos () const override
 
- Protected Member Functions inherited from HoverRace::Model::ShapeInterface
virtual ~ShapeInterface ()
 

Private Types

using SUPER = Model::FreeElement
 

Private Attributes

Model::ContactEffectList mContactEffectList
 
Model::SpeedDoubler mSpeedEffect
 

Additional Inherited Members

- Static Public Member Functions inherited from HoverRace::Util::ObjectFromFactory
template<class T >
static void SerializeShared (Parcel::ObjStream &archive, typename std::enable_if< std::is_base_of< ObjectFromFactory, T >::value, std::shared_ptr< T >>::type &obj)
 Serialize a shared pointer to a serializable object. More...
 
- Public Attributes inherited from HoverRace::Model::FreeElement
MR_Angle mOrientation
 
MR_3DCoordinate mPosition
 
- Protected Types inherited from HoverRace::Model::ShapeInterface
enum  eShape { eCylinder = 0, eLineSegment = 1, ePolygon = 2 }
 

Member Typedef Documentation

Constructor & Destructor Documentation

HoverRace::ObjFac1::DoubleSpeedSource::DoubleSpeedSource ( )
HoverRace::ObjFac1::DoubleSpeedSource::~DoubleSpeedSource ( )
inline

Member Function Documentation

MR_Int32 HoverRace::ObjFac1::DoubleSpeedSource::AxisX ( ) const
overrideprotectedvirtual
MR_Int32 HoverRace::ObjFac1::DoubleSpeedSource::AxisY ( ) const
overrideprotectedvirtual
const Model::ContactEffectList* HoverRace::ObjFac1::DoubleSpeedSource::GetEffectList ( )
inlineoverrideprotectedvirtual

Reimplemented from HoverRace::Model::Element.

const Model::ShapeInterface* HoverRace::ObjFac1::DoubleSpeedSource::GetReceivingContactEffectShape ( )
inlineoverrideprotectedvirtual

Get the shape that gives an effect when touched by a moving element.

Returns
The shape, or nullptr if none.

Reimplemented from HoverRace::Model::FreeElement.

MR_Int32 HoverRace::ObjFac1::DoubleSpeedSource::RayLen ( ) const
overrideprotectedvirtual
MR_Int32 HoverRace::ObjFac1::DoubleSpeedSource::ZMax ( ) const
overrideprotectedvirtual
MR_Int32 HoverRace::ObjFac1::DoubleSpeedSource::ZMin ( ) const
overrideprotectedvirtual

Member Data Documentation

Model::ContactEffectList HoverRace::ObjFac1::DoubleSpeedSource::mContactEffectList
private
Model::SpeedDoubler HoverRace::ObjFac1::DoubleSpeedSource::mSpeedEffect
private

The documentation for this class was generated from the following files: