protected override void checkTransmissorType(ITransmissor transmissor) { if (!(transmissor is IClassicalTransmissor)) { throw new ExceptionClassicalChannel(); } }
private void DoOnTransmit(ITransmissor receiver, IInformationState state) { if (OnTransmit != null) { OnTransmit(this, state); }; }
protected void PropagateOnTransmit(ITransmissor transmissor, IInformationState state) { if (OnTransmit != null) { OnTransmit(this, state); }; if (state is IQuantumState) { if (OnQuantumTransmit != null) { OnQuantumTransmit(this, (IQuantumState)state); }; } }
protected void PropagateOnTransmit(ITransmissor transmissor, IInformationState state) { if (OnTransmit != null) { OnTransmit(this, state); }; if (state is IClassicalState) { if (OnClassicalTransmit != null) { OnClassicalTransmit(this, (IClassicalState)state); }; } }
protected void internalAddTransmissor(ITransmissor transmissor) { _transmissors.Add(transmissor); }
protected void internalRemoveTransmissor(ITransmissor transmissor) { _transmissors.Remove(transmissor); }
protected virtual void checkTransmissorType(ITransmissor transmissor) { }
// TRANSMIT public bool Transmit(ITransmissor transmissor, IInformationState state) { if (_transmissors.Contains(transmissor)) { performDelay(state); performNoise(state); return Difussion(state); } else { throw new ExceptionChannel(); } }
public void RemoveTransmissor(ITransmissor transmissor) { checkTransmissorType(transmissor); internalRemoveTransmissor(transmissor); }
public void AddTransmissor(ITransmissor transmissor) { checkTransmissorType(transmissor); internalAddTransmissor(transmissor); }
protected override void checkTransmissorType(ITransmissor transmissor) { if (!(transmissor is IQuantumTransmissor)) { throw new ExceptionQuantumChannel(); } }