/// <summary> /// Set ISO18K6BProtocolConfigurationParams /// </summary> /// <param name="val"></param> /// <param name="type">enum</param> /// <returns>object</returns> private object SetCustomISO18K6BProtocolConfigurationParams(ISO18K6BProtocolConfigurationParams type, Object val) { PARAM_ISO18K6BCustomParameters custIso18k6b = new PARAM_ISO18K6BCustomParameters(); //Build iso18k6b protocol configuration params switch(type) { case ISO18K6BProtocolConfigurationParams.Delimiter: PARAM_ThingMagicISO180006BDelimiter delimiter = new PARAM_ThingMagicISO180006BDelimiter(); delimiter.ISO18K6BDelimiter = (ENUM_ThingMagicCustom18K6BDelimiter)val; custIso18k6b.ThingMagicISO180006BDelimiter = delimiter; break; case ISO18K6BProtocolConfigurationParams.ModulationDepth: PARAM_ThingMagicISO18K6BModulationDepth modulationDepth = new PARAM_ThingMagicISO18K6BModulationDepth(); modulationDepth.ISO18K6BModulationDepth = (ENUM_ThingMagicCustom18K6BModulationDepth)val; custIso18k6b.ThingMagicISO18K6BModulationDepth = modulationDepth; break; case ISO18K6BProtocolConfigurationParams.LinkFrequency: PARAM_ThingMagicISO18K6BLinkFrequency linkFrequency = new PARAM_ThingMagicISO18K6BLinkFrequency(); linkFrequency.ISO18K6BLinkFrequency = (ENUM_ThingMagicCustom18K6BLinkFrequency)val; custIso18k6b.ThingMagicISO18K6BLinkFrequency = linkFrequency; break; } PARAM_ThingMagicProtocolConfiguration protocolConfig = new PARAM_ThingMagicProtocolConfiguration(); protocolConfig.ISO18K6BCustomParameters = custIso18k6b; MSG_SET_READER_CONFIG msgSetConfig = new MSG_SET_READER_CONFIG(); MSG_SET_READER_CONFIG_RESPONSE msgSetConfigResp; msgSetConfig.AddCustomParameter(protocolConfig); try { msgSetConfigResp = (MSG_SET_READER_CONFIG_RESPONSE)SendLlrpMessage(msgSetConfig); } catch (Exception ex) { throw new ReaderException(ex.Message); } return val; }
/// <summary> /// Get ISO18K6BProtocolConfigurationParams /// </summary> /// <param name="val">enum</param> /// <returns>int</returns> private int GetCustomISO18K6BProtocolConfigurationParams(ISO18K6BProtocolConfigurationParams val) { // Get ISO18K6BProtocolConfigurationParams int protocolConfigValue = 0; PARAM_ThingMagicProtocolConfiguration protocolConfig; try { MSG_GET_READER_CONFIG_RESPONSE msgGetConfigResp = GetCustomReaderConfigResponse(ENUM_ThingMagicControlConfiguration.ThingMagicProtocolConfiguration); protocolConfig = (PARAM_ThingMagicProtocolConfiguration)msgGetConfigResp.Custom[0]; // Parse response to get iso18k6b protocol configuration params switch(val) { case ISO18K6BProtocolConfigurationParams.Delimiter: protocolConfigValue = Convert.ToInt32(protocolConfig.ISO18K6BCustomParameters.ThingMagicISO180006BDelimiter.ISO18K6BDelimiter); break; case ISO18K6BProtocolConfigurationParams.ModulationDepth: protocolConfigValue = Convert.ToInt32(protocolConfig.ISO18K6BCustomParameters.ThingMagicISO18K6BModulationDepth.ISO18K6BModulationDepth); break; case ISO18K6BProtocolConfigurationParams.LinkFrequency: protocolConfigValue = Convert.ToInt32(protocolConfig.ISO18K6BCustomParameters.ThingMagicISO18K6BLinkFrequency.ISO18K6BLinkFrequency); break; } } catch (Exception ex) { throw new ReaderException(ex.Message); } return protocolConfigValue; }