- Main Page
- Modules
- Data Structures
- Files
- Related Pages

- Search for |

- Alphabetical List
- Data Structures
- Class Hierarchy
- Data Fields

# CollatorFactory Class Reference

A factory, used with registerFactory, the creates multiple collators and provides display names for them. More...

`#include <coll.h>`

Inheritance diagram for CollatorFactory:

## Public Member Functions
virtual | ~CollatorFactory ()
| Destructor.
virtual UBool | visible (void) const
| Return true if this factory is visible.
virtual Collator * | createCollator (const Locale &loc)=0
| Return a collator for the provided locale.
virtual UnicodeString & | getDisplayName (const Locale &objectLocale, const Locale &displayLocale, UnicodeString &result)
| Return the name of the collator for the objectLocale, localized for the displayLocale.
virtual const UnicodeString * | getSupportedIDs (int32_t &count, UErrorCode &status)=0
| Return an array of all the locale names directly supported by this factory.

## Detailed Description

A factory, used with registerFactory, the creates multiple collators and provides display names for them.

A factory supports some number of locales-- these are the locales for which it can create collators. The factory can be visible, in which case the supported locales will be enumerated by getAvailableLocales, or invisible, in which they are not. Invisible locales are still supported, they are just not listed by getAvailableLocales.

If standard locale display names are sufficient, Collator instances can be registered using registerInstance instead.

Note: if the collators are to be used from C APIs, they must be instances of RuleBasedCollator.

Stable:
  ICU 2.6

Definition at line 975 of file coll.h.

## Constructor & Destructor Documentation

virtual CollatorFactory::~CollatorFactory | ( |  | ) | `[virtual]`

Destructor.

Stable:
  ICU 3.0

## Member Function Documentation

virtual UBool CollatorFactory::visible | ( | void |  | ) | const`[virtual]`

Return true if this factory is visible.

Default is true. If not visible, the locales supported by this factory will not be listed by getAvailableLocales.

Returns:
  true if the factory is visible.

Stable:
  ICU 2.6

virtual Collator* CollatorFactory::createCollator | ( | const Locale & | loc | ) | `[pure virtual]`

Return a collator for the provided locale.

If the locale is not supported, return NULL.

Parameters:

  | loc | the locale identifying the collator to be created.

Returns:
  a new collator if the locale is supported, otherwise NULL.

Stable:
  ICU 2.6

virtual UnicodeString& CollatorFactory::getDisplayName | ( | const Locale & | objectLocale,
|  | const Locale & | displayLocale,
|  | UnicodeString & | result |
| ) |  |  | `[virtual]`

Return the name of the collator for the objectLocale, localized for the displayLocale.

If objectLocale is not supported, or the factory is not visible, set the result string to bogus.

Parameters:

  | objectLocale | the locale identifying the collator
  | displayLocale | the locale for which the display name of the collator should be localized
  | result | an output parameter for the display name, set to bogus if not supported.

Returns:
  the display name

Stable:
  ICU 2.6

virtual const UnicodeString* CollatorFactory::getSupportedIDs | ( | int32_t & | count,
|  | UErrorCode & | status |
| ) |  |  | `[pure virtual]`

Return an array of all the locale names directly supported by this factory.

The number of names is returned in count. This array is owned by the factory. Its contents must never change.

Parameters:

  | count | output parameter for the number of locales supported by the factory
  | status | the in/out error code

Returns:
  a pointer to an array of count UnicodeStrings.

Stable:
  ICU 2.6

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

- coll.h