using namespace std;
using namespace Msp;
-#include <iostream>
-
namespace Marklin {
Track::Track(const TrackType &t):
return trk;
}
-/*******************
-** Track::Loader
-*/
+void Track::save(list<DataFile::Statement> &st) const
+{
+ st.push_back((DataFile::Statement("position"), pos.x, pos.y, pos.z));
+ st.push_back((DataFile::Statement("rotation"), rot));
+ st.push_back((DataFile::Statement("slope"), slope));
+ if(turnout_id)
+ st.push_back((DataFile::Statement("turnout_id"), turnout_id));
+ if(sensor_id)
+ st.push_back((DataFile::Statement("sensor_id"), sensor_id));
+ if(flex)
+ st.push_back((DataFile::Statement("flex"), true));
+}
+
Track::Loader::Loader(Track &t):
- track(t)
+ DataFile::BasicLoader<Track>(t)
{
add("position", &Loader::position);
add("rotation", &Track::rot);
void Track::Loader::position(float x, float y, float z)
{
- track.pos=Point(x, y, z);
+ obj.pos=Point(x, y, z);
}
} // namespace Marklin