# IShPixelBucketUtilities Struct Reference
[MCImage]

Pixel bucket utilities. More...

Inheritance diagram for IShPixelBucketUtilities:

List of all members.

## Public Member Functions
virtual MCCOMErr MCCOMAPI | PlanarToChunkyOneAlpha (const TMCPixelBucket *p1, const TMCPixelBucket *p2, const TMCPixelBucket *p3, const TMCPixelBucket *target, boolean doEMMS)=0
virtual MCCOMErr MCCOMAPI | PlanarToChunkyOneAlpha (const TMCPixelBucket *p1, const TMCPixelBucket *p2, const TMCPixelBucket *p3, const TMCPixelBucket *target, const TMCRect *inRect, boolean doEMMS)=0
virtual MCCOMErr MCCOMAPI | PlanarToChunkyOneAlpha (const TMCPixelBucket *p1, const TMCPixelBucket *p2, const TMCPixelBucket *p3, const TMCPixelBucket *dest, const TMCRect *srcRect, const TMCRect *dstRect, boolean doEMMS)=0
virtual MCCOMErr MCCOMAPI | PlanarToChunkyOneAlphaTo8 (const TMCPixelBucket *p1, const TMCPixelBucket *p2, const TMCPixelBucket *p3, const TMCPixelBucket *dest, boolean doEMMS)=0
virtual MCCOMErr MCCOMAPI | PlanarToChunkyOneAlphaTo8 (const TMCPixelBucket *p1, const TMCPixelBucket *p2, const TMCPixelBucket *p3, const TMCPixelBucket *dest, const TMCRect *inRect, boolean doEMMS)=0
virtual MCCOMErr MCCOMAPI | PlanarToChunkyOneAlphaTo8 (const TMCPixelBucket *p1, const TMCPixelBucket *p2, const TMCPixelBucket *p3, const TMCPixelBucket *dest, const TMCRect *srcRect, const TMCRect *dstRect, boolean doEMMS)=0
virtual MCCOMErr MCCOMAPI | PlanarToChunkyOneAlphaTo8_w16 (const TMCPixelBucket *p1, const TMCPixelBucket *p2, const TMCPixelBucket *p3, const TMCPixelBucket *dest, boolean doEMMS)=0
virtual MCCOMErr MCCOMAPI | PlanarToChunkyOneAlphaTo8_w16 (const TMCPixelBucket *p1, const TMCPixelBucket *p2, const TMCPixelBucket *p3, const TMCPixelBucket *dest, const TMCRect *inRect, boolean doEMMS)=0
virtual MCCOMErr MCCOMAPI | PlanarToChunkyOneAlphaTo8_w16 (const TMCPixelBucket *p1, const TMCPixelBucket *p2, const TMCPixelBucket *p3, const TMCPixelBucket *dest, const TMCRect *srcRect, const TMCRect *dstRect, boolean doEMMS)=0
virtual MCCOMErr MCCOMAPI | ChunkyToPlanarNoAlpha (const TMCPixelBucket *source, const TMCPixelBucket *p1, const TMCPixelBucket *p2, const TMCPixelBucket *p3, boolean doEMMS)=0
virtual MCCOMErr MCCOMAPI | Convert8To16 (const TMCPixelBucket *src, const TMCPixelBucket *dest)=0
| convert a 8 bit channel to a 16 bit channel
virtual MCCOMErr MCCOMAPI | Convert16To8 (const TMCPixelBucket *src, const TMCPixelBucket *dest)=0
| downsample from 16 to 8 bit a channel
virtual MCCOMErr MCCOMAPI | CopyBucket (const TMCPixelBucket *src, const TMCPixelBucket *dest)=0
| copy a bucket to an other
virtual boolean MCCOMAPI | SameSize (const TMCPixelBucket *p1, const TMCPixelBucket *p2)=0
virtual boolean MCCOMAPI | SameSize (const TMCPixelBucket *p1, const TMCPixelBucket *p2, const TMCPixelBucket *p3)=0
virtual boolean MCCOMAPI | InSize (const TMCPixelBucket *p1, const TMCPixelBucket *p2)=0
virtual void MCCOMAPI | FillRect16 (TMCPixelBucket *destBucket, const TMCRect &fillArea, uint16 fillValue)=0
| fills a subrect fillArea of a given pixel bucket using the given 16 bit fillValue
virtual void MCCOMAPI | FillRectAny (TMCPixelBucket *destBucket, const TMCRect &fillArea, uint8 *fillValuePtr, int16 size)=0
| fills a subrect fillArea of a given pixel bucket using the given fillValue (of any size)
virtual void MCCOMAPI | ExpandRect (TMCPixelBucket *destBucket, const TMCRect &source_area)=0
| duplicates the data around source_area inside the pixel bucket
virtual boolean MCCOMAPI | UsesMMX ()=0
| returns true if the processor supports the MMX instruction set
virtual MCCOMErr MCCOMAPI | LoadPixelBucket (TMCPixelBucket *&bucketOut, IMCFile *aFile, IDType format)=0
| Import/Export of images to/from simple TMCPixelBucket.
virtual MCCOMErr MCCOMAPI | SavePixelBucket (const TMCPixelBucket *bucket, IMCFile *aFile, IDType format, boolean displayOptions=true, void *pluginOptions=nil)=0
virtual MCCOMErr MCCOMAPI | PlanarToChunkyTo8 (const TMCPixelBucket *p1, const TMCPixelBucket *p2, const TMCPixelBucket *p3, const TMCPixelBucket *p4, const TMCPixelBucket *target, const TMCRect *inRect)=0

## Detailed Description

Pixel bucket utilities.

## Member Function Documentation

virtual MCCOMErr MCCOMAPI IShPixelBucketUtilities::ChunkyToPlanarNoAlpha | ( | const TMCPixelBucket * | source,
|  | const TMCPixelBucket * | p1,
|  | const TMCPixelBucket * | p2,
|  | const TMCPixelBucket * | p3,
|  | boolean | doEMMS |
| ) |  |  | `[pure virtual]`

As PlanarToChunkyOneAlpha, but no alpha channel in destination pixel bucket.

virtual MCCOMErr MCCOMAPI IShPixelBucketUtilities::Convert16To8 | ( | const TMCPixelBucket * | src,
|  | const TMCPixelBucket * | dest |
| ) |  |  | `[pure virtual]`

downsample from 16 to 8 bit a channel

virtual MCCOMErr MCCOMAPI IShPixelBucketUtilities::Convert8To16 | ( | const TMCPixelBucket * | src,
|  | const TMCPixelBucket * | dest |
| ) |  |  | `[pure virtual]`

convert a 8 bit channel to a 16 bit channel

virtual MCCOMErr MCCOMAPI IShPixelBucketUtilities::CopyBucket | ( | const TMCPixelBucket * | src,
|  | const TMCPixelBucket * | dest |
| ) |  |  | `[pure virtual]`

copy a bucket to an other

virtual void MCCOMAPI IShPixelBucketUtilities::ExpandRect | ( | TMCPixelBucket * | destBucket,
|  | const TMCRect & | source_area |
| ) |  |  | `[pure virtual]`

duplicates the data around source_area inside the pixel bucket

virtual void MCCOMAPI IShPixelBucketUtilities::FillRect16 | ( | TMCPixelBucket * | destBucket,
|  | const TMCRect & | fillArea,
|  | uint16 | fillValue |
| ) |  |  | `[pure virtual]`

fills a subrect fillArea of a given pixel bucket using the given 16 bit fillValue

virtual void MCCOMAPI IShPixelBucketUtilities::FillRectAny | ( | TMCPixelBucket * | destBucket,
|  | const TMCRect & | fillArea,
|  | uint8 * | fillValuePtr,
|  | int16 | size |
| ) |  |  | `[pure virtual]`

fills a subrect fillArea of a given pixel bucket using the given fillValue (of any size)

virtual boolean MCCOMAPI IShPixelBucketUtilities::InSize | ( | const TMCPixelBucket * | p1,
|  | const TMCPixelBucket * | p2 |
| ) |  |  | `[pure virtual]`

virtual MCCOMErr MCCOMAPI IShPixelBucketUtilities::LoadPixelBucket | ( | TMCPixelBucket *& | bucketOut,
|  | IMCFile * | aFile,
|  | IDType | format |
| ) |  |  | `[pure virtual]`

Import/Export of images to/from simple TMCPixelBucket.

virtual MCCOMErr MCCOMAPI IShPixelBucketUtilities::PlanarToChunkyOneAlpha | ( | const TMCPixelBucket * | p1,
|  | const TMCPixelBucket * | p2,
|  | const TMCPixelBucket * | p3,
|  | const TMCPixelBucket * | dest,
|  | const TMCRect * | srcRect,
|  | const TMCRect * | dstRect,
|  | boolean | doEMMS |
| ) |  |  | `[pure virtual]`

Converts three planar pixel buckets to one chunky one. Sets alpha channel to zeros. Target must be big enough to hold four planes sized as srcRect. Size of dstRect should equal size of srcRect.

Parameters:

  | p1 | First pixel bucket
  | p2 | Second pixel bucket
  | p3 | Third pixel bucket
  | dest | Output pixel bucket
  | srcRect | Source region to copy
  | dstRect | destination region to copy to
  | doEMMS | If true, calls DoEMMS() at the end of the operation

virtual MCCOMErr MCCOMAPI IShPixelBucketUtilities::PlanarToChunkyOneAlpha | ( | const TMCPixelBucket * | p1,
|  | const TMCPixelBucket * | p2,
|  | const TMCPixelBucket * | p3,
|  | const TMCPixelBucket * | target,
|  | const TMCRect * | inRect,
|  | boolean | doEMMS |
| ) |  |  | `[pure virtual]`

Converts three planar pixel buckets to one chunky one. Sets alpha channel to zeros. Target must be big enough to hold four planes sized as inRect.

Parameters:

  | p1 | First pixel bucket
  | p2 | Second pixel bucket
  | p3 | Third pixel bucket
  | target | Output pixel bucket
  | inRect | Rectangle defining region to copy
  | doEMMS | If true, calls DoEMMS() at the end of the operation

virtual MCCOMErr MCCOMAPI IShPixelBucketUtilities::PlanarToChunkyOneAlpha | ( | const TMCPixelBucket * | p1,
|  | const TMCPixelBucket * | p2,
|  | const TMCPixelBucket * | p3,
|  | const TMCPixelBucket * | target,
|  | boolean | doEMMS |
| ) |  |  | `[pure virtual]`

Converts three planar pixel buckets to one chunky one. Sets alpha channel to zeros. p1, p2, and p3 must be compatible (same size and bit depth). Target must be big enough to hold all of them, and must be able to handle 4 planes.

Parameters:

  | p1 | First pixel bucket
  | p2 | Second pixel bucket
  | p3 | Third pixel bucket
  | target | Output pixel bucket
  | doEMMS | If true, calls DoEMMS() at the end of the operation

virtual MCCOMErr MCCOMAPI IShPixelBucketUtilities::PlanarToChunkyOneAlphaTo8 | ( | const TMCPixelBucket * | p1,
|  | const TMCPixelBucket * | p2,
|  | const TMCPixelBucket * | p3,
|  | const TMCPixelBucket * | dest,
|  | const TMCRect * | srcRect,
|  | const TMCRect * | dstRect,
|  | boolean | doEMMS |
| ) |  |  | `[pure virtual]`

As PlanarToChunkyOneAlpha, but destination must be 8 bits, while input can be 8 or 16 bits.

See also:
  PlanarToChunkyOneAlpha

virtual MCCOMErr MCCOMAPI IShPixelBucketUtilities::PlanarToChunkyOneAlphaTo8 | ( | const TMCPixelBucket * | p1,
|  | const TMCPixelBucket * | p2,
|  | const TMCPixelBucket * | p3,
|  | const TMCPixelBucket * | dest,
|  | const TMCRect * | inRect,
|  | boolean | doEMMS |
| ) |  |  | `[pure virtual]`

As PlanarToChunkyOneAlpha, but destination must be 8 bits, while input can be 8 or 16 bits.

See also:
  PlanarToChunkyOneAlpha

virtual MCCOMErr MCCOMAPI IShPixelBucketUtilities::PlanarToChunkyOneAlphaTo8 | ( | const TMCPixelBucket * | p1,
|  | const TMCPixelBucket * | p2,
|  | const TMCPixelBucket * | p3,
|  | const TMCPixelBucket * | dest,
|  | boolean | doEMMS |
| ) |  |  | `[pure virtual]`

As PlanarToChunkyOneAlpha, but destination must be 8 bits, while input can be 8 or 16 bits.

See also:
  PlanarToChunkyOneAlpha

virtual MCCOMErr MCCOMAPI IShPixelBucketUtilities::PlanarToChunkyOneAlphaTo8_w16 | ( | const TMCPixelBucket * | p1,
|  | const TMCPixelBucket * | p2,
|  | const TMCPixelBucket * | p3,
|  | const TMCPixelBucket * | dest,
|  | const TMCRect * | srcRect,
|  | const TMCRect * | dstRect,
|  | boolean | doEMMS |
| ) |  |  | `[pure virtual]`

As PlanarToChunkyOneAlpha, but destination must be 8 bits, while input is 16 bits.

See also:
  PlanarToChunkyOneAlpha

virtual MCCOMErr MCCOMAPI IShPixelBucketUtilities::PlanarToChunkyOneAlphaTo8_w16 | ( | const TMCPixelBucket * | p1,
|  | const TMCPixelBucket * | p2,
|  | const TMCPixelBucket * | p3,
|  | const TMCPixelBucket * | dest,
|  | const TMCRect * | inRect,
|  | boolean | doEMMS |
| ) |  |  | `[pure virtual]`

As PlanarToChunkyOneAlpha, but destination must be 8 bits, while input is 16 bits.

See also:
  PlanarToChunkyOneAlpha

virtual MCCOMErr MCCOMAPI IShPixelBucketUtilities::PlanarToChunkyOneAlphaTo8_w16 | ( | const TMCPixelBucket * | p1,
|  | const TMCPixelBucket * | p2,
|  | const TMCPixelBucket * | p3,
|  | const TMCPixelBucket * | dest,
|  | boolean | doEMMS |
| ) |  |  | `[pure virtual]`

As PlanarToChunkyOneAlpha, but destination must be 8 bits, while input is 16 bits.

See also:
  PlanarToChunkyOneAlpha

virtual MCCOMErr MCCOMAPI IShPixelBucketUtilities::PlanarToChunkyTo8 | ( | const TMCPixelBucket * | p1,
|  | const TMCPixelBucket * | p2,
|  | const TMCPixelBucket * | p3,
|  | const TMCPixelBucket * | p4,
|  | const TMCPixelBucket * | target,
|  | const TMCRect * | inRect |
| ) |  |  | `[pure virtual]`

convert a layered image composed of 4 planes (RGBA) into a chunky image.

Parameters:

  | p1 | First pixel bucket
  | p2 | Second pixel bucket
  | p3 | Third pixel bucket
  | p4 | Fourth pixel bucket
  | target | Output Bucket
  | inRect | Rectangle bounds to copy

virtual boolean MCCOMAPI IShPixelBucketUtilities::SameSize | ( | const TMCPixelBucket * | p1,
|  | const TMCPixelBucket * | p2,
|  | const TMCPixelBucket * | p3 |
| ) |  |  | `[pure virtual]`

virtual boolean MCCOMAPI IShPixelBucketUtilities::SameSize | ( | const TMCPixelBucket * | p1,
|  | const TMCPixelBucket * | p2 |
| ) |  |  | `[pure virtual]`

virtual MCCOMErr MCCOMAPI IShPixelBucketUtilities::SavePixelBucket | ( | const TMCPixelBucket * | bucket,
|  | IMCFile * | aFile,
|  | IDType | format,
|  | boolean | displayOptions = `true`,
|  | void * | pluginOptions = `nil` |
| ) |  |  | `[pure virtual]`

virtual boolean MCCOMAPI IShPixelBucketUtilities::UsesMMX | ( |  | ) | `[pure virtual]`

returns true if the processor supports the MMX instruction set

The documentation for this struct was generated from the following file:

- IShPixelBucketUtilities.h