public DigitalChannel this[DigitalChannelsEnum index] { get { return(_channels[(int)index]); } }
public DigitalChannel(DigitalChannelsEnum Channel, ref AgilentU254x Driver) { int width = 0; switch (Channel) { case DigitalChannelsEnum.DIOA: { _channelName = ChannelNamesEnum.DIOA; width = 8; } break; case DigitalChannelsEnum.DIOB: { _channelName = ChannelNamesEnum.DIOB; width = 8; } break; case DigitalChannelsEnum.DIOC: { _channelName = ChannelNamesEnum.DIOC; width = 4; } break; case DigitalChannelsEnum.DIOD: { _channelName = ChannelNamesEnum.DIOD; width = 4; } break; default: throw new ArgumentException(); } _driver = Driver; var initDirection = AgilentU254xDigitalChannelDirectionEnum.AgilentU254xDigitalChannelDirectionOut; _digitalChannel = Driver.Digital.Channels.get_Item(_channelName); _digitalChannel.Direction = initDirection; //Marshal.ReleaseComObject(initDirection); _bitArray = new DigitalBit[width]; for (int i = 0; i < width; i++) { _bitArray[i] = new DigitalBit(this, i); } }
public DigitalChannel(DigitalChannelsEnum Channel, AgilentU254xClass Driver) { int width = 0; switch (Channel) { case DigitalChannelsEnum.DIOA: { _channelName = ChannelNamesEnum.DIOA; width = 8; } break; case DigitalChannelsEnum.DIOB: { _channelName = ChannelNamesEnum.DIOB; width = 8; } break; case DigitalChannelsEnum.DIOC: { _channelName = ChannelNamesEnum.DIOC; width = 4; } break; case DigitalChannelsEnum.DIOD: { _channelName = ChannelNamesEnum.DIOD; width = 4; } break; default: throw new ArgumentException(); } _driver = Driver; Driver.Digital.Channels.get_Item(_channelName).Direction = AgilentU254xDigitalChannelDirectionEnum.AgilentU254xDigitalChannelDirectionOut; _bitArray = new DigitalBit[width]; for (int i = 0; i < width; i++) { _bitArray[i] = new DigitalBit(this, i); } }