/// <summary> /// Присоединить пины. /// Выполняет базовые проверки при подключении. /// </summary> /// <param name="pin"></param> public virtual void Connect(Pin pin) { Type this_data_type = this.GetType().GetGenericArguments()[0]; Type pin_data_type = pin.GetType().GetGenericArguments()[0]; if (this_data_type != pin_data_type) throw new ConnectException("Pins transmitted different data types"); }
/// <summary> /// Проверяет соединены ли пины между собой /// </summary> /// <param name="pin"></param> /// <returns></returns> public abstract bool Connected(Pin pin);