![]() |
fpmas 1.6
|
Go to the source code of this file.
Macros | |
#define | FPMAS_C_STR(arg) fpmas::to_string(arg).c_str() |
#define | MPI_DISTRIBUTED_ID_TYPE fpmas::api::graph::DistributedId::mpiDistributedIdType |
#define | FPMAS_ON_PROC(COMM, RANK) if(COMM.getRank() == RANK) |
#define | FPMAS_NODE_TASK(node, body) |
#define | FPMAS_DEFINE_GROUPS(...) |
#define | FPMAS_DEFINE_LAYERS(...) |
FPMAS macros.
#define FPMAS_C_STR | ( | arg | ) | fpmas::to_string(arg).c_str() |
Converts arg to a C-like null terminated string.
arg must be implicitly convertible to std::string
This can be used to easily log thinks using FPMAS_LOG* macros.
arg | object to convert as a C-like string |
#define MPI_DISTRIBUTED_ID_TYPE fpmas::api::graph::DistributedId::mpiDistributedIdType |
MPI type that can be used to transmit fpmas::api::graph::DistributedId instances.
#define FPMAS_ON_PROC | ( | COMM, | |
RANK | |||
) | if(COMM.getRank() == RANK) |
Elegant expression to specify a portion of code that should be executed only on the process with the given rank.
COMM | reference to an fpmas::api::communication::MpiCommunicator instance |
RANK | rank of the process on which the code should be executed |
#define FPMAS_NODE_TASK | ( | node, | |
body | |||
) |
Utility macro to easily build tasks bound to a node.
node | node to bind to the task |
body | function body run by the task |
#define FPMAS_DEFINE_GROUPS | ( | ... | ) |
Defines a set of groups as an anonymous enum. Each group name can then be used where an fpmas::api::model::GroupId is required.
#define FPMAS_DEFINE_LAYERS | ( | ... | ) |
Defines a set of layers as an anonymous enum. Each group name can then be used where an fpmas::api::graph::LayerId is required.