Mercurial > hg > orthanc-wsi
diff Framework/Inputs/DicomPyramidLevel.h @ 55:b6432a00b103
use of simpler data structures
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Thu, 24 Nov 2016 14:44:11 +0100 |
parents | 4a7a53257c7d |
children | 83cd735c885d |
line wrap: on
line diff
--- a/Framework/Inputs/DicomPyramidLevel.h Thu Nov 24 12:59:50 2016 +0100 +++ b/Framework/Inputs/DicomPyramidLevel.h Thu Nov 24 14:44:11 2016 +0100 @@ -29,17 +29,28 @@ class DicomPyramidLevel : public boost::noncopyable { private: - typedef std::pair<unsigned int, unsigned int> TileLocation; - typedef std::pair<const DicomPyramidInstance*, unsigned int> TileContent; - typedef std::map<TileLocation, TileContent> Tiles; - typedef std::list<const DicomPyramidInstance*> Instances; + struct TileContent + { + const DicomPyramidInstance* instance_; + unsigned int frame_; - unsigned int totalWidth_; - unsigned int totalHeight_; - unsigned int tileWidth_; - unsigned int tileHeight_; - Instances instances_; - Tiles tiles_; + TileContent() : + instance_(NULL), + frame_(0) + { + } + }; + + unsigned int totalWidth_; + unsigned int totalHeight_; + unsigned int tileWidth_; + unsigned int tileHeight_; + unsigned int countTilesX_; + unsigned int countTilesY_; + std::vector<TileContent> tiles_; + + TileContent& GetTileContent(unsigned int tileX, + unsigned int tileY); void RegisterFrame(const DicomPyramidInstance& instance, unsigned int frame);