X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Flibmarklin%2Fblockiter.h;fp=source%2Flibmarklin%2Fblockiter.h;h=0000000000000000000000000000000000000000;hb=1ff06c5bc46a677fa389ef86c6b26664368f1653;hp=c86a4e5cf65a45df544551a465dfc88aae377478;hpb=9b05c573a38639827697fe393d55b7c76f5bde45;p=r2c2.git diff --git a/source/libmarklin/blockiter.h b/source/libmarklin/blockiter.h deleted file mode 100644 index c86a4e5..0000000 --- a/source/libmarklin/blockiter.h +++ /dev/null @@ -1,51 +0,0 @@ -/* $Id$ - -This file is part of the MSP Märklin suite -Copyright © 2010 Mikkosoft Productions, Mikko Rasa -Distributed under the GPL -*/ - -#ifndef LIBMARKLIN_BLOCKITER_H_ -#define LIBMARKLIN_BLOCKITER_H_ - -namespace Marklin { - -class Block; -class Route; -class TrackIter; - -/** -An iterator for traversing blocks. -*/ -class BlockIter -{ -private: - Block *_block; - unsigned _entry; - -public: - BlockIter(); - BlockIter(Block *, unsigned); - - Block *block() const { return _block; } - unsigned entry() const { return _entry; } - TrackIter track_iter() const; - const Block::Endpoint &endpoint() const; - -private: - int get_exit(const Route *) const; -public: - BlockIter next(const Route * = 0) const; - BlockIter reverse(const Route * = 0) const; - BlockIter flip() const; - - Block &operator*() const; - Block *operator->() const { return _block; } - bool operator==(const BlockIter &) const; - bool operator!=(const BlockIter &other) const { return !(*this==other); } - operator bool() const { return _block!=0; } -}; - -} // namespace Marklin - -#endif