Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Search  

ParagraphLayout::VisualRun Class Reference

This object represents a single visual run in a line of text in a paragraph. More...

#include <ParagraphLayout.h>

Inheritance diagram for ParagraphLayout::VisualRun::

UObject UMemory List of all members.

Public Methods

const LEFontInstancegetFont () const
 Get the LEFontInstance object which represents the font of the visual run. More...

UBiDiDirection getDirection () const
 Get the direction of the visual run. More...

le_int32 getGlyphCount () const
 Get the number of glyphs in the visual run. More...

const LEGlyphIDgetGlyphs () const
 Get the glyphs in the visual run. More...

const float * getPositions () const
 Get the (x, y) positions of the glyphs in the visual run. More...

const le_int32getGlyphToCharMap () const
 Get the glyph-to-character map for this visual run. More...

le_int32 getAscent () const
 A convenience method which returns the ascent value for the font associated with this run. More...

le_int32 getDescent () const
 A convenience method which returns the descent value for the font associated with this run. More...

le_int32 getLeading () const
 A convenience method which returns the leading value for the font associated with this run. More...

virtual UClassID getDynamicClassID () const
 ICU "poor man's RTTI", returns a UClassID for the actual class. More...


Static Public Methods

UClassID getStaticClassID ()
 ICU "poor man's RTTI", returns a UClassID for this class. More...


Private Methods

 VisualRun ()
 VisualRun (const VisualRun &other)
VisualRun & operator= (const VisualRun &other)
 VisualRun (const LEFontInstance *font, UBiDiDirection direction, le_int32 glyphCount, const LEGlyphID glyphs[], const float positions[], const le_int32 glyphToCharMap[])
 ~VisualRun ()

Private Attributes

const LEFontInstancefFont
const UBiDiDirection fDirection
const le_int32 fGlyphCount
const LEGlyphIDfGlyphs
const float * fPositions
const le_int32fGlyphToCharMap

Static Private Attributes

const char fgClassID
 The address of this static class variable serves as this class's ID for ICU "poor man's RTTI". More...


Friends

class Line

Detailed Description

This object represents a single visual run in a line of text in a paragraph.

A visual run is text which is in the same font, script, and direction. The text is represented by an array of LEGlyphIDs, an array of (x, y) glyph positions and a table which maps indices into the glyph array to indices into the original character array which was used to create the paragraph.

These objects are only created by ParagraphLayout::Line objects, so their constructors and destructors are private.

See also:
ParagraphLayout::Line
Draft:
This API has been introduced in ICU 2.6. It is still in draft state and may be modified in a future release.

Definition at line 193 of file ParagraphLayout.h.


Constructor & Destructor Documentation

ParagraphLayout::VisualRun::VisualRun   [inline, private]
 

Definition at line 700 of file ParagraphLayout.h.

ParagraphLayout::VisualRun::VisualRun const VisualRun &    other [inline, private]
 

Definition at line 706 of file ParagraphLayout.h.

ParagraphLayout::VisualRun::VisualRun const LEFontInstance   font,
UBiDiDirection    direction,
le_int32    glyphCount,
const LEGlyphID    glyphs[],
const float    positions[],
const le_int32    glyphToCharMap[]
[inline, private]
 

Definition at line 712 of file ParagraphLayout.h.

ParagraphLayout::VisualRun::~VisualRun   [private]
 


Member Function Documentation

le_int32 ParagraphLayout::VisualRun::getAscent   const [inline]
 

A convenience method which returns the ascent value for the font associated with this run.

Returns:
the ascent value of this run's font.
Draft:
This API has been introduced in ICU 2.6. It is still in draft state and may be modified in a future release.

Definition at line 685 of file ParagraphLayout.h.

le_int32 ParagraphLayout::VisualRun::getDescent   const [inline]
 

A convenience method which returns the descent value for the font associated with this run.

Returns:
the descent value of this run's font.
Draft:
This API has been introduced in ICU 2.6. It is still in draft state and may be modified in a future release.

Definition at line 690 of file ParagraphLayout.h.

UBiDiDirection ParagraphLayout::VisualRun::getDirection   const [inline]
 

Get the direction of the visual run.

Returns:
the direction of the run. This will be UBIDI_LTR if the run is left-to-right and UBIDI_RTL if the line is right-to-left.
Draft:
This API has been introduced in ICU 2.6. It is still in draft state and may be modified in a future release.

Definition at line 660 of file ParagraphLayout.h.

virtual UClassID ParagraphLayout::VisualRun::getDynamicClassID void    const [inline, virtual]
 

ICU "poor man's RTTI", returns a UClassID for the actual class.

Draft:
This API has been introduced in ICU 2.6. It is still in draft state and may be modified in a future release.

Reimplemented from UObject.

Definition at line 303 of file ParagraphLayout.h.

const LEFontInstance * ParagraphLayout::VisualRun::getFont   const [inline]
 

Get the LEFontInstance object which represents the font of the visual run.

This will always be a non-composite font.

Returns:
the LEFontInstance object which represents the font of the visual run.
See also:
LEFontInstance
Draft:
This API has been introduced in ICU 2.6. It is still in draft state and may be modified in a future release.

Definition at line 655 of file ParagraphLayout.h.

le_int32 ParagraphLayout::VisualRun::getGlyphCount   const [inline]
 

Get the number of glyphs in the visual run.

Returns:
the number of glyphs.
Draft:
This API has been introduced in ICU 2.6. It is still in draft state and may be modified in a future release.

Definition at line 665 of file ParagraphLayout.h.

const le_int32 * ParagraphLayout::VisualRun::getGlyphToCharMap   const [inline]
 

Get the glyph-to-character map for this visual run.

This maps the indices into the glyph array to indices into the character array used to create the paragraph.

Returns:
the address of the character-to-glyph map for this visual run. The storage is owned by the VisualRun object and must not be deleted. It will remain valid as long as the VisualRun object is valid.
Draft:
This API has been introduced in ICU 2.6. It is still in draft state and may be modified in a future release.

Definition at line 680 of file ParagraphLayout.h.

const LEGlyphID * ParagraphLayout::VisualRun::getGlyphs   const [inline]
 

Get the glyphs in the visual run.

Glyphs with the values 0xFFFE and 0xFFFF should be ignored.

Returns:
the address of the array of glyphs for this visual run. The storage is owned by the VisualRun object and must not be deleted. It will remain valid as long as the VisualRun object is valid.
Draft:
This API has been introduced in ICU 2.6. It is still in draft state and may be modified in a future release.

Definition at line 670 of file ParagraphLayout.h.

le_int32 ParagraphLayout::VisualRun::getLeading   const [inline]
 

A convenience method which returns the leading value for the font associated with this run.

Returns:
the leading value of this run's font.
Draft:
This API has been introduced in ICU 2.6. It is still in draft state and may be modified in a future release.

Definition at line 695 of file ParagraphLayout.h.

const float * ParagraphLayout::VisualRun::getPositions   const [inline]
 

Get the (x, y) positions of the glyphs in the visual run.

To simplify storage management, the x and y positions are stored in a single array with the x positions at even offsets in the array and the corresponding y position in the following odd offset. There is an extra (x, y) pair at the end of the array which represents the advance of the final glyph in the run.

Returns:
the address of the array of glyph positions for this visual run. The storage is owned by the VisualRun object and must not be deleted. It will remain valid as long as the VisualRun object is valid.
Draft:
This API has been introduced in ICU 2.6. It is still in draft state and may be modified in a future release.

Definition at line 675 of file ParagraphLayout.h.

UClassID ParagraphLayout::VisualRun::getStaticClassID void    [inline, static]
 

ICU "poor man's RTTI", returns a UClassID for this class.

Draft:
This API has been introduced in ICU 2.6. It is still in draft state and may be modified in a future release.

Definition at line 310 of file ParagraphLayout.h.

VisualRun& ParagraphLayout::VisualRun::operator= const VisualRun &    other [inline, private]
 

Definition at line 333 of file ParagraphLayout.h.


Friends And Related Function Documentation

friend class Line [friend]
 

Definition at line 329 of file ParagraphLayout.h.


Member Data Documentation

const UBiDiDirection ParagraphLayout::VisualRun::fDirection [private]
 

Definition at line 321 of file ParagraphLayout.h.

const LEFontInstance* ParagraphLayout::VisualRun::fFont [private]
 

Definition at line 320 of file ParagraphLayout.h.

const le_int32 ParagraphLayout::VisualRun::fGlyphCount [private]
 

Definition at line 323 of file ParagraphLayout.h.

const le_int32* ParagraphLayout::VisualRun::fGlyphToCharMap [private]
 

Definition at line 327 of file ParagraphLayout.h.

const LEGlyphID* ParagraphLayout::VisualRun::fGlyphs [private]
 

Definition at line 325 of file ParagraphLayout.h.

const float* ParagraphLayout::VisualRun::fPositions [private]
 

Definition at line 326 of file ParagraphLayout.h.

const char ParagraphLayout::VisualRun::fgClassID [static, private]
 

The address of this static class variable serves as this class's ID for ICU "poor man's RTTI".

Definition at line 318 of file ParagraphLayout.h.


The documentation for this class was generated from the following file:
Generated on Mon Nov 24 14:36:43 2003 for ICU 2.8 by doxygen1.2.11.1 written by Dimitri van Heesch, © 1997-2001