Class: TRGBDstAtopTransferMode

Declaration: RGBTransferModes.h

Taxonomy Categories:

Member Functions:


Interface Category:

API.

Inherits From:

TTransferMode

Inherited By:

None.

Purpose:

TRGBDstAtopTransferMode is a concrete class, derived from TTransferMode, for applying the destination atop compositing operation using the RGB color space. (The source and destination colors need not be TRGBColors, and the resulting color is converted from RGB to the specified color space.) In the destination atop transfer mode, the destination is placed over the source, but only where the source is not completely transparent. If the source color is completely transparent (alpha =0.0), the resultant color is a completely transparent white. Otherwise, if the destination color is completely transparent, the resultant color is determined by the source only. Otherwise, the resultant transparency value is determined by the source only, and the resultant RGB value is determined by both the source and the destination.

Instantiation:

Allocate on the heap or the stack.

Deriving Classes:

None.

Concurrency:

Not multithread safe.

Resource Use:

No special requirements.

Member Function: TRGBDstAtopTransferMode::TRGBDstAtopTransferMode

  1. TRGBDstAtopTransferMode ()
  2. TRGBDstAtopTransferMode (const TRGBDstAtopTransferMode &)

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: TRGBDstAtopTransferMode::~TRGBDstAtopTransferMode

virtual ~ TRGBDstAtopTransferMode ()

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: TRGBDstAtopTransferMode::GetResultingColor

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

Interface Category:

API.

Purpose:

As long as the destination color has some opacity (is not completely transparent), replaces the source color with the destination color. If the destination color is completely transparent, the resulting color is set to the original source color. If the source is completely transparent (alpha =0.0), the resulting color is set to a completely transparent white color. The amount of opacity of the destination color determines how much of the destination's red, green, and blue components are added to the source's components. The transparency component of the resulting color is set to that of the source's original transparency. All parameters are passed as TColor objects.

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: TRGBDstAtopTransferMode::GetDstAtopResult

static void GetDstAtopResult (const TRGBColor & sourceColor, const TRGBColor & destColor, TRGBColor & resultingColor)

Interface Category:

API.

Purpose:

As long as the destination color has some opacity (is not completely transparent), replaces the source color with the destination color. If the destination color is completely transparent, the resulting color is set to the original source color. If the source is completely transparent (alpha =0.0), the resulting color is set to a completely transparent white color. The amount of opacity of the destination color determines how much of the destination's red, green, and blue components are added to the source's components. The transparency component of the resulting color is set to that of the source's original transparency. All parameters are passed as TRGBColor objects.

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: TRGBDstAtopTransferMode::operator=

TRGBDstAtopTransferMode & operator =(const TRGBDstAtopTransferMode & 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: TRGBDstAtopTransferMode::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: TRGBDstAtopTransferMode::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: TRGBDstAtopTransferMode::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 kRGBDstAtopTransferMode.

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.