Class: TGraySrcOutTransferMode

Declaration: GrayTransferModes.h

Taxonomy Categories:

Member Functions:


Interface Category:

API.

Inherits From:

TTransferMode

Inherited By:

None.

Purpose:

TGraySrcOutTransferMode is a concrete class, derived from TTransferMode, for applying the source outside compositing operation using a grayscale. (The source and destination colors need not be grayscale, but the resulting color is always a gray.) The result of the source outside operation contains only the source pixels that are outside the destination area. If the destination color is completely transparent (alpha =0.0), this transfer mode copies the source color to the destination. On the other hand, if either the source or the destination color is completely opaque (alpha =1.0), the resulting color is a completely transparent white. Otherwise, the resultant gray value is determined by the source color only, and the resultant transparency is a combination of the source's and destination's transparency values.

Instantiation:

Allocate on the heap or the stack.

Deriving Classes:

None.

Concurrency:

Not multithread safe.

Resource Use:

No special requirements.

Member Function: TGraySrcOutTransferMode::TGraySrcOutTransferMode

  1. TGraySrcOutTransferMode ()
  2. TGraySrcOutTransferMode (const TGraySrcOutTransferMode &)

Interface Category:

API.

Purpose:

  1. Default constructor.
  2. Copy constructor.

Calling Context:

  1. Called by the stream-in operators. You can also call this constructor directly.
  2. Called to copy an object.

Parameters:

Return Value:

None.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

Not multithread safe.

Other Considerations:

None.

Member Function: TGraySrcOutTransferMode::~TGraySrcOutTransferMode

virtual ~ TGraySrcOutTransferMode ()

Interface Category:

API.

Purpose:

Destructor.

Calling Context:

Called to destroy an object.

Parameters:

Return Value:

None.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

Not multithread safe.

Other Considerations:

None.

Member Function: TGraySrcOutTransferMode::GetResultingColor

virtual void GetResultingColor (const TColor & sourceColor, const TColor & destColor, TColor & resultingColor) const

Interface Category:

API.

Purpose:

Replaces the destination color with the source color, taking into account the transparency value of the two colors. If the destination color is completely transparent (alpha =0.0), this transfer mode copies the source color to the destination. On the other hand, if either the source or the destination color is completely opaque (alpha =1.0), the resulting color is a completely transparent white. Otherwise, the resultant gray value is determined by the source color only, and the resultant transparency is a combination of the source's and destination's transparency values. The resulting color is returned in a TColor object.

Calling Context:

Call this function directly.

Parameters:

Return Value:

None.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

Not multithread safe.

Other Considerations:

None.

Member Function: TGraySrcOutTransferMode::GetSrcOutResult

static void GetSrcOutResult (const TGrayColor & sourceColor, const TGrayColor & destColor, TGrayColor & resultingColor)

Interface Category:

API.

Purpose:

Replaces the destination color with the source color, taking into account the transparency value of the two colors. If the destination color is completely transparent (alpha =0.0), this transfer mode copies the source color to the destination. On the other hand, if either the source or the destination color is completely opaque (alpha =1.0), the resulting color is a completely transparent white. Otherwise, the resultant gray value is determined by the source color only, and the resultant transparency is a combination of the source's and destination's transparency values. The resulting color is returned in a TGrayColor object.

Calling Context:

Call this function directly.

Parameters:

Return Value:

None.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

Not multithread safe.

Other Considerations:

None.

Member Function: TGraySrcOutTransferMode::operator=

TGraySrcOutTransferMode & operator =(const TGraySrcOutTransferMode & source)

Interface Category:

API.

Purpose:

Assignment operator.

Calling Context:

Call this function by using the operator in an assignment statement.

Parameters:

Return Value:

A non-const reference to the left-hand side object.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

Not multithread safe.

Other Considerations:

None.

Member Function: TGraySrcOutTransferMode::operator>>=

virtual TStream & operator >>=(TStream & towhere) const

Interface Category:

API.

Purpose:

Stream-out operator.

Calling Context:

Called to stream out data.

Parameters:

Return Value:

Returns a reference to the stream the object streams itself out to.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

Not multithread safe.

Other Considerations:

None.

Member Function: TGraySrcOutTransferMode::operator<<=

virtual TStream & operator <<= (TStream & fromwhere)

Interface Category:

API.

Purpose:

Stream-in operator.

Calling Context:

Called to stream in data.

Parameters:

Return Value:

Returns a reference to the stream the object streams itself in from.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

Not multithread safe.

Other Considerations:

None.

Member Function: TGraySrcOutTransferMode::TemporaryTypeID

virtual ETransferModeClassID TemporaryTypeID () const

Interface Category:

API.

Purpose:

Returns the type of transfer mode this class represents.

Calling Context:

Call this function directly.

Parameters:

Return Value:

Returns an ETransferModeClassID with value kGraySrcOutTransferMode.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

Not multithread safe.

Other Considerations:

None.
Click the icon to mail questions or corrections about this material to Taligent personnel.
Copyright©1995 Taligent,Inc. All rights reserved.