1*16d86563SAlexander Pyhalov /* 2*16d86563SAlexander Pyhalov * CDDL HEADER START 3*16d86563SAlexander Pyhalov * 4*16d86563SAlexander Pyhalov * The contents of this file are subject to the terms of the 5*16d86563SAlexander Pyhalov * Common Development and Distribution License (the "License"). 6*16d86563SAlexander Pyhalov * You may not use this file except in compliance with the License. 7*16d86563SAlexander Pyhalov * 8*16d86563SAlexander Pyhalov * You can obtain a copy of the license at src/OPENSOLARIS.LICENSE 9*16d86563SAlexander Pyhalov * or http://www.opensolaris.org/os/licensing. 10*16d86563SAlexander Pyhalov * See the License for the specific language governing permissions 11*16d86563SAlexander Pyhalov * and limitations under the License. 12*16d86563SAlexander Pyhalov * 13*16d86563SAlexander Pyhalov * When distributing Covered Code, include this CDDL HEADER in each 14*16d86563SAlexander Pyhalov * file and include the License file at src/OPENSOLARIS.LICENSE. 15*16d86563SAlexander Pyhalov * If applicable, add the following below this CDDL HEADER, with the 16*16d86563SAlexander Pyhalov * fields enclosed by brackets "[]" replaced with your own identifying 17*16d86563SAlexander Pyhalov * information: Portions Copyright [yyyy] [name of copyright owner] 18*16d86563SAlexander Pyhalov * 19*16d86563SAlexander Pyhalov * CDDL HEADER END 20*16d86563SAlexander Pyhalov */ 21*16d86563SAlexander Pyhalov /* 22*16d86563SAlexander Pyhalov * Copyright(c) 2001 Sun Microsystems, Inc. 23*16d86563SAlexander Pyhalov * All rights reserved. 24*16d86563SAlexander Pyhalov */ 25*16d86563SAlexander Pyhalov 26*16d86563SAlexander Pyhalov #ifndef _ISCII_COMMON_H_ 27*16d86563SAlexander Pyhalov #define _ISCII_COMMON_H_ 28*16d86563SAlexander Pyhalov 29*16d86563SAlexander Pyhalov #define ucs_t unsigned long 30*16d86563SAlexander Pyhalov 31*16d86563SAlexander Pyhalov #define uchar unsigned char 32*16d86563SAlexander Pyhalov 33*16d86563SAlexander Pyhalov #define NUKTA 0 34*16d86563SAlexander Pyhalov #define EXT -1 35*16d86563SAlexander Pyhalov #define HALANT -2 36*16d86563SAlexander Pyhalov #define DOUBLE_DANDA -3 37*16d86563SAlexander Pyhalov 38*16d86563SAlexander Pyhalov #define ISC_INV 0xd9 /* Consonant Invisible */ 39*16d86563SAlexander Pyhalov 40*16d86563SAlexander Pyhalov #define ISC_halant 0xe8 41*16d86563SAlexander Pyhalov #define ISC_nukta 0xe9 42*16d86563SAlexander Pyhalov #define ISC_danda 0xea 43*16d86563SAlexander Pyhalov #define ISC_atr 0xef /* Attribute code */ 44*16d86563SAlexander Pyhalov #define ISC_ext 0xf0 /* Extension code */ 45*16d86563SAlexander Pyhalov 46*16d86563SAlexander Pyhalov #define UNI_DOUBLE_DANDA 0x0965 47*16d86563SAlexander Pyhalov 48*16d86563SAlexander Pyhalov #define UNI_ZWNJ 0x200C /* Zero Width Non Joiner */ 49*16d86563SAlexander Pyhalov #define UNI_ZWJ 0x200D /* Zero Width Joiner */ 50*16d86563SAlexander Pyhalov #define UNI_INV 0x200E /* map INV to Unicode LRM, same as Apple implementation */ 51*16d86563SAlexander Pyhalov 52*16d86563SAlexander Pyhalov #define EXT_RANGE_BEGIN 0xA1 53*16d86563SAlexander Pyhalov #define EXT_RANGE_END 0xEE 54*16d86563SAlexander Pyhalov #define is_valid_ext_code(v) ((v) >= EXT_RANGE_BEGIN && (v) <= EXT_RANGE_END) 55*16d86563SAlexander Pyhalov 56*16d86563SAlexander Pyhalov typedef enum { DEV, BNG, GMK, GJR, ORI, TML, TLG, KND, MLM, NUM_ISCII } ISCII; 57*16d86563SAlexander Pyhalov 58*16d86563SAlexander Pyhalov typedef struct _entry { 59*16d86563SAlexander Pyhalov uchar iscii; 60*16d86563SAlexander Pyhalov ucs_t ucs; 61*16d86563SAlexander Pyhalov int count; 62*16d86563SAlexander Pyhalov } Entry; 63*16d86563SAlexander Pyhalov 64*16d86563SAlexander Pyhalov 65*16d86563SAlexander Pyhalov #endif 66