31 lines
893 B
C++
31 lines
893 B
C++
#pragma once
|
|
#include "helper.hpp"
|
|
#include "distribution.hpp"
|
|
|
|
|
|
|
|
class ApplicationIntegrator: public Application {
|
|
public:
|
|
ApplicationIntegrator(int argc, char** argv, const std::string& name);
|
|
|
|
virtual ~ApplicationIntegrator() = default;
|
|
|
|
|
|
protected:
|
|
virtual void render(int* pixels, int width, int height, float time, const ISPCCamera& camera) override;
|
|
virtual void drawGUI() override;
|
|
virtual void resetRender() override;
|
|
|
|
|
|
bool bMetropolis = false;
|
|
|
|
|
|
void mltRender(int* pixels, int width, int height, float time, const ISPCCamera& camera);
|
|
|
|
void mcRender(int* pixels, int width, int height, float time, const ISPCCamera& camera);
|
|
|
|
/* renders a single screen tile */
|
|
void mcRenderTile(int taskIndex, int threadIndex, int* pixels, const unsigned int width,
|
|
const unsigned int height, const float time, const ISPCCamera& camera, const int numTilesX,
|
|
const int numTilesY);
|
|
};
|