#include <LEGlyphStorage.h>
Inheritance diagram for LEGlyphStorage:
Public Member Functions | |
LEGlyphStorage () | |
Allocates an empty LEGlyphStorage object. | |
~LEGlyphStorage () | |
The destructor. | |
le_int32 | getGlyphCount () const |
This method returns the number of glyphs in the glyph array. | |
void | getGlyphs (LEGlyphID glyphs[], LEErrorCode &success) const |
This method copies the glyph array into a caller supplied array. | |
void | getGlyphs (le_uint32 glyphs[], le_uint32 extraBits, LEErrorCode &success) const |
This method copies the glyph array into a caller supplied array, ORing in extra bits. | |
void | getCharIndices (le_int32 charIndices[], LEErrorCode &success) const |
This method copies the character index array into a caller supplied array. | |
void | getCharIndices (le_int32 charIndices[], le_int32 indexBase, LEErrorCode &success) const |
This method copies the character index array into a caller supplied array. | |
void | getGlyphPositions (float positions[], LEErrorCode &success) const |
This method copies the position array into a caller supplied array. | |
void | getGlyphPosition (le_int32 glyphIndex, float &x, float &y, LEErrorCode &success) const |
This method returns the X and Y position of the glyph at the given index. | |
void | allocateGlyphArray (le_int32 initialGlyphCount, le_bool rightToLeft, LEErrorCode &success) |
This method allocates the glyph array, the char indices array and the insertion list. | |
le_int32 | allocatePositions (LEErrorCode &success) |
This method allocates the storage for the glyph positions. | |
le_int32 | allocateAuxData (LEErrorCode &success) |
This method allocates the storage for the auxillary glyph data. | |
void | getAuxData (le_uint32 auxData[], LEErrorCode &success) const |
Copy the entire auxillary data array. | |
LEGlyphID | getGlyphID (le_int32 glyphIndex, LEErrorCode &success) const |
Get the glyph ID for a particular glyph. | |
le_int32 | getCharIndex (le_int32 glyphIndex, LEErrorCode &success) const |
Get the char index for a particular glyph. | |
le_uint32 | getAuxData (le_int32 glyphIndex, LEErrorCode &success) const |
Get the auxillary data for a particular glyph. | |
LEGlyphID & | operator[] (le_int32 glyphIndex) const |
This operator allows direct access to the glyph array using the index operator. | |
LEGlyphID * | insertGlyphs (le_int32 atIndex, le_int32 insertCount) |
Call this method to replace a single glyph in the glyph array with multiple glyphs. | |
le_int32 | applyInsertions () |
This method causes all of the glyph insertions recorded by insertGlyphs to be applied to the glyph array. | |
void | setGlyphID (le_int32 glyphIndex, LEGlyphID glyphID, LEErrorCode &success) |
Set the glyph ID for a particular glyph. | |
void | setCharIndex (le_int32 glyphIndex, le_int32 charIndex, LEErrorCode &success) |
Set the char index for a particular glyph. | |
void | setPosition (le_int32 glyphIndex, float x, float y, LEErrorCode &success) |
Set the X, Y position for a particular glyph. | |
void | adjustPosition (le_int32 glyphIndex, float xAdjust, float yAdjust, LEErrorCode &success) |
Adjust the X, Y position for a particular glyph. | |
void | setAuxData (le_int32 glyphIndex, le_uint32 auxData, LEErrorCode &success) |
Set the auxillary data for a particular glyph. | |
void | adoptGlyphArray (LEGlyphStorage &from) |
Delete the glyph array and replace it with the one in from . | |
void | appendGlyphStorage (LEGlyphStorage &from) |
void | adoptCharIndicesArray (LEGlyphStorage &from) |
Delete the char indices array and replace it with the one in from . | |
void | adoptPositionArray (LEGlyphStorage &from) |
Delete the position array and replace it with the one in from . | |
void | adoptAuxDataArray (LEGlyphStorage &from) |
Delete the auxillary data array and replace it with the one in from . | |
void | adoptGlyphCount (LEGlyphStorage &from) |
Change the glyph count of this object to be the same as the one in from . | |
void | adoptGlyphCount (le_int32 newGlyphCount) |
Change the glyph count of this object to the given value. | |
void | reset () |
This method frees the glyph, character index, position and auxillary data arrays so that the LayoutEngine can be reused to layout a different characer array. | |
virtual UClassID | getDynamicClassID () const |
ICU "poor man's RTTI", returns a UClassID for the actual class. | |
Static Public Member Functions | |
UClassID | getStaticClassID () |
ICU "poor man's RTTI", returns a UClassID for this class. | |
Protected Member Functions | |
virtual le_bool | applyInsertion (le_int32 atPosition, le_int32 count, LEGlyphID newGlyphs[]) |
This implements LEInsertionCallback . |
For each glyph it holds the glyph ID, the index of the backing store character which produced the glyph, the X and Y position of the glyph and an auxillary data pointer.
The storage is growable using the LEInsertionList
class.
Definition at line 35 of file LEGlyphStorage.h.
|
Allocates an empty
You must call
|
|
The destructor. This will deallocate all of the arrays.
|
|
Adjust the X, Y position for a particular glyph.
|
|
Delete the auxillary data array and replace it with the one in
Set the auxillary data array pointer in
|
|
Delete the char indices array and replace it with the one in
Set the char indices array pointer in
|
|
Delete the glyph array and replace it with the one in
Set the glyph array pointer in
|
|
Change the glyph count of this object to the given value.
|
|
Change the glyph count of this object to be the same as the one in
|
|
Delete the position array and replace it with the one in
Set the position array pointer in
|
|
This method allocates the storage for the auxillary glyph data.
|
|
This method allocates the glyph array, the char indices array and the insertion list. You must call this method before using the object. This method also initializes the char indices array.
|
|
This method allocates the storage for the glyph positions. It allocates one extra X, Y position pair for the position just after the last glyph.
|
|
This implements
The
|
|
This method causes all of the glyph insertions recorded by The new slots in the char indices and the auxillary data arrays will be filled in with the values for the glyph being replaced.
|
|
Get the auxillary data for a particular glyph.
|
|
Copy the entire auxillary data array.
|
|
Get the char index for a particular glyph.
|
|
This method copies the character index array into a caller supplied array. The caller must ensure that the array is large enough to hold a character index for each glyph.
|
|
This method copies the character index array into a caller supplied array. The caller must ensure that the array is large enough to hold a character index for each glyph.
|
|
ICU "poor man's RTTI", returns a UClassID for the actual class.
Implements UObject. |
|
This method returns the number of glyphs in the glyph array.
Definition at line 542 of file LEGlyphStorage.h. |
|
Get the glyph ID for a particular glyph.
|
|
This method returns the X and Y position of the glyph at the given index. Input parameters:
|
|
This method copies the position array into a caller supplied array. The caller must ensure that the array is large enough to hold an X and Y position for each glyph, plus an extra X and Y for the advance of the last glyph.
|
|
This method copies the glyph array into a caller supplied array, ORing in extra bits. (This functionality is needed by the JDK, which uses 32 bits pre glyph idex, with the high 16 bits encoding the composite font slot number)
|
|
This method copies the glyph array into a caller supplied array. The caller must ensure that the array is large enough to hold all the glyphs.
|
|
ICU "poor man's RTTI", returns a UClassID for this class.
|
|
Call this method to replace a single glyph in the glyph array with multiple glyphs.
This method uses the
|
|
This operator allows direct access to the glyph array using the index operator.
Definition at line 547 of file LEGlyphStorage.h. |
|
This method frees the glyph, character index, position and auxillary data arrays so that the LayoutEngine can be reused to layout a different characer array. (This method is also called by the destructor)
|
|
Set the auxillary data for a particular glyph.
|
|
Set the char index for a particular glyph.
|
|
Set the glyph ID for a particular glyph.
|
|
Set the X, Y position for a particular glyph.
|