TLinkableTransformedClipState is an abstract class derived from TClipState. The base class provides protocol for accessing the encapsulated clipping area, as well as functionality for maintaining a time stamp. To these functions, TLinkableTransformedClipState adds pure virtual member functions for creating a hierarchy of clipping areas. A hierarchy of clipping areas lets you create intersections of several clipping areas, each of which might correspond to a graphic in a hierarchy of graphics. Typically, the parent clip state corresponds to a graphic that contains another graphic, and the child clip state corresponds to the contained graphic.
You construct hierarchies by passing a parent clip state as an argument to TLinkableTransformedClipState::LinkTo. This function, as implemented by derived classes, intersects the child's and parent's clipping areas. First, however, it transforms the child's clipping area by a transformation matrix obtained from a TMatrixState object that was passed in as an argument to LinkTo. By including a coordinate system (represented by the TMatrixState) in the linking operation, TLinkableTransformedClipState allows the clipping area to transform itself into the correct coordinate system. This use of a transformation matrix gives the TLinkableTransformedClipState class its name. By comparison, the TLinkableClipState class has no facility for applying a transformation matrix during linking.
Links this object to the given parent clip state. During the linking process, the given transformation matrix is used to convert the clip state to the correct coordinate system. This is a pure virtual function that must be overridden by derived classes.
Calling Context:
Do not call this function directly.
Parameters:
const TClipState * parentClipState -The clip state to use as the parent.
const TMatrixState * matrixState -The transformation matrix to apply during the linking process.
Return Value:
None.
Exceptions:
Throws no exceptions, passes all exceptions through.
Returns a pointer to the shared time stamp of this object. The shared time stamp changes whenever any clip state within the hierarchy changes. This is a pure virtual function that must to be overridden by derived classes.
Calling Context:
Do not call this function directly.
Parameters:
Takes no parameters.
Return Value:
Returns a pointer to the shared time stamp of the hierarchy.
Exceptions:
Throws no exceptions, passes all exceptions through.