(svn r19337) -Codechange: Create the GroundVehicle class.
This commit is contained in:
		| @@ -1027,6 +1027,10 @@ | ||||
| 				RelativePath=".\..\src\graph_gui.h" | ||||
| 				> | ||||
| 			</File> | ||||
| 			<File | ||||
| 				RelativePath=".\..\src\ground_vehicle.hpp" | ||||
| 				> | ||||
| 			</File> | ||||
| 			<File | ||||
| 				RelativePath=".\..\src\group.h" | ||||
| 				> | ||||
|   | ||||
| @@ -1024,6 +1024,10 @@ | ||||
| 				RelativePath=".\..\src\graph_gui.h" | ||||
| 				> | ||||
| 			</File> | ||||
| 			<File | ||||
| 				RelativePath=".\..\src\ground_vehicle.hpp" | ||||
| 				> | ||||
| 			</File> | ||||
| 			<File | ||||
| 				RelativePath=".\..\src\group.h" | ||||
| 				> | ||||
|   | ||||
| @@ -166,6 +166,7 @@ gfx_func.h | ||||
| gfx_type.h | ||||
| gfxinit.h | ||||
| graph_gui.h | ||||
| ground_vehicle.hpp | ||||
| group.h | ||||
| group_gui.h | ||||
| group_type.h | ||||
|   | ||||
							
								
								
									
										30
									
								
								src/ground_vehicle.hpp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										30
									
								
								src/ground_vehicle.hpp
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,30 @@ | ||||
| /* $Id$ */ | ||||
|  | ||||
| /* | ||||
|  * This file is part of OpenTTD. | ||||
|  * OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. | ||||
|  * OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | ||||
|  * See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>. | ||||
|  */ | ||||
|  | ||||
| /** @file ground_vehicle.hpp Base class and functions for all vehicles that move through ground. */ | ||||
|  | ||||
| #ifndef GROUND_VEHICLE_HPP | ||||
| #define GROUND_VEHICLE_HPP | ||||
|  | ||||
| #include "vehicle_base.h" | ||||
|  | ||||
| /** | ||||
|  * Base class for all vehicles that move through ground. | ||||
|  */ | ||||
| template <class T, VehicleType Type> | ||||
| struct GroundVehicle : public SpecializedVehicle<T, Type> { | ||||
|  | ||||
| 	/** | ||||
| 	 * The constructor at SpecializedVehicle must be called. | ||||
| 	 */ | ||||
| 	GroundVehicle() : SpecializedVehicle<T, Type>() {} | ||||
|  | ||||
| }; | ||||
|  | ||||
| #endif /* GROUND_VEHICLE_HPP */ | ||||
| @@ -12,12 +12,12 @@ | ||||
| #ifndef TRAIN_H | ||||
| #define TRAIN_H | ||||
|  | ||||
| #include "vehicle_base.h" | ||||
| #include "newgrf_engine.h" | ||||
| #include "cargotype.h" | ||||
| #include "rail.h" | ||||
| #include "engine_base.h" | ||||
| #include "rail_map.h" | ||||
| #include "ground_vehicle.hpp" | ||||
|  | ||||
| struct Train; | ||||
|  | ||||
| @@ -111,7 +111,7 @@ enum AccelStatus { | ||||
| /** | ||||
|  * 'Train' is either a loco or a wagon. | ||||
|  */ | ||||
| struct Train : public SpecializedVehicle<Train, VEH_TRAIN> { | ||||
| struct Train : public GroundVehicle<Train, VEH_TRAIN> { | ||||
| 	TrainCache tcache; | ||||
|  | ||||
| 	/* Link between the two ends of a multiheaded engine */ | ||||
| @@ -129,7 +129,7 @@ struct Train : public SpecializedVehicle<Train, VEH_TRAIN> { | ||||
| 	uint16 wait_counter; | ||||
|  | ||||
| 	/** We don't want GCC to zero our struct! It already is zeroed and has an index! */ | ||||
| 	Train() : SpecializedVehicle<Train, VEH_TRAIN>() {} | ||||
| 	Train() : GroundVehicle<Train, VEH_TRAIN>() {} | ||||
| 	/** We want to 'destruct' the right class. */ | ||||
| 	virtual ~Train() { this->PreDestructor(); } | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 terkhen
					terkhen