18e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener/*****************************************************************************/ 28e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener// Copyright 2006 Adobe Systems Incorporated 38e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener// All Rights Reserved. 48e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener// 58e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener// NOTICE: Adobe permits you to use, modify, and distribute this file in 68e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener// accordance with the terms of the Adobe license agreement accompanying it. 78e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener/*****************************************************************************/ 88e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener 98e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener/* $Id: //mondo/dng_sdk_1_4/dng_sdk/source/dng_tile_iterator.h#1 $ */ 108e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener/* $DateTime: 2012/05/30 13:28:51 $ */ 118e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener/* $Change: 832332 $ */ 128e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener/* $Author: tknoll $ */ 138e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener 148e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener/*****************************************************************************/ 158e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener 168e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener#ifndef __dng_tile_iterator__ 178e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener#define __dng_tile_iterator__ 188e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener 198e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener/*****************************************************************************/ 208e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener 218e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener#include "dng_classes.h" 228e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener#include "dng_point.h" 238e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener#include "dng_rect.h" 248e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener#include "dng_types.h" 258e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener 268e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener/*****************************************************************************/ 278e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener 288e8939fc10ad63576a2785ba1333a23726b7e164Florian Krienerclass dng_tile_iterator 298e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener { 308e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener 318e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener private: 328e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener 338e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener dng_rect fArea; 348e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener 358e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener int32 fTileWidth; 368e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener int32 fTileHeight; 378e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener 388e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener int32 fTileTop; 398e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener int32 fTileLeft; 408e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener 418e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener int32 fRowLeft; 428e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener 438e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener int32 fLeftPage; 448e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener int32 fRightPage; 458e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener 468e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener int32 fTopPage; 478e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener int32 fBottomPage; 488e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener 498e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener int32 fHorizontalPage; 508e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener int32 fVerticalPage; 518e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener 528e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener public: 538e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener 548e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener dng_tile_iterator (const dng_image &image, 558e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener const dng_rect &area); 568e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener 578e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener dng_tile_iterator (const dng_point &tileSize, 588e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener const dng_rect &area); 598e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener 608e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener dng_tile_iterator (const dng_rect &tile, 618e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener const dng_rect &area); 628e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener 638e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener bool GetOneTile (dng_rect &tile); 648e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener 658e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener private: 668e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener 678e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener void Initialize (const dng_rect &tile, 688e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener const dng_rect &area); 698e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener 708e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener }; 718e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener 728e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener/*****************************************************************************/ 738e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener 748e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener#endif 758e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener 768e8939fc10ad63576a2785ba1333a23726b7e164Florian Kriener/*****************************************************************************/ 77