]> git.tdb.fi Git - r2c2.git/blobdiff - source/3d/endpoint.h
Use GL::Renderables and a Pipeline for rendering
[r2c2.git] / source / 3d / endpoint.h
diff --git a/source/3d/endpoint.h b/source/3d/endpoint.h
new file mode 100644 (file)
index 0000000..0abc526
--- /dev/null
@@ -0,0 +1,35 @@
+/* $Id$
+
+This file is part of the MSP Märklin suite
+Copyright © 2010 Mikkosoft Productions, Mikko Rasa
+Distributed under the GPL
+*/
+
+#ifndef MARKLIN3D_ENDPOINT_H_
+#define MARKLIN3D_ENDPOINT_H_
+
+#include <msp/gl/mesh.h>
+#include <msp/gl/renderable.h>
+#include "libmarklin/track.h"
+
+namespace Marklin {
+
+class Track3D;
+
+class Endpoint3D: public Msp::GL::Renderable
+{
+private:
+       const Track3D &track;
+       unsigned index;
+       const Msp::GL::Mesh &mesh;
+
+public:
+       Endpoint3D(const Track3D &, unsigned);
+       ~Endpoint3D();
+
+       virtual void render(const Msp::GL::Tag &) const;
+};
+
+} // namespace Marklin
+
+#endif