diff options
author | Konstantin Käfer <mail@kkaefer.com> | 2019-02-27 13:59:49 +0100 |
---|---|---|
committer | Konstantin Käfer <mail@kkaefer.com> | 2019-03-01 09:33:37 +0100 |
commit | cd06b550dd95d6690daf0a34cd9733ae581ed5b9 (patch) | |
tree | 437a6ebb3d158a4ad00b813e95b66fafb749915f /src/mbgl/programs/collision_box_program.hpp | |
parent | 55c7b86053816e74c3fd3c0595c1fa053970f959 (diff) | |
download | qtlocation-mapboxgl-cd06b550dd95d6690daf0a34cd9733ae581ed5b9.tar.gz |
[core] disallow subtyping of gl::Attributes<> and use type aliases instead
Diffstat (limited to 'src/mbgl/programs/collision_box_program.hpp')
-rw-r--r-- | src/mbgl/programs/collision_box_program.hpp | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/src/mbgl/programs/collision_box_program.hpp b/src/mbgl/programs/collision_box_program.hpp index 9b3d82cd16..1a34ebbb11 100644 --- a/src/mbgl/programs/collision_box_program.hpp +++ b/src/mbgl/programs/collision_box_program.hpp @@ -17,13 +17,7 @@ using CollisionBoxLayoutAttributes = gl::Attributes< attributes::a_anchor_pos, attributes::a_extrude>; -struct CollisionBoxDynamicAttributes : gl::Attributes<attributes::a_placed> { - static Vertex vertex(bool placed, bool notUsed) { - return Vertex { - {{ static_cast<uint8_t>(placed), static_cast<uint8_t>(notUsed) }} - }; - } -}; +using CollisionBoxDynamicAttributes = gl::Attributes<attributes::a_placed>; class CollisionBoxProgram : public Program< shaders::collision_box, @@ -38,8 +32,8 @@ class CollisionBoxProgram : public Program< public: using Program::Program; - static CollisionBoxLayoutAttributes::Vertex vertex(Point<float> a, Point<float> anchor, Point<float> o) { - return CollisionBoxLayoutAttributes::Vertex { + static CollisionBoxLayoutAttributes::Vertex layoutVertex(Point<float> a, Point<float> anchor, Point<float> o) { + return { {{ static_cast<int16_t>(a.x), static_cast<int16_t>(a.y) @@ -55,6 +49,12 @@ public: }; } + static CollisionBoxDynamicAttributes::Vertex dynamicVertex(bool placed, bool notUsed) { + return { + {{ static_cast<uint8_t>(placed), static_cast<uint8_t>(notUsed) }} + }; + } + template <class DrawMode> void draw(gl::Context& context, DrawMode drawMode, @@ -120,7 +120,7 @@ public: using Program::Program; static CollisionBoxLayoutAttributes::Vertex vertex(Point<float> a, Point<float> anchor, Point<float> o) { - return CollisionBoxLayoutAttributes::Vertex { + return { {{ static_cast<int16_t>(a.x), static_cast<int16_t>(a.y) |