From ac4abf5c6b8adb20eb712d849da8d872cc2749d9 Mon Sep 17 00:00:00 2001
From: Yoel <s73017@beuth-hochschule.de>
Date: Fri, 4 Sep 2020 14:32:10 +0200
Subject: [PATCH] Inclusion hierarchy fixed

---
 RayTracer/camera/Hit.h                 | 1 -
 RayTracer/material/DiffuseMaterial.cpp | 1 -
 RayTracer/material/DiffuseMaterial.h   | 2 --
 RayTracer/material/Material.h          | 1 -
 RayTracer/material/texture/Constant.h  | 1 -
 RayTracer/sampling/Image.h             | 1 -
 RayTracer/sampling/Scene.h             | 4 +---
 RayTracer/shape/Group.h                | 2 --
 RayTracer/shape/Shape.h                | 1 +
 RayTracer/tools/Mat4.cpp               | 4 ++++
 RayTracer/tools/Mat4.h                 | 4 ----
 RayTracer/tools/Threadpool.cpp         | 2 ++
 RayTracer/tools/Threadpool.h           | 2 --
 RayTracer/tools/Vec3.h                 | 1 -
 14 files changed, 8 insertions(+), 19 deletions(-)

diff --git a/RayTracer/camera/Hit.h b/RayTracer/camera/Hit.h
index 5ac61ef..43572f9 100644
--- a/RayTracer/camera/Hit.h
+++ b/RayTracer/camera/Hit.h
@@ -1,7 +1,6 @@
 #pragma once
 
 #include "../material/Material.h"
-#include "../tools/Vec3.h"
 #include "Ray.h"
 
 namespace cam {
diff --git a/RayTracer/material/DiffuseMaterial.cpp b/RayTracer/material/DiffuseMaterial.cpp
index 03eeac4..64eb1a0 100644
--- a/RayTracer/material/DiffuseMaterial.cpp
+++ b/RayTracer/material/DiffuseMaterial.cpp
@@ -1,6 +1,5 @@
 #include "DiffuseMaterial.h"
 
-#include "../tools/Vec3.h"
 #include "texture/Constant.h"
 
 namespace material {
diff --git a/RayTracer/material/DiffuseMaterial.h b/RayTracer/material/DiffuseMaterial.h
index 670c0cf..c4d2cac 100644
--- a/RayTracer/material/DiffuseMaterial.h
+++ b/RayTracer/material/DiffuseMaterial.h
@@ -1,8 +1,6 @@
 #pragma once
 
-#include "../sampling/Sampler.h"
 #include "Material.h"
-#include "texture/Constant.h"
 
 namespace material {
 class DiffuseMaterial : public Material {
diff --git a/RayTracer/material/Material.h b/RayTracer/material/Material.h
index 97599ed..18c11e0 100644
--- a/RayTracer/material/Material.h
+++ b/RayTracer/material/Material.h
@@ -3,7 +3,6 @@
 #include <random>
 
 #include "../sampling/Sampler.h"
-#include "../tools/Vec3.h"
 
 namespace material {
 
diff --git a/RayTracer/material/texture/Constant.h b/RayTracer/material/texture/Constant.h
index 59c3b32..d177e3c 100644
--- a/RayTracer/material/texture/Constant.h
+++ b/RayTracer/material/texture/Constant.h
@@ -1,7 +1,6 @@
 #pragma once
 
 #include "../../sampling/Sampler.h"
-#include "../../tools/Vec3.h"
 
 namespace material {
 class Constant : public util::Sampler {
diff --git a/RayTracer/sampling/Image.h b/RayTracer/sampling/Image.h
index 1e99f19..c23b1f1 100644
--- a/RayTracer/sampling/Image.h
+++ b/RayTracer/sampling/Image.h
@@ -3,7 +3,6 @@
 #include <vector>
 
 #include "../camera/CamObs.h"
-#include "../tools/Vec3.h"
 #include "Sampler.h"
 
 namespace util {
diff --git a/RayTracer/sampling/Scene.h b/RayTracer/sampling/Scene.h
index ef8b2dc..faa93b9 100644
--- a/RayTracer/sampling/Scene.h
+++ b/RayTracer/sampling/Scene.h
@@ -1,9 +1,7 @@
 #pragma once
 
 #include "../camera/CamObs.h"
-#include "../camera/Ray.h"
-#include "../shape/Group.h"
-#include "../tools/Vec3.h"
+#include "../shape/Shape.h"
 #include "Sampler.h"
 
 class Scene : public util::Sampler {
diff --git a/RayTracer/shape/Group.h b/RayTracer/shape/Group.h
index 589e3f8..89c5877 100644
--- a/RayTracer/shape/Group.h
+++ b/RayTracer/shape/Group.h
@@ -2,8 +2,6 @@
 
 #include <vector>
 
-#include "../camera/Hit.h"
-#include "../camera/Ray.h"
 #include "../tools/Mat4.h"
 #include "../tools/Transformation.h"
 #include "Shape.h"
diff --git a/RayTracer/shape/Shape.h b/RayTracer/shape/Shape.h
index d59e2e6..ff92bbf 100644
--- a/RayTracer/shape/Shape.h
+++ b/RayTracer/shape/Shape.h
@@ -2,6 +2,7 @@
 
 #include "../camera/Hit.h"
 #include "../camera/Ray.h"
+#include "../tools/AxisAlignedBoundingBox.h"
 
 namespace shapes {
 class Shape {
diff --git a/RayTracer/tools/Mat4.cpp b/RayTracer/tools/Mat4.cpp
index 5c8f09e..b5ea74e 100644
--- a/RayTracer/tools/Mat4.cpp
+++ b/RayTracer/tools/Mat4.cpp
@@ -1,5 +1,9 @@
 #include "Mat4.h"
 
+#define _USE_MATH_DEFINES
+
+#include <math.h>
+
 namespace util {
 // Constructor
 Mat4::Mat4(std::array<float, 16> arr) : arr(arr){};
diff --git a/RayTracer/tools/Mat4.h b/RayTracer/tools/Mat4.h
index 7fe1385..0d9c05b 100644
--- a/RayTracer/tools/Mat4.h
+++ b/RayTracer/tools/Mat4.h
@@ -1,9 +1,5 @@
 #pragma once
 
-#define _USE_MATH_DEFINES
-
-#include <math.h>
-
 #include <array>
 
 #include "Vec3.h"
diff --git a/RayTracer/tools/Threadpool.cpp b/RayTracer/tools/Threadpool.cpp
index c06b7c2..1f017e1 100644
--- a/RayTracer/tools/Threadpool.cpp
+++ b/RayTracer/tools/Threadpool.cpp
@@ -1,5 +1,7 @@
 #include "Threadpool.h"
 
+#include <thread>
+
 namespace util {
 
 Threadpool::Threadpool(size_t n) : alive(true) {
diff --git a/RayTracer/tools/Threadpool.h b/RayTracer/tools/Threadpool.h
index d0fdafa..71afde1 100644
--- a/RayTracer/tools/Threadpool.h
+++ b/RayTracer/tools/Threadpool.h
@@ -2,10 +2,8 @@
 
 #include <condition_variable>
 #include <functional>
-#include <iostream>
 #include <mutex>
 #include <queue>
-#include <thread>
 
 namespace util {
 
diff --git a/RayTracer/tools/Vec3.h b/RayTracer/tools/Vec3.h
index 4653f12..f469b3d 100644
--- a/RayTracer/tools/Vec3.h
+++ b/RayTracer/tools/Vec3.h
@@ -1,7 +1,6 @@
 #pragma once
 
 #include <array>
-#include <cassert>
 #include <iostream>
 
 namespace util {
-- 
GitLab