]> git.tdb.fi Git - r2c2.git/blobdiff - source/3d/vehicletype.h
Use generic ObjectTypes in Catalogue
[r2c2.git] / source / 3d / vehicletype.h
index b779fa4292445c184f8e432cc05ff759be51635a..02d110887a6b729f94f2930b1d86f0dbbf94e107 100644 (file)
@@ -4,20 +4,18 @@
 #include <msp/gl/mesh.h>
 #include <msp/gl/object.h>
 #include "libr2c2/vehicletype.h"
+#include "objecttype.h"
 
 namespace R2C2 {
 
-class Catalogue3D;
-
-class VehicleType3D
+class VehicleType3D: public ObjectType3D
 {
 private:
-       Catalogue3D &catalogue;
        const VehicleType &type;
        std::map<std::string, Msp::GL::Object *> objects;
        Msp::GL::Object *body_object;
        std::vector<Msp::GL::Object *> bogie_objects;
-       std::vector<std::vector<Msp::GL::Object *> > axle_objects;
+       std::vector<Msp::GL::Object *> axle_objects;
        std::vector<Msp::GL::Object *> rod_objects;
 
 public:
@@ -25,9 +23,8 @@ public:
        ~VehicleType3D();
 
        const Msp::GL::Object *get_body_object() const { return body_object; }
-       const Msp::GL::Object *get_fixed_axle_object(unsigned) const;
+       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;
        const Msp::GL::Object *get_rod_object(unsigned) const;
 private:
        Msp::GL::Object *get_object(const std::string &);