cloudy-raytracer/camera/camera.h

23 lines
417 B
C++

#ifndef CAMERA_H
#define CAMERA_H
#include "common/ray.h"
class Camera {
public:
// Constructor / Destructor
Camera() = default;
virtual ~Camera() = default;
// Camera functions
virtual Ray createRay(float x, float y) const = 0;
// Setter methods
virtual Vector3d getPosition() const = 0;
virtual Vector3d getRightDirection() const = 0;
virtual Vector3d getUpDirection() const = 0;
};
#endif