public override byte[] AsByteArray(byte[] lbData, int liOffset) { if (lbData.Length - liOffset < Size) { throw new Exception("Byte-array smaller than needed."); } else { Header.AsByteArray(lbData, liOffset); liOffset += Header.Size; BitConverter.GetBytes(m_PLCI.GetValue()).CopyTo(lbData, liOffset); liOffset += 4; if (m_Reject == Reject_Enum.Cause_from_network) { BitConverter.GetBytes((ushort)(m_RejectNetwork + Reject_Enum.Cause_from_network)).CopyTo(lbData, liOffset); liOffset += 2; } else { BitConverter.GetBytes((ushort)m_Reject).CopyTo(lbData, liOffset); liOffset += 2; } m_BProtocol.AsByteArray(lbData, liOffset); liOffset += m_BProtocol.StructSize; m_ConnectedNumber.AsByteArray(lbData, liOffset); liOffset += m_ConnectedNumber.StructSize; m_ConnectedSubaddress.AsByteArray(lbData, liOffset); liOffset += m_ConnectedSubaddress.StructSize; m_LowLayerCompatibility.AsByteArray(lbData, liOffset); liOffset += m_LowLayerCompatibility.StructSize; m_AdditionalInfo.AsByteArray(lbData, liOffset); liOffset += m_AdditionalInfo.StructSize; return(lbData); } }
public override byte[] AsByteArray(byte[] lbData, int liOffset) { if (lbData.Length - liOffset < Size) { throw new Exception("Byte-array smaller than needed."); } else { Header.AsByteArray(lbData, liOffset); liOffset += Header.Size; BitConverter.GetBytes(m_NCCI.GetValue()).CopyTo(lbData, liOffset); liOffset += 4; m_NetworkControlProtocolInformation.AsByteArray(lbData, liOffset); liOffset += m_NetworkControlProtocolInformation.StructSize; return(lbData); } }
public override byte[] AsByteArray(byte[] lbData, int liOffset) { if (lbData.Length - liOffset < Size) { throw new Exception("Byte-array smaller than needed."); } else { Header.AsByteArray(lbData, liOffset); liOffset += Header.Size; BitConverter.GetBytes((ushort)m_InteroperabilitySelector).CopyTo(lbData, liOffset); liOffset += 2; if (m_InteroperabilitySelector == InteroperabilitySelector_Enum.USBDeviceMenagement) { m_USBInteroperabilityResponseParameter.AsByteArray(lbData, liOffset); liOffset += m_USBInteroperabilityResponseParameter.StructSize; } else { m_BluetoothInteroperabilityResponseParameter.AsByteArray(lbData, liOffset); liOffset += m_BluetoothInteroperabilityResponseParameter.StructSize; } return(lbData); } }
public override byte[] AsByteArray(byte[] lbData, int liOffset) { if (lbData.Length - liOffset < Size) { throw new Exception("Byte-array smaller than needed."); } else { Header.AsByteArray(lbData, liOffset); liOffset += Header.Size; BitConverter.GetBytes(m_Controller.GetValue()).CopyTo(lbData, liOffset); liOffset += 4; BitConverter.GetBytes(m_CIPValue).CopyTo(lbData, liOffset); liOffset += 2; m_CalledPartyNumber.AsByteArray(lbData, liOffset); liOffset += m_CalledPartyNumber.StructSize; m_CallingPartyNumber.AsByteArray(lbData, liOffset); liOffset += m_CallingPartyNumber.StructSize; m_CalledPartySubaddress.AsByteArray(lbData, liOffset); liOffset += m_CalledPartySubaddress.StructSize; m_CallingPartySubaddress.AsByteArray(lbData, liOffset); liOffset += m_CallingPartySubaddress.StructSize; m_BProtocol.AsByteArray(lbData, liOffset); liOffset += m_BProtocol.StructSize; m_BearerCapability.AsByteArray(lbData, liOffset); liOffset += m_BearerCapability.StructSize; m_LowLayerCompatibility.AsByteArray(lbData, liOffset); liOffset += m_LowLayerCompatibility.StructSize; m_HighLayerCompatibility.AsByteArray(lbData, liOffset); liOffset += m_HighLayerCompatibility.StructSize; m_AdditionalInfo.AsByteArray(lbData, liOffset); liOffset += m_AdditionalInfo.StructSize; return(lbData); } }