コード例 #1
0
 public override void ParseFrom(ISCPMessage source)
 {
     base.ParseFrom(source);
     //"tpxxxxxxxxxxxx"
     ImageType  = RawData[0];
     PacketFlag = RawData[1];
     ArtData    = RawData.Substring(2);
     OnPropertyChanged(nameof(ArtData));
 }
コード例 #2
0
 public override void ParseFrom(ISCPMessage source)
 {
     base.ParseFrom(source);
     if (!string.IsNullOrEmpty(RawData))
     {
         Title = Encoding.Default.GetString(Encoding.UTF8.GetBytes(RawData));
     }
     else
     {
         Title = "";
     }
     OnPropertyChanged(nameof(Title));
 }
コード例 #3
0
 public override void ParseFrom(ISCPMessage source)
 {
     base.ParseFrom(source);
     if (RawData != null)
     {
         ArtistName = Encoding.Default.GetString(Encoding.UTF8.GetBytes(RawData));
     }
     else
     {
         ArtistName = string.Empty;
     }
     OnPropertyChanged(nameof(ArtistName));
 }
コード例 #4
0
        public override void ParseFrom(ISCPMessage source)
        {
            base.ParseFrom(source);
            Sequence = short.Parse(RawData.Substring(1, 4));
            UIType   = (UITypes)int.Parse(RawData.Substring(6, 1));
            Success  = RawData.Substring(5, 1) == "S" ? true : false;

            if (Success)
            {
                Items = Xml.Element("items").Elements()
                        .Select(e => NetListInfoItem.Parse(e)).ToList();
            }
        }
コード例 #5
0
 public override void ParseFrom(ISCPMessage source)
 {
     base.ParseFrom(source);
     InformationType = (NetListInformationType)RawData.Substring(0, 1)[0];
     if (RawData.Substring(1, 1) == "-")
     {
         Position = -1;
     }
     else
     {
         Position = short.Parse(RawData.Substring(1, 1));
     }
     Property = RawData.Substring(2, 1)[0];
     Text     = RawData.Substring(3);
 }
コード例 #6
0
 public override void ParseFrom(ISCPMessage source)
 {
     base.ParseFrom(source);
     // xxuycccciiiillsraabbssnnn...nnn
     Service    = (NetServices)int.Parse(RawData.Substring(0, 2), System.Globalization.NumberStyles.HexNumber);
     UIType     = (UITypes)int.Parse(RawData.Substring(2, 1));
     LayerInfo  = byte.Parse(RawData.Substring(3, 1));
     Position   = short.Parse(RawData.Substring(4, 4), System.Globalization.NumberStyles.HexNumber);
     ItemNumber = short.Parse(RawData.Substring(8, 4), System.Globalization.NumberStyles.HexNumber);
     Layer      = short.Parse(RawData.Substring(12, 2), System.Globalization.NumberStyles.HexNumber);
     StartFirst = RawData.Substring(14, 1) == "1";
     IconLeft   = short.Parse(RawData.Substring(16, 2), System.Globalization.NumberStyles.HexNumber);
     IconRight  = short.Parse(RawData.Substring(18, 2), System.Globalization.NumberStyles.HexNumber);
     Status     = short.Parse(RawData.Substring(20, 2), System.Globalization.NumberStyles.HexNumber); // todo enum
     Title      = RawData.Substring(22);
 }
コード例 #7
0
 public override void ParseFrom(ISCPMessage source)
 {
     base.ParseFrom(source);
     //"cccc/tttt"
     if (RawData[0] != '-')
     {
         CurrentTrack = int.Parse(RawData.Substring(0, 4));
     }
     else
     {
         CurrentTrack = -1;
     }
     if (RawData[5] != '-')
     {
         TotalTrack = int.Parse(RawData.Substring(5, 4));
     }
     else
     {
         TotalTrack = -1;
     }
     OnPropertyChanged(nameof(CurrentTrack));
     OnPropertyChanged(nameof(TotalTrack));
 }
コード例 #8
0
        public override void ParseFrom(ISCPMessage source)
        {
            base.ParseFrom(source);
            var parts = RawData.Split('/');

            if (parts.Length > 0)
            {
                Format = parts[0];
            }
            else
            {
                Format = string.Empty;
            }
            if (parts.Length > 1)
            {
                Bitrate = parts[1];
            }
            else
            {
                Bitrate = string.Empty;
            }
            OnPropertyChanged(nameof(Format));
            OnPropertyChanged(nameof(Bitrate));
        }