_______________________________________________________________________________________________________________________________________
/*************************************************************************************************************************************/
/* */
/* F O N C T I O N S D E B A S E N E C E S S I T A N T L E ' GooF ' : */
/* */
/* */
/* Definition : */
/* */
/* Dans ce fichier, se trouvent toutes */
/* les fonctions d'interet general, et */
/* en particulier celles de manipulation */
/* des chaines de caracteres, celles de */
/* gestion de fichiers, et necessitant le 'GooF' */
/* Ceci a ete cree le 20080327134926 afin d'alleger */
/* la compilation de la fonction 'FfLIO17(...)'. */
/* */
/* */
/* Author of '$xig/GooF_fo$vv$FON' : */
/* */
/* Jean-Francois Colonna (LACTAMME, 20080327134926). */
/* */
/*************************************************************************************************************************************/
/*===================================================================================================================================*/
/*************************************************************************************************************************************/
/* */
/* C O M B I N A I S O N S L I N E A I R E S O P T I M I S E E S : */
/* */
/*************************************************************************************************************************************/
#define CALCUL_DE_LA_COMBINAISON_LINEAIRE_DES_ARGUMENTS(utiliser_l_arithmetique_etendue_au_lieu_de_l_arithmetique_de_base) \
Bblock \
USs_GooF______CONDITIONNEL(utiliser_l_arithmetique_etendue_au_lieu_de_l_arithmetique_de_base \
/* Possibilite introduite le 20080327095150... */ \
,BLOC( \
Bblock \
EGAL(resultat \
,LIO17(a0,x0 \
,a1,x1 \
,a2,x2 \
,a3,x3 \
,a4,x4 \
,a5,x5 \
,a6,x6 \
,a7,x7 \
,a8,x8 \
,a9,x9 \
,aA,xA \
,aB,xB \
,aC,xC \
,aD,xD \
,aE,xE \
,aF,xF \
,aG,xG \
,b \
) \
); \
Eblock \
) \
); \
Eblock
BFonctionF
DEFV(Common,DEFV(Logical,SINT(FfLIO17_____utiliser_l_arithmetique_etendue_au_lieu_de_l_arithmetique_de_base,FAUX)));
/* Afin de permettre l'usage du 'GooF' (introduit le 20080327095150)... */
DEFV(Common,DEFV(FonctionF,FfLIO17(a0,x0
,a1,x1
,a2,x2
,a3,x3
,a4,x4
,a5,x5
,a6,x6
,a7,x7
,a8,x8
,a9,x9
,aA,xA
,aB,xB
,aC,xC
,aD,xD
,aE,xE
,aF,xF
,aG,xG
,b
)
)
)
DEFV(Argument,DEFV(Float,a0));
DEFV(Argument,DEFV(Float,x0));
DEFV(Argument,DEFV(Float,a1));
DEFV(Argument,DEFV(Float,x1));
DEFV(Argument,DEFV(Float,a2));
DEFV(Argument,DEFV(Float,x2));
DEFV(Argument,DEFV(Float,a3));
DEFV(Argument,DEFV(Float,x3));
DEFV(Argument,DEFV(Float,a4));
DEFV(Argument,DEFV(Float,x4));
DEFV(Argument,DEFV(Float,a5));
DEFV(Argument,DEFV(Float,x5));
DEFV(Argument,DEFV(Float,a6));
DEFV(Argument,DEFV(Float,x6));
DEFV(Argument,DEFV(Float,a7));
DEFV(Argument,DEFV(Float,x7));
DEFV(Argument,DEFV(Float,a8));
DEFV(Argument,DEFV(Float,x8));
DEFV(Argument,DEFV(Float,a9));
DEFV(Argument,DEFV(Float,x9));
DEFV(Argument,DEFV(Float,aA));
DEFV(Argument,DEFV(Float,xA));
DEFV(Argument,DEFV(Float,aB));
DEFV(Argument,DEFV(Float,xB));
DEFV(Argument,DEFV(Float,aC));
DEFV(Argument,DEFV(Float,xC));
DEFV(Argument,DEFV(Float,aD));
DEFV(Argument,DEFV(Float,xD));
DEFV(Argument,DEFV(Float,aE));
DEFV(Argument,DEFV(Float,xE));
DEFV(Argument,DEFV(Float,aF));
DEFV(Argument,DEFV(Float,xF));
DEFV(Argument,DEFV(Float,aG));
DEFV(Argument,DEFV(Float,xG));
DEFV(Argument,DEFV(Float,b));
/* Arguments flottants de la combinaison lineaire. */
/* */
/* NOTA : cette fonction est introduite pour des raisons de performance a la compilation */
/* lorsque les arguments sont en fait des expressions complexes (le 20080325162650), pour */
/* 'v $xiii/mono_image$FON FONCTIONS_DE_TRANSFORMATION_DES_COORDONNEES_XYZ' initialement. */
/*-----------------------------------------------------------------------------------------------------------------------------------*/
Bblock
DEFV(Float,INIT(resultat,FLOT__UNDEF));
/* Variable intermediaire introduite le 20080327091323 en vue de referencer le 'GooF'... */
/*..............................................................................................................................*/
CALCUL_DE_LA_COMBINAISON_LINEAIRE_DES_ARGUMENTS(FfLIO17_____utiliser_l_arithmetique_etendue_au_lieu_de_l_arithmetique_de_base);
RETU(resultat);
Eblock
EFonctionF
#ifdef ASSURER_LA_COEXISTENCE_DE__LIOH__ET_DE__LIO17 /* Common,DEFV(Fonction,) : 'LIOH' et 'LIO17'... */
/* Introduit le 20190203102858... */
BFonctionF
DEFV(Common,DEFV(Logical,SINT(FfLIOH_____utiliser_l_arithmetique_etendue_au_lieu_de_l_arithmetique_de_base,FAUX)));
/* Afin de permettre l'usage du 'GooF' (introduit le 20080327095150)... */
DEFV(Local,DEFV(Logical,INIT(FfLIOH_____le_message_d_ATTENTION_a_ete_emis_une_fois,FAUX)));
/* Introduit le 20190201160847 afin de ne pas se noyer sous les messages... */
DEFV(Common,DEFV(FonctionF,FfLIOH(a0,x0
,a1,x1
,a2,x2
,a3,x3
,a4,x4
,a5,x5
,a6,x6
,a7,x7
,a8,x8
,a9,x9
,aA,xA
,aB,xB
,aC,xC
,aD,xD
,aE,xE
,aF,xF
,aG,xG
,b
)
)
)
/* Fonction introduite le 20190201141442 "en parallele" de 'FfLIO17(...)' et destinee */
/* a permettre une compatibilite pendant un certain temps en evitant (provisoirement) des */
/* compilations "couteuses" (en particulier sur '$LACT19'...). */
DEFV(Argument,DEFV(Float,a0));
DEFV(Argument,DEFV(Float,x0));
DEFV(Argument,DEFV(Float,a1));
DEFV(Argument,DEFV(Float,x1));
DEFV(Argument,DEFV(Float,a2));
DEFV(Argument,DEFV(Float,x2));
DEFV(Argument,DEFV(Float,a3));
DEFV(Argument,DEFV(Float,x3));
DEFV(Argument,DEFV(Float,a4));
DEFV(Argument,DEFV(Float,x4));
DEFV(Argument,DEFV(Float,a5));
DEFV(Argument,DEFV(Float,x5));
DEFV(Argument,DEFV(Float,a6));
DEFV(Argument,DEFV(Float,x6));
DEFV(Argument,DEFV(Float,a7));
DEFV(Argument,DEFV(Float,x7));
DEFV(Argument,DEFV(Float,a8));
DEFV(Argument,DEFV(Float,x8));
DEFV(Argument,DEFV(Float,a9));
DEFV(Argument,DEFV(Float,x9));
DEFV(Argument,DEFV(Float,aA));
DEFV(Argument,DEFV(Float,xA));
DEFV(Argument,DEFV(Float,aB));
DEFV(Argument,DEFV(Float,xB));
DEFV(Argument,DEFV(Float,aC));
DEFV(Argument,DEFV(Float,xC));
DEFV(Argument,DEFV(Float,aD));
DEFV(Argument,DEFV(Float,xD));
DEFV(Argument,DEFV(Float,aE));
DEFV(Argument,DEFV(Float,xE));
DEFV(Argument,DEFV(Float,aF));
DEFV(Argument,DEFV(Float,xF));
DEFV(Argument,DEFV(Float,aG));
DEFV(Argument,DEFV(Float,xG));
DEFV(Argument,DEFV(Float,b));
/* Arguments flottants de la combinaison lineaire. */
/*-----------------------------------------------------------------------------------------------------------------------------------*/
Bblock
DEFV(Float,INIT(resultat,FLOT__UNDEF));
/*..............................................................................................................................*/
Test(EST_FAUX(FfLIOH_____le_message_d_ATTENTION_a_ete_emis_une_fois))
Bblock
PRINT_ATTENTION("la fonction 'LIOH(...)' doit etre remplacee par 'LIO17(...)' (des recompilations vont etre necessaires)");
EGAL(FfLIOH_____le_message_d_ATTENTION_a_ete_emis_une_fois,VRAI);
Eblock
ATes
Bblock
Eblock
ETes
CALCUL_DE_LA_COMBINAISON_LINEAIRE_DES_ARGUMENTS(FfLIOH_____utiliser_l_arithmetique_etendue_au_lieu_de_l_arithmetique_de_base);
RETU(resultat);
Eblock
EFonctionF
#Aifdef ASSURER_LA_COEXISTENCE_DE__LIOH__ET_DE__LIO17 /* Common,DEFV(Fonction,) : 'LIOH' et 'LIO17'... */
#Eifdef ASSURER_LA_COEXISTENCE_DE__LIOH__ET_DE__LIO17 /* Common,DEFV(Fonction,) : 'LIOH' et 'LIO17'... */
#undef CALCUL_DE_LA_COMBINAISON_LINEAIRE_DES_ARGUMENTS
_______________________________________________________________________________________________________________________________________