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

- Search for |

- File List
- Globals

# unifilt.h

Go to the documentation of this file.

    00001 /*
    00002 **********************************************************************
    00003 * Copyright (C) 1999-2006, International Business Machines Corporation and others.
    00004 * All Rights Reserved.
    00005 **********************************************************************
    00006 *   Date        Name        Description
    00007 *   11/17/99    aliu        Creation.
    00008 **********************************************************************
    00009 */
    00010 #ifndef UNIFILT_H
    00011 #define UNIFILT_H
    00012
    00013 #include "unicode/unifunct.h"
    00014 #include "unicode/unimatch.h"
    00015
    00021 U_NAMESPACE_BEGIN
    00022
    00031 #define U_ETHER ((UChar)0xFFFF)
    00032
    00059 class U_COMMON_API UnicodeFilter : public UnicodeFunctor, public UnicodeMatcher {
    00060
    00061 public:
    00066     virtual ~UnicodeFilter();
    00067
    00075     virtual UBool contains(UChar32 c) const = 0;
    00076
    00082     virtual UnicodeMatcher* toMatcher() const;
    00083
    00088     virtual UMatchDegree matches(const Replaceable& text,
    00089                                  int32_t& offset,
    00090                                  int32_t limit,
    00091                                  UBool incremental);
    00092
    00097     virtual void setData(const TransliterationRuleData*);
    00098
    00104     virtual UClassID getDynamicClassID() const = 0;
    00105
    00111     static UClassID U_EXPORT2 getStaticClassID();
    00112
    00113 protected:
    00114
    00115     /*
    00116      * Since this class has pure virtual functions,
    00117      * a constructor can't be used.
    00118      * @stable ICU 2.0
    00119      */
    00120 /*    UnicodeFilter();*/
    00121 };
    00122
    00123 /*inline UnicodeFilter::UnicodeFilter() {}*/
    00124
    00125 U_NAMESPACE_END
    00126
    00127 #endif