Blame src/internal-flt.h

Packit Service a721b1
/* internal-flt.h -- common header file for the internal FLT API.
Packit Service a721b1
   Copyright (C) 2007, 2008, 2009, 2010, 2011, 2012
Packit Service a721b1
     National Institute of Advanced Industrial Science and Technology (AIST)
Packit Service a721b1
     Registration Number H15PRO112
Packit Service a721b1
Packit Service a721b1
   This file is part of the m17n library.
Packit Service a721b1
Packit Service a721b1
   The m17n library is free software; you can redistribute it and/or
Packit Service a721b1
   modify it under the terms of the GNU Lesser General Public License
Packit Service a721b1
   as published by the Free Software Foundation; either version 2.1 of
Packit Service a721b1
   the License, or (at your option) any later version.
Packit Service a721b1
Packit Service a721b1
   The m17n library is distributed in the hope that it will be useful,
Packit Service a721b1
   but WITHOUT ANY WARRANTY; without even the implied warranty of
Packit Service a721b1
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
Packit Service a721b1
   Lesser General Public License for more details.
Packit Service a721b1
Packit Service a721b1
   You should have received a copy of the GNU Lesser General Public
Packit Service a721b1
   License along with the m17n library; if not, write to the Free
Packit Service a721b1
   Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Packit Service a721b1
   Boston, MA 02110-1301 USA.  */
Packit Service a721b1
Packit Service a721b1
#ifndef _M_INTERNAL_FLT_H
Packit Service a721b1
#define _M_INTERNAL_FLT_H
Packit Service a721b1
Packit Service a721b1
#define MAKE_COMBINING_CODE(base_y, base_x, add_y, add_x, off_y, off_x)	\
Packit Service a721b1
  (((off_y) << 16)							\
Packit Service a721b1
   | ((off_x) << 8)							\
Packit Service a721b1
   | ((base_x) << 6)							\
Packit Service a721b1
   | ((base_y) << 4)							\
Packit Service a721b1
   | ((add_x) << 2)							\
Packit Service a721b1
   | (add_y))
Packit Service a721b1
Packit Service a721b1
#define COMBINING_CODE_OFF_Y(code) ((((code) >> 16) & 0xFF) - 128)
Packit Service a721b1
#define COMBINING_CODE_OFF_X(code) ((((code) >> 8) & 0xFF) - 128)
Packit Service a721b1
#define COMBINING_CODE_BASE_X(code) (((code) >> 6) & 0x3)
Packit Service a721b1
#define COMBINING_CODE_BASE_Y(code) (((code) >> 4) & 0x3)
Packit Service a721b1
#define COMBINING_CODE_ADD_X(code) (((code) >> 2) & 0x3)
Packit Service a721b1
#define COMBINING_CODE_ADD_Y(code) ((code) & 0x3)
Packit Service a721b1
Packit Service a721b1
#define PACK_OTF_TAG(TAG)		\
Packit Service a721b1
  ((((TAG) & 0x7F000000) >> 3)	\
Packit Service a721b1
   | (((TAG) & 0x7F0000) >> 2)	\
Packit Service a721b1
   | (((TAG) & 0x7F00) >> 1)	\
Packit Service a721b1
   | ((TAG) & 0x7F))
Packit Service a721b1
Packit Service a721b1
extern MSymbol Mcombining;
Packit Service a721b1
Packit Service a721b1
#endif /* _M_INTERNAL_FLT_H */