C:/Lavoro/UNIROMA1/CompitoLabProgC/DBF/include/LPC_Costanti.h File Reference

Costanti e tipi principali usati da tutti i moduli del compito di LPC. More...

#include <stdio.h>
#include <time.h>

Data Structures

struct  DBF_HEADER_t
 Header del database. More...
struct  FIELD_DATA_t
 Definizione di un campo del database. More...
struct  DBF_INFO_t
 Informazioni su un database. Sono informazioni generiche più informazioni dipendenti dalla connessione. More...
struct  FIELD_VALUE_t
 Valore di un campo del database. More...

Defines

#define TRUE   1
 Valore TRUE.
#define FALSE   0
 Valore FALSE.
#define DBF_NAME_LENGTH   10
 Lunghezza massima del nome di un database o index file.
#define FIELD_NAME_LENGTH   10
 Lunghezza massima del nome di un campo.
#define MAX_NUM_FIELDS   255
 Numero massimo di campi nel database.
#define MAX_DBF_OPEN   32
 Numero massimo di file di database aperti contemporaneamente.
#define MAX_INDEX_OPEN   10
 Numero massimo di indici creabili per un database file.
#define FIELD_CHAR   1
 Tipo campo CHARACTER.
#define FIELD_NUM   2
 Tipo campo NUMERIC.
#define FIELD_DATE   3
 Tipo campo DATA.
#define FIELD_LOGI   4
 Tipo campo LOGICAL.
#define DBF_EXTENSION   ".dbf"
 Estensione del nome di un database file.
#define INDEX_EXTENSION   ".ndx"
 Estensione del nome di un database index.
#define DBF_OPEN_SHARED   "."
 Inizio del nome di un database aperto in modalita' SHARED.
#define DBF_OPEN_EXCL   "!"
 Inizio del nome di un database aperto in modalita' EXCLUSIVE.
#define DBF_OPEN_EXT   ".$$$"
 Estensione di un database aperto.
#define DBF_FIXED_HEADER_LEN   (DBF_NAME_LENGTH + 1 + sizeof(int) + sizeof(long) + sizeof(int) + sizeof(int) + sizeof(long))
 Lunghezza della parte fissa dell'header escluso il doppio NULL finale.
#define DBF_FIELD_LEN   (FIELD_NAME_LENGTH + 1 + sizeof(int) + sizeof(int) + sizeof(int))
 Lunghezza di ogni definizione campo.
#define FIELD_CHAR_LEN   255
 Lunghezza massima del tipo campo CHARACTER.
#define FIELD_NUM_LEN   10
 Lunghezza massima della parte intera del tipo campo NUMERIC.
#define FIELD_DEC_LEN   5
 Lunghezza massima della parte decimale del tipo campo NUMERIC.
#define FIELD_DATE_LEN   19
 Lunghezza (FISSA) del tipo campo DATA (dd/MM/yyyy HH:MM:SS).
#define FIELD_LOGI_LEN   1
 Lunghezza (FISSA) del tipo campo LOGICAL.
#define TOP   1
 Inserimento all'inizio del file.
#define BOTTOM   2
 Inserimento alla fine del file.
#define CURRENT   3
 Inserimento nel punto corrente del file.
#define SHARED   1
 DBF aperto con accesso shared.
#define EXCLUSIVE   2
 DBF aperto con accesso esclusivo.
#define LPC_OK   0
 Tutto bene.
#define LPC_BAD_ARG   -1
 Argomento non valido.
#define LPC_BAD_FIELD   -2
 Tipo campo non valido.
#define LPC_FILE_EXISTS   -3
 File già esistente.
#define LPC_FILE_ACCESS   -4
 Accesso negato o file inesistente.
#define LPC_ERR_WRITE   -5
 Errore di scrittura.
#define LPC_ERR_READ   -6
 Errore di lettura.
#define LPC_ERR_SEEK   -7
 Errore di posizionamento.
#define LPC_NO_MEMORY   -8
 Errore di allocazione memoria.
#define LPC_NO_SPACE   -9
 Spazio interno esaurito (vettore full).
#define LPC_DBF_OPEN   -10
 Il database è aperto.
#define LPC_ERR_EXCLUSIVE   -11
 Il database è aperto in modo esclusivo.

Functions

int CreateDatabaseFile (char *Name, int NumFields, FIELD_DATA_t *FieldData)
 Crea un DBF.
int DeleteDatabaseFile (char *Name)
 Cancella un DBF.
int OpenDatabaseFile (char *Name, int Mode)
 Apre un DBF.
int CloseDatabaseFile (int handle)
 Chiude un DBF.
int GetDBFInfo (int handle, DBF_INFO_t *DBFInfo)
 Legge informazioni di un DBF aperto.
int GetFieldInfo (int handle, int NumFields, FIELD_DATA_t *FieldData)
 Legge informazioni di uno o piu' campi di un DBF aperto.
int IsDBFHandle (int handle)
 Verifica se un handle è corretto.
int IsDBFOpen (int handle)
 Verifica se un DBF e' aperto.
void LPC_GestioneErrore (int ErrorCode, char *Func, char *Msg)
 Funzione di gestione dell'errore.


Detailed Description

Costanti e tipi principali usati da tutti i moduli del compito di LPC.

Questo file contiene valori costanti comuni a tutti i moduli del compito di LPC e facenti parte dell'interfaccia.

Contiene anche la definizione delle strutture da utilizzare e i prototipi delle funzioni dell'interfaccia.

Author:
Stefano Guerrini

Andrea Sterbini

Gianni Campanile

Date:
Gennaio 2006
Version:
1.0

Generated on Thu Jan 26 12:56:37 2006 for LPC-Completo by  doxygen 1.4.6-NO