00001 #ifndef  _MACHINE_LRTS_H_
00002 #define  _MACHINE_LRTS_H_
00003 
00004 #include "converse.h"
00005 
00006 void LrtsPrepareEnvelope(char *msg, int size);
00007 
00008 
00009 CmiCommHandle LrtsSendFunc(int destNode, int destPE, int size, char *msg, int mode);
00010 
00011 void LrtsSyncListSendFn(int npes, const int *pes, int len, char *msg);
00012 CmiCommHandle LrtsAsyncListSendFn(int npes, const int *pes, int len, char *msg);
00013 void LrtsFreeListSendFn(int npes, const int *pes, int len, char *msg);
00014 
00015 #if CMK_PERSISTENT_COMM
00016 void LrtsSendPersistentMsg(PersistentHandle h, int destPE, int size, void *m);
00017 #endif
00018 
00019 
00020 void LrtsInit(int *argc, char ***argv, int *numNodes, int *myNodeID);
00021 
00022 void LrtsPreCommonInit(int everReturn);
00023 void LrtsPostCommonInit(int everReturn);
00024 
00025 
00026 
00027 void LrtsAdvanceCommunication(int whileidle);
00028 void LrtsDrainResources(void); 
00029 void LrtsExit(int exitcode=0);
00030 CMK_NORETURN void LrtsAbort(const char *message);
00031 
00032 void LrtsPostNonLocal(void);
00033 
00034 void* LrtsAlloc(int, int);
00035 void* LrtsRdmaAlloc(int, int);
00036 
00037 void  LrtsFree(void*);
00038 void  LrtsRdmaFree(void*);
00039 void  LrtsNotifyIdle(void);
00040 
00041 void  LrtsBeginIdle(void);
00042 void  LrtsStillIdle(void);
00043 void  LrtsBarrier(void);
00044 
00045 
00046 #include "lrtslock.h"
00047 
00048 #endif