X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2F3d%2Fvehicletype.h;h=faa34aca4e8e5a936273b5207399ba2246ef47cd;hb=283542ae424b94786652fbf0c67b883b63a8e7a0;hp=f734e50d9468d49de118b7505ba404028a63f679;hpb=e5cd9e4fbc577036a0385c985b6b65df8218d0a2;p=r2c2.git diff --git a/source/3d/vehicletype.h b/source/3d/vehicletype.h index f734e50..faa34ac 100644 --- a/source/3d/vehicletype.h +++ b/source/3d/vehicletype.h @@ -9,6 +9,7 @@ Distributed under the GPL #define LIBMARKLIN3D_VEHICLETYPE_H_ #include +#include #include "libmarklin/vehicletype.h" namespace Marklin { @@ -18,12 +19,21 @@ class Catalogue3D; class VehicleType3D { private: - Msp::GL::Mesh body_mesh; + std::map objects; + Msp::GL::Object *body_object; + std::vector bogie_objects; + std::vector > axle_objects; public: VehicleType3D(Catalogue3D &, const VehicleType &); + ~VehicleType3D(); - const Msp::GL::Mesh &get_body_mesh() const { return body_mesh; } + const Msp::GL::Object *get_body_object() const { return body_object; } + const Msp::GL::Object *get_axle_object(unsigned) const; + const Msp::GL::Object *get_bogie_object(unsigned) const; + const Msp::GL::Object *get_bogie_axle_object(unsigned, unsigned) const; +private: + Msp::GL::Object *get_object(const std::string &); }; } // namespace Marklin