⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gen.x

📁 中国石油二期加油站IC系统后台通讯软件
💻 X
📖 第 1 页 / 共 5 页
字号:
#endif /* CMFILE_REORG_1 */



/* header typedefs */

typedef struct octStrg            /* octet string */
{
   S32 length;                    /* length */
   U8 val[MF_SIZE_TKNSTR];        /* value */
} OctStrg;

typedef struct tknHdr             /* token header */
{
   U8   pres;                     /* present */
   U8   spare1;                   /* for 16 bit alignment */
   U16  spare2;                   /* for 32 bit alignment */
#ifdef ALIGN_64BIT
   U32  spare3;                   /* for 64 bit alignment */
#endif
} TknHdr;

typedef struct elmtHdr            /* element header */
{
   U8   pres;                     /* present */
   U8   actnInd;                  /* action indicator */
   U16  compInd;                  /* for alignment */
#ifdef ALIGN_64BIT
   U32  spare;                    /* for 64 bit alignment */
#endif
} ElmtHdr;

/* token typedefs */

typedef struct tknU8              /* token U8 */
{
   U8   pres;                     /* present flag */
   U8   val;                      /* value */
   U16  spare1;                   /* for alignment */
#ifdef ALIGN_64BIT
   U32  spare2;                   /* for 64 bit alignment */
#endif
} TknU8;

typedef struct tknS8              /* token S8 */
{
   U8   pres;                     /* present flag */
   S8   val;                      /* value */
   U16  spare1;                   /* for alignment */
#ifdef ALIGN_64BIT
   U32  spare2;                   /* for 64 bit alignment */
#endif
} TknS8;

typedef struct tknU16             /* token U16 */
{
   U8   pres;                     /* present flag */
   U8   spare1;                   /* for alignment */
   U16  val;                      /* value */
#ifdef ALIGN_64BIT
   U32  spare2;                   /* for 64 bit alignment */
#endif
} TknU16;

typedef struct tknU32             /* token U32 */
{
   U8   pres;                     /* present flag */
   U8   spare1;                   /* for alignment */
   U16  spare2;                   /* for alignment */
   U32  val;                      /* value */
} TknU32;

typedef struct tknS32             /* token S32 */
{
   U8   pres;                     /* present flag */
   U8   spare1;                   /* for alignment */
   U16  spare2;                   /* for alignment */
   S32  val;                      /* value */
} TknS32;

typedef struct tknStrS            /* token string */
{
   U8   pres;                     /* present flag */
   U8   len;                      /* length */
   U16  spare1;                   /* for alignment */
#ifdef ALIGN_64BIT
   U32  spare2;                   /* for 64 bit alignment */
   U8   val[(MF_SIZE_TKNSTRS + 7) & 0xff8]; /* string value */
#else
   U8   val[(MF_SIZE_TKNSTRS + 3) & 0xffc]; /* string value */
#endif
} TknStrS;

typedef struct tknStrM            /* token string */
{
   U8   pres;                     /* present flag */
   U8   len;                      /* length */
   U16  spare1;                   /* for alignment */
#ifdef ALIGN_64BIT
   U32  spare2;                   /* for 64 bit alignment */
   U8   val[(MF_SIZE_TKNSTRM + 7) & 0xff8]; /* string value */
#else
   U8   val[(MF_SIZE_TKNSTRM + 3) & 0xffc]; /* string value */
#endif
} TknStrM;

typedef struct tknStr             /* token string */
{
   U8   pres;                     /* present flag */
   U8   len;                      /* length */
   U16  spare1;                   /* for alignment */
#ifdef ALIGN_64BIT
   U32  spare2;                   /* for 64 bit alignment */
   U8   val[(MF_SIZE_TKNSTR + 7) & 0xff8]; /* string value */
#else
   U8   val[(MF_SIZE_TKNSTR + 3) & 0xffc]; /* string value */
#endif
} TknStr;

typedef struct tknStrE            /* token string extended */
{
   U8   pres;                     /* present flag */
   U8   len;                      /* length */
   U16  spare1;                   /* for alignment */
#ifdef ALIGN_64BIT
   U32  spare2;                   /* for 64 bit alignment */
   U8   val[(MF_SIZE_TKNSTRE + 7) & 0xff8]; /* string value */
#else
   U8   val[(MF_SIZE_TKNSTRE + 3) & 0xffc]; /* string value */
#endif
} TknStrE;

typedef struct tknStrXL           /* token string extra long */
{
   U16  len;                      /* length */
   U8   pres;                     /* present flag */
   U8   spare1;                   /* for alignment */
#ifdef ALIGN_64BIT
   U32  spare2;                   /* for 64 bit alignment */
#endif
   U8   *val;                     /* string value (use allocated memory) */
} TknStrXL;
 
typedef struct tknStr4            /* token string */
{
   U8   pres;                     /* present flag */
   U8   len;                      /* length */
   U16  spare1;                   /* for alignment */
#ifdef ALIGN_64BIT
   U32  spare2;                   /* for 64 bit alignment */
   U8   val[8];                   /* string value - 8 byte alligned */
#else
   U8   val[4];                   /* string value - 4 byte alligned */
#endif /* ALIGN_64BIT */
} TknStr4;

typedef struct tknStr12           /* token string */
{
   U8   pres;                     /* present flag */
   U8   len;                      /* length */
   U16  spare1;                   /* for alignment */
#ifdef ALIGN_64BIT
   U32  spare2;                   /* for 64 bit alignment */
   U8   val[16];                  /* string value - 8 byte alligned */
#else
   U8   val[12];                  /* string value - 4 byte alligned */
#endif /* ALIGN_64BIT */
} TknStr12;

typedef struct tknStr32           /* token string */
{
   U8   pres;                     /* present flag */
   U8   len;                      /* length */
   U16  spare1;                   /* for alignment */
#ifdef ALIGN_64BIT
   U32  spare2;                   /* for 64 bit alignment */
#endif
   U8   val[32];                  /* string value - 4 byte alligned */
} TknStr32;

typedef struct tknStr64           /* token string */
{
   U8   pres;                     /* present flag */
   U8   len;                      /* length */
   U16  spare1;                   /* for alignment */
#ifdef ALIGN_64BIT
   U32  spare2;                   /* for 64 bit alignment */
#endif
   U8   val[64];                  /* string value - 4 byte alligned */
} TknStr64;

typedef struct tknStr132          /* token string */
{
   U8   pres;                     /* present flag */
   U8   len;                      /* length */
   U16  spare1;                   /* for alignment */
#ifdef ALIGN_64BIT
   U32  spare2;                   /* for 64 bit alignment */
   U8   val[136];                 /* string value - 8 byte alligned */
#else
   U8   val[132];                 /* string value - 4 byte alligned */
#endif /* ALIGN_64BIT */
} TknStr132;

typedef struct tknStr256          /* token string */
{
   U8   pres;                     /* present flag */
   U8   len;                      /* length */
   U16  spare1;                   /* for alignment */
#ifdef ALIGN_64BIT
   U32  spare2;                   /* for 64 bit alignment */
#endif
   U8   val[256];                 /* string value - 4 byte alligned */
} TknStr256;

typedef struct tknOid             /* Object Identifier */
{
   U8   pres;                     /* present flag */
   U8   len;                      /* length */
   U16  spare1;                   /* for alignment */
#ifdef ALIGN_64BIT
   U32  spare2;                   /* for 64 bit alignment */
#endif
   U16  val[32];                  /* max 32 integers of less than 64k value */
} TknOid;

typedef struct tknBits            /* token bits */
{
   U8   pres;                     /* present flag */
   U8   len;                      /* for alignment */
   U16  spare1;                   /* for alignment */
#ifdef ALIGN_64BIT
   U32  spare2;                   /* for 64 bit alignment */
   U8   val[(MF_SIZE_TKNBITS + 7) & 0xff8]; /* string value */
#else
   U8   val[(MF_SIZE_TKNBITS + 3) & 0xffc]; /* string value */
#endif
} TknBits;

typedef struct elmtStr            /* element string */
{
   ElmtHdr eh;                    /* element header */
   TknStr str;                    /* network specific information */
} ElmtStr;

typedef struct cdPtyNmb           /* called party number tokens */
{
   ElmtHdr eh;                    /* element header */
   TknU8 nmbPlanId;               /* numbering plan identification */
   TknU8 typeNmb0;                /* type of number */
#ifdef CDPTYNMB_32DIGIT
   TknStrM nmbDigits;             /* number digits */
#else
   TknStrS nmbDigits;             /* number digits */
#endif /* CDPTYNMB_32DIGIT */
} CdPtyNmb;

typedef struct redirNmb           /* redirecting number tokens */
{
   ElmtHdr eh;                    /* element header */
   TknU8 nmbPlanId;               /* numbering plan identification */
   TknU8 typeNmb;                 /* type of number */
   TknU8 screenInd;               /* screening indicator */
   TknU8 presInd;                 /* presentation indicator */
   TknU8 rsnRedirect;             /* reason for redirection */
   TknStrS nmbDigits;             /* number digits */
} RedirNmb;

typedef struct srvClass           /* service class */          
{                                                       
   U8 type;                       /* type */                 
   union                                                
   {                                                    
      struct                      /* frame relay */                                
      {                                                 
         Bool cr;                 /* command response bit */
         Bool de;                 /* discard eligibility bit */ 
      } fr;                                             
      struct                      /* mac */
      {                                                 
         Prior prior;             /* priority */            
      } ma;                                             
   } s;                                                 
} SrvClass;                                              

/* ip header, without options */

typedef struct ip           /* ip header */
{
   U8     ip_hl;            /* header length */
   Prec   ip_tos;           /* type of service */
   U16    ip_len;           /* total length */
   U16    ip_id;            /* identification */
   U16    ip_off;           /* fragment offset field */
   Ttl    ip_ttl;           /* time to live */
   U8     ip_p;             /* protocol */
   U16    ip_sum;           /* checksum */
   IpAddr ip_src;           /* source address */
   IpAddr ip_dst;           /* dest address */
} Ip;
 

/* ATM structures */
 
#ifndef CMFILE_REORG_1

/* info elements that can be used for routing calls */
 
typedef struct amCdPtySad       /* Called Party Sub Address Tokens */
{
   ElmtHdr eh;                  /* element header */
   TknU8   oddEvenInd;          /* odd/even indicator */
   TknU8   typeSad;             /* type of sub address */
   TknStrS  sadInfo;            /* address/number information */
} AmCdPtySad;
 
typedef struct amBHiLyrInfo     /* Broadband High Layer Information Tokens */
{
   ElmtHdr eh;                  /* element header */
   TknU8   hiLyrInfoType;       /* high layer information type */
   TknStrS  hiLyrInfo;          /* high layer information */
} AmBHiLyrInfo;
 
typedef struct amBBearCap       /* Broadband Bearer Capability Tokens */
{
   ElmtHdr eh;                  /* element header */
   TknU8   bearClass;           /* bearer class */
   TknU8   timingReq;           /* timing requirement */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -