Class: TRGBSrcOutTransferMode

Declaration: RGBTransferModes.h

Taxonomy Categories:

Member Functions:


Interface Category:

API.

Inherits From:

TTransferMode

Inherited By:

None.

Purpose:

TRGBSrcOutTransferMode is a concrete class, derived from TTransferMode, for applying the source outside 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.) 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 the destination color is completely opaque (alpha =1.0) or the source color is completely transparent, the resulting color is a completely transparent white. Otherwise, the resultant RGB 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: TRGBSrcOutTransferMode::TRGBSrcOutTransferMode

  1. TRGBSrcOutTransferMode ()
  2. TRGBSrcOutTransferMode (const TRGBSrcOutTransferMode &)

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

virtual ~ TRGBSrcOutTransferMode ()

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

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

Interface Category:

API.

Purpose:

If the destination color is completely opaque (alpha =1.0), replaces the destination color with a completely transparent (alpha =0.0) white color. If the destination color is completely transparent (alpha =0.0), the destination is replaced by the source color. Otherwise, the destination color is replaced by the source color, with the resulting color's transparency component set to the product of the source's and inverse-destination's transparency components. 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: TRGBSrcOutTransferMode::GetSrcOutResult

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

Interface Category:

API.

Purpose:

If the destination color is completely opaque (alpha =1.0), replaces the destination color with a completely transparent (alpha =0.0) white color. If the destination color is completely transparent (alpha =0.0), the destination is replaced by the source color. Otherwise, the destination color is replaced by the source color, with the resulting color's transparency component set to the product of the source's and inverse-destination's transparency components. 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: TRGBSrcOutTransferMode::operator=

TRGBSrcOutTransferMode & operator =(const TRGBSrcOutTransferMode & 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: TRGBSrcOutTransferMode::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: TRGBSrcOutTransferMode::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: TRGBSrcOutTransferMode::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 kRGBSrcOutTransferMode.

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.