public static ROCMaster_ParameterArray Parse(SqlString stringToParse) { if (stringToParse.IsNull) { return(Null); } var parsedROCParameterArray = new ROCMaster_ParameterArray() { parameters = new List <ROCMaster_Parameter>() }; var parsedString = stringToParse.Value.Split("|".ToCharArray()); for (var i = 0; parsedString.Length > i; i++) { parsedROCParameterArray.Parameters.Add(ROCMaster_Parameter.Parse(parsedString[i])); } return(parsedROCParameterArray); }
public void Read(BinaryReader binaryReader) { Parameters.Clear(); IsNull = binaryReader.ReadBoolean(); if (IsNull) { return; } else { var length = binaryReader.ReadInt32(); for (var i = 0; length > i; i++) { var parameter = new ROCMaster_Parameter(); parameter.Read(binaryReader); Parameters.Add(parameter); } } }
public static ROCMaster_Parameter Parse(SqlString stringToParse) { if (stringToParse.IsNull) { return(Null); } var parsedROCPointData = stringToParse.Value.Split(",".ToCharArray()); var parsedROCParameter = new ROCMaster_Parameter() { PointType = byte.Parse(parsedROCPointData[0]), LogicalNumber = byte.Parse(parsedROCPointData[1]), Parameter = byte.Parse(parsedROCPointData[2]) }; parsedROCParameter.parameterType = (byte)((ParameterType)Enum.Parse(typeof(ParameterType), parsedROCPointData[3])); switch (parsedROCPointData[3]) { case "AC3": parsedROCParameter.rawValue = (new Ac3Parameter() { Value = parsedROCPointData[4] }).Data; break; case "AC7": parsedROCParameter.rawValue = (new Ac7Parameter() { Value = parsedROCPointData[4] }).Data; break; case "AC10": parsedROCParameter.rawValue = (new Ac10Parameter() { Value = parsedROCPointData[4] }).Data; break; case "AC12": parsedROCParameter.rawValue = (new Ac12Parameter() { Value = parsedROCPointData[4] }).Data; break; case "AC20": parsedROCParameter.rawValue = (new Ac20Parameter() { Value = parsedROCPointData[4] }).Data; break; case "AC30": parsedROCParameter.rawValue = (new Ac30Parameter() { Value = parsedROCPointData[4] }).Data; break; case "AC40": parsedROCParameter.rawValue = (new Ac40Parameter() { Value = parsedROCPointData[4] }).Data; break; case "BIN": parsedROCParameter.rawValue = (new BinParameter() { Value = byte.Parse(parsedROCPointData[4]) }).Data; break; case "FL": parsedROCParameter.rawValue = (new FlpParameter() { Value = float.Parse(parsedROCPointData[4]) }).Data; break; case "DOUBLE": parsedROCParameter.rawValue = (new DoubleParameter() { Value = double.Parse(parsedROCPointData[8]) }).Data; break; case "INT16": parsedROCParameter.rawValue = (new Int16Parameter() { Value = short.Parse(parsedROCPointData[4]) }).Data; break; case "INT32": parsedROCParameter.rawValue = (new Int32Parameter() { Value = int.Parse(parsedROCPointData[4]) }).Data; break; case "Int8": parsedROCParameter.rawValue = (new Int8Parameter() { Value = SByte.Parse(parsedROCPointData[4]) }).Data; break; case "TLP": { var parsedTlp = parsedROCPointData[4].Split(".".ToCharArray()); parsedROCParameter.rawValue = (new TlpParameter() { Value = new Tlp(byte.Parse(parsedTlp[0]), byte.Parse(parsedTlp[1]), byte.Parse(parsedTlp[2])) }).Data; } break; case "UINT16": parsedROCParameter.rawValue = (new UInt16Parameter() { Value = ushort.Parse(parsedROCPointData[4]) }).Data; break; case "UINT32": parsedROCParameter.rawValue = (new UInt32Parameter() { Value = uint.Parse(parsedROCPointData[4]) }).Data; break; case "TIME": parsedROCParameter.rawValue = (new TimeParameter() { Value = (new DateTime(1970, 01, 01).AddSeconds(uint.Parse(parsedROCPointData[4]))) }).Data; break; case "UINT8": parsedROCParameter.rawValue = (new UInt8Parameter() { Value = byte.Parse(parsedROCPointData[4]) }).Data; break; } return(parsedROCParameter); }
public ROCMaster_ParameterArray AddParameter(ROCMaster_Parameter parameter) { Parameters.Add(parameter); return(this); }