Cleanage.
[GPU.git] / WCudaMSE / Student_Cuda_Image / src / cpp / core / 04_RayTracing / moo / host / RayTracing.h
1 #ifndef RAY_TRACING_H
2 #define RAY_TRACING_H
3
4 #include "cudaTools.h"
5 #include "Animable_I.h"
6 #include "MathTools.h"
7 #include "AleaTools.h"
8
9 #include "Sphere.h"
10
11 class RayTracing : public Animable_I
12 {
13 public:
14 RayTracing(int w, int h);
15 ~RayTracing();
16
17 void runGPU(uchar4* ptrDevPixels) /*override*/;
18 void animationStep() /*override*/;
19
20 int getW() /*override*/;
21 int getH() /*override*/;
22
23 float getT() /*override*/;
24
25 std::string getTitle(void) /*override*/;
26
27 private:
28 Sphere* createSpheres(int n);
29
30 AleaTools alea;
31
32 float t;
33
34 const int w;
35 const int h;
36
37 const dim3 dg;
38 const dim3 db;
39
40 const std::string title;
41 };
42
43 #endif