Files correlati : agalib.lib Ricompilazione Demo : [ ] Commento : Eliminati puntatori a FileDes e RecDes che ora sono riferimenti. Supporto per percorsi lunghi dei file dati Corretto filtraggio cursori git-svn-id: svn://10.65.10.50/trunk@17856 c028cbd2-c16b-5b4b-a496-9718f37d4682
		
			
				
	
	
		
			117 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			C
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			117 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			C
		
	
	
		
			Executable File
		
	
	
	
	
#ifndef __CFILES_H
 | 
						|
#define __CFILES_H
 | 
						|
 | 
						|
#ifndef __CCUSTIO_H
 | 
						|
#include "ccustio.h"
 | 
						|
#endif
 | 
						|
 | 
						|
#ifdef __GNUC__
 | 
						|
#define __PACKED__ __attribute__ ((packed))
 | 
						|
#define __ALIGNED__ __attribute__ ((aligned(2))) 
 | 
						|
#define __PACK_1__
 | 
						|
#else
 | 
						|
#define __PACKED__
 | 
						|
#define __ALIGNED__
 | 
						|
#pragma pack(2)
 | 
						|
#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__ ;
 | 
						|
  unsigned short  LenR  __PACKED__ ;
 | 
						|
  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
 | 
						|
  unsigned short RecOff  __PACKED__ ;
 | 
						|
} RecFieldDes ;
 | 
						|
 | 
						|
typedef struct
 | 
						|
{
 | 
						|
  short   DupKeys __ALIGNED__ ;   // Was BOOLEAN and dangerous
 | 
						|
  byte    NkFields __ALIGNED__ ;
 | 
						|
  byte    FieldSeq[MKFields]  __PACKED__ ;
 | 
						|
  byte    FromCh[MKFields]  __PACKED__ ;
 | 
						|
  byte    ToCh[MKFields]  __PACKED__ ;
 | 
						|
} KeyDes ;
 | 
						|
 | 
						|
typedef struct
 | 
						|
{
 | 
						|
  short        NFields  __PACKED__ ;
 | 
						|
  RecFieldDes  Fd[MaxFields]  __PACKED__ ;
 | 
						|
  byte         SortFd[MaxFields]  __PACKED__ ;
 | 
						|
  short        NKeys  __PACKED__ ;
 | 
						|
  KeyDes       Ky[MaxKeys]  __PACKED__ ;
 | 
						|
}       RecDes;
 | 
						|
 | 
						|
#ifdef __CFILES_C
 | 
						|
SecDef rdir[2], fdir[2];
 | 
						|
#else
 | 
						|
extern SecDef rdir[2], fdir[2];
 | 
						|
#endif
 | 
						|
 | 
						|
#ifdef WIN32
 | 
						|
#pragma pack()
 | 
						|
#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, const 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 *);
 | 
						|
  const char* CGetPref(void);
 | 
						|
  void  CPutPref(const char *);
 | 
						|
  char* CAddPref(const char *);
 | 
						|
  /* @(!) 2.3.01.144 */
 | 
						|
  char* CInsPref(const char *, int);
 | 
						|
 | 
						|
  int CGetCampoStpValue(const char* name, char* value, int valsize);
 | 
						|
  const char* CGetCampoIni(void);
 | 
						|
 | 
						|
#ifdef __cplusplus
 | 
						|
};
 | 
						|
#endif
 | 
						|
 | 
						|
#endif /* __CFILES_H */
 |