Free Electron
Public Member Functions | List of all members
fe::ext::TireI Class Referenceabstract

The most simple least common denominator, single contact, patch oriented Many (most?) "tire models" are this, or use this. More...

#include <TireI.h>

Inheritance diagram for fe::ext::TireI:
Inheritance graph
[legend]

Public Member Functions

virtual void step (t_moa_real a_dt)=0
 Timestep the tire. More...
 
virtual bool compile (Record r_tire, Record r_config, sp< RecordGroup > a_rg_dataset)=0
 "Make" a tire based on src/data configuration. More...
 
virtual void setVelocity (const t_moa_v3 &a_velocity)=0
 Translational velocity in tire space, wrt surface. More...
 
virtual void setAngularVelocity (const t_moa_v3 &a_ang_velocity)=0
 Angular velocity around Y axis. More...
 
virtual void setContact (const t_moa_real a_radius, const t_moa_real a_inclination)=0
 
virtual const t_moa_v3getForce (void)=0
 Return the force, in tire space. More...
 
virtual const t_moa_v3getMoment (void)=0
 Return the moment, in tire space. More...
 
virtual const t_moa_v3getVelocity (void)=0
 
virtual const t_moa_v3getAngularVelocity (void)=0
 
virtual const t_moa_real & getRadius (void)=0
 
virtual t_moa_real & contactRadius (void)=0
 
virtual t_moa_real & inclination (void)=0
 
- Public Member Functions inherited from fe::Component
const Stringname (void) const
 Return the components chosen name. More...
 
const String verboseName (void) const
 Return the annotated chosen name. More...
 
void setName (const String &name)
 Rename the component to anything you want. More...
 
hp< Registryregistry (void) const
 Get the Registry that created this component. More...
 
void adjoin (sp< Component > spComponent)
 Tie this component's lifetime to another. More...
 
sp< Componentcreate (const String &implementation, BWORD quiet=FALSE) const
 Convienience function to registry()->create() More...
 
void disjoin (void)
 Untie component from Hub, if connected. More...
 
String factoryName (void)
 
void setLibrary (sp< Library > spLibrary)
 Store a reference to the library used to instantiate this component. More...
 
sp< Librarylibrary (void)
 Get the library that created the component. More...
 
void setFactoryIndex (I32 a_factoryIndex)
 Set the library's factory index. More...
 
I32 factoryIndex (void)
 Get the library's factory index. More...
 
void setSingleton (BWORD set)
 Specify whether component is a singleton. More...
 
BWORD isSingleton (void)
 Return whether component is a singleton. More...
 
virtual void acquire (void)
 Specialized reference increment. More...
 
virtual void release (void)
 Specialized reference decrement. More...
 
- Public Member Functions inherited from fe::Handled< Component >
const hp< Component > & getHandle (void) const
 Get a safe handle to this object. More...
 
- Public Member Functions inherited from fe::Protectable
virtual I32 protection (void) const
 
virtual void protect (void)
 
virtual void unprotect (void)
 
virtual Protectableclone (Protectable *pInstance=NULL)
 
- Public Member Functions inherited from fe::Counted
virtual void acquire (int &rCount)
 Increment the reference count (and get the count) More...
 
virtual void abandon (void)
 Decrement the reference count. More...
 
int count (void) const
 Return the count of references. More...
 
void setName (const String &)
 
void trackReference (void *pReference, String what)
 
void untrackReference (void *pReference)
 
void registerRegion (void *pT, U32 bytes)
 
- Public Member Functions inherited from fe::Initialized
void initializeAll (void)
 
void setActive (bool a_active)
 

Additional Inherited Members

- Static Public Member Functions inherited from fe::Counted
static String reportTracker (void)
 
static U32 trackerCount (void)
 
- Protected Types inherited from fe::Initialized
typedef void(* InitializeFunction) (Initialized *)
 
- Protected Member Functions inherited from fe::Handled< Component >
void abandonHandle (void)
 
- Protected Member Functions inherited from fe::Counted
int releaseInternal (void)
 Decrement the reference count. More...
 
void suppressReport (void)
 
- Protected Member Functions inherited from fe::Initialized
void addInitializer (InitializeFunction function)
 

Detailed Description

The most simple least common denominator, single contact, patch oriented Many (most?) "tire models" are this, or use this.

Member Function Documentation

◆ compile()

virtual bool fe::ext::TireI::compile ( Record  r_tire,
Record  r_config,
sp< RecordGroup a_rg_dataset 
)
pure virtual

"Make" a tire based on src/data configuration.

r_tire is the actual record the tire can access "live". r_config is the record, possibly loaded from file, to parameterize the model.

Implemented in fe::ext::BrushTire, fe::ext::BlendTire, fe::ext::StickTire, and fe::ext::LinearTire.

◆ getForce()

virtual const t_moa_v3& fe::ext::TireI::getForce ( void  )
pure virtual

Return the force, in tire space.

Implemented in fe::ext::BrushTire, fe::ext::BlendTire, fe::ext::StickTire, and fe::ext::LinearTire.

◆ getMoment()

virtual const t_moa_v3& fe::ext::TireI::getMoment ( void  )
pure virtual

Return the moment, in tire space.

Implemented in fe::ext::BrushTire, fe::ext::BlendTire, fe::ext::StickTire, and fe::ext::LinearTire.

◆ setAngularVelocity()

virtual void fe::ext::TireI::setAngularVelocity ( const t_moa_v3 a_ang_velocity)
pure virtual

Angular velocity around Y axis.

  • X axis (camber-like roll)
  • Y axis (normal sense of tire rotation)
  • Z axis (steering velocity)

Implemented in fe::ext::BrushTire, fe::ext::BlendTire, fe::ext::StickTire, and fe::ext::LinearTire.

◆ setVelocity()

virtual void fe::ext::TireI::setVelocity ( const t_moa_v3 a_velocity)
pure virtual

Translational velocity in tire space, wrt surface.

Tire space: X is longitudinal Y is lateral Z is vertical (yaw axis)

Implemented in fe::ext::BrushTire, fe::ext::BlendTire, fe::ext::StickTire, and fe::ext::LinearTire.

◆ step()

virtual void fe::ext::TireI::step ( t_moa_real  a_dt)
pure virtual

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