/* Generated by Ctran from varray.cat */
#define VARRAY_G
#ifndef OLIB_G
#include <olib.g>
#endif
#ifndef P_QUE_H
#include <p_que.h>
#endif
/* Class Numbers */
#define C_VAROOT 1
#define C_VAFIX 2
#define C_VAFLAT 3
#define C_SGBUF 4
#define C_VASEG 5
#define C_VASTR 6
#define C_VAXVAR 7
#define C_VAXVARS 8
/* Method Numbers */
#define O_VA_COPY 14
#define O_SB_INIT 1
#define O_VA_FINDISQ 5
#define O_VA_TEST 12
#define O_SB_DELETE 4
#define O_VA_INIT 17
#define O_VA_REPLACE 13
#define O_SB_INSERT 3
#define O_VA_RECLEN 15
#define O_VA_APPEND 7
#define O_VA_RESET 11
#define O_VA_DELETE 2
#define O_VA_INSERT 8
#define O_SB_POINT 2
#define O_VA_DELETEM 18
#define O_SB_COMPRESS 6
#define O_VA_SORT 3
#define O_VA_PBUF 21
#define O_VA_INSERTM 19
#define O_VA_PREC 20
#define O_SB_COUNT 7
#define O_VA_COMPARE 10
#define O_SB_ALLOCSEG 9
#define O_VA_INSERTISQ 6
#define O_VA_COMPRESS 23
#define O_VA_KEY 4
#define O_SB_BACKPOINT 8
#define O_VA_SWAP 16
#define O_VA_COUNT 1
#define O_VA_CAPACITY 22
#define O_VA_SEARCH 9
#define O_SB_EXTRACT 5
/* Constants for varoot */
#define VA_ROOT_DUPLICATE 1
#define VA_ROOT_FLG_FOLD 0x01
#define VA_ROOT_FLG_DESC 0x02
/* Types for varoot */
typedef struct
{
unsigned char ofs;
unsigned char len;
unsigned char fold;
unsigned char desc;
} PR_VAROOT_KEY;
/* Property of varoot */
typedef struct {
unsigned short int nrec;
PR_VAROOT_KEY key;
} PRS_VAROOT;
typedef struct pr_varoot
{
PRS_ROOT root;
PRS_VAROOT varoot;
} PR_VAROOT;
/* Property of vafix */
typedef struct {
unsigned short int rlen;
} PRS_VAFIX;
typedef struct pr_vafix
{
PRS_ROOT root;
PRS_VAROOT varoot;
PRS_VAFIX vafix;
} PR_VAFIX;
/* Property of vaflat */
typedef struct {
unsigned short int gran;
unsigned short int nspc;
unsigned char *base;
} PRS_VAFLAT;
typedef struct pr_vaflat
{
PRS_ROOT root;
PRS_VAROOT varoot;
PRS_VAFIX vafix;
PRS_VAFLAT vaflat;
} PR_VAFLAT;
/* Types for sgbuf */
typedef struct
{
P_QUE q;
unsigned short int len;
} PR_SGBUF_HD;
typedef struct
{
PR_SGBUF_HD *seg;
unsigned short int base;
unsigned short int ofs;
} PR_SGBUF_SBO;
/* Property of sgbuf */
typedef struct {
PR_SGBUF_HD hd;
unsigned short int nbytes;
PR_SGBUF_SBO cur;
} PRS_SGBUF;
typedef struct pr_sgbuf
{
PRS_ROOT root;
PRS_SGBUF sgbuf;
} PR_SGBUF;
/* Property of vaseg */
typedef struct {
PR_SGBUF *buf;
} PRS_VASEG;
typedef struct pr_vaseg
{
PRS_ROOT root;
PRS_VAROOT varoot;
PRS_VAFIX vafix;
PRS_VASEG vaseg;
} PR_VASEG;
/* Property of vastr */
typedef struct {
unsigned short int size;
unsigned short int gran;
unsigned char *base;
unsigned short int len;
unsigned short int num;
unsigned char *pnum;
} PRS_VASTR;
typedef struct pr_vastr
{
PRS_ROOT root;
PRS_VAROOT varoot;
PRS_VASTR vastr;
} PR_VASTR;
/* Types for vaxvar */
typedef struct
{
unsigned short int len;
unsigned char *buf;
} RC_VAXVAR;
/* Property of vaxvar */
typedef struct pr_vaxvar
{
PRS_ROOT root;
PRS_VAROOT varoot;
PRS_VAFIX vafix;
PRS_VAFLAT vaflat;
} PR_VAXVAR;
/* Property of vaxvars */
typedef struct pr_vaxvars
{
PRS_ROOT root;
PRS_VAROOT varoot;
PRS_VAFIX vafix;
PRS_VASEG vaseg;
} PR_VAXVARS;
