KCMS CMM Reference Manual

Public Members

The KcsXformSeq class has the following public members.

Table 9-2 KcsXformSeq Public Members

Public Member 

Description 

virtual KcsStatus addAsParent(KcsXformSeq *parent);

Adds a parent to my list of parents. 

virtual KcsStatus delAsParent(KcsXformSeq *parent);

Deletes a parent from my list of parents. Decrements the parent use count and unshares the parent. 

virtual KcsStatus deOptimize();

Deoptimizes this sequence. If the original data is not available, returns KCS_CANNOT_DEOPTIMIZE.

virtual KcsStatus
evalSegment(const KcsOperationType opsAndHints,
 	KcsPixelLayout *inBuffer,
 	KcsPixelLayout *outBUffer,
 	KcsCallbackFunction progress);

Evaluates the inBuffer data through the sequence of Xforms described by this instance into outBuffer.

virtual KcsStatus
 getLeftmostXform(long *n,
 	KcsXformSeq **pnextXform,
 	KcsXform **nextXform);

Gets the leftmost basic Xform in the sequence. Returns the parent of the xform(pnextXform) and the number of the Xform within that sequence. Recurses to the true leftmost.

virtual KcsStatus
 getNextXform(KcsXformSeq **pnextXform,
 	KcsXform **nextXform);

Gets the next basic Xform in the sequence. Returns the parent of the xform(pnextXform). Unrolls a sequence into a list of its most basic Xforms. Returns KCS_END_OF_XFORMS when it reaches the last Xform in the sequence.

virtual long getOrigNumber() const
 	{return(numOriginalXforms);};;

Returns the number of KcsXforms in the sequence.

virtual KcsStatus
 getRightmostXform(long *n,
 	KcsXformSeq **pnextXform,
 	KcsXform **nextXform);

Gets the rightmost basic Xform in the sequence. Returns the parent of the xform(pnextXform) and the number of the Xform within that sequence. Recurses to the true rightmost.

virtual KcsStatus
 getXform(long n, KcsXform **anXform);

Gets the nth Xform in the list. Applies only to this sequence. It does not recurse through sequences of sequences.

virtual KcsStatus
 insertXform(long n, KcsXform *anXform);

Adds the Xform in the nth position in the list. It is not recursive.

virtual KcsOptimizationType isOptimized();

Indicates if the sequence is optimized. 

KcsXformSeq(KcsStatus *status,
 	KcsAttributeSet *aAttrSet = NULL);

Constructors from a sequence of 0 Xforms. 

KcsXformSeq(KcsStatus *status,
 	const KcsOperationType opsAndHints,
 	KcsChunkSet *aChunkSet,
 	KcsChunkId chunkId,
 	KcsAttributeSet *aAttrSet = NULL);

Constructors from a chunk set object. 

KcsXformSeq(const KcsOperationType opsAndHints,
 	const long numXforms, KcsXform **technologies,
 	KcsCallbackFunction progress,
 	long *numberThatFailed, KcsStatus *stat,
 	KcsAttributeSet *aAttrSet = NULL);

Constructors based on the list of Xforms supplied. 

virtual ~KcsXformSeq();

Destructor. 

virtual KcsOptimizationType isOptimized();

Queries whether this sequence has been optimized. 

virtual KcsStatus
 optimizeLineage(const KcsOperationType opsAndHints,
 	const KcsOptimizationType optimization,
 	KcsCallbackFunction prog);

Optimizes this Xform and all of its lineages. Does not optimize parents since a parent use count is kept. 

virtual KcsStatus 
removeXform(long n);

Deletes the nth Xform in the list. It is not recursive.

virtual KcsStatus
 replaceXform(long n, KcsXform *anXform);

Replaces the Xform in the nth position in the list with an Xform. It is not recursive.