ValueRuns Class Reference

The ValueRuns class associates integer values with runs of text. More...

#include <RunArrays.h>

Inheritance diagram for ValueRuns:
RunArray UObject UMemory

Public Member Functions

 ValueRuns (const le_int32 *values, const le_int32 *limits, le_int32 count)
 Construct a ValueRuns object from pre-existing arrays of values and limit indices.
 ValueRuns (le_int32 initialCapacity)
 Construct an empty ValueRuns object.
virtual ~ValueRuns ()
 The destructor; virtual so that subclass destructors are invoked as well.
le_int32 getValue (le_int32 run) const
 Get the integer value assoicated with the given run of text.
le_int32 add (le_int32 value, le_int32 limit)
 Add an integer value and limit index pair to the data arrays and return the run index where the data was stored.
virtual UClassID getDynamicClassID () const
 ICU "poor man's RTTI", returns a UClassID for the actual class.

Static Public Member Functions

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

Protected Member Functions

virtual void init (le_int32 capacity)
 Create a data array with the given initial size.
virtual void grow (le_int32 capacity)
 Grow a data array to the given initial size.

Detailed Description

The ValueRuns class associates integer values with runs of text.

Stable:
ICU 3.2

Definition at line 546 of file RunArrays.h.


Constructor & Destructor Documentation

ValueRuns::ValueRuns ( const le_int32 values,
const le_int32 limits,
le_int32  count 
) [inline]

Construct a ValueRuns object from pre-existing arrays of values and limit indices.

Parameters:
values is the address of an array of integer. This array must remain valid until the ValueRuns object is destroyed.
limits is the address of an array of limit indices. This array must remain valid until the ValueRuns object is destroyed.
count is the number of entries in the two arrays.
Stable:
ICU 3.2

Definition at line 669 of file RunArrays.h.

References ValueRuns().

Referenced by ValueRuns().

ValueRuns::ValueRuns ( le_int32  initialCapacity  ) 

Construct an empty ValueRuns object.

Clients can add value and limit indices arrays using the add method.

Parameters:
initialCapacity is the initial size of the value and limit indices arrays. If this value is zero, no arrays will be allocated.
See also:
add
Stable:
ICU 3.2
virtual ValueRuns::~ValueRuns (  )  [virtual]

The destructor; virtual so that subclass destructors are invoked as well.

Stable:
ICU 3.2

Member Function Documentation

le_int32 ValueRuns::add ( le_int32  value,
le_int32  limit 
)

Add an integer value and limit index pair to the data arrays and return the run index where the data was stored.

This method calls RunArray::add(limit) which will create or grow the arrays as needed.

If the ValueRuns object was created with a client-supplied font and limit indices arrays, this method will return a run index of -1.

Subclasses should not override this method. Rather they should provide a new add method which takes an integer value and a limit index along with whatever other data they implement. The new add method should first call this method to grow the font and limit indices arrays, and use the returned run index to store data their own arrays.

Parameters:
value is the integer value to add
limit is the limit index to add
Returns:
the run index where the value and limit index were stored, or -1 if the data cannot be stored.
Stable:
ICU 3.2
virtual UClassID ValueRuns::getDynamicClassID ( void   )  const [inline, virtual]

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

Stable:
ICU 3.2

Reimplemented from RunArray.

Definition at line 636 of file RunArrays.h.

References RunArray::getStaticClassID().

static UClassID ValueRuns::getStaticClassID ( void   )  [inline, static]

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

Stable:
ICU 3.2

Reimplemented from RunArray.

Definition at line 629 of file RunArrays.h.

le_int32 ValueRuns::getValue ( le_int32  run  )  const

Get the integer value assoicated with the given run of text.

Use RunArray::getLimit(run) to get the corresponding limit index.

Parameters:
run is the index into the font and limit indices arrays.
Returns:
the integer value associated with the given text run.
See also:
RunArray::getLimit
Stable:
ICU 3.2
virtual void ValueRuns::grow ( le_int32  capacity  )  [protected, virtual]

Grow a data array to the given initial size.

This method will be called by the add method if the limit indices array is full. Subclasses which override this method must also call it from the overriding method to grow the limit indices array.

Parameters:
capacity is the initial size of the data array.
See also:
add
Stable:
ICU 3.2

Reimplemented from RunArray.

virtual void ValueRuns::init ( le_int32  capacity  )  [protected, virtual]

Create a data array with the given initial size.

This method will be called by the add method if there is no limit indices array. Subclasses which override this method must also call it from the overriding method to create the limit indices array.

Parameters:
capacity is the initial size of the data array.
See also:
add
Stable:
ICU 3.2

Reimplemented from RunArray.


The documentation for this class was generated from the following file:
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on Sat Jan 23 15:17:47 2010 for ICU 4.3.4 by  doxygen 1.6.1