FlightGear next
FGAIBaseAircraft Class Reference

#include <AIBaseAircraft.hxx>

Inherits FGAIBase.

Inherited by FGAIAircraft, and FGAISwiftAircraft.

Public Member Functions

 FGAIBaseAircraft (object_type otype=object_type::otAircraft)
 
void bind () override
 
void GearPos (double pos)
 
void FlapsPos (double pos)
 
void SpoilerPos (double pos)
 
void SpeedBrakePos (double pos)
 
void BeaconLight (bool light)
 
void LandingLight (bool light)
 
void NavLight (bool light)
 
void StrobeLight (bool light)
 
void TaxiLight (bool light)
 
void CabinLight (bool light)
 
double GearPos () const
 
double FlapsPos () const
 
double SpoilerPos () const
 
double SpeedBrakePos () const
 
bool BeaconLight () const
 
bool LandingLight () const
 
bool NavLight () const
 
bool StrobeLight () const
 
bool TaxiLight () const
 
bool CabinLight () const
 
- Public Member Functions inherited from FGAIBase
 FGAIBase (object_type ot, bool enableHot)
 
virtual ~FGAIBase ()
 
virtual void readFromScenario (SGPropertyNode *scFileNode)
 
virtual bool init (ModelSearchOrder searchOrder)
 
virtual void initModel ()
 
virtual void update (double dt)
 
virtual void unbind ()
 
virtual void reinit ()
 
virtual double getDefaultModelRadius ()
 
void updateLOD ()
 update LOD properties of the model
 
void updateInterior ()
 
void setManager (FGAIManager *mgr, SGPropertyNode *p)
 
void setPath (const char *model)
 
void setPathLowres (std::string model)
 
void setFallbackModelIndex (const int i)
 
void setSMPath (const std::string &p)
 
void setCallSign (const std::string &)
 
void setSpeed (double speed_KTAS)
 
void setMaxSpeed (double kts)
 
void setAltitude (double altitude_ft)
 
void setAltitudeAGL (double altitude_agl_ft)
 
void setHeading (double heading)
 
void setLatitude (double latitude)
 
void setLongitude (double longitude)
 
void setBank (double bank)
 
void setPitch (double newpitch)
 
void setRadius (double radius)
 
void setXoffset (double x_offset)
 
void setYoffset (double y_offset)
 
void setZoffset (double z_offset)
 
void setPitchoffset (double x_offset)
 
void setRolloffset (double y_offset)
 
void setYawoffset (double z_offset)
 
void setServiceable (bool serviceable)
 
bool getDie ()
 
void setDie (bool die)
 
bool isValid () const
 
void setCollisionData (bool i, double lat, double lon, double elev)
 
void setImpactData (bool d)
 
void setImpactLat (double lat)
 
void setImpactLon (double lon)
 
void setImpactElev (double e)
 
void setName (const std::string &n)
 
bool setParentNode ()
 
void setParentName (const std::string &p)
 
void setCollisionLength (int range)
 
void setCollisionHeight (int height)
 
void calcRangeBearing (double lat, double lon, double lat2, double lon2, double &range, double &bearing) const
 
double calcRelBearingDeg (double bearing, double heading)
 
double calcTrueBearingDeg (double bearing, double heading)
 
double calcRecipBearingDeg (double bearing)
 
int getID () const
 
int _getSubID () const
 
void setFlightPlan (std::unique_ptr< FGAIFlightPlan > f)
 
SGGeod getGeodPos () const
 
void setGeodPos (const SGGeod &pos)
 
SGVec3d getCartPosAt (const SGVec3d &off) const
 
SGVec3d getCartPos () const
 
bool getGroundElevationM (const SGGeod &pos, double &elev, const simgear::BVHMaterial **material) const
 
SGPropertyNode * getPositionFromNode (SGPropertyNode *scFileNode, const std::string &key, SGVec3d &position)
 
double getTrueHeadingDeg () const
 
double _getCartPosX () const
 
double _getCartPosY () const
 
double _getCartPosZ () const
 
osg::LOD * getSceneBranch () const
 
virtual int getCollisionHeight () const
 
virtual int getCollisionLength () const
 
bool modelLoaded () const
 
void setScenarioPath (const std::string &scenarioPath)
 
object_type getType ()
 
virtual std::string_view getTypeString (void) const
 
bool isa (object_type otype)
 
void _setVS_fps (double _vs)
 
void _setAltitude (double _alt)
 
void _setLongitude (double longitude)
 
void _setLatitude (double latitude)
 
void _setSubID (int s)
 
double _getAltitudeAGL (SGGeod inpos, double start)
 
double _getVS_fps () const
 
double _getAltitude () const
 
double _getLongitude () const
 
double _getLatitude () const
 
double _getElevationFt () const
 
double _getRdot () const
 
double _getH_offset () const
 
double _getV_offset () const
 
double _getX_shift () const
 
double _getY_shift () const
 
double _getRotation () const
 
double _getSpeed () const
 
double _getRoll () const
 
double _getPitch () const
 
double _getHeading () const
 
double _get_speed_east_fps () const
 
double _get_speed_north_fps () const
 
double _get_SubPath () const
 
double _getImpactLat () const
 
double _getImpactLon () const
 
double _getImpactElevFt () const
 
double _getImpactHdg () const
 
double _getImpactPitch () const
 
double _getImpactRoll () const
 
double _getImpactSpeed () const
 
double _getXOffset () const
 
double _getYOffset () const
 
double _getZOffset () const
 
bool _getServiceable () const
 
bool _getFirstTime () const
 
bool _getImpact ()
 
bool _getImpactData ()
 
bool _getCollisionData ()
 
bool _getExpiryData ()
 
SGPropertyNode * _getProps () const
 
const char * _getPath () const
 
const char * _getSMPath () const
 
const char * _getCallsign () const
 
const char * _getTriggerNode () const
 
const char * _getName () const
 
const char * _getSubmodel () const
 
int _getFallbackModelIndex () const
 
double _getRange () const
 
double _getBearing () const
 
const std::string & getCallSign () const
 
ModelSearchOrder getSearchOrder () const
 

Protected Attributes

double m_gearPos
 
double m_flapsPos
 
double m_spoilerPos
 
double m_speedbrakePos
 
bool m_beaconLight
 
bool m_cabinLight
 
bool m_landingLight
 
bool m_navLight
 
bool m_strobeLight
 
bool m_taxiLight
 
- Protected Attributes inherited from FGAIBase
double _elevation_m = 0.0
 
double _x_offset
 
double _y_offset
 
double _z_offset
 
double _pitch_offset
 
double _roll_offset
 
double _yaw_offset
 
double _max_speed = 300.0
 
int collisionHeight = 0
 
int collisionLength = 0
 
std::string _path
 
std::string _callsign
 
std::string _submodel
 
std::string _name
 
std::string _parent
 
std::string _scenarioPath
 
simgear::TiedPropertyList _tiedProperties
 
SGPropertyNode_ptr _selected_ac
 
SGPropertyNode_ptr props
 
SGPropertyNode_ptr trigger_node
 
SGPropertyNode_ptr replay_time
 
SGPropertyNode_ptr model_removed
 
FGAIManagermanager = nullptr
 
SGGeod pos
 
double hdg
 
double roll
 
double pitch
 
double speed
 
double speed_fps = 0.0
 
double altitude_ft
 
double vs_fps
 
double speed_north_deg_sec
 
double speed_east_deg_sec
 
double turn_radius_ft
 
double altitude_agl_ft = 0.0
 
double ft_per_deg_lon
 
double ft_per_deg_lat
 
double tgt_heading
 
double tgt_altitude_ft
 
double tgt_speed
 
double tgt_roll
 
double tgt_pitch
 
double tgt_yaw
 
double tgt_vs
 
bool in_range
 
double bearing
 
double elevation
 
double range
 
double rdot
 
double horiz_offset
 
double vert_offset
 
double x_shift
 
double y_shift
 
double rotation
 
double ht_diff
 
std::string model_path
 
std::string model_path_lowres
 
int _fallback_model_index = 0
 
SGModelPlacement aip
 
bool delete_me
 
bool invisible = false
 
bool no_roll
 
bool serviceable
 
bool _installed = false
 
int _subID = 0
 
double life
 
std::unique_ptr< FGAIFlightPlanfp
 
bool _impact_reported
 
bool _collision_reported
 
bool _expiry_reported
 
double _impact_lat
 
double _impact_lon
 
double _impact_elev
 
double _impact_hdg
 
double _impact_pitch
 
double _impact_roll
 
double _impact_speed
 
ModelSearchOrder _searchOrder = ModelSearchOrder::DATA_ONLY
 

Additional Inherited Members

- Public Types inherited from FGAIBase
enum class  object_type {
  otNull = 0 , otAircraft , otShip , otCarrier ,
  otBallistic , otRocket , otStorm , otThermal ,
  otStatic , otWingman , otGroundVehicle , otEscort ,
  otMultiplayer , MAX_OBJECTS
}
 
enum class  ModelSearchOrder { DATA_ONLY , PREFER_AI , PREFER_DATA }
 
- Static Public Member Functions inherited from FGAIBase
static bool _isNight ()
 
- Static Public Attributes inherited from FGAIBase
static const double e = 2.71828183
 
static const double lbs_to_slugs = 0.031080950172
 
- Protected Member Functions inherited from FGAIBase
template<typename T>
void tie (const char *aRelPath, const SGRawValue< T > &aRawValue)
 Tied-properties helper, record nodes which are tied for easy un-tie-ing.
 
void Transform ()
 
double UpdateRadar (FGAIManager *manager)
 
void removeModel ()
 Cleanly remove the model and let the scenery database pager do the clean-up work.
 
void removeSoundFx ()
 
- Static Protected Member Functions inherited from FGAIBase
static int _newAIModelID ()
 

Detailed Description

Definition at line 13 of file AIBaseAircraft.hxx.

Constructor & Destructor Documentation

◆ FGAIBaseAircraft()

FGAIBaseAircraft::FGAIBaseAircraft ( object_type otype = object_type::otAircraft)
explicit

Definition at line 12 of file AIBaseAircraft.cxx.

Member Function Documentation

◆ BeaconLight() [1/2]

bool FGAIBaseAircraft::BeaconLight ( ) const
inline

Definition at line 36 of file AIBaseAircraft.hxx.

◆ BeaconLight() [2/2]

void FGAIBaseAircraft::BeaconLight ( bool light)
inline

Definition at line 25 of file AIBaseAircraft.hxx.

◆ bind()

void FGAIBaseAircraft::bind ( )
overridevirtual

Reimplemented from FGAIBase.

Reimplemented in FGAITanker.

Definition at line 26 of file AIBaseAircraft.cxx.

◆ CabinLight() [1/2]

bool FGAIBaseAircraft::CabinLight ( ) const
inline

Definition at line 41 of file AIBaseAircraft.hxx.

◆ CabinLight() [2/2]

void FGAIBaseAircraft::CabinLight ( bool light)
inline

Definition at line 30 of file AIBaseAircraft.hxx.

◆ FlapsPos() [1/2]

double FGAIBaseAircraft::FlapsPos ( ) const
inline

Definition at line 33 of file AIBaseAircraft.hxx.

◆ FlapsPos() [2/2]

void FGAIBaseAircraft::FlapsPos ( double pos)
inline

Definition at line 22 of file AIBaseAircraft.hxx.

◆ GearPos() [1/2]

double FGAIBaseAircraft::GearPos ( ) const
inline

Definition at line 32 of file AIBaseAircraft.hxx.

◆ GearPos() [2/2]

void FGAIBaseAircraft::GearPos ( double pos)
inline

Definition at line 21 of file AIBaseAircraft.hxx.

◆ LandingLight() [1/2]

bool FGAIBaseAircraft::LandingLight ( ) const
inline

Definition at line 37 of file AIBaseAircraft.hxx.

◆ LandingLight() [2/2]

void FGAIBaseAircraft::LandingLight ( bool light)
inline

Definition at line 26 of file AIBaseAircraft.hxx.

◆ NavLight() [1/2]

bool FGAIBaseAircraft::NavLight ( ) const
inline

Definition at line 38 of file AIBaseAircraft.hxx.

◆ NavLight() [2/2]

void FGAIBaseAircraft::NavLight ( bool light)
inline

Definition at line 27 of file AIBaseAircraft.hxx.

◆ SpeedBrakePos() [1/2]

double FGAIBaseAircraft::SpeedBrakePos ( ) const
inline

Definition at line 35 of file AIBaseAircraft.hxx.

◆ SpeedBrakePos() [2/2]

void FGAIBaseAircraft::SpeedBrakePos ( double pos)
inline

Definition at line 24 of file AIBaseAircraft.hxx.

◆ SpoilerPos() [1/2]

double FGAIBaseAircraft::SpoilerPos ( ) const
inline

Definition at line 34 of file AIBaseAircraft.hxx.

◆ SpoilerPos() [2/2]

void FGAIBaseAircraft::SpoilerPos ( double pos)
inline

Definition at line 23 of file AIBaseAircraft.hxx.

◆ StrobeLight() [1/2]

bool FGAIBaseAircraft::StrobeLight ( ) const
inline

Definition at line 39 of file AIBaseAircraft.hxx.

◆ StrobeLight() [2/2]

void FGAIBaseAircraft::StrobeLight ( bool light)
inline

Definition at line 28 of file AIBaseAircraft.hxx.

◆ TaxiLight() [1/2]

bool FGAIBaseAircraft::TaxiLight ( ) const
inline

Definition at line 40 of file AIBaseAircraft.hxx.

◆ TaxiLight() [2/2]

void FGAIBaseAircraft::TaxiLight ( bool light)
inline

Definition at line 29 of file AIBaseAircraft.hxx.

Member Data Documentation

◆ m_beaconLight

bool FGAIBaseAircraft::m_beaconLight
protected

Definition at line 51 of file AIBaseAircraft.hxx.

◆ m_cabinLight

bool FGAIBaseAircraft::m_cabinLight
protected

Definition at line 52 of file AIBaseAircraft.hxx.

◆ m_flapsPos

double FGAIBaseAircraft::m_flapsPos
protected

Definition at line 46 of file AIBaseAircraft.hxx.

◆ m_gearPos

double FGAIBaseAircraft::m_gearPos
protected

Definition at line 45 of file AIBaseAircraft.hxx.

◆ m_landingLight

bool FGAIBaseAircraft::m_landingLight
protected

Definition at line 53 of file AIBaseAircraft.hxx.

◆ m_navLight

bool FGAIBaseAircraft::m_navLight
protected

Definition at line 54 of file AIBaseAircraft.hxx.

◆ m_speedbrakePos

double FGAIBaseAircraft::m_speedbrakePos
protected

Definition at line 48 of file AIBaseAircraft.hxx.

◆ m_spoilerPos

double FGAIBaseAircraft::m_spoilerPos
protected

Definition at line 47 of file AIBaseAircraft.hxx.

◆ m_strobeLight

bool FGAIBaseAircraft::m_strobeLight
protected

Definition at line 55 of file AIBaseAircraft.hxx.

◆ m_taxiLight

bool FGAIBaseAircraft::m_taxiLight
protected

Definition at line 56 of file AIBaseAircraft.hxx.


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