/* gevCreate: return false on failure to load library, true on success */ int gevCreate (gevHandle_t *pgev, char *msgBuf, int msgBufSize) { int gevIsReady; gevIsReady = gevGetReady (msgBuf, msgBufSize); if (! gevIsReady) { return 0; } assert(gevXCreate); gevXCreate(pgev); if(pgev == NULL) { strcpy(msgBuf,"Error while creating object"); return 0; } lock(objMutex); objectCount++; unlock(objMutex); return 1; /* return true on successful library load */ } /* gevCreate */
DllExport int STDCALL C__hisReadyAPI(void* Cptr, gmoHandle_t Gptr, optHandle_t Optr) { gamshighs_t* gh; assert(Cptr != NULL); assert(Gptr != NULL); assert(Optr == NULL); char msg[256]; if(!gmoGetReady(msg, sizeof(msg))) return 1; if(!gevGetReady(msg, sizeof(msg))) return 1; gh = (gamshighs_t*)Cptr; gh->gmo = Gptr; gh->gev = (gevHandle_t)gmoEnvironment(gh->gmo); return 0; }