Пример #1
0
void PdBase::closePatch(Patch& patch) {
	if(!patch.isValid()) {
		return;
	}
	libpd_closefile(patch.handle());
	patch.clear();
}	
Пример #2
0
JNIEXPORT void JNICALL Java_org_puredata_core_PdBase_closeFile
(JNIEnv *env, jclass cls, jlong ptr) {
  pthread_mutex_lock(&mutex);
  libpd_closefile((void *)ptr);
  pthread_mutex_unlock(&mutex);
  // even naughtier, using a pointer from Java
  // using long integer in case we're on a 64bit CPU
}
Пример #3
0
portAudio::~portAudio() {
    
    err = Pa_StopStream( stream );
    if( err != paNoError )
        this->sendError(err);
    err = Pa_CloseStream( stream );
    if( err != paNoError )
        this->sendError(err);
    Pa_Terminate();
    if(handle != NULL)
        libpd_closefile(handle);
   
}
Пример #4
0
int main(int argc, char **argv) {
    if (argc < 3) {
    fprintf(stderr, "usage: %s file folder\n", argv[0]);
    return -1;
    }

    // init pd
    int srate = 44100, foo;
    libpd_set_printhook((t_libpd_printhook)pdprint);
    libpd_set_noteonhook((t_libpd_noteonhook)pdnoteon);
    libpd_init();
    libpd_init_audio(1, 2, srate);

    // compute audio    [; pd dsp 1(
    libpd_start_message(1); // one entry in list
    libpd_add_float(1.0f);
    libpd_finish_message("pd", "dsp");

    // open patch       [; pd open file folder(
    void *file = libpd_openfile(argv[1], argv[2]);

    // now run pd
    for (foo = 0; foo < 2; foo++)  /* note: doesn't yet work the second time */
    {
        printf("running nogui for 1000 ticks...\n");

        runawhile(1);

        printf("starting gui..\n");
        if (libpd_start_gui("../../../pure-data/"))
            printf("gui startup failed\n");

        printf("running for 2000 more ticks...\n");
        runawhile(2);

        libpd_stop_gui();
    }

    printf("Closing and exiting\n");
    libpd_closefile(file);

    return 0;
}