z/OS Unicode Services User's Guide and Reference
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


31-bit mapping

z/OS Unicode Services User's Guide and Reference
SA38-0680-00

typedef struct tagCUNBCPRM {
long           Version;              /* Structure version number    */
long           Length;               /* Length of  structure        */
long           Res1;                 /* Reserved                    */
void   *       Src_Buf_Ptr;          /* Pointer to Source           */
unsigned long  Src_Buf_ALET;         /* ALET of source buffer       */
unsigned long  Src_Buf_Len;          /* Length of source data       */
long           Res2;                 /* Reserved                    */
void   *       Targ_Buf_Ptr;         /* Pointer to Target           */
unsigned long  Targ_Buf_ALET;        /* ALET of target buffer       */
unsigned long  Targ_Buf_Len;         /* Length of target buffer     */
char           Conv_Handle[64];      /* conversion handle           */
unsigned long  Src_CCSID;            /* CCSID of source data        */
unsigned long  Targ_CCSID;           /* CCSID of target data        */
char           Technique[8];         /*                             */
long           Res3;                 /* Reserved                    */
void   *       Wrk_Buf_Ptr;          /* Pointer to work buffer      */
unsigned long  Wrk_Buf_ALET;         /* ALET of work buffer         */
unsigned long  Wrk_Buf_Len;          /* Length of work buffer       */
void   *       DDA_Buf_Ptr;          /* Pointer to dynamic data area*/
unsigned long  DDA_Buf_ALET;         /* ALET of DDA                 */
unsigned long  DDA_Buf_Len;          /* Length of DDA               */
struct {
  int           Sub_Action      : 1,  /* Sub action:                 */
                                      /* 0 = Terminate with error    */
                                      /* 1 = Substitute and cont.    */
                Inv_Handle      : 1,  /* Invalid handle at start:    */
                                      /* 0 = Terminate with error    */
                                      /* 1 = Get new handle and      */
                No_Opt_Buf_Fill : 1,  /* Target buffer filled        */
                                      /* 0 = Target buffer filled    */
                                      /* optimally increases runtime */
                                      /* 1 = Target Buffer not filled*/
                                      /* optimally increases runtime */
                Mal_Action      : 1,  /* Mal Action: (Default 0)     */
                                      /* 0 = Substitute and cont.    */
                                      /* 1 = Terminate with error    */
                RL_Sub_Action   : 1,  /* RL Sub action. If Tech=R/L: */
                                      /* 0 = Does nothing.           */
                                      /* 1 = Override SUB_ACTION.    */
                SrcSub_Chk      : 1,  /* If Sub is checked:          */
                                      /* 0=Does nothing.             */
                                      /* 1=Override SUB_ACTION.      */
                Bidi_Context    : 1,  /* Bidi Context                */
                                      /* 0 = Context LTR             */
                                      /* 1 = Context RTL             */
                Bidi_ImpAlg     : 1;  /* Bidi Implicit Alg           */
                                      /* 0 = Algor Basic             */
                                      /* 1 = Algor Implicit          */ 
  } Flag1;                            /* FLAG Byte 1 set by caller   */
 struct {                             /* Subcodepage number(s)       */
  int           Source_SCP_State :4,  /*Source subcodepage state     */
                Target_SCP_State :4;  /*Target subcodepage state     */
  } Subcodepage;
 struct {
  int           Substitution    : 1,  /* Substitution:               */
                                      /* 0 = No character substituted*/
                                      /* 1 = character(s) substituted*/
                Mal_Found       : 1,  /* Malformed String found      */
                                      /* 0 = No Malformed str found  */
                                      /* 1 = Malformed str found     */
                Page_Fix        : 1,  /* Page fixing:                */
                                      /* 0=System storage            */
                                      /* 1=Page Fixing.              */
           ETF3E_Behavior_Status : 1,  /* HW Enhancement for conver-  */
                                      /* sions from 1200 to 1208 and */
                                      /* vice versa status:          */
                                      /* 0 =  When ETF3E_Behavior is  */
                                      /* ON, means ETF3 HW enhancement*/
                                      /* is used (default)           */
                                      /* 1 =  When ETF3E_Behavior is   */
                                      /* ON, means ETF3 HW enhancement*/
                                      /* is not used, because it is     */
                                      /* not available.              */
                                      /*                              */
                                      /* Note. When conversion are not*/
                                      /*   requested from 1200 to     */
                                      /*   1208 and vice versa, the   */
                                      /*   contents of this is not    */
                                      /*   meaningful.                */       
                               : 4;                                            
      } Flag2;
 unsigned char  Designator;           /* reserved for ISO 2022        */
 long           Return_Code;
 long           Reason_Code;
 unsigned int   Res6;                 /* Reserved                     */
 struct {                                                                       
  int           ETF3E_Behavior   : 1, /* ETF3 HW Enhancement          */         
                                      /* 0 =  Do not exploit ETF3     */
                                      /* (default)                    */
                                      /* 1 =  Exploit ETF3            */
                                     
                                : 15; /* Reserved                     */          
     } Flag3;                         /* FLAG3 Byte 2 set by caller   */          
   char          Res7[2];             /* Reserved                     */
   CUNBDPRM *      Extended_Bidi_Parm_Area_Ptr;
   char            Res8[64];
 } CUNBCPRM;

/* The extended bidi parameter area */
typedef struct tagCUNBDPRM {
int             Version;
int             Length;
struct {
  int           XOpen_Defaults          :  1,
                KBS_Defaults            :  1,
                Keyword                 :  1,
                From_wtransform         :  1,
                                        :  4,
}               InFlags;
struct {
  int           Layout_Roundtrip        :  1,
                Layout_WinCompat        :  1,
                Layout_ImpToImp         :  1,
                Layout_Remove_Marks     :  1,
                Layout_Insert_Marks     :  1,
                Layout_Streaming        :  1,
                                        :  2;
}               Layout_Options;
struct {
  int           ActiveShapeEditing      :  1,
                ActiveDirectional       :  1,
                                        : 14;
}               OutFlags;
int             Orientation_Src;
int             Orientation_Targ;
int             Context_Src;
int             Context_Targ;
int             TypeOfText_Src;
int             TypeOfText_Targ;
int             ImplicitAlg_Src;
int             ImplicitAlg_Targ;
int             Swapping_Src;
int             Swapping_Targ;
int             Numerals_Src;
int             Numerals_Targ;
int             TextShaping_Src;
int             TextShaping_Targ;
int             ShapeCharsetSize;
int             ShapeContextSize_Front;
int             ShapeContextSize_Back;
int             CheckMode;
unsigned int    InpBufIndex;
unsigned long   Streaming_Processed_Length;
int             ArabicOneCellShaping_Src;
int             ArabicOneCellShaping_Targ;
int             WordBreak_Src;
int             WordBreak_Targ;
int             LamAlefEditMode_Src;
int             LamAlefEditMode_Targ;
int             YehHamzaMode_Src;
int             YehHamzaMode_Targ;
int             TailEditMode_Src;
int             TailEditMode_Targ;
int             TashkeelEditMode_Src;
int             TashkeelEditMode_Targ;
unsigned int *  InpToOut_Ptr;
unsigned int *  OutToInp_Ptr;
unsigned char * BidiLvl_Ptr;
char            Layout_Streaming_State[64];
char            Bidi_Keyword[128];
char            Res2[64];
} CUNBDPRM;

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014