-#ifndef MSP_GL_CLIP_H_
-#define MSP_GL_CLIP_H_
+#ifndef MSP_GL_CLIPPLANE_H_
+#define MSP_GL_CLIPPLANE_H_
#include "vector.h"
namespace Msp {
namespace GL {
-class Matrix;
class ProgramData;
class ClipPlane
{
private:
- Vector4 eq;
+ Vector4 eq = { 0.0f, 0.0f, 0.0f, 1.0f };
+ unsigned generation = 0;
public:
- ClipPlane();
+ ClipPlane() = default;
ClipPlane(const Vector4 &);
ClipPlane(const Vector3 &, const Vector3 &);
void set_equation(const Vector4 &);
void set_plane(const Vector3 &, const Vector3 &);
- void update_shader_data(ProgramData &, const Matrix &, unsigned) const;
+ void update_shader_data(ProgramData &, unsigned) const;
+
+ unsigned get_generation() const { return generation; }
};
} // namespace GL