48 std::map<int, std::any>
data;
50 std::map<int, std::map<int, int>>
current;
75 NodeBroadcast* nodeBroadcastIn = 0,
const bool useSharedIfPossible =
false)
78 NAMD_bug(
"SimpleBroadcastObject instantiated on class larger than BCASTMSGSIZE");
105 T
get(
int tag,
const int expected = -1) {
111 NAMD_bug(
"SimpleBroadcastObject: Did not find id");
114 if (data->find(tag) == data->end()) {
115 NAMD_bug(
"SimpleBroadcastObject: Did not find tag");
148 data->insert({tag, t});
Broadcast object for intra-node GPU-resident broadcasts.
SimParameters * simParameters
void startWork(const LDObjHandle &handle)
void pauseWork(const LDObjHandle &handle)
const LDObjHandle * ldObjPtr
void send(BroadcastClient &b, int tag, void *buf, size_t)
void NAMD_bug(const char *err_msg)
std::map< int, std::any > data
NodeBroadcast * nodeBroadcast
static LdbCoordinator * Object()
SimpleBroadcastObject(int id_in, const LDObjHandle *h=0, NodeBroadcast *nodeBroadcastIn=0, const bool useSharedIfPossible=false)
Creates a new SimpleBroadcastObject with given id.
void publish(int tag, const T &t)
Bool GPUresidentSingleProcessMode
static BroadcastMgr * Object()
std::map< int, std::map< int, int > > current