]> git.tdb.fi Git - r2c2.git/blob - source/libr2c2/signaltype.cpp
Rework article numbers
[r2c2.git] / source / libr2c2 / signaltype.cpp
1 #include <msp/geometry/circle.h>
2 #include <msp/geometry/extrudedshape.h>
3 #include <msp/geometry/transformedshape.h>
4 #include "signaltype.h"
5
6 using namespace std;
7 using namespace Msp;
8
9 namespace R2C2 {
10
11 SignalType::SignalType()
12 {
13         shape = new Geometry::TransformedShape<float, 3>(
14                 Geometry::ExtrudedShape<float, 3>(Geometry::Circle<float>(0.01), 0.12),
15                 Transform::translation(Vector(0, -0.035, 0.06)));
16 }
17
18
19 SignalType::Loader::Loader(SignalType &st):
20         DataFile::DerivedObjectLoader<SignalType, ObjectType::Loader>(st)
21 {
22         add("indication",  &Loader::indication);
23         add("object",      &SignalType::object);
24 }
25
26 void SignalType::Loader::indication(const string &n)
27 {
28         Indication ind;
29         ind.name = n;
30         load_sub(ind);
31         obj.indications.push_back(ind);
32 }
33
34
35 SignalType::Indication::Loader::Loader(Indication &i):
36         ObjectLoader<Indication>(i)
37 {
38         add("aspect",      &Indication::aspect);
39         add("free_blocks", &Indication::free_blocks);
40 }
41
42 } // namespace R2C2