/*************************************************************************************************************************************/ /* */ /* T E S T D E S F O N C T I O N S D E G E S T I O N D E L I S T E : */ /* */ /* */ /* Author of '$xtKg/liste.01$K' : */ /* */ /* Jean-Francois COLONNA (LACTAMME, 1987??????????). */ /* */ /*************************************************************************************************************************************/ /*===================================================================================================================================*/ /*************************************************************************************************************************************/ /* */ /* I N T E R F A C E ' listG ' : */ /* */ /* */ /* :Debut_listG: */ /* :Fin_listG: */ /* */ /*************************************************************************************************************************************/ /*===================================================================================================================================*/ /*************************************************************************************************************************************/ /* */ /* D I R E C T I V E S S P E C I F I Q U E S D E C O M P I L A T I O N : */ /* */ /*************************************************************************************************************************************/ @define PRAGMA_CPP_____MODULE_NON_DERIVABLE /*===================================================================================================================================*/ /*************************************************************************************************************************************/ /* */ /* F I C H I E R S D ' I N C L U D E S : */ /* */ /*************************************************************************************************************************************/ #include INCLUDES_BASE /*===================================================================================================================================*/ /*************************************************************************************************************************************/ /* */ /* P A R A M E T R E S : */ /* */ /*************************************************************************************************************************************/ #define PRINT(element,message) \ Bblock \ CAL2(Prin1("%s",message)); \ CAL2(Prin1(" adresse = %08X",element)); \ CAL2(Prin0("\n")); \ CAL2(Prin1("chainage precedent = %08X\n",ASI2(element,header,precedent_chainage))); \ CAL2(Prin1("chainage suivant = %08X\n",ASI2(element,header,suivant_chainage))); \ CAL2(Prin1("volume en octets = %08X\n",ASI2(element,header,volume))); \ CAL2(Prin1("information = %s\n",ASI1(element,informations))); \ Eblock /*===================================================================================================================================*/ /*************************************************************************************************************************************/ /* */ /* T E S T D E S F O N C T I O N S D E G E S T I O N D E L I S T E : */ /* */ /*************************************************************************************************************************************/ BCommande(nombre_d_arguments,arguments) /*-----------------------------------------------------------------------------------------------------------------------------------*/ Bblock DEFV(l_element,element1); DEFV(l_element,INIT(POINTERs(tete_de_liste),LISTE_UNDEF)); DEFV(l_element,INIT(POINTERs(element01),LISTE_UNDEF)); DEFV(l_element,INIT(POINTERs(element02),LISTE_UNDEF)); DEFV(l_element,INIT(POINTERs(element03),LISTE_UNDEF)); DEFV(l_element,INIT(POINTERs(element04),LISTE_UNDEF)); DEFV(l_element,INIT(POINTERs(element05),LISTE_UNDEF)); DEFV(CHAR,INIT(POINTERc(informations),CHAINE_UNDEF)); /*..............................................................................................................................*/ GET_ARGUMENTS_(nombre_d_arguments ,BLOC(VIDE;) ); CAL2(Prin1("\n volume maximal d'informations en octets = %d",v_element)); CAL2(Prin1("\n longueur de l'en-tete d'un element en octets = %d",sizeof(ASD1(element1,header)))); CAL2(Prin1("\n longueur d'un element en octets = %d",sizeof(element1))); EGAL(tete_de_liste,Flist_creation()); CAL2(Prin0("\n---------------------------------------------------------------------------------------")); PRINT(tete_de_liste,"TETE DE LISTE"); EGAL(element02,Flist_GTelement(tete_de_liste,"COLONNA 2")); CAL2(Prin0("\n---------------------------------------------------------------------------------------")); PRINT(element02,"ELEMENT 02"); PRINT(tete_de_liste,"TETE DE LISTE"); EGAL(element01,Flist_GTelement(tete_de_liste,"COLONNA 1")); CAL2(Prin0("\n---------------------------------------------------------------------------------------")); PRINT(element02,"ELEMENT 02"); PRINT(element01,"ELEMENT 01"); PRINT(tete_de_liste,"TETE DE LISTE"); EGAL(element03,Flist_GQelement(tete_de_liste,"COLONNA 3")); CAL2(Prin0("\n---------------------------------------------------------------------------------------")); PRINT(element03,"ELEMENT 03"); PRINT(element02,"ELEMENT 02"); PRINT(element01,"ELEMENT 01"); PRINT(tete_de_liste,"TETE DE LISTE"); EGAL(informations,Flist_STelement(tete_de_liste)); CAL2(Prin0("\n---------------------------------------------------------------------------------------")); CAL2(Prin2("\n %08X octets = %s",chain_taille(informations),informations)); PRINT(element03,"ELEMENT 03"); PRINT(element02,"ELEMENT 02"); PRINT(tete_de_liste,"TETE DE LISTE"); EGAL(informations,Flist_SQelement(tete_de_liste)); CAL2(Prin0("\n---------------------------------------------------------------------------------------")); CAL2(Prin2("\n %08X octets = %s",chain_taille(informations),informations)); PRINT(element02,"ELEMENT 02"); PRINT(tete_de_liste,"TETE DE LISTE"); RETU_Commande; Eblock ECommande