src/ai/api/ai_stationlist.hpp
author truebrain
Fri, 22 Feb 2008 12:30:17 +0000
branchnoai
changeset 9737 ee408edf3851
parent 9670 820b77e19bb3
child 9745 fb2454d70f37
permissions -rw-r--r--
(svn r12216) [NoAI] -Codechange: made most functions 'static', which removes the need to create an instance to get, for example, engine information, and therefor heavily simplifying AI creation (Morloth)
/* $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"

/**
 * Class that creates a list of stations you own.
 */
class AIStationList : public AIAbstractList {
public:
	/**
	 * The name of the class, needed by several sub-processes.
	 */
	static const char *GetClassName() { return "AIStationList"; }

	/**
	 * The constructor to make a list of stations.
	 * @param type The type of station you want a list of.
	 */
	AIStationList(AIStation::StationType type);
};

/**
 * Class that creates a list of stations the vehicles goes to.
 */
class AIVehicleStationList : public AIAbstractList {
public:
	/**
	 * The name of the class, needed by several sub-processes.
	 */
	static const char *GetClassName() { return "AIVehicleStationList"; }

	/**
	 * The constructor to make a list of stations.
	 * @param vehicle_id The vehicles to get the list of stations he goes to from.
	 */
	AIVehicleStationList(VehicleID vehicle_id);
};

#endif /* AI_STATIONLIST_HPP */