aboutsummaryrefslogtreecommitdiff
path: root/Carpet/Carpet/src/Cycle.cc
diff options
context:
space:
mode:
authorErik Schnetter <schnetter@gmail.com>2012-02-25 11:01:40 -0500
committerBarry Wardell <barry.wardell@gmail.com>2012-09-11 18:23:06 +0100
commit487280c1b638d05f4bbc2bc41c81d1fdb424cd4d (patch)
treed4ea7557f7cd42f74ce6f7a92b906e6401c69c97 /Carpet/Carpet/src/Cycle.cc
parentae44c5e6d86a65cce382e313e2a10b214e9645da (diff)
CarpetLib: Change API to obtain pointer to grid function data
Change the API to obtain a pointer to grid function data: - Use a function "typed_data_pointer" instead of overloading the () operator (because this looks nicer) - Don't use a virtual function (because this isn't needed) - Update all uses
Diffstat (limited to 'Carpet/Carpet/src/Cycle.cc')
-rw-r--r--Carpet/Carpet/src/Cycle.cc36
1 files changed, 21 insertions, 15 deletions
diff --git a/Carpet/Carpet/src/Cycle.cc b/Carpet/Carpet/src/Cycle.cc
index 64b7ff25b..449a5a7b3 100644
--- a/Carpet/Carpet/src/Cycle.cc
+++ b/Carpet/Carpet/src/Cycle.cc
@@ -82,11 +82,13 @@ namespace Carpet {
{
int const varindex = firstvarindex + var;
for (int tl=0; tl<numtimelevels; ++tl) {
- cctkGH->data[varindex][tl]
- = (tl < groupdata.AT(group).info.activetimelevels
- ? ((*arrdata.AT(group).AT(0).data.AT(var))
- (tl, 0, 0, 0)->storage())
- : NULL);
+ if (tl < groupdata.AT(group).info.activetimelevels) {
+ ggf *const ff = arrdata.AT(group).AT(0).data.AT(var);
+ void *const ptr = ff->data_pointer(tl, 0, 0, 0)->storage();
+ cctkGH->data[varindex][tl] = ptr;
+ } else {
+ cctkGH->data[varindex][tl] = NULL;
+ }
}
}
}
@@ -148,11 +150,13 @@ namespace Carpet {
{
int const varindex = firstvarindex + var;
for (int tl=0; tl<numtimelevels; ++tl) {
- cctkGH->data[varindex][tl]
- = (tl < groupdata.AT(group).info.activetimelevels
- ? ((*arrdata.AT(group).AT(0).data.AT(var))
- (tl, 0, 0, 0)->storage())
- : NULL);
+ if (tl < groupdata.AT(group).info.activetimelevels) {
+ ggf *const ff = arrdata.AT(group).AT(0).data.AT(var);
+ void *const ptr = ff->data_pointer(tl, 0, 0, 0)->storage();
+ cctkGH->data[varindex][tl] = ptr;
+ } else {
+ cctkGH->data[varindex][tl] = NULL;
+ }
}
}
}
@@ -205,11 +209,13 @@ namespace Carpet {
{
int const varindex = firstvarindex + var;
for (int tl=0; tl<numtimelevels; ++tl) {
- cctkGH->data[varindex][tl]
- = (tl < groupdata.AT(group).info.activetimelevels
- ? ((*arrdata.AT(group).AT(0).data.AT(var))
- (tl, 0, 0, 0)->storage())
- : NULL);
+ if (tl < groupdata.AT(group).info.activetimelevels) {
+ ggf *const ff = arrdata.AT(group).AT(0).data.AT(var);
+ void *const ptr = ff->data_pointer(tl, 0, 0, 0)->storage();
+ cctkGH->data[varindex][tl] = ptr;
+ } else {
+ cctkGH->data[varindex][tl] = NULL;
+ }
}
}
}