
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().

 1.5.5
 1.5.5