OPAL (Object Oriented Parallel Accelerator Library) 2022.1
OPAL
|
#include <Message.h>
Classes | |
class | MsgItem |
Public Member Functions | |
Message (unsigned int numelems=8) | |
~Message () | |
size_t | size () const |
size_t | removed () const |
bool | empty () const |
MsgItem & | item (size_t n) |
const MsgItem & | item (size_t n) const |
Message & | setCopy (const bool c) |
bool | willCopy () const |
Message & | setDelete (const bool c) |
bool | willDelete () const |
Message & | clear () |
void * | remove () |
void | useCommunicate (Communicate *c, void *d) |
template<class T > | |
Message & | put (const T &val) |
Message & | put (const char *d) |
Message & | put (const std::string &s) |
template<class ForwardIterator > | |
Message & | put (ForwardIterator beg, ForwardIterator end) |
template<class RandomAccessIterator > | |
Message & | put (const std::vector< size_t > &indices, RandomAccessIterator beg) |
Message & | putmsg (void *, int, int=0) |
template<class T > | |
Message & | get (const T &cval) |
Message & | get (const std::string &s) |
Message & | get () |
template<class OutputIterator > | |
Message & | get_iter (OutputIterator o) |
Message & | getmsg (void *) |
Private Member Functions | |
void | deleteMsgItem () |
Private Attributes | |
std::vector< MsgItem > | MsgItemList |
size_t | numRemoved |
bool | DoCopy |
bool | DoDelete |
Communicate * | comm |
void * | commdata |
|
inline |
Definition at line 277 of file Message.h.
References MsgItemList.
Message::~Message | ( | ) |
Definition at line 44 of file MessageFunctions.cpp.
References Communicate::cleanupMessage(), clear(), comm, commdata, MsgItemList, and Hypervolume::n.
Message & Message::clear | ( | void | ) |
Definition at line 146 of file MessageFunctions.cpp.
References deleteMsgItem(), and empty().
Referenced by ~Message().
|
private |
Definition at line 65 of file MessageFunctions.cpp.
References empty(), and numRemoved.
Referenced by clear(), getmsg(), and remove().
|
inline |
Definition at line 300 of file Message.h.
References size().
Referenced by clear(), deleteMsgItem(), PutSingleItem< T, false, false >::get_iter(), getmsg(), ParticleSpatialLayout< T, Dim, Mesh, CachingPolicy >::new_swap_particles(), and BoxLibLayout< T, Dim >::update().
|
inline |
|
inline |
|
inline |
Definition at line 476 of file Message.h.
References get(), and Attrib::Legacy::Distribution::T.
Referenced by DiscField< Dim >::distribute_offsets(), FieldLayout< Dim >::FieldLayout(), PutSingleItem< T, false, false >::get_iter(), BrickIterator< T, Dim >::getMessage(), IpplParticleBase< PLayout >::getMessage(), AntiSymTenzor< T, 1 >::getMessage(), CompressedBrickIterator< T, Dim >::getMessage(), Vnode< Dim >::getMessage(), Index::getMessage(), AnyHolder< T, OP >::getMessage(), BoundsHolder< T, D >::getMessage(), getMessage(), IpplParticleBase< PLayout >::ghostGetMessage(), pap(), FieldLayout< Dim >::read(), DiscField< Dim >::read_meta(), DiscParticle::read_meta(), ParticleSpatialLayout< T, Dim, Mesh, CachingPolicy >::rebuild_layout(), IpplParticleBase< PLayout >::resetID(), LossDataSink::saveASCII(), scatter(), ParallelCyclotronTracker::singleParticleDump(), spap(), ParticleCashedLayout< T, Dim, Mesh >::update(), ParticleInteractLayout< T, Dim, Mesh >::update(), and ParticleUniformLayout< T, Dim >::update().
|
inline |
Definition at line 511 of file Message.h.
References get_iter().
Referenced by get_iter(), PRegion< T >::getMessage(), vec< T, Length >::getMessage(), getMessage(), getMessage_iter(), and FieldLayout< Dim >::read().
Message & Message::getmsg | ( | void * | data | ) |
Definition at line 111 of file MessageFunctions.cpp.
References Message::MsgItem::data(), deleteMsgItem(), empty(), endl(), ERRORMSG, item(), Message::MsgItem::numBytes(), and PAssert.
Referenced by get(), and spap().
|
inline |
Definition at line 308 of file Message.h.
References MsgItemList, Hypervolume::n, and numRemoved.
Referenced by MsgBuffer::add(), Communicate::fill_msg_buffer(), Communicate::find_msg_length(), Format::Format(), PutSingleItem< T, false, false >::get_iter(), BrickIterator< T, Dim >::getMessage(), getmsg(), operator<<(), reduce(), remove(), and scatter().
|
inline |
Definition at line 312 of file Message.h.
References MsgItemList, Hypervolume::n, and numRemoved.
|
inline |
|
inline |
|
inline |
|
inline |
Definition at line 406 of file Message.h.
References put(), and Attrib::Legacy::Distribution::T.
Referenced by BareField< T, Dim >::accumGuardCells(), BcastCuts(), DiscField< Dim >::distribute_offsets(), FieldLayout< Dim >::FieldLayout(), IpplParticleBase< PLayout >::ghostPutMessage(), pap(), put(), BrickIterator< T, Dim >::putMessage(), IpplParticleBase< PLayout >::putMessage(), AnyHolder< T, OP >::putMessage(), BoundsHolder< T, D >::putMessage(), PRegion< T >::putMessage(), vec< T, Length >::putMessage(), AntiSymTenzor< T, 1 >::putMessage(), Vnode< Dim >::putMessage(), Index::putMessage(), CompressedBrickIterator< T, Dim >::putMessage(), putMessage(), FieldLayout< Dim >::read(), DiscParticle::read(), DiscField< Dim >::read_meta(), DiscParticle::read_meta(), ParticleSpatialLayout< T, Dim, Mesh, CachingPolicy >::rebuild_layout(), Communicate::request_retransmission(), IpplParticleBase< PLayout >::resetID(), LossDataSink::saveASCII(), Communicate::send_ok_message(), ParallelCyclotronTracker::singleParticleDump(), spap(), ParticleCashedLayout< T, Dim, Mesh >::update(), ParticleInteractLayout< T, Dim, Mesh >::update(), ParticleUniformLayout< T, Dim >::update(), and DiscParticle::write().
|
inline |
Message & Message::putmsg | ( | void * | data, |
int | s, | ||
int | nelem = 0 |
||
) |
Definition at line 78 of file MessageFunctions.cpp.
References DoCopy, DoDelete, and MsgItemList.
Referenced by DiscField< Dim >::distribute_offsets(), MsgBuffer::get(), put(), PutSingleItem< T, true, false >::put(), PutSingleItem< T, false, false >::put(), PutSingleItem< T, true, true >::put(), BrickIterator< T, Dim >::putMessage(), DiscParticle::read(), spap(), and Communicate::unpack_message().
void * Message::remove | ( | ) |
Definition at line 166 of file MessageFunctions.cpp.
References Message::MsgItem::cancelDelete(), Message::MsgItem::data(), deleteMsgItem(), item(), Message::MsgItem::numBytes(), and Message::MsgItem::willNeedDelete().
|
inline |
|
inline |
Definition at line 319 of file Message.h.
References Physics::c, and DoCopy.
Referenced by DiscField< Dim >::distribute_offsets(), MsgBuffer::get(), PutSingleItem< T, false, false >::put(), BrickIterator< T, Dim >::putMessage(), AntiSymTenzor< T, D >::putMessage(), AntiSymTenzor< T, 1 >::putMessage(), SymTenzor< T, D >::putMessage(), Tenzor< T, D >::putMessage(), Vektor< T, D >::putMessage(), DiscParticle::read(), and Communicate::unpack_message().
|
inline |
Definition at line 331 of file Message.h.
References Physics::c, and DoDelete.
Referenced by DiscField< Dim >::distribute_offsets(), MsgBuffer::get(), PutSingleItem< T, false, false >::put(), BrickIterator< T, Dim >::putMessage(), DiscParticle::read(), and Communicate::unpack_message().
|
inline |
Definition at line 292 of file Message.h.
References MsgItemList, and numRemoved.
Referenced by BareField< T, Dim >::accumGuardCells(), MsgBuffer::add(), ParallelPeriodicFace< T, D, M, C >::apply(), ParallelInterpolationFace< T, D, M, C >::apply(), assign(), empty(), Communicate::fill_msg_buffer(), Communicate::find_msg_length(), Format::Format(), IndexedReceive(), operator<<(), PutSingleItem< T, false, false >::put(), reduce(), reduce_masked(), and scatter().
|
inline |
Definition at line 358 of file Message.h.
References Physics::c, comm, and commdata.
Referenced by CommMPI::mysend().
|
inline |
Definition at line 324 of file Message.h.
References DoCopy.
Referenced by PutSingleItem< T, false, false >::put().
|
inline |
|
private |
Definition at line 538 of file Message.h.
Referenced by useCommunicate(), and ~Message().
|
private |
Definition at line 539 of file Message.h.
Referenced by useCommunicate(), and ~Message().
|
private |
Definition at line 531 of file Message.h.
Referenced by putmsg(), setCopy(), and willCopy().
|
private |
Definition at line 534 of file Message.h.
Referenced by putmsg(), setDelete(), and willDelete().
|
private |
|
private |