public NextInterfaceBytesIndicator(byte indicatorBitmap, bool isT0)
        {
            this.TaExists = (indicatorBitmap & 0x10) != 0;
            this.TbExists = (indicatorBitmap & 0x20) != 0;
            this.TcExists = (indicatorBitmap & 0x40) != 0;
            this.TdExists = (indicatorBitmap & 0x80) != 0;

            this.groupType = isT0?InterfaceByteGroupType.Global : (InterfaceByteGroupType)(indicatorBitmap & 0x0F);
        }
 public NextInterfaceBytesIndicator(InterfaceByteGroupType groupType)
 {
     this.groupType = groupType;
 }
Example #3
0
 protected void SetInterfaceByte(InterfaceByteGroupType groupType, int groupNo, InterfaceByteType type, byte?value)
 {
     this.EnsureGroupNumberExists(groupNo, _ => _.Type == groupType);
     this.SetInterfaceByte(groupNo, type, this.GetInterfaceGroups().Where(_ => _.Type == groupType).ToArray(), value);
 }
Example #4
0
 protected byte?GetInterfaceByte(InterfaceByteGroupType groupType, int groupNo, InterfaceByteType type)
 {
     return(AtrParametersBase.GetInterfaceByte(groupNo, type, this.GetInterfaceGroups().Where(_ => _.Type == groupType).ToArray()));
 }
Example #5
0
 protected AtrParametersBase(Atr owner, Func <AtrInterfaceByteGroupToken, bool> groupTypeSelection, InterfaceByteGroupType groupType)
 {
     this.Owner = owner;
     this.groupTypeSelection = groupTypeSelection;
     this.groupType          = groupType;
 }
        public void AppendGroup(AtrInterfaceByteGroupToken atrInterfaceByteGroupToken, InterfaceByteGroupType type)
        {
            AtrInterfaceByteGroupToken NewGroup;
            int InsertIndex;

            if (atrInterfaceByteGroupToken != null)
            {
                NewGroup           = new AtrInterfaceByteGroupToken(this.owner, null, new NextInterfaceBytesIndicator(type));
                NewGroup.NextGroup = atrInterfaceByteGroupToken.NextGroup;
                atrInterfaceByteGroupToken.NextGroup = NewGroup;
                atrInterfaceByteGroupToken.InterfaceBytesIndicator.TdExists = true;
                InsertIndex = this.collection.IndexOf(atrInterfaceByteGroupToken) + 1;
            }
            else
            {
                NewGroup = new AtrInterfaceByteGroupToken(this.owner, null, new NextInterfaceBytesIndicator(type));
                this.owner.Preamble.NextInterfaceBytesIndicator.TdExists = true;
                InsertIndex = 0;
            }
            this.collection.Insert(InsertIndex, NewGroup);
            this.owner.NotifyChanged();
        }
Example #7
0
 public void AddGroup(InterfaceByteGroupType type)
 {
     this.owner.InterfaceByteGroups.AppendGroup(this, type);
 }