Beispiel #1
0
void CLGLRayCast::trueUpdate(){
   if (!m_clInitialized)
        return;
   if (!m_kernelCompiled){
       ChangeSource(m_source_str);
       ChangeKernel(m_kernel_str);
       m_kernelCompiled = true;
       return;
   }

    cl::NDRange global(width, height);
    cl::NDRange local(1,1);
   // cl::KernelFunctor kernel = m_kernel.bind(m_queue, global, local);

    glFinish();

    cl_int err0 = m_queue.enqueueAcquireGLObjects(&m_gl_mem_objects);

    //kernel(*m_canvas);
    cl_int err1 = m_kernel.setArg(0, *m_canvas);

    Update();

    cl_int err2 = m_queue.enqueueNDRangeKernel(m_kernel, cl::NullRange, global, local);


    m_queue.finish();
    cl_int err3 = m_queue.enqueueReleaseGLObjects(&m_gl_mem_objects);

    FullScreenTexture(m_canvas_tex);

}
static int on_source_leave(GtkWidget *widget, gpointer *data)
{
	if (source_modified) {
		ChangeSource();
	}
	return FALSE;
}
static bool ValidateAndSave(void)
{
	// if source has been modified
	if (source_modified) {
		// validate it
		ChangeSource();

		// can't validate
		if (source_modified) {
			return false;
		}
	}

	// copy new values to config

	MyConfig->SetStringValue(CONFIG_AUDIO_SOURCE_TYPE,
		source_type);

	MyConfig->SetStringValue(CONFIG_AUDIO_SOURCE_NAME,
		gtk_entry_get_text(GTK_ENTRY(source_entry)));

	MyConfig->UpdateFileHistory(
		gtk_entry_get_text(GTK_ENTRY(source_entry)));

	if (MyConfig->m_audioCapabilities != pAudioCaps) {
		delete MyConfig->m_audioCapabilities;
		MyConfig->m_audioCapabilities = pAudioCaps;
	}

	MyConfig->SetStringValue(CONFIG_AUDIO_INPUT_NAME,
		inputValues[inputIndex]);

	MyConfig->SetIntegerValue(CONFIG_AUDIO_SOURCE_TRACK,
		trackValues ? trackValues[trackIndex] : 0);

	MyConfig->SetIntegerValue(CONFIG_AUDIO_CHANNELS, 
		channelValues[channelIndex]);

	audio_encoder_table_t *aenct;
	
	aenct = audio_encoder_table[encodingIndex];
	MyConfig->SetStringValue(CONFIG_AUDIO_ENCODING, 
				 aenct->audio_encoding);
	MyConfig->SetStringValue(CONFIG_AUDIO_ENCODER, 
				 aenct->audio_encoder);

	MyConfig->SetIntegerValue(CONFIG_AUDIO_SAMPLE_RATE, 
		samplingRateValues[samplingRateIndex]);

	MyConfig->SetIntegerValue(CONFIG_AUDIO_BIT_RATE,
		bitRateValues[bitRateIndex]);

	MyConfig->Update();

	DisplayAudioSettings();  // display settings in main window
	DisplayStatusSettings();  

	return true;
}
static void on_source_list_changed(GtkWidget *widget, gpointer *data)
{
	if (widget == source_list) {
		ChangeSource();
	}
}