ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

bidi.c File Reference
#include "config.h"
#include <stdarg.h>
#include "windef.h"
#include "winbase.h"
#include "wingdi.h"
#include "winnls.h"
#include "usp10.h"
#include "wine/unicode.h"
#include "wine/debug.h"
#include "usp10_internal.h"

Go to the source code of this file.

Defines

#define ASSERT(x)   do { if (!(x)) FIXME("assert failed: %s\n", #x); } while(0)
#define MAX_LEVEL   61

Enumerations

enum  directions {
  ON = 0, L, R, AN,
  EN, AL, NSM, CS,
  ES, ET, BN, S,
  WS, B, RLO, RLE,
  LRO, LRE, PDF, N = ON
}
enum  states {
  xa, xr, xl, ao,
  ro, lo, rt, lt,
  cn, ra, re, la,
  le, ac, rc, rs,
  lc, ls, ret, let
}
enum  actions {
  IX = 0x100, XX = 0xF, xxx = (XX << 4) + XX, xIx = IX + xxx,
  xxN = (XX << 4) + ON, xxE = (XX << 4) + EN, xxA = (XX << 4) + AN, xxR = (XX << 4) + R,
  xxL = (XX << 4) + L, Nxx = (ON << 4) + 0xF, Axx = (AN << 4) + 0xF, ExE = (EN << 4) + EN,
  NIx = (ON << 4) + 0xF + IX, NxN = (ON << 4) + ON, NxR = (ON << 4) + R, NxE = (ON << 4) + EN,
  AxA = (AN << 4) + AN, NxL = (ON << 4) + L, LxL = (L << 4) + L
}
enum  neutralactions {
  nL = L, En = 3 << 4, Rn = R << 4, Ln = L << 4,
  In = (1<<8), LnL = (1<<4)+L
}
enum  resolvestates {
  r, l, rn, ln,
  a, na
}

Functions

 WINE_DEFAULT_DEBUG_CHANNEL (bidi)
static void classify (LPCWSTR lpString, WORD *chartype, DWORD uCount, const SCRIPT_CONTROL *c)
static void SetDeferredRun (WORD *pval, int cval, int iStart, int nval)
static WORD GreaterEven (int i)
static WORD GreaterOdd (int i)
static WORD EmbeddingDirection (int level)
static int resolveExplicit (int level, int dir, WORD *pcls, WORD *plevel, int cch, int nNest)
static int GetDeferredType (int action)
static int GetResolvedType (int action)
static void resolveWeak (int baselevel, WORD *pcls, WORD *plevel, int cch)
static int GetDeferredNeutrals (int action, int level)
static int GetResolvedNeutrals (int action)
static void resolveNeutrals (int baselevel, WORD *pcls, const WORD *plevel, int cch)
static void resolveImplicit (const WORD *pcls, WORD *plevel, int cch)
BOOL BIDI_DetermineLevels (LPCWSTR lpString, INT uCount, const SCRIPT_STATE *s, const SCRIPT_CONTROL *c, WORD *lpOutLevels)
static void reverse (int *pidx, int cch)
int BIDI_ReorderV2lLevel (int level, int *pIndexs, const BYTE *plevel, int cch, BOOL fReverse)
int BIDI_ReorderL2vLevel (int level, int *pIndexs, const BYTE *plevel, int cch, BOOL fReverse)
BOOL BIDI_GetStrengths (LPCWSTR lpString, INT uCount, const SCRIPT_CONTROL *c, WORD *lpStrength)

Variables

static const int stateWeak [][10]
static const int actionWeak [][10]
static const int actionNeutrals [][5]
static const int stateNeutrals [][5]
static const WORD addLevel [][4]

Generated on Sat May 26 2012 05:19:01 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.