WE6MDRN5SPK3THM4COLQFE3IUWBCQ5ZYUIAUCBJAZVEMMOVTNBOAC
}
int SyncGroupsByDirI(const cGH *restrict cctkGH, int numgroups,
const int *groups, const int *directions) {
assert(cctkGH);
assert(numgroups >= 0);
assert(groups);
// TODO: Synchronize only current time level. This probably requires
// setting up different mfabs for each time level.
for (int n = 0; n < numgroups; ++n) {
int gi = groups[n];
auto &restrict groupdata = ghext->groupdata.at(gi);
// we always sync all directions
groupdata.mfab.FillBoundary(ghext->geom.periodicity());
}
return numgroups; // number of groups synchronized
extern "C" void WaveToyAMReX_Sync(CCTK_ARGUMENTS) {
DECLARE_CCTK_ARGUMENTS;
DECLARE_CCTK_PARAMETERS;
// Synchronize
for (auto &restrict groupdata : ghext->groupdata)
groupdata.mfab.FillBoundary(ghext->geom.periodicity());
}