1*0Sstevel@tonic-gate // Copyright (c) 1997 James Clark 2*0Sstevel@tonic-gate // See the file COPYING for copying permission. 3*0Sstevel@tonic-gate #pragma ident "%Z%%M% %I% %E% SMI" 4*0Sstevel@tonic-gate 5*0Sstevel@tonic-gate #ifndef CharsetRegistry_INCLUDED 6*0Sstevel@tonic-gate #define CharsetRegistry_INCLUDED 1 7*0Sstevel@tonic-gate #ifdef __GNUG__ 8*0Sstevel@tonic-gate #pragma interface 9*0Sstevel@tonic-gate #endif 10*0Sstevel@tonic-gate 11*0Sstevel@tonic-gate #include "Boolean.h" 12*0Sstevel@tonic-gate #include "types.h" 13*0Sstevel@tonic-gate #include "StringC.h" 14*0Sstevel@tonic-gate #include "CharsetInfo.h" 15*0Sstevel@tonic-gate 16*0Sstevel@tonic-gate #ifdef SP_NAMESPACE 17*0Sstevel@tonic-gate namespace SP_NAMESPACE { 18*0Sstevel@tonic-gate #endif 19*0Sstevel@tonic-gate 20*0Sstevel@tonic-gate class SP_API CharsetRegistry { 21*0Sstevel@tonic-gate public: 22*0Sstevel@tonic-gate class SP_API Iter { 23*0Sstevel@tonic-gate public: 24*0Sstevel@tonic-gate virtual ~Iter(); 25*0Sstevel@tonic-gate virtual Boolean next(WideChar &min, WideChar &max, UnivChar &) = 0; 26*0Sstevel@tonic-gate }; 27*0Sstevel@tonic-gate enum ISORegistrationNumber { 28*0Sstevel@tonic-gate UNREGISTERED = 0, 29*0Sstevel@tonic-gate ISO646_ASCII_G0 = 6, 30*0Sstevel@tonic-gate ISO646_C0 = 1, 31*0Sstevel@tonic-gate ISO6429 = 77, 32*0Sstevel@tonic-gate ISO8859_1 = 100, 33*0Sstevel@tonic-gate ISO8859_2 = 101, 34*0Sstevel@tonic-gate ISO8859_3 = 109, 35*0Sstevel@tonic-gate ISO8859_4 = 110, 36*0Sstevel@tonic-gate ISO8859_5 = 144, 37*0Sstevel@tonic-gate ISO8859_6 = 127, 38*0Sstevel@tonic-gate ISO8859_7 = 126, 39*0Sstevel@tonic-gate ISO8859_8 = 138, 40*0Sstevel@tonic-gate ISO8859_9 = 148, 41*0Sstevel@tonic-gate ISO646_JIS_G0 = 14, 42*0Sstevel@tonic-gate JIS0201 = 13, 43*0Sstevel@tonic-gate JIS0208 = 168, 44*0Sstevel@tonic-gate JIS0212 = 159, 45*0Sstevel@tonic-gate KSC5601 = 149, 46*0Sstevel@tonic-gate GB2312 = 58, 47*0Sstevel@tonic-gate ISO10646_UCS2 = 176, 48*0Sstevel@tonic-gate ISO10646_UCS4 = 177, 49*0Sstevel@tonic-gate BIG5 = 65535 // not registered 50*0Sstevel@tonic-gate }; 51*0Sstevel@tonic-gate static ISORegistrationNumber getRegistrationNumber(const StringC &desig, 52*0Sstevel@tonic-gate const CharsetInfo &); 53*0Sstevel@tonic-gate static Iter *makeIter(ISORegistrationNumber); 54*0Sstevel@tonic-gate }; 55*0Sstevel@tonic-gate 56*0Sstevel@tonic-gate #ifdef SP_NAMESPACE 57*0Sstevel@tonic-gate } 58*0Sstevel@tonic-gate #endif 59*0Sstevel@tonic-gate 60*0Sstevel@tonic-gate #endif /* not CharsetRegistry_INCLUDED */ 61