42 reinterpret_cast<char*>(&value),
63 template<
class Type,
class... Args>
82 template<
class ListType>
85 if (is_contiguous<typename ListType::value_type>::value)
94 label len(list.size());
98 reinterpret_cast<char*>(&len),
105 list.resize_nocopy(len);
static void broadcastList(ListType &list, const label comm=UPstream::worldComm)
Broadcast list content (contiguous or non-contiguous) to all communicator ranks. Does nothing in non-...
static label worldComm
Communicator for all ranks. May differ from commGlobal() if local worlds are in use.
static void broadcast(Type &value, const label comm=UPstream::worldComm)
Broadcast content (contiguous or non-contiguous) to all communicator ranks. Does nothing in non-paral...
void inputLoop(IS &)
Termination for input looping (no-op)
static bool is_parallel(const label communicator=worldComm)
True if parallel algorithm or exchange is required.
static bool is_subrank(const label communicator=worldComm)
True if process corresponds to a sub-rank in the given communicator.
OBJstream os(runTime.globalPath()/outputName)
Type returnBroadcast(const Type &value, const label comm=UPstream::worldComm)
Return a broadcasted value (uses a copy internally)
static void broadcasts(const label comm, Type &arg1, Args &&... args)
Broadcast multiple items to all communicator ranks. Does nothing in non-parallel. ...
Input inter-processor communications stream using MPI broadcast.
A template class to specify that a data type can be considered as being contiguous in memory...
static bool broadcast(char *buf, const std::streamsize bufSize, const label communicator, const int rootProcNo=masterNo())
Broadcast buffer contents to all processes in given communicator. The sizes must match on all process...
static bool master(const label communicator=worldComm)
True if process corresponds to the master rank in the communicator.
Output inter-processor communications stream using MPI broadcast.
Foam::argList args(argc, argv)
void outputLoop(OS &)
Termination for output looping (no-op)