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 10088 for vendors/AGRIF/CMEMS_2020/LIB/decl.h – NEMO

Ignore:
Timestamp:
2018-09-05T15:35:32+02:00 (6 years ago)
Author:
rblod
Message:

update conv

File:
1 edited

Legend:

Unmodified
Added
Removed
  • vendors/AGRIF/CMEMS_2020/LIB/decl.h

    r9019 r10088  
    3636#define LONG_FNAME 1000    // Max length for a file name 
    3737#define LONG_C     200 
    38 #define LONG_M     2000 
     38#define LONG_M     1500 
    3939 
    4040#define NB_CAT_VARIABLES 5 
     
    5555   struct listdim *suiv; 
    5656} listdim;                 /* list of the dimensions of a variable            */ 
     57 
     58typedef struct listname 
     59{ 
     60   char n_name[LONG_M]; 
     61   struct  listname* suiv; 
     62} listname ;            /* list of names                                  */ 
     63 
     64typedef struct do_loop 
     65{ 
     66   char do_variable[LONG_VNAME]; 
     67   char do_begin[LONG_VNAME]; 
     68   char do_end[LONG_VNAME]; 
     69   char do_step[LONG_VNAME]; 
     70} do_loop ; 
     71 
     72typedef struct listdoloop 
     73{ 
     74   do_loop *cur_do_loop; 
     75   struct listdoloop* suiv; 
     76} listdoloop; 
    5777 
    5878typedef struct variable 
     
    6888   char v_commoninfile[LONG_FNAME]; 
    6989   char v_subroutinename[LONG_VNAME]; 
     90   listdoloop *v_do_loop; 
    7091   char v_precision[LONG_C]; 
    71    char v_initialvalue[LONG_M]; 
     92   listname *v_initialvalue; 
     93   listname *v_initialvalue_array; 
    7294   char v_IntentSpec[LONG_M]; 
    7395   char v_readedlistdimension[LONG_M]; 
     
    126148} listparameter ;           /* list of names                                  */ 
    127149 
    128 typedef struct listname 
    129 { 
    130    char n_name[LONG_VNAME]; 
    131    struct  listname* suiv; 
    132 } listname ;            /* list of names                                  */ 
    133  
    134150typedef struct listcouple 
    135151{ 
     
    198214 listname *List_Pointer_Var; 
    199215 listname *List_ImplicitNoneSubroutine; 
     216  
     217 listname *List_Do_labels;  
     218 /* A list that contains the do labels if any */ 
    200219 
    201220 listusemodule *List_NameOfModuleUsed; 
     
    321340 char curmodulename[LONG_VNAME]; 
    322341 char subroutinename[LONG_VNAME]; 
     342 char old_subroutinename[LONG_VNAME]; // For internal subprogramm 
    323343 char cur_filename[LONG_FNAME];     // Name of the current parsed Fortran file 
    324344 char config_file[LONG_FNAME];      // Name of conv configuration file (ex: amr.in) 
     
    331351 FILE *fortran_in;           /* Input File                                     */ 
    332352 FILE *oldfortran_out; 
     353 FILE *old_oldfortran_out; // For internal subprogramm 
    333354 FILE *subloop; 
    334355 FILE *module_declar; 
     
    433454/******************************************************************************/ 
    434455extern void WriteBeginof_SubLoop(); 
    435 extern void WriteVariablelist_subloop(char *ligne); 
    436 extern void WriteVariablelist_subloop_Call(char **ligne, size_t line_length); 
    437 extern void WriteVariablelist_subloop_Def(char *ligne); 
     456extern void WriteVariablelist_subloop(char **ligne, size_t *line_length); 
     457extern void WriteVariablelist_subloop_Call(char **ligne, size_t *line_length); 
     458extern void WriteVariablelist_subloop_Def(char **ligne, size_t *line_length); 
    438459extern void WriteHeadofSubroutineLoop(); 
    439460extern void closeandcallsubloopandincludeit_0(int suborfun); 
     
    516537extern int varistyped_0(char *ident); 
    517538extern void dump_var(const variable* var); 
     539extern void removenewline(char *nom); 
    518540/******************************************************************************/ 
    519541/*********** UtilListe.c ******************************************************/ 
     
    532554extern int IsinListe(listvar *lin,char *nom); 
    533555extern listname *Insertname(listname *lin,char *nom,int sens); 
     556extern int testandextractfromlist(listname **lin, char*nom); 
     557extern void removefromlist(listname **lin, char*nom); 
    534558extern listname *concat_listname(listname *l1, listname *l2); 
    535559extern void createstringfromlistname(char *ligne, listname *lin); 
     
    540564extern void  addprecision_derivedfromkind(variable *curvar); 
    541565extern int get_cat_var(variable *var); 
     566extern void Insertdoloop(variable *var,char *do_var, char *do_begin, char *do_end, char *do_step); 
    542567/******************************************************************************/ 
    543568/*********** UtilNotGridDep.c *************************************************/ 
     
    560585/******************************************************************************/ 
    561586extern void Add_Data_Var_1 (listvar **curlist,char *name,char *values); 
    562 extern void Add_Data_Var_Names_01 (listvar **curlist,listname *l1, listname *l2); 
     587extern void Add_Data_Var_Names_01 (listvar **curlist,listvar *l1, listname *l2); 
    563588/******************************************************************************/ 
    564589/*********** WorkWithlistmoduleinfile.c ***************************************/ 
     
    641666extern void WriteArgumentDeclaration_beforecall(); 
    642667extern void WriteArgumentDeclaration_Sort(FILE* tofile); 
    643 extern listnom * writedeclarationintoamr(listvar *deb_common, FILE *fileout, variable *var, 
    644                   const char *commonname, listnom *neededparameter, const char *name_common); 
     668extern int writedeclarationintoamr(listvar *deb_common, FILE *fileout, variable *var, 
     669                  const char *commonname, listnom **neededparameter, const char *name_common, int global_check); 
    645670extern void writesub_loopdeclaration_scalar(listvar *deb_common, FILE *fileout); 
    646671extern void writesub_loopdeclaration_tab(listvar *deb_common, FILE *fileout); 
Note: See TracChangeset for help on using the changeset viewer.