/** * Called by the fore runner after finish line to stop all other runners. */ void RelayRace::stopRunners(void) { std::vector<RelayRunner*>::const_iterator it; for (it = runners.begin() + 1; it != runners.end(); ++it) { RelayRunner* runner = *it; if (runner) { runner->finishRace(); } } }
/** * Called when a runner other than the forerunner reaches the finish line. * * Only the fore runner can finish the race, so inform him that the race is * finished. */ void RelayRace::finishLine(void) { RelayRunner *foreRunner = getForeRunner(); foreRunner->finishRace(); }