summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorrubidium <rubidium@openttd.org>2009-10-19 09:15:47 +0000
committerrubidium <rubidium@openttd.org>2009-10-19 09:15:47 +0000
commit08ac51fada56ee84a98ced07c2ec9a1b16bd8692 (patch)
tree7975e0cae230445acefafd170adcc975dd2f6c42
parent2cca30d2e308ca63eacdfcc9d45920c4b2f2a37c (diff)
downloadopenttd-08ac51fada56ee84a98ced07c2ec9a1b16bd8692.tar.xz
(svn r17813) -Codechange: unify the CargoPacket related coding style
-rw-r--r--src/cargopacket.cpp28
-rw-r--r--src/cargopacket.h6
-rw-r--r--src/saveload/cargopacket_sl.cpp4
-rw-r--r--src/station_gui.cpp4
4 files changed, 23 insertions, 19 deletions
diff --git a/src/cargopacket.cpp b/src/cargopacket.cpp
index 08c504bc9..06a683d0c 100644
--- a/src/cargopacket.cpp
+++ b/src/cargopacket.cpp
@@ -73,7 +73,7 @@ CargoPacket::CargoPacket(uint16 count, byte days_in_transit, StationID source, T
{
CargoPacket *cp;
FOR_ALL_CARGOPACKETS(cp) {
- if (cp->source == sid) cp->source_id = INVALID_SOURCE;
+ if (cp->source == sid) cp->source = INVALID_STATION;
}
}
@@ -86,9 +86,8 @@ CargoPacket::CargoPacket(uint16 count, byte days_in_transit, StationID source, T
template <class Tinst>
CargoList<Tinst>::~CargoList()
{
- while (!this->packets.empty()) {
- delete this->packets.front();
- this->packets.pop_front();
+ for (Iterator it(this->packets.begin()); it != this->packets.end(); ++it) {
+ delete *it;
}
}
@@ -111,7 +110,7 @@ void CargoList<Tinst>::Append(CargoPacket *cp)
{
assert(cp != NULL);
- for (List::iterator it = this->packets.begin(); it != this->packets.end(); it++) {
+ for (Iterator it(this->packets.begin()); it != this->packets.end(); it++) {
CargoPacket *icp = *it;
if (Tinst::AreMergable(icp, cp) && icp->count + cp->count <= CargoPacket::MAX_COUNT) {
icp->count += cp->count;
@@ -132,11 +131,11 @@ void CargoList<Tinst>::Append(CargoPacket *cp)
template <class Tinst>
void CargoList<Tinst>::Truncate(uint max_remaining)
{
- for (List::iterator it = packets.begin(); it != packets.end(); /* done during loop*/) {
+ for (Iterator it(packets.begin()); it != packets.end(); /* done during loop*/) {
CargoPacket *cp = *it;
if (max_remaining == 0) {
/* Nothing should remain, just remove the packets. */
- packets.erase(it++);
+ this->packets.erase(it++);
static_cast<Tinst *>(this)->RemoveFromCache(cp);
delete cp;
continue;
@@ -163,8 +162,8 @@ bool CargoList<Tinst>::MoveTo(Tother_inst *dest, uint max_move, MoveToAction mta
assert(mta == MTA_FINAL_DELIVERY || dest != NULL);
assert(mta == MTA_UNLOAD || mta == MTA_CARGO_LOAD || payment != NULL);
- List::iterator it = packets.begin();
- while (it != packets.end() && max_move > 0) {
+ Iterator it(this->packets.begin());
+ while (it != this->packets.end() && max_move > 0) {
CargoPacket *cp = *it;
if (cp->source == data && mta == MTA_FINAL_DELIVERY) {
/* Skip cargo that originated from this station. */
@@ -241,7 +240,7 @@ void CargoList<Tinst>::InvalidateCache()
this->count = 0;
this->cargo_days_in_transit = 0;
- for (List::const_iterator it = this->packets.begin(); it != this->packets.end(); it++) {
+ for (ConstIterator it(this->packets.begin()); it != this->packets.end(); it++) {
static_cast<Tinst *>(this)->AddToCache(*it);
}
}
@@ -261,12 +260,13 @@ void VehicleCargoList::AddToCache(const CargoPacket *cp)
void VehicleCargoList::AgeCargo()
{
- for (List::const_iterator it = this->packets.begin(); it != this->packets.end(); it++) {
+ for (ConstIterator it(this->packets.begin()); it != this->packets.end(); it++) {
+ CargoPacket *cp = *it;
/* If we're at the maximum, then we can't increase no more. */
- if ((*it)->days_in_transit == 0xFF) continue;
+ if (cp->days_in_transit == 0xFF) continue;
- (*it)->days_in_transit++;
- this->cargo_days_in_transit += (*it)->count;
+ cp->days_in_transit++;
+ this->cargo_days_in_transit += cp->count;
}
}
diff --git a/src/cargopacket.h b/src/cargopacket.h
index 90081855e..692cbb91b 100644
--- a/src/cargopacket.h
+++ b/src/cargopacket.h
@@ -185,8 +185,12 @@ public:
template <class Tinst>
class CargoList {
public:
- /** List of cargo packets */
+ /** Container with cargo packets */
typedef std::list<CargoPacket *> List;
+ /** The iterator for our container */
+ typedef List::iterator Iterator;
+ /** The const iterator for our container */
+ typedef List::const_iterator ConstIterator;
/** Kind of actions that could be done with packets on move */
enum MoveToAction {
diff --git a/src/saveload/cargopacket_sl.cpp b/src/saveload/cargopacket_sl.cpp
index dc0d3cc95..57081fc51 100644
--- a/src/saveload/cargopacket_sl.cpp
+++ b/src/saveload/cargopacket_sl.cpp
@@ -28,7 +28,7 @@
*/
FOR_ALL_VEHICLES(v) {
const VehicleCargoList::List *packets = v->cargo.Packets();
- for (VehicleCargoList::List::const_iterator it = packets->begin(); it != packets->end(); it++) {
+ for (VehicleCargoList::ConstIterator it(packets->begin()); it != packets->end(); it++) {
CargoPacket *cp = *it;
cp->source_xy = Station::IsValidID(cp->source) ? Station::Get(cp->source)->xy : v->tile;
cp->loaded_at_xy = cp->source_xy;
@@ -47,7 +47,7 @@
GoodsEntry *ge = &st->goods[c];
const StationCargoList::List *packets = ge->cargo.Packets();
- for (StationCargoList::List::const_iterator it = packets->begin(); it != packets->end(); it++) {
+ for (StationCargoList::ConstIterator it(packets->begin()); it != packets->end(); it++) {
CargoPacket *cp = *it;
cp->source_xy = Station::IsValidID(cp->source) ? Station::Get(cp->source)->xy : st->xy;
cp->loaded_at_xy = cp->source_xy;
diff --git a/src/station_gui.cpp b/src/station_gui.cpp
index a02385984..1822c92b3 100644
--- a/src/station_gui.cpp
+++ b/src/station_gui.cpp
@@ -825,7 +825,7 @@ struct StationViewWindow : public Window {
/* Add an entry for each distinct cargo source. */
const StationCargoList::List *packets = st->goods[i].cargo.Packets();
- for (StationCargoList::List::const_iterator it = packets->begin(); it != packets->end(); it++) {
+ for (StationCargoList::ConstIterator it(packets->begin()); it != packets->end(); it++) {
const CargoPacket *cp = *it;
if (cp->SourceStation() != station_id) {
bool added = false;
@@ -837,7 +837,7 @@ struct StationViewWindow : public Window {
if (!HasBit(this->cargo, i)) break;
/* Check if we already have this source in the list */
- for (CargoDataList::iterator jt = cargolist.begin(); jt != cargolist.end(); jt++) {
+ for (CargoDataList::iterator jt(cargolist.begin()); jt != cargolist.end(); jt++) {
CargoData *cd = &(*jt);
if (cd->cargo == i && cd->source == cp->SourceStation()) {
cd->count += cp->Count();