Ejemplo n.º 1
0
// This is the constructor of a class that has been exported.
// see bracmatdll.h for the class definition
CBracmatdll::CBracmatdll(void (*WinOut)(int c),int (*WinIn)(void),void (*WinFlush)(void))
    { 
    if(WinIn)
        bracmatStartStruct.WinIn = WinIn;

    if(WinOut)
        bracmatStartStruct.WinOut = WinOut;

    if(WinFlush)
        bracmatStartStruct.WinFlush = WinFlush;
    startProc(&bracmatStartStruct);
    }
Ejemplo n.º 2
0
CBracmatdll::CBracmatdll(funcstruct * fncs)
    {
    if(fncs)
        {
        if(fncs->In)
            bracmatStartStruct.WinIn = fncs->In;

        if(fncs->Out)
            bracmatStartStruct.WinOut = fncs->Out;

        if(fncs->Flush)
            bracmatStartStruct.WinFlush = fncs->Flush;
        startProc(&bracmatStartStruct);
        }
    }
Ejemplo n.º 3
0
JNIEXPORT jint JNICALL Java_dk_cst_bracmat_init(JNIEnv * env, jobject obj, jstring expr)
    {
    int err;
    jint ret;
#if defined WIN32
    void mutexLockInit();
    void mutexUnlockInit();
    mutexLockInit();
#else
    pthread_mutex_lock( &mutexinit);
#endif
    ret = startProc(0);
    if(ret == 1)
        {
        const char * str = (*env)->GetStringUTFChars(env, expr, NULL);
        stringEval((const char *)str,&out,&err); /*initialize, e.g. read program file*/
        }
#if defined WIN32
    mutexUnlockInit();
#else
    pthread_mutex_unlock(&mutexinit);
#endif
    return ret;
    }