|
Public Member Functions |
XFCIMPORT | ~XFcPrimitiveDraw () |
| Destructor.
|
XFCIMPORT void | setColor (UINT32 aColor) |
| Sets the color for the rendering (doesn't contain alpha).
|
XFCIMPORT void | setOpacity (UINT8 aOpacity) |
| Sets the opacity for the rendering.
|
XFCIMPORT void | setFiller (XFcPrimitiveDrawFiller *aFiller) |
| Sets the filler for rendering.
|
XFCIMPORT void | setClippingRect (INT32 aClipMinX, INT32 aClipMinY, INT32 aClipMaxX, INT32 aClipMaxY) |
| Sets the clipping rectangle for rendering.
|
XFCIMPORT void | addPolygon (XFcPrimitiveDrawPointSet *aPointSet, XFcPrimitiveDrawLineSet *aLineSet) |
| Adds a polygon for rendering.
|
XFCIMPORT void | addIndexedSet (XFcPrimitiveDrawIndexedPrimitiveSet *aIndexedSet) |
| Adds an indexed edge set (e.g. a circle) for rendering.
|
XFCIMPORT void | renderEvenOddAA (UINT8 *aData, INT32 aWidth, INT32 aHeight, INT32 aPitch, INT32 aBufferFormat) |
| Renders the edges to the surface with antialiasing using even-odd fillrule.
|
XFCIMPORT void | renderNonZeroAA (UINT8 *aData, INT32 aWidth, INT32 aHeight, INT32 aPitch, INT32 aBufferFormat) |
| Renders the edges to the surface with antialiasing using non-zero fillrule.
|
XFCIMPORT void | renderEvenOdd (UINT8 *aData, INT32 aWidth, INT32 aHeight, INT32 aPitch, INT32 aBufferFormat) |
| Renders the edges to the surface without antialiasing using even-odd fillrule.
|
XFCIMPORT void | renderNonZero (UINT8 *aData, INT32 aWidth, INT32 aHeight, INT32 aPitch, INT32 aBufferFormat) |
| Renders the edges to the surface without antialiasing using non-zero fillrule.
|
Static Public Member Functions |
XFCIMPORT XFcPrimitiveDraw * | create (INT32 aWidth, INT32 aHeight, INT32 aMaxLineCount, INT32 aMaxIndexedEdgeCount) |
| Static constructor.
|
Protected Member Functions |
XFCIMPORT | XFcPrimitiveDraw () |
| Protected constructor.
|
XFCIMPORT void | initBitCounter () |
| Init the bit counter that is used for calculating coverages from bit masks.
|
XFCIMPORT void | clearHiResSpan () |
| Clears the high-resolution 1-bit representation of the scanline.
|
XFCIMPORT void | clearLoResSpan () |
| Clears the actual color data of the scanline.
|
XFCIMPORT void | clearScanlines () |
| Clears scanlines in scanline table.
|
XFCIMPORT void | addScanlines (INT32 aClipTop, INT32 aClipBot) |
| Adds edges from member edge set to scanline table.
|
XFCIMPORT void | insertToAET (XFcPrimitiveDrawEdge *aEdge, XFcPrimitiveDrawEdge *aAETEdge) |
| Inserts edge to AET (active edge table).
|
XFCIMPORT void | insertToSpan (XFcPrimitiveDrawEdge *aEdge, INT32 aMinX, INT32 aMaxX, XFcPrimitiveDrawEdge *aSpanEdge) |
| Insets span to span table.
|
XFCIMPORT void | scanlineToAETandSpanlist (INT32 aYPos, INT32 aMinX, INT32 aMaxX) |
| Processes the scanline table at given Y position and add to AET and span list.
|
XFCIMPORT void | scanlineToAET (INT32 aYPos) |
| Processes the scanline table at given Y position and add to AET.
|
XFCIMPORT void | sortAET () |
| Sorts the AET with bubble sort.
|
XFCIMPORT void | resetAET () |
| Resets AET.
|
XFCIMPORT void | spansFromAET (INT32 aMinX, INT32 aMaxX) |
| Resets the span information in lines using AET.
|
XFCIMPORT void | downScaleSpans () |
| Downscales the span coordinates by 8.
|
XFCIMPORT void | compressSpans () |
| Compresses the spans for conversion & blitting.
|
XFCIMPORT void | convertSpan () |
| Converts the span from high-res representation to low-res representation.
|
XFCIMPORT xfcPrimitiveBlitFunction | getBlitFunction (INT32 aBufferFormat) |
| Returns the blit function used for the buffer format.
|
XFCIMPORT void | blitSpan16 (UINT8 *aData, INT32 aBufferFormat) |
| Blits the span to a buffer in 16 bit mode, no alpha.
|
XFCIMPORT void | blitSpan16Alpha (UINT8 *aData, INT32 aBufferFormat) |
| Blits the span to a buffer in 16 bit mode with alpha.
|
XFCIMPORT void | blitSpan16Filled (UINT8 *aData, INT32 aBufferFormat) |
| Blits the span to a buffer in 16 bit mode using a filler.
|
XFCIMPORT void | blitSpan32Alpha (UINT8 *aData, INT32 aBufferFormat) |
| Blits the span to a buffer in 32 bit XRGB mode with alpha.
|
XFCIMPORT void | blitSpan32Filled (UINT8 *aData, INT32 aBufferFormat) |
| Blits the span to a buffer in 32 bit XRGB mode using a filler.
|
XFCIMPORT void | blitSpan32ARGBAlpha (UINT8 *aData, INT32 aBufferFormat) |
| Blits the span to a buffer in 32 bit ARGB mode with alpha.
|
XFCIMPORT void | blitSpan32ARGBFilled (UINT8 *aData, INT32 aBufferFormat) |
| Blits the span to a buffer in 32 bit ARGB mode using a filler.
|
XFCIMPORT void | blitSpanGenericAlpha (UINT8 *aData, INT32 aBufferFormat) |
| Blits the span to a buffer in generic mode with alpha.
|
XFCIMPORT void | blitSpanGenericFilled (UINT8 *aData, INT32 aBufferFormat) |
| Blits the span to a buffer in generic mode using a filler.
|
XFCIMPORT void | fillSpan (INT32 aY) |
| Fills the span to a temporary scanline buffer using current XFcPrimitiveDrawFiller.
|
Protected Attributes |
UINT8 * | mHiResSpan |
| Pointer to the high res scanline.
|
UINT8 * | mLoResSpan |
| Pointer to the low res scanline.
|
UINT8 * | mBitCounter |
| Pointer to the bit counter table.
|
UINT32 * | mFillerSpan |
| Pointer to the temporary filler scanline.
|
XFcPrimitiveDrawEdge ** | mScanlineBegin |
| Table of pointers to first edges of scanlines.
|
XFcPrimitiveDrawEdge ** | mScanlineEnd |
| Table of pointers to last edges of scanlines.
|
XFcPrimitiveDrawEdge * | mAETBegin |
| Pointer to the first edge in AET.
|
XFcPrimitiveDrawEdge * | mAETEnd |
| Pointer to the last edge in AET.
|
XFcPrimitiveDrawEdge * | mSpanBegin |
| Pointer to the first edge of current span.
|
XFcPrimitiveDrawEdge * | mSpanEnd |
| Pointer to the last edge of current span.
|
UINT32 | mColorTable [33] |
| Pre-computed color values in X6X5X5 format.
|
INT32 | mWidth |
| Width of the maximum rendering area.
|
INT32 | mHeight |
| Height of the maximum rendering ares.
|
XFcPrimitiveDrawEdgeSet * | mEdgeSet |
| Pointer to the edge set containing the primitives.
|
XFcPrimitiveDrawFiller * | mFiller |
| Pointer to a filler that is used for more complex fills.
|
INT32 | mClipMinX |
| Clipping rectangle boundaries.
|
INT32 | mClipMinY |
INT32 | mClipMaxX |
INT32 | mClipMaxY |
UINT32 | mColor32 |
| Stored color and alpha values.
|
UINT16 | mColor16 |
UINT32 | mAlpha32 |
UINT32 | mAlpha16 |