| 3333 | |
| 3334 | template <class T> |
| 3335 | void |
| 3336 | LEInteractor::spread(Pointer<CellData<NDIM, double>> q_data, |
| 3337 | const Pointer<LData> Q_data, |
| 3338 | const Pointer<LData> X_data, |
| 3339 | const Pointer<LIndexSetData<T>> idx_data, |
| 3340 | const Pointer<Patch<NDIM>> patch, |
| 3341 | const Box<NDIM>& spread_box, |
| 3342 | const IntVector<NDIM>& periodic_shift, |
| 3343 | const std::string& spread_fcn) |
| 3344 | { |
| 3345 | #if !defined(NDEBUG) |
| 3346 | TBOX_ASSERT(Q_data); |
| 3347 | TBOX_ASSERT(q_data); |
| 3348 | TBOX_ASSERT(X_data); |
| 3349 | TBOX_ASSERT(idx_data); |
| 3350 | TBOX_ASSERT(patch); |
| 3351 | TBOX_ASSERT(Q_data->getDepth() == static_cast<unsigned int>(q_data->getDepth())); |
| 3352 | TBOX_ASSERT(X_data->getDepth() == NDIM); |
| 3353 | #endif |
| 3354 | spread(q_data, |
| 3355 | Q_data->getGhostedLocalFormVecArray()->data(), |
| 3356 | Q_data->getDepth(), |
| 3357 | X_data->getGhostedLocalFormVecArray()->data(), |
| 3358 | X_data->getDepth(), |
| 3359 | idx_data, |
| 3360 | patch, |
| 3361 | spread_box, |
| 3362 | periodic_shift, |
| 3363 | spread_fcn); |
| 3364 | Q_data->restoreArrays(); |
| 3365 | X_data->restoreArrays(); |
| 3366 | return; |
| 3367 | } |
| 3368 | |
| 3369 | template <class T> |
| 3370 | void |