campo-sirio/include/cfiles.h

136 lines
3.9 KiB
C
Raw Normal View History

#ifndef __CFILES_H
#define __CFILES_H
#ifndef __CCUSTIO_H
#include "ccustio.h"
#endif
#define MaxFilesDir 70
#define MKFields 10
#define MaxFields 100
#define MaxKeys 8
#define glockname "xx"
#define INVFLD 255
/* @(!) 2.3.01.144 */
#define NORDIR 0
#define COMDIR 1
/* @(:) 2.3.01.144 */
typedef char FieldName[12] ;
typedef struct
{
char SysName[42] __PACKED__ ;
RecNoType EOD __PACKED__ ;
RecNoType EOX __PACKED__ ;
/* @(!) 2.3.01.temp */
#ifdef M_I386
unsigned short LenR __PACKED__ ;
#else
/* @(:) 2.3.01.temp */
unsigned int LenR ;
/* @(!) 2.3.01.temp */
#endif
/* @(:) 2.3.01.temp */
RecNoType Flags __PACKED__ ;
char Des[42] __PACKED__ ;
char FCalc[32] __PACKED__ ;
char GenPrompt[32] __PACKED__ ;
} FileDes;
typedef struct
{
FieldName Name __PACKED__ ;
byte TypeF __PACKED__ ;
byte Len __PACKED__ ;
byte Dec __PACKED__ ;
#ifdef __PACK_1__
byte junk __PACKED__ ;
#endif
/* @(!) 2.3.01.temp */
#ifdef M_I386
unsigned short RecOff __PACKED__ ;
#else
/* @(:) 2.3.01.temp */
unsigned int RecOff ;
/* @(!) 2.3.01.temp */
#endif
/* @(:) 2.3.01.temp */
} RecFieldDes ;
#if XVT_OS == XVT_OS_WIN || XVT_OS_WIN32
#pragma pack(2)
#endif
typedef struct
{
BOOLEAN DupKeys __ALIGNED__ ;
byte NkFields __ALIGNED__ ;
byte FieldSeq[MKFields] __PACKED__ ;
byte FromCh[MKFields] __PACKED__ ;
byte ToCh[MKFields] __PACKED__ ;
} KeyDes ;
typedef struct
{
/* @(!) 2.3.01.temp */
#ifdef M_I386
short NFields __PACKED__ ;
#else
/* @(:) 2.3.01.temp */
int NFields ;
/* @(!) 2.3.01.temp */
#endif
/* @(:) 2.3.01.temp */
RecFieldDes Fd[MaxFields] __PACKED__ ;
byte SortFd[MaxFields] __PACKED__ ;
/* @(!) 2.3.01.temp */
#ifdef M_I386
short NKeys __PACKED__ ;
#else
/* @(:) 2.3.01.temp */
int NKeys ;
/* @(!) 2.3.01.temp */
#endif
/* @(:) 2.3.01.temp */
KeyDes Ky[MaxKeys] __PACKED__ ;
} RecDes;
#ifdef __CFILES_C
SecDef rdir[2], fdir[2];
#else
extern SecDef rdir[2], fdir[2];
#endif
#ifdef __cplusplus
extern "C" {
#endif
/* @(!) 2.3.01.144 */
void COpenDir(int, int);
void CCloseDir(int);
void COpenFile(int, FileDes *, int, int);
void CCloseFile(int, FileDes *, int);
void CGetFile(int, FileDes *, int, int);
void CPutFile(int, FileDes *, int);
/* @(:) 2.3.01.144 */
void zerofdes(FileDes *);
/* @(!) 2.3.01.144 */
void COpenRecDir(int, int);
void CCloseRecDir(int);
void CGetRec(int, RecDes *, int);
void CPutRec(int, RecDes *, int);
/* @(:) 2.3.01.144 */
void zerordes(RecDes *);
word setrdes(RecDes *);
char *CGetPref(void);
void CPutPref(char *);
char *CAddPref(char *);
/* @(!) 2.3.01.144 */
char *CInsPref(char *, int);
/* @(:) 2.3.01.144 */
char *CGetIdxName(char *);
#ifdef __cplusplus
};
#endif
#endif /* __CFILES_H */