/* DEFS: readonly CProxy_HelloMain mainProxy; */ extern CProxy_HelloMain mainProxy; #ifndef CK_TEMPLATES_ONLY extern "C" void __xlater_roPup_mainProxy(void *_impl_pup_er) { PUP::er &_impl_p=*(PUP::er *)_impl_pup_er; _impl_p|mainProxy; } #endif /* DEFS: mainchare HelloMain: Chare{ HelloMain(CkArgMsg* impl_msg); void PrintDone(void); }; */ #ifndef CK_TEMPLATES_ONLY int CkIndex_HelloMain::__idx=0; #endif #ifndef CK_TEMPLATES_ONLY /* DEFS: HelloMain(CkArgMsg* impl_msg); */ CkChareID CProxy_HelloMain::ckNew(CkArgMsg* impl_msg, int impl_onPE) { CkChareID impl_ret; CkCreateChare(CkIndex_HelloMain::__idx, CkIndex_HelloMain::__idx_HelloMain_CkArgMsg, impl_msg, &impl_ret, impl_onPE); return impl_ret; } void CProxy_HelloMain::ckNew(CkArgMsg* impl_msg, CkChareID* pcid, int impl_onPE) { CkCreateChare(CkIndex_HelloMain::__idx, CkIndex_HelloMain::__idx_HelloMain_CkArgMsg, impl_msg, pcid, impl_onPE); } CProxy_HelloMain::CProxy_HelloMain(CkArgMsg* impl_msg, int impl_onPE) { CkChareID impl_ret; CkCreateChare(CkIndex_HelloMain::__idx, CkIndex_HelloMain::__idx_HelloMain_CkArgMsg, impl_msg, &impl_ret, impl_onPE); ckSetChareID(impl_ret); } int CkIndex_HelloMain::__idx_HelloMain_CkArgMsg=0; void CkIndex_HelloMain::_call_HelloMain_CkArgMsg(void* impl_msg,HelloMain * impl_obj) { new (impl_obj) HelloMain((CkArgMsg*)impl_msg); } /* DEFS: void PrintDone(void); */ void CProxy_HelloMain::PrintDone(void) { ckCheck(); void *impl_msg = CkAllocSysMsg(); if (ckIsDelegated()) { int destPE=CkChareMsgPrep(CkIndex_HelloMain::__idx_PrintDone_void, impl_msg, &ckGetChareID()); if (destPE!=-1) ckDelegatedTo()->ChareSend(ckDelegatedPtr(),CkIndex_HelloMain::__idx_PrintDone_void, impl_msg, &ckGetChareID(),destPE); } else CkSendMsg(CkIndex_HelloMain::__idx_PrintDone_void, impl_msg, &ckGetChareID(),0); } int CkIndex_HelloMain::__idx_PrintDone_void=0; void CkIndex_HelloMain::_call_PrintDone_void(void* impl_msg,HelloMain * impl_obj) { CkFreeSysMsg(impl_msg); impl_obj->PrintDone(); } #endif /*CK_TEMPLATES_ONLY*/ #ifndef CK_TEMPLATES_ONLY void CkIndex_HelloMain::__register(const char *s, size_t size) { __idx = CkRegisterChare(s, size, TypeMainChare); CkRegisterBase(__idx, CkIndex_Chare::__idx); // REG: HelloMain(CkArgMsg* impl_msg); __idx_HelloMain_CkArgMsg = CkRegisterEp("HelloMain(CkArgMsg* impl_msg)", (CkCallFnPtr)_call_HelloMain_CkArgMsg, CMessage_CkArgMsg::__idx, __idx, 0); CkRegisterMainChare(__idx, __idx_HelloMain_CkArgMsg); // REG: void PrintDone(void); __idx_PrintDone_void = CkRegisterEp("PrintDone(void)", (CkCallFnPtr)_call_PrintDone_void, 0, __idx, 0); } #endif /* DEFS: group HelloGroup: IrrGroup{ HelloGroup(void); }; */ #ifndef CK_TEMPLATES_ONLY int CkIndex_HelloGroup::__idx=0; #endif #ifndef CK_TEMPLATES_ONLY /* DEFS: HelloGroup(void); */ /* DEFS: HelloGroup(void); */ CkGroupID CProxy_HelloGroup::ckNew(void) { void *impl_msg = CkAllocSysMsg(); return CkCreateGroup(CkIndex_HelloGroup::__idx, CkIndex_HelloGroup::__idx_HelloGroup_void, impl_msg); } int CkIndex_HelloGroup::__idx_HelloGroup_void=0; void CkIndex_HelloGroup::_call_HelloGroup_void(void* impl_msg,HelloGroup * impl_obj) { CkFreeSysMsg(impl_msg); new (impl_obj) HelloGroup(); } /* DEFS: HelloGroup(void); */ #endif /*CK_TEMPLATES_ONLY*/ #ifndef CK_TEMPLATES_ONLY void CkIndex_HelloGroup::__register(const char *s, size_t size) { __idx = CkRegisterChare(s, size, TypeGroup); CkRegisterBase(__idx, CkIndex_IrrGroup::__idx); CkRegisterGroupIrr(__idx,HelloGroup::isIrreducible()); // REG: HelloGroup(void); __idx_HelloGroup_void = CkRegisterEp("HelloGroup(void)", (CkCallFnPtr)_call_HelloGroup_void, 0, __idx, 0); CkRegisterDefaultCtor(__idx, __idx_HelloGroup_void); } #endif #ifndef CK_TEMPLATES_ONLY void _registerHello(void) { static int _done = 0; if(_done) return; _done = 1; CkRegisterReadonly("mainProxy","CProxy_HelloMain",sizeof(mainProxy),(void *) &mainProxy,__xlater_roPup_mainProxy); /* REG: mainchare HelloMain: Chare{ HelloMain(CkArgMsg* impl_msg); void PrintDone(void); }; */ CkIndex_HelloMain::__register("HelloMain", sizeof(HelloMain)); /* REG: group HelloGroup: IrrGroup{ HelloGroup(void); }; */ CkIndex_HelloGroup::__register("HelloGroup", sizeof(HelloGroup)); } extern "C" void CkRegisterMainModule(void) { _registerHello(); } #endif