EuLib

EUlib e' una libreria C/C++ multipiattaforma che implementa il linguaggio embeddable "Calc" e alcuni tipi di dato come liste, alberi, b-tree e funzioni di manipolazione e di gestione di date.

EuLib

EuLib e' una libreria compatibile con C e C++ per gestire un linguaggio di script embeddable nelle applicazioni ed una serie di classi di base come liste ed alberi. Vi sono anche classi per gestire il parsing e la gestione dei tipi data.

Le classi di base comprendono

  • Liste a collegamento singolo (single linked list)
  • Liste a collegamento doppio (double linked list)
  • Alberi (tree)
  • Btree
  • Allocazione veloce di blocchi di memoria di dimensioni fisse (Fixmem)
  • Analizzatore lessicale (Lex)
  • Gestione facilitata e parsing di date (DateTime)

In piu', come accennato, e' implementato un linguaggio di script e vi sono classi per gestire le eccezioni in modo simile al C++, la versione dei vari moduli e l'auditing del flusso del programma attraverso un sistema di log.

La libreria e' compatibile con Windows e Linux; assieme ad essa viene fornito anche un programma di test per la verifica dei singoli moduli.

La libreria e' modulare, in modo da non rendere indispensabile il link di tutti i moduli se il progetto su cui si lavora ha particolari limiti, come spesso comune per chi lavora con i sistemi embedded.

Alla libreria sia accompagna un progetto di test chiamato EuLibProva

Il codice e' stato sviluppato da EuroSoft Informatica Medica e fornito sotto licenza LGPL.

Eulib e' stata rilasciata come progetto Open Source Project a marzo del 2004 dall'Ing. Filippo Di Marco di Eurosoft con l'aiuto di Giovanni Faglioni (uno degli autori originali). I primi componenti di EuLib hanno visto la luce su un Amiga 1000.

Stato del progetto

Il codice compila in Windows in C++ e Linux in C. Il codice di prova e' diviso in due progetti separati per Linux e Windows con due codebases. Esiste una documentazione riportata manualmente da quella originale.

La compliazione in C++ e' stata ottenuta includendo in files C++ i files C originali.

Obbiettivi a breve termine

Riunire il modello di programmazione delle eccezioni in uno solo. Attualmente ci sono problemi di compatibilita' tra le eccezioni di varie versioni di MFC e del runtime per Windows (SEH)

Completare con macro la gestione di C++. Aggiungere un file di configurazione globale per definire se la libreria deve gestire la compilazione in C o C++.

Completare il codice di prova e riunirlo in una unica codebase.

Il programma di test delle funzionalita' dei moduli e' in via di sviluppo

Completare la documentazione


SourceForge.net Logo