-/* $Id$
-
-This file is part of R²C²
-Copyright © 2010-2011 Mikkosoft Productions, Mikko Rasa
-Distributed under the GPL
-*/
-
-#ifndef LIBR2C23D_VEHICLETYPE_H_
-#define LIBR2C23D_VEHICLETYPE_H_
+#ifndef R2C2_3D_VEHICLETYPE_H_
+#define R2C2_3D_VEHICLETYPE_H_
#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:
~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 &);