private:
void axle();
void bogie();
+ void function(unsigned, const std::string &);
void height(float);
void length(float);
void width(float);
private:
unsigned art_nr;
std::string name;
+ bool locomotive;
+ std::map<unsigned, std::string> functions;
float length;
float width;
float height;
public:
VehicleType(unsigned);
- virtual ~VehicleType() { } // XXX temporary
unsigned 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;
+ const std::map<unsigned, std::string> &get_functions() const { return functions; }
float get_length() const { return length; }
float get_width() const { return width; }
float get_height() const { return height; }