summaryrefslogtreecommitdiff
path: root/src/ai/api/ai_stationlist.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/ai/api/ai_stationlist.hpp')
-rw-r--r--src/ai/api/ai_stationlist.hpp39
1 files changed, 39 insertions, 0 deletions
diff --git a/src/ai/api/ai_stationlist.hpp b/src/ai/api/ai_stationlist.hpp
new file mode 100644
index 000000000..b6b1a7d1f
--- /dev/null
+++ b/src/ai/api/ai_stationlist.hpp
@@ -0,0 +1,39 @@
+/* $Id$ */
+
+/** @file ai_stationlist.hpp List all the stations (you own). */
+
+#ifndef AI_STATIONLIST_HPP
+#define AI_STATIONLIST_HPP
+
+#include "ai_abstractlist.hpp"
+#include "ai_station.hpp"
+
+/**
+ * Creates a list of stations of which you are the owner.
+ * @ingroup AIList
+ */
+class AIStationList : public AIAbstractList {
+public:
+ static const char *GetClassName() { return "AIStationList"; }
+
+ /**
+ * @param station_type The type of station to make a list of stations for.
+ */
+ AIStationList(AIStation::StationType station_type);
+};
+
+/**
+ * Creates a list of stations which the vehicle has in its orders.
+ * @ingroup AIList
+ */
+class AIStationList_Vehicle : public AIAbstractList {
+public:
+ static const char *GetClassName() { return "AIStationList_Vehicle"; }
+
+ /**
+ * @param vehicle_id The vehicle to get the list of stations he has in its orders from.
+ */
+ AIStationList_Vehicle(VehicleID vehicle_id);
+};
+
+#endif /* AI_STATIONLIST_HPP */