- const map<unsigned, TrackType *> &trks = catalogue.get_tracks();
- for(map<unsigned, TrackType *>::const_iterator i=trks.begin(); i!=trks.end(); ++i)
- tracks[i->second] = new TrackType3D(*this, *i->second);
+ add_creator<GL::Material>(&Catalogue3D::create<GL::Material>);
+ add_creator<GL::Mesh>(&Catalogue3D::create<GL::Mesh>);
+ add_creator<GL::Object>(&Catalogue3D::create2<GL::Object>);
+ add_creator<GL::Program>(&Catalogue3D::create<GL::Program>);
+ add_creator<GL::Technique>(&Catalogue3D::create2<GL::Technique>);
+
+ catalogue.signal_track_added.connect(sigc::mem_fun(this, &Catalogue3D::track_added));
+ catalogue.signal_vehicle_added.connect(sigc::mem_fun(this, &Catalogue3D::vehicle_added));