summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/ground_vehicle.hpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/ground_vehicle.hpp b/src/ground_vehicle.hpp
index c87dbf76f..106b0b954 100644
--- a/src/ground_vehicle.hpp
+++ b/src/ground_vehicle.hpp
@@ -39,6 +39,21 @@ struct AccelerationCache {
/**
* Base class for all vehicles that move through ground.
+ *
+ * Child classes must define all of the following functions.
+ * These functions are not defined as pure virtual functions at this class to improve performance.
+ *
+ * virtual uint16 GetPower() const = 0;
+ * virtual uint16 GetPoweredPartPower(const T *head) const = 0;
+ * virtual uint16 GetWeight() const = 0;
+ * virtual byte GetTractiveEffort() const = 0;
+ * virtual AccelStatus GetAccelerationStatus() const = 0;
+ * virtual uint16 GetCurrentSpeed() const = 0;
+ * virtual uint32 GetRollingFriction() const = 0;
+ * virtual int GetAccelerationType() const = 0;
+ * virtual int32 GetSlopeSteepness() const = 0;
+ * virtual uint16 GetInitialMaxSpeed() const = 0;
+ * virtual uint16 GetMaxTrackSpeed() const = 0;
*/
template <class T, VehicleType Type>
struct GroundVehicle : public SpecializedVehicle<T, Type> {