Пример #1
0
    public Controller(dzn.Locator locator, String name = "", dzn.Meta parent = null) : base(locator, name, parent)
    {
        this.dzn_runtime.infos[this].flushes = true;
        this.out_ia = null;
        this.ia     = new iCommand();
        this.ia.dzn_meta.provides.name      = "ia";
        this.ia.dzn_meta.provides.meta      = this.dzn_meta;
        this.ia.dzn_meta.provides.component = this;
        this.iu = new iUnity();
        this.iu.dzn_meta.requires.name      = "iu";
        this.iu.dzn_meta.requires.component = this;
        this.iu.dzn_meta.requires.meta      = this.dzn_meta;

        this.dzn_meta.requires = new List <dzn.port.Meta> {
            this.iu.dzn_meta,
        };
        this.dzn_meta.children        = new List <dzn.Meta> {
        };
        this.dzn_meta.ports_connected = new List <Action>
        {
            ia.check_bindings,
            iu.check_bindings,
        };

        this.ia.inport.start = () => { dzn.Runtime.callIn(this, () => { ia_start(); }, this.ia.dzn_meta, "start"); };

        this.iu.outport.wallHit = () => { dzn.Runtime.callOut(this, () => { iu_wallHit(); }, this.iu.dzn_meta, "wallHit"); };
    }