Пример #1
0
/**
*  @brief
*    Run the application
*/
int FirstGpgpu::run()
{
	// Create an instance of a renderer application on the C runtime stack
	// -> We only use this instance in order to create and manage the renderer instance easily in this example
	ApplicationRenderer applicationRenderer(mRendererName);

	// Get the renderer instance and ensure it's valid
	mRenderer = applicationRenderer.getRenderer();
	if (nullptr != mRenderer)
	{
		// Call initialization method
		onInitialization();

		// Let the application to it's job
		onDoJob();

		// Call de-initialization method
		onDeinitialization();

		// Release our renderer reference
		mRenderer = nullptr;
	}

	// Done, no error
	return 0;
}
Пример #2
0
int IApplication::run()
{
	// Call application implementation initialization method
	mApplicationImpl->onInitialization();
	onInitialization();

	// Main loop - Process OS messages (non-blocking) first
	while (!mApplicationImpl->processMessages())
	{
		// Update the application logic
		onUpdate();

		// Redraw request
		redraw();
	}

	// Call application implementation de-initialization method
	onDeinitialization();
	mApplicationImpl->onDeinitialization();

	// Done, no error
	return 0;
}
Пример #3
0
		/**
		*  @brief
		*    Destructor
		*/
		virtual ~ApplicationRenderer()
		{
			// Call application implementation de-initialization method
			onDeinitialization();
		}