MeVisLabToolboxReference
MeVis/Foundation/Sources/MLBackgroundTasks/mlTileIterator.h
Go to the documentation of this file.
00001 // **InsertLicense** code
00002 //----------------------------------------------------------------------------------
00009 //----------------------------------------------------------------------------------
00010 
00011 
00012 #ifndef __mlTileIterator_H
00013 #define __mlTileIterator_H
00014 
00015 
00016 // Local includes
00017 #include "MLBackgroundTasksSystem.h"
00018 #include "mlSubImage.h"
00019 
00020 ML_START_NAMESPACE
00021 
00024 class MLBACKGROUNDTASKS_EXPORT TileIterator
00025 {
00026 public:
00027   TileIterator();
00028 
00030   void init(const SubImageBox& region, const ImageVector& tileExtent);
00031 
00033   void setClipTiles(bool clip) { _clip = clip; }
00034 
00036   MLint getNumTiles() const { return _numTiles; }
00037 
00039   SubImageBox getNextTile();
00040 
00041 private:
00042   SubImageBox _region;
00043   ImageVector    _currentTilePosition;
00044   ImageVector    _tileExtent;
00045   MLint     _numTiles;
00046   bool      _clip;
00047 };
00048 
00049 
00050 ML_END_NAMESPACE
00051 
00052 #endif
00053 
00054