/* $Id$
This file is part of R²C²
-Copyright © 2010 Mikkosoft Productions, Mikko Rasa
+Copyright © 2010-2011 Mikkosoft Productions, Mikko Rasa
Distributed under the GPL
*/
namespace R2C2 {
-VehicleType3D::VehicleType3D(const Catalogue3D &c, const VehicleType &t):
+VehicleType3D::VehicleType3D(Catalogue3D &c, const VehicleType &t):
catalogue(c),
type(t),
body_object(0),
{
body_object = get_object(type.get_object());
- const vector<VehicleType::Axle> &axles = type.get_axles();
+ const vector<VehicleType::Axle> &axles = type.get_fixed_axles();
for(vector<VehicleType::Axle>::const_iterator i=axles.begin(); i!=axles.end(); ++i)
axle_objects[0].push_back(get_object(i->object));
delete i->second;
}
-const GL::Object *VehicleType3D::get_axle_object(unsigned i) const
+const GL::Object *VehicleType3D::get_fixed_axle_object(unsigned i) const
{
if(i>=axle_objects[0].size())
throw InvalidParameterValue("Axle index out of range");
}
}
else
- {
- ptr = new GL::Object;
- DataFile::load(*ptr, name);
- }
+ return catalogue.get<GL::Object>(name);
}
return ptr;
}