InDesign SDK  20.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
IImageCache.h
1 //========================================================================================
2 //
3 // $File$
4 //
5 // Owner: Dave Stephens
6 //
7 // $Author$
8 //
9 // $DateTime$
10 //
11 // $Revision$
12 //
13 // $Change$
14 //
15 // Copyright 1997-2010 Adobe Systems Incorporated. All rights reserved.
16 //
17 // NOTICE: Adobe permits you to use, modify, and distribute this file in accordance
18 // with the terms of the Adobe license agreement accompanying it. If you have received
19 // this file from a source other than Adobe, then your use, modification, or
20 // distribution of it requires the prior written permission of Adobe.
21 //
22 //
23 // Purpose of Interface:
24 // The IImageCache is a wrapper around an AGMImageRecord which provides a mechanism
25 // for storing statistical data such as amount of time used to create the cache, resolution
26 // of the cache, frequency of use, etc.
27 //
28 // References: The IImageCacheMgr manages a list of IImageCache objects.
29 //
30 //========================================================================================
31 
32 #ifndef __IImageCache__
33 #define __IImageCache__
34 
35 #include "AGMImageAccessor.h"
36 #include "GraphicsData.h"
37 
38 #include "IPMUnknown.h"
39 #include "ColorSystemID.h"
40 #include "BravoForwardDecl.h"
41 
42 class PMMatrix;
43 class IGeometry;
44 
49 class IImageCache : public IPMUnknown
50 {
51 public:
66  virtual void Init(AGMImageAccessor* image, uint32 resolution, uint32 ticksToGenerate, uint32 profileChecksum = 0L, const PMMatrix& adjustmentMatrix = PMMatrix()) = 0;
67 
70  virtual uint32 GetResolution(void) const = 0;
71 
75  virtual uint32 GetSize(void) const = 0;
76 
79  virtual uint32 GetGenerateTime(void) const = 0;
80 
83  virtual uint32 GetLastDrawTime(void) const = 0;
84 
87  virtual uint32 GetDrawCount(void) const = 0;
88 
91  virtual uint32 GetColorFamily(void) const = 0;
92 
95  virtual uint32 GetProfileChecksum(void) const = 0;
96 
99  virtual const PMMatrix& GetAdjustmentMatrix(void) const = 0;
100 
103  virtual AGMImageAccessor* GetImageAccessor(void) const = 0;
104 
112  virtual void Draw(const GraphicsData* gd, IGeometry* imageGeometry, const PMMatrix& additionalXform = PMMatrix(), const AGMColorSpace* colorSpace = nil, const PMReal& tint = kDefaultTintPercent) = 0;
113 };
114 
115 #endif