Skip to content

Commit

Permalink
Move symmetries code processing from KrancThorn.m into CodeGenSymmetr…
Browse files Browse the repository at this point in the history
…ies.m
  • Loading branch information
ianhinder committed Sep 13, 2013
1 parent 6905628 commit a9281ab
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 12 deletions.
19 changes: 18 additions & 1 deletion Tools/CodeGen/CodeGenSymmetries.m
Expand Up @@ -21,9 +21,10 @@
BeginPackage[
"CodeGenSymmetries`",
{"Errors`", "Helpers`", "Kranc`", "CodeGenCactus`", "MapLookup`", "CodeGenKranc`",
"CodeGenC`", "CodeGen`", "KrancGroups`"}];
"CodeGenC`", "CodeGen`", "KrancGroups`", "Code`", "Object`"}];

CreateSymmetriesRegistrationSource::usage = "";
SymmetriesProcessCode;

Begin["`Private`"];

Expand Down Expand Up @@ -107,6 +108,22 @@
CodeGenC`SOURCELANGUAGE = lang;
tmp]];

Options[SymmetriesProcessCode] = ThornOptions;

DefFn[
SymmetriesProcessCode[cIn_Code, opts:OptionsPattern[]] :=
Module[
{c = cIn},
InfoMessage[Terse, "Creating symmetry registration file"];
c = AppendObjectField[c, "IncludeFiles", "Symmetry.h"];
c = AppendObjectField[
c, "Sources",
{Filename -> "RegisterSymmetries.cc",
Contents -> CreateSymmetriesRegistrationSource[
GetObjectField[c, "Name"], GetObjectField[c,"Implementation"],
GetObjectField[c, "DeclaredGroups"], GetObjectField[c, "Groups"],
OptionValue[ReflectionSymmetries], False]}]]];

End[];

EndPackage[];
12 changes: 1 addition & 11 deletions Tools/CodeGen/KrancThorn.m
Expand Up @@ -243,17 +243,7 @@ Thorn generation (main entry point for non-tensorial thorns)
Symmetries
------------------------------------------------------------------------ *)

c = AppendObjectField[c, "IncludeFiles", "Symmetry.h"];

InfoMessage[Terse, "Creating symmetry registration file"];

c = AppendObjectField[
c, "Sources",
{Filename -> "RegisterSymmetries.cc",
Contents -> CreateSymmetriesRegistrationSource[
GetObjectField[c, "Name"], GetObjectField[c,"Implementation"],
GetObjectField[c, "DeclaredGroups"], GetObjectField[c, "Groups"],
OptionValue[ReflectionSymmetries], False]}];
c = SymmetriesProcessCode[c, opts];

(* ------------------------------------------------------------------------
Boundary thorn
Expand Down

0 comments on commit a9281ab

Please sign in to comment.