InDesign SDK  20.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
IContentIterator.h
1 //========================================================================================
2 //
3 // $File$
4 //
5 // Owner: Steve Pellegrin
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 
24 #if !defined(__IContentIterator__)
25 #define __IContentIterator__
26 
27 // ----- Interfaces -----
28 
29 #include "IPMUnknown.h" // for
30 
31 class IPMStream;
32 
33 
34 //----------------------------------------------------------------------------------------
35 // IContentWriteIterator
36 //----------------------------------------------------------------------------------------
37 
44 {
45 public:
48  enum ListType
49  {
68  };
69 
70 public:
74  {}
75 
79  virtual void BeginList(ListType listType) = 0;
80 
83  virtual void EndList() = 0;
84 
88  virtual void CreateClassID(ClassID id) = 0;
89 
95  virtual uint32 CloseClassID(ClassID id) = 0;
96 
100  virtual void CreateImplementationID(ImplementationID id) = 0;
101 
107  virtual uint32 CloseImplementationID(ImplementationID id) = 0;
108 
112  virtual void AbortID() = 0;
113 
117  virtual void Reset() = 0;
118 
123  virtual int32 GetOriginPosition() const = 0;
124 
129  virtual IPMStream *QueryContentStream() = 0;
130 };
131 
132 
133 //----------------------------------------------------------------------------------------
134 // IContentReadIterator
135 //----------------------------------------------------------------------------------------
136 
143 {
144 public:
148  {}
149 
154  virtual bool16 IsClassID() const = 0;
155 
159  virtual ClassID GetClassID() const = 0;
160 
164  virtual ImplementationID GetImplementationID() const = 0;
165 
169  virtual uint32 GetLength() const = 0;
170 
174  virtual bool16 Next() = 0;
175 
179  virtual bool16 EndOfList() const = 0;
180 
185  virtual void Reset(IContentWriteIterator *out = nil) = 0;
186 
187 
192  virtual int32 GetOriginPosition() const = 0;
193 
198  virtual IPMStream *QueryContentStream() = 0;
199 };
200 
201 #endif // __IContentIterator__