109
130
slist_tpl<string> front_closekeys_ns;
110
131
slist_tpl<string> front_closekeys_ew;
114
133
// open crossings ...
115
for(int i=0; 1; i++ ) {
118
sprintf(buf, "openimage[ns][%i]", i);
120
if (str.size() <= 0) {
123
// ok, we have this direction
124
openkeys_ns.append(str);
126
for(int i=0; 1; i++ ) {
129
sprintf(buf, "openimage[ew][%i]", i);
131
if (str.size() <= 0) {
134
// ok, we have this direction
135
openkeys_ew.append(str);
137
if(openkeys_ns.get_count()==0 || openkeys_ew.get_count()==0) {
134
make_list(obj, openkeys_ns, "openimage[ns]");
135
make_list(obj, openkeys_ew, "openimage[ew]");
136
// these must exists!
137
if (openkeys_ns.empty() || openkeys_ew.empty()) {
138
138
printf("*** FATAL ***:\nMissing images (at least one openimage! (but %i and %i found)!)\n", openkeys_ns.get_count(), openkeys_ew.get_count());
141
// these must exists!
142
imagelist_writer_t::instance()->write_obj(fp, node, openkeys_ns);
143
imagelist_writer_t::instance()->write_obj(fp, node, openkeys_ew);
141
write_list(fp, node, openkeys_ns);
142
write_list(fp, node, openkeys_ew);
146
for(int i=0; 1; i++ ) {
149
sprintf(buf, "front_openimage[ns][%i]", i);
151
if (str.size() <= 0) {
154
// ok, we have this direction
155
front_openkeys_ns.append(str);
157
for(int i=0; 1; i++ ) {
160
sprintf(buf, "front_openimage[ew][%i]", i);
162
if (str.size() <= 0) {
165
// ok, we have this direction
166
front_openkeys_ew.append(str);
145
make_list(obj, front_openkeys_ns, "front_openimage[ns]");
146
make_list(obj, front_openkeys_ew, "front_openimage[ew]");
168
147
// the following lists are optional
169
if(front_openkeys_ns.get_count()>0) {
170
imagelist_writer_t::instance()->write_obj(fp, node, front_openkeys_ns);
173
// really empty list ...
174
xref_writer_t::instance()->write_obj(fp, node, obj_imagelist, "", false);
176
if(front_openkeys_ew.get_count()>0) {
177
imagelist_writer_t::instance()->write_obj(fp, node, front_openkeys_ew);
180
// really empty list ...
181
xref_writer_t::instance()->write_obj(fp, node, obj_imagelist, "", false);
148
write_list(fp, node, front_openkeys_ns);
149
write_list(fp, node, front_openkeys_ew);
184
151
// closed crossings ...
185
for(int i=0; 1; i++ ) {
188
sprintf(buf, "closedimage[ns][%i]", i);
190
if (str.size() <= 0) {
193
// ok, we have this direction
194
closekeys_ns.append(str);
196
for(int i=0; 1; i++ ) {
199
sprintf(buf, "closedimage[ew][%i]", i);
201
if (str.size() <= 0) {
204
// ok, we have this direction
205
closekeys_ew.append(str);
207
if(closekeys_ns.get_count()>0) {
208
imagelist_writer_t::instance()->write_obj(fp, node, closekeys_ns);
211
// really empty list ...
212
xref_writer_t::instance()->write_obj(fp, node, obj_imagelist, "", false);
214
if(closekeys_ew.get_count()>0) {
215
imagelist_writer_t::instance()->write_obj(fp, node, closekeys_ew);
218
// really empty list ...
219
xref_writer_t::instance()->write_obj(fp, node, obj_imagelist, "", false);
152
make_list(obj, closekeys_ns, "closedimage[ns]");
153
make_list(obj, closekeys_ew, "closedimage[ew]");
154
write_list(fp, node, closekeys_ns);
155
write_list(fp, node, closekeys_ew);
223
for(int i=0; 1; i++ ) {
226
sprintf(buf, "front_closedimage[ns][%i]", i);
228
if (str.size() <= 0) {
231
// ok, we have this direction
232
front_closekeys_ns.append(str);
234
for(int i=0; 1; i++ ) {
237
sprintf(buf, "front_closedimage[ew][%i]", i);
239
if (str.size() <= 0) {
242
// ok, we have this direction
243
front_closekeys_ew.append(str);
245
if(front_closekeys_ns.get_count()>0) {
246
imagelist_writer_t::instance()->write_obj(fp, node, front_closekeys_ns);
249
// really empty list ...
250
xref_writer_t::instance()->write_obj(fp, node, obj_imagelist, "", false);
252
if(front_closekeys_ew.get_count()>0) {
253
imagelist_writer_t::instance()->write_obj(fp, node, front_closekeys_ew);
256
// really empty list ...
257
xref_writer_t::instance()->write_obj(fp, node, obj_imagelist, "", false);
158
make_list(obj, front_closekeys_ns, "front_closedimage[ns]");
159
make_list(obj, front_closekeys_ew, "front_closedimage[ew]");
160
write_list(fp, node, front_closekeys_ns);
161
write_list(fp, node, front_closekeys_ew);