#include <netinet/in.h>
#include <stdio.h>
#include <time.h>
#include <errno.h>
Data Structures | |
| 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 file. | |
| #define | FIELD_NAME_LENGTH 10 |
| Lunghezza massima del nome di un campo. | |
| #define | INDEX_NAME_LENGTH 10 |
| Lunghezza massima del nome di un index file. | |
| #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 | CHARACTER 1 |
| Tipo campo CHARACTER. | |
| #define | NUMERIC 2 |
| Tipo campo NUMERIC. | |
| #define | DATE 3 |
| Tipo campo DATE. | |
| #define | LOGICAL 4 |
| Tipo campo LOGICAL. | |
| #define | DBF_EXTENSION ".dbf" |
| Estensione del nome di un database file. | |
| #define | DBF_OPEN_EXT ".$$$" |
| Estensione di un database aperto. | |
| #define | DBF_FILENAME_LENGTH DBF_NAME_LENGTH+1+3 |
| Lunghezza totale del nome di un file DBF compresa l'estensione. | |
| #define | DBF_FIXED_HEADER_LEN (DBF_NAME_LENGTH + 1 + sizeof(short) + sizeof(long) + sizeof(short) + sizeof(short) + sizeof(long)) |
| Lunghezza della parte fissa dell'header escluso il doppio NULL finale. | |
| #define | DBF_FIELD_LEN (FIELD_NAME_LENGTH + 1 + sizeof(short) + sizeof(short)) |
| Lunghezza di ogni definizione campo. | |
| #define | FIELD_CHAR_LEN 255 |
| Lunghezza massima del tipo campo CHARACTER. | |
| #define | FIELD_NUM_LEN sizeof(double) |
| Lunghezza (FISSA) del tipo campo NUMERIC. | |
| #define | FIELD_DATE_LEN sizeof(long) |
| Lunghezza (FISSA) del tipo campo DATE. | |
| #define | FIELD_LOGI_LEN sizeof(char) |
| 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 | ABSOLUTE 1 |
| Spostamento assoluto. | |
| #define | RELATIVE 2 |
| Spostamento relativo. | |
| #define | LPC_OK 0 |
| Tutto bene. | |
| #define | LPC_BAD_ARG -1 |
| Argomento non valido. | |
| #define | LPC_BAD_FIELD -2 |
| Campo non valido. | |
| #define | LPC_FILE_EXISTS -3 |
| File gia' 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_NOT_FOUND -11 |
| Record non trovato. | |
| #define | LPC_ERR_EOF -12 |
| Errore di fine file. | |
Functions | |
| void | LPC_GestioneErrore (int ErrorCode, char *Func, char *Msg) |
| Stampa l'errore. | |
| int | OpenDatabaseFile (char *Name) |
| Apre un file di database con nome Name. | |
| int | CloseDatabaseFile (int handle) |
| Chiude un file di database aperto. | |
| int | GetDBFInfo (int handle, DBF_INFO_t *DBFInfo) |
| Chiede informazioni su un file di database aperto. | |
| int | GetFieldInfo (int handle, int NumFields, FIELD_DATA_t *FieldData) |
| Chiede informazioni sui campi di un database aperto. | |
| int | IsDBFHandle (int handle) |
| Verifica se un handle e' valido. | |
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.
Andrea Sterbini
Gianni Campanile
1.4.6-NO