Xct.h File Reference

#include <X11/Xfuncproto.h>

Include dependency graph for Xct.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  _XctRec

Defines

#define XctVersion   1
#define XctSingleSetSegments   0x0001
#define XctProvideExtensions   0x0002
#define XctAcceptC0Extensions   0x0004
#define XctAcceptC1Extensions   0x0008
#define XctHideDirection   0x0010
#define XctFreeString   0x0020
#define XctShiftMultiGRToGL   0x0040

Typedefs

typedef unsigned char * XctString
typedef unsigned long XctFlags
typedef _XctRecXctData

Enumerations

enum  XctHDirection { XctUnspecified, XctLeftToRight, XctRightToLeft }
enum  XctResult {
  XctSegment, XctC0Segment, XctGLSegment, XctC1Segment,
  XctGRSegment, XctExtendedSegment, XctExtension, XctHorizontal,
  XctEndOfText, XctError
}

Functions

_XFUNCPROTOBEGIN XctData XctCreate (_Xconst unsigned char *string, int length, XctFlags flags)
XctResult XctNextItem (XctData data)
void XctFree (XctData data)
void XctReset (XctData data)


Define Documentation

#define XctAcceptC0Extensions   0x0004

Definition at line 66 of file Xct.h.

#define XctAcceptC1Extensions   0x0008

Definition at line 74 of file Xct.h.

#define XctFreeString   0x0020

Definition at line 89 of file Xct.h.

Referenced by XctFree().

#define XctHideDirection   0x0010

Definition at line 82 of file Xct.h.

Referenced by XctNextItem().

#define XctProvideExtensions   0x0002

Definition at line 57 of file Xct.h.

Referenced by XctNextItem().

#define XctShiftMultiGRToGL   0x0040

Definition at line 94 of file Xct.h.

Referenced by HandleMultiGR(), and XctNextItem().

#define XctSingleSetSegments   0x0001

Definition at line 49 of file Xct.h.

Referenced by XctNextItem().

#define XctVersion   1

Definition at line 35 of file Xct.h.

Referenced by XctNextItem().


Typedef Documentation

typedef struct _XctRec * XctData

typedef unsigned long XctFlags

Definition at line 45 of file Xct.h.

typedef unsigned char* XctString

Definition at line 37 of file Xct.h.


Enumeration Type Documentation

enum XctHDirection

Enumerator:
XctUnspecified 
XctLeftToRight 
XctRightToLeft 

Definition at line 39 of file Xct.h.

00039              {
00040     XctUnspecified,
00041     XctLeftToRight,
00042     XctRightToLeft
00043 } XctHDirection;

enum XctResult

Enumerator:
XctSegment 
XctC0Segment 
XctGLSegment 
XctC1Segment 
XctGRSegment 
XctExtendedSegment 
XctExtension 
XctHorizontal 
XctEndOfText 
XctError 

Definition at line 100 of file Xct.h.

00100              {
00101     XctSegment,         /* used when XctSingleSetSegments is not requested */
00102     XctC0Segment,       /* used when XctSingleSetSegments is requested */
00103     XctGLSegment,       /* used when XctSingleSetSegments is requested */
00104     XctC1Segment,       /* used when XctSingleSetSegments is requested */
00105     XctGRSegment,       /* used when XctSingleSetSegments is requested */
00106     XctExtendedSegment, /* an extended segment */
00107     XctExtension,       /* used when XctProvideExtensions is requested */
00108     XctHorizontal,      /* horizontal direction or depth change */
00109     XctEndOfText,       /* end of text string */
00110     XctError            /* syntactic or semantic error */
00111 } XctResult;


Function Documentation

_XFUNCPROTOBEGIN XctData XctCreate ( _Xconst unsigned char *  string,
int  length,
XctFlags  flags 
)

Definition at line 353 of file Xct.c.

References _XctPriv::buf_count, data, _XctPriv::dirsize, _XctPriv::dirstack, _XctPriv::enc_count, _XctPriv::encodings, _XctPriv::itembuf, malloc(), NULL, and XctReset().

00354 {
00355     register XctData data;
00356     register XctPriv priv;
00357 
00358     data = (XctData)malloc(sizeof(struct _XctRec) + sizeof(struct _XctPriv));
00359     if (!data)
00360         return data;
00361     data->priv = priv = (XctPriv)(data + 1);
00362     data->total_string = (XctString)string;
00363     data->total_length = length;
00364     data->flags = flags;
00365     priv->dirstack = (XctHDirection *)NULL;
00366     priv->dirsize = 0;
00367     priv->encodings = (char **)NULL;
00368     priv->enc_count = 0;
00369     priv->itembuf = (XctString)NULL;
00370     priv->buf_count = 0;
00371     XctReset(data);
00372     return data;
00373 }

Here is the call graph for this function:

void XctFree ( XctData  data  ) 

XctResult XctNextItem ( XctData  data  ) 

void XctReset ( XctData  data  ) 


Generated on Sun Mar 4 16:04:31 2007 for Scilab [trunk] by  doxygen 1.5.1