New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
Changeset 774 for trunk/AGRIF/LIB/decl.h – NEMO

Changeset 774 for trunk/AGRIF/LIB/decl.h


Ignore:
Timestamp:
2007-12-18T17:45:53+01:00 (16 years ago)
Author:
rblod
Message:

Update Agrif, see ticket:#39

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/AGRIF/LIB/decl.h

    r663 r774  
    3131/* knowledge of the CeCILL-C license and that you accept its terms.           */ 
    3232/******************************************************************************/ 
    33 /* version 1.6                                                                */ 
     33/* version 1.7                                                                */ 
    3434/******************************************************************************/ 
    3535#define LONGNOM 800 
    36 #define LONGLIGNE 800 
     36 
     37#define LONG_C 300 
     38#define LONG_4C 400 
     39#define LONG_4M 4000 
     40#define LONG_40M 40000 
    3741 
    3842/******************************************************************************/ 
     
    4246typedef struct 
    4347{ 
    44    char first[LONGNOM]; 
    45    char last[LONGNOM]; 
     48   char first[LONG_C]; 
     49   char last[LONG_C]; 
    4650} typedim ;                /* fortran dimension as 'ndeb:nfin'                */ 
    4751 
     
    5458typedef struct variable 
    5559{ 
    56    char v_typevar[LONGNOM]; 
    57    char v_nomvar[LONGNOM] ; 
    58    char v_oldname[LONGNOM] ; 
    59    char v_dimchar[LONGNOM]; 
    60    char v_modulename[LONGNOM]; 
    61    char v_commonname[LONGNOM]; 
    62    char v_vallengspec[LONGNOM]; 
    63    char v_nameinttypename[LONGNOM]; 
    64    char v_commoninfile[LONGNOM]; 
    65    char v_subroutinename[LONGNOM]; 
    66    char v_precision[LONGNOM]; 
    67    char v_initialvalue[LONGNOM]; 
    68    char v_IntentSpec[LONGNOM]; 
    69    char v_readedlistdimension[LONGNOM]; 
     60   char v_typevar[LONG_C]; 
     61   char v_nomvar[LONG_C] ; 
     62   char v_oldname[LONG_C] ; 
     63   char v_dimchar[LONG_C]; 
     64   char v_modulename[LONG_C]; 
     65   char v_commonname[LONG_C]; 
     66   char v_vallengspec[LONG_C]; 
     67   char v_nameinttypename[LONG_C]; 
     68   char v_commoninfile[LONG_C]; 
     69   char v_subroutinename[LONG_C]; 
     70   char v_precision[LONG_C]; 
     71   char v_initialvalue[LONG_4C]; 
     72   char v_IntentSpec[LONG_C]; 
     73   char v_readedlistdimension[LONG_C]; 
    7074   int  v_nbdim; 
    7175   int  v_common; 
     
    105109typedef struct listusemodule 
    106110{ 
    107    char u_usemodule[LONGNOM]; 
    108    char u_charusemodule[LONGNOM]; 
    109    char u_cursubroutine[LONGNOM]; 
    110    char u_modulename[LONGNOM]; 
     111   char u_usemodule[LONG_C]; 
     112   char u_charusemodule[LONG_C]; 
     113   char u_cursubroutine[LONG_C]; 
     114   char u_modulename[LONG_C]; 
    111115   int  u_firstuse; 
    112116   struct listusemodule * suiv; 
     
    115119typedef struct listparameter 
    116120{ 
    117    char p_name[LONGNOM]; 
    118    char p_modulename[LONGNOM]; 
     121   char p_name[LONG_C]; 
     122   char p_modulename[LONG_C]; 
    119123   struct listparameter * suiv; 
    120124} listparameter ;           /* list of names                                  */ 
     
    122126typedef struct listname 
    123127{ 
    124    char n_name[LONGNOM]; 
     128   char n_name[LONG_C]; 
    125129   struct  listname* suiv; 
    126130} listname ;            /* list of names                                  */ 
     
    128132typedef struct listcouple 
    129133{ 
    130    char c_namevar[LONGNOM]; 
    131    char c_namepointedvar[LONGNOM]; 
     134   char c_namevar[LONG_C]; 
     135   char c_namepointedvar[LONG_C]; 
    132136   struct listcouple * suiv; 
    133137} listcouple;              /* list of names                                   */ 
     
    136140typedef struct listnom 
    137141{ 
    138    char o_nom[LONGNOM]; 
    139    char o_module[LONGNOM]; 
     142   char o_nom[LONG_C]; 
     143   char o_module[LONG_C]; 
    140144   int  o_val; 
    141145   listcouple *couple; 
     
    146150typedef struct listallocate 
    147151{ 
    148    char a_nomvar[LONGNOM]; 
    149    char a_subroutine[LONGNOM]; 
    150    char a_module[LONGNOM]; 
     152   char a_nomvar[LONG_C]; 
     153   char a_subroutine[LONG_C]; 
     154   char a_module[LONG_C]; 
    151155   struct listallocate * suiv; 
    152156} listallocate ; 
     
    155159typedef struct listvarpointtovar 
    156160{ 
    157    char t_usemodule[LONGNOM]; 
    158    char t_cursubroutine[LONGNOM]; 
     161   char t_usemodule[LONG_C]; 
     162   char t_cursubroutine[LONG_C]; 
    159163   listcouple *t_couple; 
    160164   struct  listvarpointtovar* suiv; 
     
    222226 
    223227 int positioninblock; 
    224  char commonvar[LONGNOM]; 
    225  char commonblockname[LONGNOM]; 
     228 char commonvar[LONG_C]; 
     229 char commonblockname[LONG_C]; 
    226230 
    227231/******************************************************************************/ 
     
    231235 int sameagrifargument; 
    232236 int InAgrifParentDef; 
    233  char sameagrifname[LONGNOM]; 
     237 char sameagrifname[LONG_C]; 
    234238/******************************************************************************/ 
    235239/****************   *** VAR DEF Variables ***   *******************************/ 
     
    252256 int shouldincludempif; 
    253257 int c_star; 
    254  char DeclType[LONGNOM]; 
    255  char nameinttypename[LONGNOM]; 
     258 char DeclType[LONG_C]; 
     259 char nameinttypename[LONG_C]; 
    256260 int GlobalDeclaration; 
    257  char InitValue[LONGNOM*2]; 
    258  char IntentSpec[LONGNOM]; 
    259  char NamePrecision[LONGNOM]; 
    260  char CharacterSize[LONGNOM]; 
    261  char curmodulename[LONGNOM]; 
    262  char vallengspec[LONGNOM]; 
    263  char subroutinename[LONGNOM]; 
     261 char InitValue[LONG_4C]; 
     262 char IntentSpec[LONG_C]; 
     263 char NamePrecision[LONG_C]; 
     264 char CharacterSize[LONG_C]; 
     265 char curmodulename[LONG_C]; 
     266 char vallengspec[LONG_C]; 
     267 char subroutinename[LONG_C]; 
    264268 
    265269/******************************************************************************/ 
     
    273277 int todebugfree; 
    274278 int fixedgrids;           /* = 1 if fixedgrids is true                       */ 
    275  char nbmaillesX[LONGNOM]; /* number of cells in the x direction              */ 
    276  char nbmaillesY[LONGNOM]; /* number of cells in the y direction              */ 
    277  char nbmaillesZ[LONGNOM]; /* number of cells in the z direction              */ 
     279 char nbmaillesX[LONG_C]; /* number of cells in the x direction              */ 
     280 char nbmaillesY[LONG_C]; /* number of cells in the y direction              */ 
     281 char nbmaillesZ[LONG_C]; /* number of cells in the z direction              */ 
    278282 int IndicenbmaillesX; 
    279283 int IndicenbmaillesY; 
     
    290294 int couldaddvariable; 
    291295 int pointedvar; 
     296 int NbMailleXDefined; 
    292297 int agrif_parentcall; 
    293298 int didvariableadded; 
     
    301306 int created_dimensionlist; 
    302307 
    303  char meetagrifinitgrids[LONGNOM]; 
    304  char mpiinitvar[LONGNOM]; 
     308 char meetagrifinitgrids[LONG_C]; 
     309 char mpiinitvar[LONG_C]; 
    305310 char *NameTamponfile; 
    306  char toprintglob[LONGNOM]; 
    307  char tmpvargridname[LONGLIGNE]; 
    308  char EmptyChar[LONGNOM];        /* An empty char */ 
    309  char curfilename[LONGNOM]; 
    310  char nomfileoutput[LONGNOM]; 
    311  char curbuf[100*LONGNOM]; 
    312  char motparse[LONGNOM]; 
    313  char motparse1[LONGNOM]; 
    314  char charusemodule[LONGNOM]; 
    315  char subofagrifinitgrids[LONGNOM]; 
    316  char curfile[LONGNOM]; 
    317  char mainfile[LONGNOM]; 
    318  char nomdir[LONGNOM]; 
    319  char commondirout[LONGNOM]; 
    320  char commondirin[LONGNOM]; 
    321  char filetoparse[LONGNOM]; 
     311 char toprintglob[LONG_4C]; 
     312 char tmpvargridname[LONG_4C]; 
     313 char EmptyChar[2];        /* An empty char */ 
     314 char curfilename[LONG_C]; 
     315 char nomfileoutput[LONG_C]; 
     316 char curbuf[LONG_40M]; 
     317 char motparse[LONG_4C]; 
     318 char motparse1[LONG_4C]; 
     319 char charusemodule[LONG_C]; 
     320 char subofagrifinitgrids[LONG_C]; 
     321 char curfile[LONG_C]; 
     322 char mainfile[LONG_C]; 
     323 char nomdir[LONG_C]; 
     324 char commondirout[LONG_C]; 
     325 char commondirin[LONG_C]; 
     326 char filetoparse[LONG_C]; 
    322327 
    323328 FILE *fortranout;          /* Output File                                    */ 
     
    347352                           /* final position of a line in file                */ 
    348353 
     354/* v_oldname = v_nomvar; */ 
     355/* commonvar = v_nomvar; */ 
     356/* commonblockname = v_commonname;*/ 
     357/* sameagrifname = v_nomvar ; */ 
     358/* DeclType = v_typevar; */ 
     359/* nameinttypename = v_nameinttypename; */ 
     360/* IntentSpec = v_IntentSpec; */ 
     361/* NamePrecision = v_precision; */ 
     362/* CharacterSize = v_dimchar; */ 
     363/* curmodulename = v_modulename; */ 
     364/* vallengspec = v_vallengspec; */ 
     365/* subroutinename = v_subroutinename; */ 
     366/* meetagrifinitgrids = v_subroutinename; */ 
     367/* nbmaillesX = v_nomvar; */ 
     368/* nbmaillesY = v_nomvar; */ 
     369/* nbmaillesZ = v_nomvar; */ 
     370/* mpiinitvar = v_nomvar; */ 
     371/* EmptyChar = 2; */ 
     372/* motparse1 = motparse;*/ 
     373/* charusemodule = p_modulename; */ 
     374/* subofagrifinitgrids = v_subroutinename; */ 
     375/* curfile = mainfile; */ 
     376/* InitValue = v_initialvalue; */ 
     377 
     378/* p_name;???????? */ 
     379/* p_modulename; ?????????????*/ 
     380 
     381 int length_last; 
     382 int length_first; 
     383 int length_v_typevar; 
     384 int length_v_nomvar; 
     385 int length_v_dimchar; 
     386 int length_v_modulename; 
     387 int length_v_commonname; 
     388 int length_v_vallengspec; 
     389 int length_v_nameinttypename; 
     390 int length_v_commoninfile; 
     391 int length_v_subroutinename; 
     392 int length_v_precision; 
     393 int length_v_IntentSpec; 
     394 int length_v_initialvalue; 
     395 int length_v_readedlistdimension; 
     396 int length_u_usemodule; 
     397 int length_u_charusemodule; 
     398 int length_u_cursubroutine; 
     399 int length_u_modulename; 
     400 int length_n_name; 
     401 int length_c_namevar; 
     402 int length_c_namepointedvar; 
     403 int length_o_nom; 
     404 int length_o_module; 
     405 int length_a_nomvar; 
     406 int length_a_subroutine; 
     407 int length_a_module; 
     408 int length_t_usemodule; 
     409 int length_t_cursubroutine; 
     410 int length_curfilename; 
     411 int length_nomfileoutput; 
     412 int length_motparse; 
     413 int length_mainfile; 
     414 int length_nomdir; 
     415 int length_commondirout; 
     416 int length_commondirin; 
     417 int length_filetoparse; 
     418 int length_curbuf; 
     419 int length_toprintglob; 
     420 int length_tmpvargridname; 
     421 int length_ligne_Subloop; 
     422 int length_lvargridname_toamr; 
     423 int length_toprint_utilagrif; 
     424 int length_toprinttmp_utilchar; 
     425 int length_ligne_writedecl; 
     426 int length_newname_toamr; 
     427 int length_newname_writedecl; 
     428 int length_ligne_toamr; 
     429 int length_tmpligne_writedecl; 
     430 int value_char_size; 
     431 int value_char_size1; 
     432 int value_char_size2; 
     433 int value_char_size3; 
     434 
    349435/******************************************************************************/ 
    350436/*********** Declaration of externals subroutines *****************************/ 
     
    376462extern int Did_filetoparse_readed(char *NameTampon); 
    377463extern int Did_module_common_treaded(char *NameTampon); 
     464extern void Write_val_max(); 
     465extern void Read_val_max(); 
    378466/******************************************************************************/ 
    379467/*********** DiversListe.c ****************************************************/ 
     
    391479extern void WriteIncludeDeclaration(); 
    392480extern void Add_Save_Var_1 (char *name,listdim *d); 
     481extern void Add_Save_Var_dcl_1 (listvar *var); 
    393482/******************************************************************************/ 
    394483/*********** SubLoopCreation.c ************************************************/ 
    395484/******************************************************************************/ 
    396 extern void writeheadnewsub_0(int suborfunc); 
     485extern void writeheadnewsub_0(); 
    397486extern void WriteVariablelist_subloop(FILE *outputfile); 
    398487extern void WriteVariablelist_subloop_Call(FILE *outputfile); 
    399488extern void WriteVariablelist_subloop_Def(FILE *outputfile); 
    400489extern void WriteHeadofSubroutineLoop(); 
    401 extern void closeandcallsubloopandincludeit_0(int suborfun, 
    402                                                           char endsub[LONGNOM]); 
     490extern void closeandcallsubloopandincludeit_0(int suborfun); 
     491extern void closeandcallsubloop_contains_0(); 
    403492/******************************************************************************/ 
    404493/*********** toamr.c **********************************************************/ 
     
    407496extern char *variablenametabvars (variable * var, int iorindice); 
    408497extern char *variablecurgridtabvars (variable * var,int ParentOrCurgrid); 
     498extern void WARNING_CharSize(variable *var); 
    409499extern char *vargridnametabvars (variable * var,int iorindice); 
    410500extern char *vargridcurgridtabvars (variable * var,int ParentOrCurgrid); 
     
    432522extern void ModifyTheVariableName_0(char *ident); 
    433523extern void Add_SubroutineWhereAgrifUsed_1(char *sub,char *mod); 
    434 extern void  AddUseAgrifUtil_0(FILE *fileout); 
    435 extern void  AddUseAgrifUtilBeforeCall_0(FILE *fileout); 
     524extern void AddUseAgrifUtil_0(FILE *fileout); 
     525extern void AddUseAgrifUtilBeforeCall_0(FILE *fileout); 
    436526extern void NotifyAgrifFunction_0(char *ident); 
    437527extern void ModifyTheAgrifFunction_0(char *ident); 
     
    441531/*********** UtilCharacter.c **************************************************/ 
    442532/******************************************************************************/ 
    443 extern void FindAndChangeNameToTabvars(char name[LONGNOM],char toprint[LONGNOM], 
     533extern void FindAndChangeNameToTabvars(char name[LONG_C],char toprint[LONG_4C], 
    444534                                             listvar * listtosee, int whichone); 
    445535extern char *ChangeTheInitalvaluebyTabvarsName(char *nom,listvar *listtoread, 
     
    450540extern void DecomposeTheName(char *nom); 
    451541extern void convert2lower(char *name); 
     542extern int convert2int(char *name); 
    452543/******************************************************************************/ 
    453544/*********** UtilFile.c *******************************************************/ 
     
    465556extern int Variableshouldberemove(char *nom); 
    466557extern int variableisglobal(listvar *curvar, listvar *listin); 
     558extern int VariableIsInListCommon(listvar *curvar,listvar *listin); 
    467559extern int VariableIsInList(listvar *curvar,listvar *listin); 
    468560extern void variableisglobalinmodule(listcouple *listin, char *module, 
     
    520612/*********** WorkWithlistmoduleinfile.c ***************************************/ 
    521613/******************************************************************************/ 
    522  
     614extern void Save_Length(char *nom, int whichone); 
     615extern void Save_Length_int(int val, int whichone); 
    523616/******************************************************************************/ 
    524617/*********** WorkWithlistofmodulebysubroutine.c *******************************/ 
     
    545638extern int LookingForVariableInList(listvar *listin,variable *var); 
    546639extern int LookingForVariableInListGlobal(listvar *listin,variable *var); 
     640extern int LookingForVariableInListName(listvar *listin,char *var); 
    547641extern int LookingForVariableInListGlob(listvar *listin,variable *var); 
    548642extern int LookingForVariableInListParamGlob(listparameter *listin, 
     
    551645extern void Clean_List_UsedInSubroutine_Var(); 
    552646extern void Clean_List_SubroutineDeclaration_Var(); 
     647extern void Clean_List_Global_Var(); 
    553648extern void ListClean(); 
    554649extern void ListUpdate(); 
     650extern void GiveTypeOfVariables(); 
    555651extern void Sort_List_SubroutineArgument_Var(); 
    556652extern void IndiceTabvars_Global_Var_Treated(char *nom); 
     
    582678/*********** Writedeclarations.c **********************************************/ 
    583679/******************************************************************************/ 
    584 extern void WriteBeginDeclaration(variable *v,char ligne[LONGLIGNE]); 
    585 extern void WriteScalarDeclaration(variable *v,char ligne[LONGLIGNE]); 
    586 extern void WriteTableDeclaration(variable * v,char ligne[LONGLIGNE],int tmpok); 
     680extern void WriteBeginDeclaration(variable *v,char ligne[LONG_4C]); 
     681extern void WriteScalarDeclaration(variable *v,char ligne[LONG_4C]); 
     682extern void WriteTableDeclaration(variable * v,char ligne[LONG_4C],int tmpok); 
    587683extern void writevardeclaration (listvar * var_record, FILE *fileout, 
    588684                                                                     int value); 
     
    593689extern void WriteArgumentDeclaration_Sort(); 
    594690extern listnom *writedeclarationintoamr (listvar * deb_common, FILE *fileout, 
    595                                        variable *var , char commonname[LONGNOM], 
    596                            listnom *neededparameter, char name_common[LONGNOM]); 
     691                                       variable *var , char commonname[LONG_C], 
     692                           listnom *neededparameter, char name_common[LONG_C]); 
    597693extern void writesub_loopdeclaration_scalar (listvar * deb_common, 
    598694                                                                 FILE *fileout); 
Note: See TracChangeset for help on using the changeset viewer.