internal Port(Context context, Entity entity, IEnumerable <Signal> outputSignals) { _context = context; _iid = _context.GenerateInstanceId(); _entity = entity; _inputSignalSet = new SignalSet(entity.InputSignals.Length); _outputSignalSet = new SignalSet(outputSignals); _busSet = new BusSet(entity.Buses.Length); System.Diagnostics.Debug.Assert(_outputSignalSet.Count == entity.OutputSignals.Length); context.NotifyNewPortConstructed(this); _completelyConnected = true; for (int i = 0; i < _outputSignalSet.Count; i++) { if (_outputSignalSet[i] != null) { _outputSignalSet[i].DriveSignal(this, i); } else { _completelyConnected = false; } } _completelyConnected &= _inputSignalSet.Count == 0 && _busSet.Count == 0; for (int i = 0; i < _outputSignalSet.Count && _completelyConnected; i++) { _completelyConnected &= _outputSignalSet[i] != null; } }
internal Port(IEntity entity, IEnumerable <MathNet.Symbolics.Signal> outputSignals) { _entity = entity; _inputSignalSet = new SignalSet(entity.InputSignals.Length); _outputSignalSet = new SignalSet(outputSignals); _busSet = new BusSet(entity.Buses.Length); System.Diagnostics.Debug.Assert(_outputSignalSet.Count == entity.OutputSignals.Length); Service <IMediator> .Instance.NotifyNewPortCreated(this); _completelyConnected = true; for (int i = 0; i < _outputSignalSet.Count; i++) { if (_outputSignalSet[i] != null) { ((ISignal_Drive)_outputSignalSet[i]).DriveSignal(this, i); } else { _completelyConnected = false; } } _completelyConnected &= _inputSignalSet.Count == 0 && _busSet.Count == 0; for (int i = 0; i < _outputSignalSet.Count && _completelyConnected; i++) { _completelyConnected &= _outputSignalSet[i] != null; } }
public MathSystem() { _iid = Config.GenerateInstanceId(); _inputs = new SignalSet(); _outputs = new SignalSet(); _allSignals = new SignalSet(); _allBuses = new BusSet(); _allPorts = new PortSet(); }
public ConditionalCollectVisitor() { _signals = new SignalSet(); _ports = new PortSet(); _buses = new BusSet(); _signalMatch = DummySignalPredicate; _portMatch = DummyPortPredicate; _busMatch = DummyBusPredicate; }
public ConditionalCollectVisitor(Predicate<Signal> signalMatch, Predicate<Port> portMatch, Predicate<Bus> busMatch) { _signals = new SignalSet(); _ports = new PortSet(); _buses = new BusSet(); _signalMatch = signalMatch; _portMatch = portMatch; _busMatch = busMatch; }
public ConditionalCollectVisitor(Predicate <Signal> signalMatch, Predicate <Port> portMatch, Predicate <Bus> busMatch) { _signals = new SignalSet(); _ports = new PortSet(); _buses = new BusSet(); _signalMatch = signalMatch; _portMatch = portMatch; _busMatch = busMatch; }
public MathSystem(Context context) { if (context == null) { throw new ArgumentNullException("context"); } _context = context; _iid = _context.GenerateInstanceId(); _inputs = new SignalSet(); _outputs = new SignalSet(); _allSignals = new SignalSet(); _allBuses = new BusSet(); _allPorts = new PortSet(); }
internal Port(IEntity entity) { _entity = entity; _inputSignalSet = new SignalSet(entity.InputSignals.Length); _outputSignalSet = new SignalSet(entity.OutputSignals.Length); _busSet = new BusSet(entity.Buses.Length); _completelyConnected = _inputSignalSet.Count == 0 && _busSet.Count == 0; Service <IMediator> .Instance.NotifyNewPortCreated(this); for (int i = 0; i < _outputSignalSet.Count; i++) { _outputSignalSet[i] = new Signal(); ((ISignal_Drive)_outputSignalSet[i]).DriveSignal(this, i); } }
internal Port(IEntity entity) { _entity = entity; _inputSignalSet = new SignalSet(entity.InputSignals.Length); _outputSignalSet = new SignalSet(entity.OutputSignals.Length); _busSet = new BusSet(entity.Buses.Length); _completelyConnected = _inputSignalSet.Count == 0 && _busSet.Count == 0; Service<IMediator>.Instance.NotifyNewPortCreated(this); for(int i = 0; i < _outputSignalSet.Count; i++) { _outputSignalSet[i] = new Signal(); ((ISignal_Drive)_outputSignalSet[i]).DriveSignal(this, i); } }
internal Port(Context context, Entity entity) { _context = context; _iid = _context.GenerateInstanceId(); _entity = entity; _inputSignalSet = new SignalSet(entity.InputSignals.Length); _outputSignalSet = new SignalSet(entity.OutputSignals.Length); _busSet = new BusSet(entity.Buses.Length); _completelyConnected = _inputSignalSet.Count == 0 && _busSet.Count == 0; context.NotifyNewPortConstructed(this); for (int i = 0; i < _outputSignalSet.Count; i++) { _outputSignalSet[i] = new Signal(context); _outputSignalSet[i].DriveSignal(this, i); } }
internal Port(IEntity entity, IEnumerable<MathNet.Symbolics.Signal> outputSignals) { _entity = entity; _inputSignalSet = new SignalSet(entity.InputSignals.Length); _outputSignalSet = new SignalSet(outputSignals); _busSet = new BusSet(entity.Buses.Length); System.Diagnostics.Debug.Assert(_outputSignalSet.Count == entity.OutputSignals.Length); Service<IMediator>.Instance.NotifyNewPortCreated(this); _completelyConnected = true; for(int i = 0; i < _outputSignalSet.Count; i++) if(_outputSignalSet[i] != null) ((ISignal_Drive)_outputSignalSet[i]).DriveSignal(this, i); else _completelyConnected = false; _completelyConnected &= _inputSignalSet.Count == 0 && _busSet.Count == 0; for(int i = 0; i < _outputSignalSet.Count && _completelyConnected; i++) _completelyConnected &= _outputSignalSet[i] != null; }
private InstanceIdSet BuilderMapBuses(BusSet buses, Dictionary <Guid, Guid> busMappings) { return(buses.ConvertAllToInstanceIds(delegate(MathNet.Symbolics.Bus b) { return busMappings[b.InstanceId]; })); }
private BusSet MapBuses(InstanceIdSet buses) { return(BusSet.ConvertAllFromInstanceIds(buses, delegate(Guid id) { return _busMappings[id]; })); }
private InstanceIdSet MapBuses(BusSet buses, Dictionary <Guid, Guid> busMappings) { return(buses.ConvertAllToInstanceIds(delegate(Bus b) { return busMappings[b.InstanceId]; })); }
public CollectVisitor() { _signals = new SignalSet(); _ports = new PortSet(); _buses = new BusSet(); }
private InstanceIdSet BuilderMapBuses(BusSet buses, Dictionary<Guid, Guid> busMappings) { return buses.ConvertAllToInstanceIds(delegate(MathNet.Symbolics.Bus b) { return busMappings[b.InstanceId]; }); }