00001 /* $Id: base_consist.h 24998 2013-02-14 17:24:55Z rubidium $ */ 00002 00003 /* 00004 * This file is part of OpenTTD. 00005 * 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. 00006 * 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. 00007 * 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/>. 00008 */ 00009 00012 #ifndef BASE_CONSIST_H 00013 #define BASE_CONSIST_H 00014 00015 #include "order_type.h" 00016 #include "date_type.h" 00017 00019 struct BaseConsist { 00020 char *name; 00021 00022 /* Used for timetabling. */ 00023 uint32 current_order_time; 00024 int32 lateness_counter; 00025 Date timetable_start; 00026 00027 uint16 service_interval; 00028 00029 VehicleOrderID cur_real_order_index; 00030 VehicleOrderID cur_implicit_order_index; 00031 00032 uint16 vehicle_flags; 00033 00034 BaseConsist() : name(NULL) {} 00035 virtual ~BaseConsist(); 00036 00037 void CopyConsistPropertiesFrom(const BaseConsist *src); 00038 }; 00039 00040 #endif /* BASE_CONSIST_H */