2 * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3 * Copyright (C) 2014-2014 - Scilab Enterprises - Clement DAVID
5 * This file must be used under the terms of the CeCILL.
6 * This source file is licensed as described in the file COPYING, which
7 * you should have received as part of this distribution. The terms
8 * are also available at
9 * http://www.cecill.info/licences/Licence_CeCILL_V2.1-en.txt
17 #include "utilities.hxx"
19 #include "model/BaseObject.hxx"
20 #include "model/Annotation.hxx"
21 #include "model/Diagram.hxx"
22 #include "model/Block.hxx"
23 #include "model/Link.hxx"
24 #include "model/Port.hxx"
26 namespace org_scilab_modules_scicos
29 update_status_t Model::setObjectProperty(ScicosID uid, kind_t k, object_properties_t p, double v)
34 model::Annotation* o = static_cast<model::Annotation*>(getObject(uid));
43 model::Block* o = static_cast<model::Block*>(getObject(uid));
50 else if (k == DIAGRAM)
52 model::Diagram* o = static_cast<model::Diagram*>(getObject(uid));
61 model::Link* o = static_cast<model::Link*>(getObject(uid));
70 model::Port* o = static_cast<model::Port*>(getObject(uid));
74 return o->setFiring(v);
82 update_status_t Model::setObjectProperty(ScicosID uid, kind_t k, object_properties_t p, int v)
87 model::Annotation* o = static_cast<model::Annotation*>(getObject(uid));
96 model::Block* o = static_cast<model::Block*>(getObject(uid));
99 case SIM_FUNCTION_API:
100 return o->setSimFunctionApi(v);
102 return o->setSimBlocktype(v);
104 return o->setNZcross(v);
106 return o->setNMode(v);
111 else if (k == DIAGRAM)
113 model::Diagram* o = static_cast<model::Diagram*>(getObject(uid));
122 model::Link* o = static_cast<model::Link*>(getObject(uid));
126 return o->setColor(v);
128 return o->setKind(v);
135 model::Port* o = static_cast<model::Port*>(getObject(uid));
139 return o->setKind(v);
147 update_status_t Model::setObjectProperty(ScicosID uid, kind_t k, object_properties_t p, bool v)
152 model::Annotation* o = static_cast<model::Annotation*>(getObject(uid));
161 model::Block* o = static_cast<model::Block*>(getObject(uid));
168 else if (k == DIAGRAM)
170 model::Diagram* o = static_cast<model::Diagram*>(getObject(uid));
179 model::Link* o = static_cast<model::Link*>(getObject(uid));
188 model::Port* o = static_cast<model::Port*>(getObject(uid));
192 return o->setImplicit(v);
200 update_status_t Model::setObjectProperty(ScicosID uid, kind_t k, object_properties_t p,
206 model::Annotation* o = static_cast<model::Annotation*>(getObject(uid));
215 model::Block* o = static_cast<model::Block*>(getObject(uid));
222 else if (k == DIAGRAM)
224 model::Diagram* o = static_cast<model::Diagram*>(getObject(uid));
233 model::Link* o = static_cast<model::Link*>(getObject(uid));
237 return o->setSourcePort(v);
238 case DESTINATION_PORT:
239 return o->setDestinationPort(v);
246 model::Port* o = static_cast<model::Port*>(getObject(uid));
250 return o->setSourceBlock(v);
251 case CONNECTED_SIGNALS:
252 return o->setConnectedSignals(std::vector<ScicosID> (1, v));
260 update_status_t Model::setObjectProperty(ScicosID uid, kind_t k, object_properties_t p,
266 model::Annotation* o = static_cast<model::Annotation*>(getObject(uid));
275 model::Block* o = static_cast<model::Block*>(getObject(uid));
278 case INTERFACE_FUNCTION:
279 return o->setInterfaceFunction(v);
280 case SIM_FUNCTION_NAME:
281 return o->setSimFunctionName(v);
283 return o->setStyle(v);
285 return o->setLabel(v);
292 else if (k == DIAGRAM)
294 model::Diagram* o = static_cast<model::Diagram*>(getObject(uid));
298 return o->setTitle(v);
300 return o->setPath(v);
307 model::Link* o = static_cast<model::Link*>(getObject(uid));
311 return o->setLabel(v);
318 model::Port* o = static_cast<model::Port*>(getObject(uid));
322 return o->setStyle(v);
324 return o->setLabel(v);
332 update_status_t Model::setObjectProperty(ScicosID uid, kind_t k, object_properties_t p, const std::vector<double>& v)
337 model::Annotation* o = static_cast<model::Annotation*>(getObject(uid));
341 return o->setGeometry(v);
348 model::Block* o = static_cast<model::Block*>(getObject(uid));
352 return o->setGeometry(v);
354 return o->setAngle(v);
356 return o->setState(v);
358 return o->setDState(v);
360 return o->setRpar(v);
365 else if (k == DIAGRAM)
367 model::Diagram* o = static_cast<model::Diagram*>(getObject(uid));
371 return o->setProperties(v);
378 model::Link* o = static_cast<model::Link*>(getObject(uid));
382 return o->setControlPoints(v);
384 return o->setThick(v);
391 model::Port* o = static_cast<model::Port*>(getObject(uid));
401 update_status_t Model::setObjectProperty(ScicosID uid, kind_t k, object_properties_t p, const std::vector<int>& v)
406 model::Annotation* o = static_cast<model::Annotation*>(getObject(uid));
415 model::Block* o = static_cast<model::Block*>(getObject(uid));
419 return o->setSimDepUT(v);
421 return o->setIpar(v);
426 else if (k == DIAGRAM)
428 model::Diagram* o = static_cast<model::Diagram*>(getObject(uid));
437 model::Link* o = static_cast<model::Link*>(getObject(uid));
446 model::Port* o = static_cast<model::Port*>(getObject(uid));
450 return o->setDataType(this, v);
458 update_status_t Model::setObjectProperty(ScicosID uid, kind_t k, object_properties_t p, const std::vector<std::string>& v)
463 model::Annotation* o = static_cast<model::Annotation*>(getObject(uid));
472 model::Block* o = static_cast<model::Block*>(getObject(uid));
476 return o->setExprs(v);
481 else if (k == DIAGRAM)
483 model::Diagram* o = static_cast<model::Diagram*>(getObject(uid));
487 return o->setContext(v);
494 model::Link* o = static_cast<model::Link*>(getObject(uid));
503 model::Port* o = static_cast<model::Port*>(getObject(uid));
513 update_status_t Model::setObjectProperty(ScicosID uid, kind_t k, object_properties_t p, const std::vector<ScicosID>& v)
518 model::Annotation* o = static_cast<model::Annotation*>(getObject(uid));
527 model::Block* o = static_cast<model::Block*>(getObject(uid));
537 return o->setEout(v);
542 else if (k == DIAGRAM)
544 model::Diagram* o = static_cast<model::Diagram*>(getObject(uid));
553 model::Link* o = static_cast<model::Link*>(getObject(uid));
562 model::Port* o = static_cast<model::Port*>(getObject(uid));
565 case CONNECTED_SIGNALS:
566 return o->setConnectedSignals(v);
574 } /* namespace org_scilab_modules_scicos */