summaryrefslogtreecommitdiff
path: root/blocks/Xcos/ports/ExplicitInputPort.py
blob: 39ead3f0a5a768da0d275aac93549b0dc54f8ba2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
from common.AAAAAA import *


def ExplicitInputPort(outroot, attribid, parentattribid, ordering, geometry,
                      addDataLines=False, value='', forSplitBlock=False,
                      style=None):
    func_name = 'ExplicitInputPort'
    if style is None:
        style = func_name

    if forSplitBlock:
        outnode = addNode(outroot, func_name, **{'id': attribid},
                          parent=parentattribid, ordering=ordering,
                          initialState="-1.0",
                          style=style, value='')
    elif addDataLines:
        outnode = addNode(outroot, func_name, **{'id': attribid},
                          parent=parentattribid, ordering=ordering,
                          dataType='REAL_MATRIX', dataColumns=1, dataLines=1,
                          style=style, value=value)
    else:
        outnode = addNode(outroot, func_name, **{'id': attribid},
                          parent=parentattribid, ordering=ordering,
                          dataType='REAL_MATRIX', dataColumns=1, dataLines=1,
                          initialState="-1.0", style=style, value=value)

    return outnode


def addExplicitInputPortForSplit(outroot, splitBlock, sourceVertex, targetVertex,
                                 sourceType, targetType, inputCount,
                                 outputCount, nextAttrib, nextAttribForSplit, waypoints):
    inputCount += 1
    geometry = {}
    geometry['width'] = 8
    geometry['height'] = 8
    geometry['x'] = -8
    geometry['y'] = -4
    ExplicitInputPort(outroot, nextAttrib, splitBlock, inputCount, geometry, forSplitBlock=True)
    nextAttrib += 1
    nextAttribForSplit += 1
    return (inputCount, outputCount, nextAttrib, nextAttribForSplit)