-/* $Id$
-
-This file is part of R²C²
-Copyright © 2010-2011 Mikkosoft Productions, Mikko Rasa
-Distributed under the GPL
-*/
-
#ifndef R2C2_3D_CATALOGUE_H_
#define R2C2_3D_CATALOGUE_H_
namespace R2C2 {
+class SignalType3D;
class TrackType3D;
class VehicleType3D;
Catalogue &catalogue;
std::map<const TrackType *, TrackType3D *> tracks;
std::map<const VehicleType *, VehicleType3D *> vehicles;
+ std::map<const SignalType *, SignalType3D *> signals;
Msp::GL::Mesh endpoint_mesh;
public:
const Catalogue &get_catalogue() const { return catalogue; }
const TrackType3D &get_track(const TrackType &) const;
const VehicleType3D &get_vehicle(const VehicleType &) const;
+ const SignalType3D &get_signal(const SignalType &) const;
const Msp::GL::Mesh &get_endpoint_mesh() const { return endpoint_mesh; }
private:
void track_added(const TrackType &);
void vehicle_added(const VehicleType &);
+ void signal_added(const SignalType &);
void build_endpoint_mesh();
Msp::FS::Path locate_file(const std::string &);