diff options
author | allen <allen@17b73243-c579-4c4c-a9d2-2d5706c11dac> | 2001-05-10 16:43:48 +0000 |
---|---|---|
committer | allen <allen@17b73243-c579-4c4c-a9d2-2d5706c11dac> | 2001-05-10 16:43:48 +0000 |
commit | 8c4401f9b48391152f2c392f6f6f9cc6c9eaca42 (patch) | |
tree | f60861d15a37652695a6651cfd6f69c22a005497 /lib/sbin/GridFuncStuff.pl | |
parent | 3031db85e40f458dc9515fbaf908991278131b58 (diff) |
Trap GFs comming from mixed dims.
Need to rebuild to implement this.
git-svn-id: http://svn.cactuscode.org/flesh/trunk@2163 17b73243-c579-4c4c-a9d2-2d5706c11dac
Diffstat (limited to 'lib/sbin/GridFuncStuff.pl')
-rw-r--r-- | lib/sbin/GridFuncStuff.pl | 31 |
1 files changed, 27 insertions, 4 deletions
diff --git a/lib/sbin/GridFuncStuff.pl b/lib/sbin/GridFuncStuff.pl index d6e53a03..60769120 100644 --- a/lib/sbin/GridFuncStuff.pl +++ b/lib/sbin/GridFuncStuff.pl @@ -125,10 +125,14 @@ sub CreateVariableBindings foreach $thorn (split(" ",$rhinterface_db->{"THORNS"})) { $dataout = ""; + $dataout .= "\#include \"cctk_Types.h\"\n"; + $dataout .= "\#include \"cctk_WarnLevel.h\"\n"; + $dataout .= "\#include \"cctk_Parameter.h\"\n"; $dataout .= "\#include \"cctki_Groups.h\"\n"; $dataout .= "\#include \"cctki_FortranWrappers.h\"\n"; - $dataout .= "int CCTKi_BindingsFortranWrapper$thorn(void *GH, void *fpointer);"; + $dataout .= "int CCTKi_BindingsFortranWrapper$thorn(void *GH, void *fpointer);\n"; + $dataout .= "int CactusBindingsVariables_$thorn"."_Initialise(void);\n"; $dataout .= "int CactusBindingsVariables_$thorn"."_Initialise(void)\n{\n"; foreach $block ("PUBLIC", "PROTECTED", "PRIVATE") { @@ -1324,7 +1328,7 @@ sub CreateThornGroupInitialisers @variables = split(" ", $rhinterface_db->{"\U$thorn GROUP $group\E"}); - $line = " CCTKi_CreateGroup(\"\U$group\",\"$thorn\",\"$imp\",\n" + $line = " if (CCTKi_CreateGroup(\"\U$group\",\"$thorn\",\"$imp\",\n" . " \"" . $rhinterface_db->{"\U$thorn GROUP $group\E GTYPE"} . "\",\n" . " \"" . $rhinterface_db->{"\U$thorn GROUP $group\E VTYPE"} . "\",\n" . " \"" . $block . "\",\n" @@ -1340,7 +1344,26 @@ sub CreateThornGroupInitialisers $line .= ",\n \"$variable\""; } - $line .= ");\n\n"; + $line .= ")==1)\n"; + + $line .= "{\n"; + $line .= " int param_type;\n"; + $line .= " CCTK_INT *allow_mixeddim_gfs;\n"; + $line .= " allow_mixeddim_gfs = (CCTK_INT *) CCTK_ParameterGet(\"allow_mixeddim_gfs\",\"Cactus\",\¶m_type);\n"; + $line .= " if (*allow_mixeddim_gfs)\n"; + $line .= " {\n"; + $line .= " CCTK_VWarn(2,__LINE__,__FILE__,\"Cactus\"\n,"; + $line .= " \"CCTKi_CreateGroup: Working dimension already set,\"\n"; + $line .= " \" creating GF group $group with different dimension $rhinterface_db->{\"\U$thorn GROUP $group\E DIM\"}\");\n"; + $line .= " }\n"; + $line .= " else"; + $line .= " {\n"; + $line .= " CCTK_VWarn(0,__LINE__,__FILE__,\"Cactus\"\n,"; + $line .= " \"CCTKi_CreateGroup: Working dimension already set,\"\n"; + $line .= " \" cannot create GF group $group with dimension $rhinterface_db->{\"\U$thorn GROUP $group\E DIM\"}\");\n"; + $line .= " }\n"; + $line .= "}\n\n"; + push(@definitions, $line); } @@ -1362,7 +1385,7 @@ sub CreateThornFortranWrapper push(@data, "#include \"cctk_Arguments.h\""); push(@data, ""); - push(@data, "int CCTKi_BindingsFortranWrapper$thorn(cGH *GH, void *fpointer);"); + push(@data, "int CCTKi_BindingsFortranWrapper$thorn(cGH *GH, void *fpointer);\n"); push(@data, "int CCTKi_BindingsFortranWrapper$thorn(cGH *GH, void *fpointer)"); push(@data, "{"); push(@data, " void (*function)(\U$thorn\E_C2F_PROTO);"); |