Newer
Older
Marc Vef
committed
#include <daemon/adafs_daemon.hpp>
class RPCData {
private:
RPCData() {}
// Margo IDs. They can also be used to retrieve the Mercury classes and contexts that were created at init time
margo_instance_id server_rpc_mid_;
margo_instance_id server_ipc_mid_;
// Argobots I/O pools and execution streams
ABT_pool io_pool_;
std::vector<ABT_xstream> io_streams_;
static RPCData* getInstance() {
static RPCData instance;
return &instance;
}
RPCData(RPCData const&) = delete;
void operator=(RPCData const&) = delete;
// Getter/Setter
margo_instance* server_rpc_mid();
void server_rpc_mid(margo_instance* server_rpc_mid);
margo_instance* server_ipc_mid();
void server_ipc_mid(margo_instance* server_ipc_mid);
std::vector<ABT_xstream>& io_streams();
void io_streams(const std::vector<ABT_xstream>& io_streams);