Changeset - r9990:11fe53c71e1b
[Not reviewed]
master
0 1 0
frosch - 16 years ago 2008-08-23 22:31:36
frosch@openttd.org
(svn r14147) -Codechange: Allow passing 'const Vehicle *' to GetNextUnit() and GetPrevUnit().
1 file changed with 8 insertions and 8 deletions:
0 comments (0 inline, 0 general)
src/train.h
Show inline comments
 
@@ -256,44 +256,44 @@ static inline Vehicle *GetPrevVehicle(co
 
	assert(w->type == VEH_TRAIN);
 

	
 
	Vehicle *v = w->Previous();
 
	while (v != NULL && IsArticulatedPart(v)) v = v->Previous();
 

	
 
	return v;
 
}
 

	
 
/** Get the next real (non-articulated part and non rear part of dualheaded engine) vehicle in the consist.
 
 * @param v Vehicle.
 
 * @return Next vehicle in the consist.
 
 */
 
static inline Vehicle *GetNextUnit(Vehicle *v)
 
static inline Vehicle *GetNextUnit(const Vehicle *v)
 
{
 
	assert(v->type == VEH_TRAIN);
 
	v = GetNextVehicle(v);
 
	if (v != NULL && IsRearDualheaded(v)) v = GetNextVehicle(v);
 
	Vehicle *w = GetNextVehicle(v);
 
	if (w != NULL && IsRearDualheaded(w)) w = GetNextVehicle(w);
 

	
 
	return v;
 
	return w;
 
}
 

	
 
/** Get the previous real (non-articulated part and non rear part of dualheaded engine) vehicle in the consist.
 
 * @param v Vehicle.
 
 * @return Previous vehicle in the consist.
 
 */
 
static inline Vehicle *GetPrevUnit(Vehicle *v)
 
static inline Vehicle *GetPrevUnit(const Vehicle *v)
 
{
 
	assert(v->type == VEH_TRAIN);
 
	v = GetPrevVehicle(v);
 
	if (v != NULL && IsRearDualheaded(v)) v = GetPrevVehicle(v);
 
	Vehicle *w = GetPrevVehicle(v);
 
	if (w != NULL && IsRearDualheaded(w)) w = GetPrevVehicle(w);
 

	
 
	return v;
 
	return w;
 
}
 

	
 
void ConvertOldMultiheadToNew();
 
void ConnectMultiheadedTrains();
 

	
 
void CcBuildLoco(bool success, TileIndex tile, uint32 p1, uint32 p2);
 
void CcBuildWagon(bool success, TileIndex tile, uint32 p1, uint32 p2);
 

	
 
byte FreightWagonMult(CargoID cargo);
 

	
 
int CheckTrainInDepot(const Vehicle *v, bool needs_to_be_stopped);
 
int CheckTrainStoppedInDepot(const Vehicle *v);
0 comments (0 inline, 0 general)