#define LIBMARKLIN_VEHICLETYPE_H_
#include <msp/datafile/objectloader.h>
+#include "articlenumber.h"
namespace Marklin {
float position;
float wheel_dia;
bool powered;
+ std::string object;
Axle();
};
};
private:
- unsigned art_nr;
+ ArticleNumber art_nr;
std::string name;
bool locomotive;
std::map<unsigned, std::string> functions;
std::string object;
public:
- VehicleType(unsigned);
+ VehicleType(const ArticleNumber &);
- unsigned get_article_number() const { return art_nr; }
+ const ArticleNumber &get_article_number() const { return art_nr; }
const std::string &get_name() const { return name; }
bool is_locomotive() const { return locomotive; }
unsigned get_max_function() const;
float get_height() const { return height; }
const std::vector<Axle> &get_axles() const { return axles; }
const std::vector<Bogie> &get_bogies() const { return bogies; }
+ float get_front_axle_offset() const;
+ float get_back_axle_offset() const;
const std::string &get_object() const { return object; }
};