Go to the source code of this file.
Data Structures | |
struct | Cfuture_data_s |
struct | CfutureValue_s |
Typedefs | |
typedef struct Cfuture_data_s * | futdata |
typedef struct CfutureValue_s * | CfutureValue |
Functions | |
CpvDeclare (int, CfutureStoreIndex) | |
Cfuture | CfutureCreate (void) |
static void | CfutureAwaken (futdata data, CfutureValue val) |
static void | CfutureStore (CfutureValue m) |
void * | CfutureCreateBuffer (int bytes) |
void | CfutureDestroyBuffer (void *v) |
void | CfutureStoreBuffer (Cfuture f, void *value) |
void | CfutureSet (Cfuture f, void *value, int len) |
void * | CfutureWait (Cfuture f) |
void | CfutureDestroy (Cfuture f) |
void | CfutureModuleInit (void) |
typedef struct Cfuture_data_s * futdata |
typedef struct CfutureValue_s * CfutureValue |
CpvDeclare | ( | int | , | |
CfutureStoreIndex | ||||
) |
Cfuture CfutureCreate | ( | void | ) |
Definition at line 27 of file futures.C.
References CmiMyPe(), Cfuture_s::data, data, malloc(), Cfuture_s::pe, Cfuture_data_s::ready, Cfuture_data_s::value, and Cfuture_data_s::waiters.
static void CfutureAwaken | ( | futdata | data, | |
CfutureValue | val | |||
) | [static] |
Definition at line 40 of file futures.C.
References CthAwaken(), CthGetNext(), Cfuture_data_s::ready, PUP::t, Cfuture_data_s::value, and Cfuture_data_s::waiters.
Referenced by CfutureStore(), and CfutureStoreBuffer().
static void CfutureStore | ( | CfutureValue | m | ) | [static] |
Definition at line 50 of file futures.C.
References CfutureAwaken(), and CfutureValue_s::data.
Referenced by CfutureModuleInit().
void* CfutureCreateBuffer | ( | int | bytes | ) |
Definition at line 55 of file futures.C.
References CmiAlloc(), and PUP::m.
Referenced by CfutureSet().
void CfutureDestroyBuffer | ( | void * | v | ) |
void CfutureStoreBuffer | ( | Cfuture | f, | |
void * | value | |||
) |
Definition at line 69 of file futures.C.
References CfutureAwaken(), CmiMyPe(), Converse::CmiSyncSendAndFree(), CfutureValue_s::data, Cfuture_s::data, PUP::m, Cfuture_s::pe, and CfutureValue_s::valsize.
Referenced by CfutureSet().
Definition at line 80 of file futures.C.
References CfutureCreateBuffer(), CfutureStoreBuffer(), and copy().
void* CfutureWait | ( | Cfuture | f | ) |
Definition at line 87 of file futures.C.
References CmiMyPe(), CmiPrintf(), CthSelf(), CthSetNext(), CthSuspend(), Cfuture_s::data, data, Cfuture_s::pe, Cfuture_data_s::ready, CfutureValue_s::rest, Cfuture_data_s::value, value, and Cfuture_data_s::waiters.
void CfutureDestroy | ( | Cfuture | f | ) |
Definition at line 105 of file futures.C.
References CmiFree(), CmiMyPe(), CmiPrintf(), Cfuture_s::data, free(), Cfuture_s::pe, Cfuture_data_s::value, and Cfuture_data_s::waiters.
void CfutureModuleInit | ( | void | ) |
Definition at line 119 of file futures.C.
References CfutureStore(), and CmiRegisterHandler().