InDesign SDK  20.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
IContentWriteIterator Class Referenceabstract

#include <IContentIterator.h>

Inheritance diagram for IContentWriteIterator:
CContentWriteIteratorSchemaBasedWriteIterator

Public Types

enum  ListType {
  kNoList, kAttributeList16, kAttributeList32, kAttributeBossList1616,
  kAttributeBossList1632, kAttributeBossList3216, kAttributeBossList3232
}
 

Public Member Functions

virtual ~IContentWriteIterator ()
 
virtual void BeginList (ListType listType)=0
 
virtual void EndList ()=0
 
virtual void CreateClassID (ClassID id)=0
 
virtual uint32 CloseClassID (ClassID id)=0
 
virtual void CreateImplementationID (ImplementationID id)=0
 
virtual uint32 CloseImplementationID (ImplementationID id)=0
 
virtual void AbortID ()=0
 
virtual void Reset ()=0
 
virtual int32 GetOriginPosition () const =0
 
virtual IPMStreamQueryContentStream ()=0
 

Detailed Description

This class is used by the Conversion Manager to iterate over the contents of persistent class or implementation's data. This iteration is a read-modify-write operation. IContentWriteIterator is used for the output part of the process.

Member Enumeration Documentation

Defines the characteristics of a nested list.
Enumerator
kNoList 

No list

kAttributeList16 

A list of attributes preceeded by a 16-bit count of the number of list elements

kAttributeList32 

A list of attributes preceeded by a 32-bit count of the number of list elements

kAttributeBossList1616 

A list of attribute bosses preceeded by a 16-bit count of the number of list elements The length, in bytes, of each boss' data is defined by a 16-bit value.

kAttributeBossList1632 

A list of attribute bosses preceeded by a 16-bit count of the number of list elements The length, in bytes, of each boss' data is defined by a 32-bit value.

kAttributeBossList3216 

A list of attribute bosses preceeded by a 32-bit count of the number of list elements The length, in bytes, of each boss' data is defined by a 16-bit value.

kAttributeBossList3232 

A list of attribute bosses preceeded by a 32-bit count of the number of list elements The length, in bytes, of each boss' data is defined by a 32-bit value.

Constructor & Destructor Documentation

virtual IContentWriteIterator::~IContentWriteIterator ()
inlinevirtual

Virtual destructor

Member Function Documentation

virtual void IContentWriteIterator::AbortID ()
pure virtual

Used as an alternative to CloseClassID() or CloseImplementationID() if the Conversion Manager decides to delete the data rather than convert it.

Implemented in CContentWriteIterator.

virtual void IContentWriteIterator::BeginList (ListType listType)
pure virtual

Called when starting a nested list of classes or implementations.

Parameters
listTypeIN The type of nested list we are creating.

Implemented in CContentWriteIterator.

virtual uint32 IContentWriteIterator::CloseClassID (ClassID id)
pure virtual

Called when data output for a particular class is complete.

Parameters
idIN The final class ID (may be different that the value passed to CreateClassID() if the class was renumbered during conversion).
Returns
The number of bytes of class data that were written.

Implemented in CContentWriteIterator.

virtual uint32 IContentWriteIterator::CloseImplementationID (ImplementationID id)
pure virtual

Called when data output for a particular implementation is complete.

Parameters
idIN The final implementation ID (may be different that the value passed to CreateImplementationID() if the implementation was renumbered during conversion).
Returns
The number of bytes of implementation data that were written.

Implemented in CContentWriteIterator.

virtual void IContentWriteIterator::CreateClassID (ClassID id)
pure virtual

Called when starting data output for a particular class.

Parameters
idIN The class ID.

Implemented in CContentWriteIterator.

virtual void IContentWriteIterator::CreateImplementationID (ImplementationID id)
pure virtual

Called when starting data output for a particular implementation.

Parameters
idIN The implementation ID.

Implemented in CContentWriteIterator.

virtual void IContentWriteIterator::EndList ()
pure virtual

Called when a nested list is complete.

Implemented in CContentWriteIterator.

virtual int32 IContentWriteIterator::GetOriginPosition () const
pure virtual

Returns the initial position of the output stream associated with this iterator. That is – the stream's position at the time the iterator was bound to it.

Returns
The original stream position.

Implemented in CContentWriteIterator.

virtual IPMStream* IContentWriteIterator::QueryContentStream ()
pure virtual

Returns an interface pointer to the iterator's associated output stream. The interface is add-refed prior to returning the pointer.

Returns
The stream pointer.

Implemented in CContentWriteIterator.

virtual void IContentWriteIterator::Reset ()
pure virtual

Called when the Conversion Manager is finished with this iterator. The iterator should flushing pending output, release cached resources, etc.

Implemented in CContentWriteIterator.