DSLib Data Defined

DSLib Data Defined — Strumenti di controllo per la definizione dei dati

Stability Level

Unstable, unless otherwise indicated

Synopsis

#include <dslib.h>

struct              ndsDefine;
struct              dsDefine;
#define             dsDEFINE
#define             dsNODEFINE
#define             ds_DEFINE                           (data)
#define             ds_DEFINE_user                      (data)
dsDefine *          ds_define_new                       (void);
dsStatus            ds_define_free                      (dsDefine *define);
dsStatus            nds_define_init                     (ndsDefine *define);
dsStatus            nds_define_init0                    (ndsDefine *define);
dsStatus            nds_define_status                   (ndsDefine *define);
dsStatus            ds_define_status                    (dsDefine *define);
#define             ds_c_define_status                  (define)

Description

Attraverso la struttura dsDefine è possibile aggiungere un valido controllo nella definizione dei dati.

dsDefine viene inizializzata attraverso la macro dsDEFINE quando i dati hanno subito una inizializzazione corretta, in caso contrario dsDefine contiene valori qualsiasi ( dopo una dichiarazione priva di definizione ) o dsNODEFINE.

Details

struct ndsDefine

struct ndsDefine {
			unsigned short		define0;

			unsigned short		define1;

			unsigned short		define2;
};

Utilizzata per indicare l'avvenuta inizializzazione di una struttura attraverso la macro costante dsDEFINE.

unsigned short define0;

primo valore di controllo

unsigned short define1;

secondo valore di controllo

unsigned short define2;

terzo valore di controllo

struct dsDefine

struct dsDefine {
};

Utilizzata per indicare l'avvenuta inizializzazione di una struttura attraverso la macro costante dsDEFINE.


dsDEFINE

	#define dsDEFINE			((USHRT_MAX) - 1)

valore assunto dal membro "define" di una struttura della DSLib quando e' allocata in memoria tramite la funzione ds_name_new(...) o quando è inizializzata da una funzione appropriata.


dsNODEFINE

	#define dsNODEFINE		(0)

valore assunto dal membro "define" di una struttura della DSLib quando non vi è una inizializzazione o una definizione appropriata.


ds_DEFINE()

    #define ds_DEFINE(data)     ds_CAST (dsDefine*,data)

stability: Unstable

Provvede al casting di una struttura data ritornando una struttura di tipo dsDefine

data :

struttura derivata

ds_DEFINE_user()

    #define ds_DEFINE_user(data)     ds_GET_PROPERTY(ds_DEFINE(data),user)

stability: Unstable

Provvede al casting di un dato data ritornando la proprietà "user"

data :

una struttura derivata

ds_define_new ()

dsDefine *          ds_define_new                       (void);

stability: Unstable

Crea una nuova dsDefine.

Returns :

una nuova dsDefine o NULL in caso di errore.

Since 0.0.1


ds_define_free ()

dsStatus            ds_define_free                      (dsDefine *define);

stability: Unstable

Libera la memoria allocata per una dsDefine.

define :

indirizzo ad una struttura derivata allocata di tipo dsDefine

Returns :

dsCORRECT o dsERROR in caso di errore.

Since 0.0.1


nds_define_init ()

dsStatus            nds_define_init                     (ndsDefine *define);

Inizializza una struttura ndsDefine impostando i parametri "define0", "define1" e "define2" attraverso la macro dsDEFINE.

define :

l'indirizzo ad una struttura ndsDefine.

Returns :

dsCORRECT se l'inizializzazione avviene correttamente dsERROR se avviene un errore nell'inizializzazione

Since 0.0.1


nds_define_init0 ()

dsStatus            nds_define_init0                    (ndsDefine *define);

Deinizializza una struttura ndsDefine impostando i parametri "define0", "define1" e "define2" attraverso la macro dsNODEFINE.

define :

l'indirizzo ad una struttura ndsDefine.

Returns :

dsCORRECT se la deinizializzazione avviene correttamente dsERROR se avviene un errore nella deinizializzazione

Since 0.0.1


nds_define_status ()

dsStatus            nds_define_status                   (ndsDefine *define);

Controlla lo stato di una struttura ndsDefine.

define :

l'indirizzo ad una struttura ndsDefine.

Returns :

dsCORRECT se la struttura risulta inizializzata. dsERROR se la struttura non risulta inizializzata.

Since 0.0.1


ds_define_status ()

dsStatus            ds_define_status                    (dsDefine *define);

Controlla lo stato di una struttura derivata dsDefine.

define :

l'indirizzo ad una struttura derivata dsDefine.

Returns :

dsCORRECT se la struttura risulta inizializzata. dsERROR se la struttura non risulta inizializzata.

Since 0.0.1


ds_c_define_status()

    #define ds_c_define_status(define)    ds_define_status ( ds_DEFINE(define) )

stability: Unstable

Come la funzione ds_define_status() , provvede a passare il dato castato.

define :

struttura derivata