#include <source/transfer/datamovers/standard/RefineTimeTransaction.h>
Inheritance diagram for SAMRAI::xfer::RefineTimeTransaction< DIM >:
Public Member Functions | |
RefineTimeTransaction (tbox::Pointer< hier::PatchLevel< DIM > > dst_level, tbox::Pointer< hier::PatchLevel< DIM > > src_level, tbox::Pointer< hier::BoxOverlap< DIM > > overlap, int dst_patch, int src_patch, const hier::Box< DIM > &box, int refine_item_id) | |
virtual | ~RefineTimeTransaction () |
virtual bool | canEstimateIncomingMessageSize () |
virtual int | computeIncomingMessageSize () |
virtual int | computeOutgoingMessageSize () |
virtual int | getSourceProcessor () |
virtual int | getDestinationProcessor () |
virtual void | packStream (tbox::AbstractStream &stream) |
virtual void | unpackStream (tbox::AbstractStream &stream) |
virtual void | copyLocalData () |
virtual void | printClassData (ostream &stream) const |
Static Public Member Functions | |
static void | setRefineItems (const typename RefineClasses< DIM >::Data **refine_items, int num_refine_items) |
static void | unsetRefineItems () |
static void | setTransactionTime (const double time) |
|
Construct a transaction with the specified source and destination levels, patches, and patch data components found in the refine class item with the given id owned by the calling refine schedule. In general, this constructor is called by a RefineSchedule<DIM> object for each data transaction (involving time interpolation) that must occur. This transaction will be responsible for one of the following: (1) performing a local copy, (2) packing a message stream from the source, or (3) unpacking a message stream from the destination. The transaction will perform time interpolation between the source old and new times using the time interpolation operator found in the refine class item.
|
|
The virtual destructor for time transaction releases all memory associated with the transaction. |
|
Static member function to set the array of refine class data items that is shared by all object instances of this time transaction class during data transfers. The array must be set before any transactions are executed. The array is set in the RefineSchedule<DIM> class. |
|
Static member function to unset the array of refine class data items that is shared by all object instances of this time transaction class during data transfers. The unset function is used to prevent erroneous execution of different schedules. The array is unset in the RefineSchedule<DIM> class. |
|
Static member function to set the transaction time that will be shared by all object instances of this time transaction class during time interpolation. This transaction time must be set before any transactions are executed. |
|
Return a boolean indicating whether this transaction can estimate the size of an incoming message. If this is false, then a different communications protocol kicks in and the message size is transmitted between nodes. Implements SAMRAI::tbox::Transaction. |
|
Return the integer amount of buffer space (in bytes) needed for the incoming message. This routine is only called if the transaction can estimate the size of the incoming message. Implements SAMRAI::tbox::Transaction. |
|
Return the integer buffer space needed (in bytes) for the outgoing message. Implements SAMRAI::tbox::Transaction. |
|
Return the sending processor number for the communications transaction. Implements SAMRAI::tbox::Transaction. |
|
Return the receiving processor number for the communications transaction. Implements SAMRAI::tbox::Transaction. |
|
Pack the transaction data into the message stream. |
|
Unpack the transaction data from the message stream. |
|
Perform the local data copy for the transaction. Implements SAMRAI::tbox::Transaction. |
|
Print out transaction information. Implements SAMRAI::tbox::Transaction. |