71 lines
1.7 KiB
C
71 lines
1.7 KiB
C
|
/****************************************************************
|
||
|
* *
|
||
|
* Copyright 2001, 2009 Fidelity Information Services, Inc *
|
||
|
* *
|
||
|
* This source code contains the intellectual property *
|
||
|
* of its copyright holder(s), and is made available *
|
||
|
* under a license. If you do not know the terms of *
|
||
|
* the license, please stop and do not read further. *
|
||
|
* *
|
||
|
****************************************************************/
|
||
|
|
||
|
#ifndef GTM_DESCRIPT_INCLUDED
|
||
|
#define GTM_DESCRIPT_INCLUDED
|
||
|
#include "gtm_sizeof.h"
|
||
|
|
||
|
int mumps_call();
|
||
|
|
||
|
|
||
|
typedef struct {
|
||
|
short len;
|
||
|
short type;
|
||
|
void *val;
|
||
|
} gtm_descriptor;
|
||
|
|
||
|
typedef struct {
|
||
|
unsigned int len;
|
||
|
unsigned int type;
|
||
|
void *val;
|
||
|
} gtm32_descriptor;
|
||
|
|
||
|
/* legal types */
|
||
|
|
||
|
#define DSC_K_DTYPE_T 1
|
||
|
#define GTM_ARRAY_OF_CHARS DSC_K_DTYPE_T
|
||
|
|
||
|
#define DSC_K_DTYPE_D 2
|
||
|
#define GTM_DOUBLE DSC_K_DTYPE_D
|
||
|
|
||
|
#define DSC_K_DTYPE_B 3
|
||
|
#define GTM_CHAR DSC_K_DTYPE_B
|
||
|
|
||
|
#define DSC_K_DTYPE_BU 4
|
||
|
#define GTM_UNSIGNED_CHAR DSC_K_DTYPE_BU
|
||
|
|
||
|
#define DSC_K_DTYPE_W 5
|
||
|
#define GTM_SHORT DSC_K_DTYPE_W
|
||
|
|
||
|
#define DSC_K_DTYPE_WU 6
|
||
|
#define GTM_UNSIGNED_SHORT DSC_K_DTYPE_WU
|
||
|
|
||
|
#define DSC_K_DTYPE_L 7
|
||
|
#define GTM_LONG DSC_K_DTYPE_L
|
||
|
|
||
|
#define DSC_K_DTYPE_LU 8
|
||
|
#define GTM_UNSIGNED_LONG DSC_K_DTYPE_LU
|
||
|
|
||
|
#define DSC_K_DTYPE_F 9
|
||
|
#define GTM_FLOAT DSC_K_DTYPE_F
|
||
|
|
||
|
#define GTM_MODE 10
|
||
|
#define GTM_DELIMITER 10
|
||
|
|
||
|
#define DESCRIPTOR(x,y) {x.type = GTM_ARRAY_OF_CHARS; x.len = SIZEOF(y) - 1; x.val = y;}
|
||
|
#define DESC_MODE(x,y) {x.type=GTM_MODE; x.len=SIZEOF(y); x.val=(void*)&y;}
|
||
|
#define DESC_CHAR(x,y) {x.type=GTM_ARRAY_OF_CHARS; x.len=SIZEOF(y)-1; x.val=y;}
|
||
|
#define DESC_ZERO(x) {x.type=0; x.len=0;}
|
||
|
#define DESC_LONG(x,y) {x.type=GTM_LONG; x.len=SIZEOF(y); x.val=&y;}
|
||
|
#define DESC_DELIM(x,y) {x.type=GTM_DELIMITER;x.len=SIZEOF(y);x.val=(void *)&y;}
|
||
|
|
||
|
#endif
|