Files
DP44/DataPRO/CanFDApiProxy/.svn/pristine/61/61917b3fb9305dcded71ce365008b7e7c3bacdbf.svn-base
2026-04-17 14:55:32 -04:00

78 lines
3.4 KiB
Plaintext

using CANFDApiProxy.Requests;
using System;
using System.Collections.Generic;
using System.Text;
namespace CANFDApiProxy.Messages
{
public class CANConfigMessage
{
public List<CANConfig> CANConfigList { get; set; }
public Pipe Pipe { get; set; }
public string Status { get; set; }
public static CANConfigRequest CreateCanConfigRequest(CANConfigMessage canConfigMessage)
{
var request = new CANConfigRequest();
try
{
request.config = new config();
var CANConfigArray = canConfigMessage.CANConfigList.ToArray();
request.config.can1 = new CanConfigItem(CANConfigArray[0].Base_or_arb_bitrate, CANConfigArray[0].Base_or_arb_sjw, CANConfigArray[0].Data_bitrate, CANConfigArray[0].Data_sjw, CANConfigArray[0].Filetype, CANConfigArray[0].Included, CANConfigArray[0].Is_fd);
request.config.can2 = new CanConfigItem(CANConfigArray[1].Base_or_arb_bitrate, CANConfigArray[1].Base_or_arb_sjw, CANConfigArray[1].Data_bitrate, CANConfigArray[1].Data_sjw, CANConfigArray[1].Filetype, CANConfigArray[1].Included, CANConfigArray[1].Is_fd);
request.config.can3 = new CanConfigItem(CANConfigArray[2].Base_or_arb_bitrate, CANConfigArray[2].Base_or_arb_sjw, CANConfigArray[2].Data_bitrate, CANConfigArray[2].Data_sjw, CANConfigArray[2].Filetype, CANConfigArray[2].Included, CANConfigArray[2].Is_fd);
request.config.can4 = new CanConfigItem(CANConfigArray[3].Base_or_arb_bitrate, CANConfigArray[3].Base_or_arb_sjw, CANConfigArray[3].Data_bitrate, CANConfigArray[3].Data_sjw, CANConfigArray[3].Filetype, CANConfigArray[3].Included, CANConfigArray[3].Is_fd);
}
catch (Exception ex)
{
request.Status = ex.Message;
}
return request;
}
public override string ToString()
{
var sb = new StringBuilder();
sb.Append($"Pipe: {Pipe}, Status: {Status}, CanConfigList:");
if (null != CANConfigList)
{
foreach( var c in CANConfigList)
{
sb.Append(" ");
sb.Append(c.ToString());
}
}
return sb.ToString();
}
}
public class CANConfig
{
public CANConfig(string name, int base_or_arb_bitrate, int base_or_arb_sjw, int data_bitrate, int data_sjw, string filetype, bool included, bool is_fd)
{
Name = name;
Base_or_arb_bitrate = base_or_arb_bitrate;
Base_or_arb_sjw = base_or_arb_sjw;
Data_bitrate = data_bitrate;
Data_sjw = data_sjw;
Filetype = filetype;
Included = included;
Is_fd = is_fd;
}
public string Name { get; }
public int Base_or_arb_bitrate { get; set; }
public int Base_or_arb_sjw { get; set; }
public int Data_bitrate { get; set; }
public int Data_sjw { get; set; }
public string Filetype { get; set; }
public bool Included { get; set; }
public bool Is_fd { get; set; }
public override string ToString()
{
return $"Name={Name}, BaseBR={Base_or_arb_bitrate}, BaseSJW={Base_or_arb_sjw}, BR={Data_bitrate}, DataSJW={Data_sjw}, FT={Filetype}, Inc={Included}, fd={Is_fd}";
}
}
}