]> git.saurik.com Git - apple/icu.git/blame - icuSources/layout/DefaultCharMapper.h
ICU-461.12.tar.gz
[apple/icu.git] / icuSources / layout / DefaultCharMapper.h
CommitLineData
b75a7d8f 1/*
46f4442e 2 * (C) Copyright IBM Corp. 1998-2007 - All Rights Reserved
b75a7d8f
A
3 *
4 */
5
6#ifndef __DEFAULTCHARMAPPER_H
7#define __DEFAULTCHARMAPPER_H
8
9/**
10 * \file
11 * \internal
12 */
13
14#include "LETypes.h"
15#include "LEFontInstance.h"
16
17U_NAMESPACE_BEGIN
18
19/**
20 * This class is an instance of LECharMapper which
21 * implements control character filtering and bidi
22 * mirroring.
23 *
24 * @see LECharMapper
25 */
374ca955 26class DefaultCharMapper : public UMemory, public LECharMapper
b75a7d8f
A
27{
28private:
29 le_bool fFilterControls;
30 le_bool fMirror;
31
32 static const LEUnicode32 controlChars[];
33
34 static const le_int32 controlCharsCount;
35
36 static const LEUnicode32 mirroredChars[];
73c04bcf 37 static const LEUnicode32 srahCderorrim[];
b75a7d8f
A
38
39 static const le_int32 mirroredCharsCount;
40
41public:
42 DefaultCharMapper(le_bool filterControls, le_bool mirror)
43 : fFilterControls(filterControls), fMirror(mirror)
44 {
45 // nothing
46 };
47
48 ~DefaultCharMapper()
49 {
50 // nada
51 };
52
53 LEUnicode32 mapChar(LEUnicode32 ch) const;
54};
55
56U_NAMESPACE_END
57#endif