파일정리
This commit is contained in:
86
HMI/SubProject/AGV/Structure/AgvData.cs
Normal file
86
HMI/SubProject/AGV/Structure/AgvData.cs
Normal file
@@ -0,0 +1,86 @@
|
||||
using System;
|
||||
|
||||
namespace arDev
|
||||
{
|
||||
public partial class Narumi
|
||||
{
|
||||
|
||||
public class AgvData
|
||||
{
|
||||
|
||||
/// <summary>
|
||||
/// S: Straight
|
||||
/// L: Left
|
||||
/// R: Right
|
||||
/// </summary>
|
||||
public char Sts { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// H : High
|
||||
/// M : Middle
|
||||
/// L : Low
|
||||
/// S : Mark Stop
|
||||
/// </summary>
|
||||
public char Speed { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// F : Front
|
||||
/// B : Back
|
||||
/// </summary>
|
||||
public char Direction { get; set; }
|
||||
|
||||
public int guidesensor { get; set; }
|
||||
|
||||
|
||||
public string TagString { get; set; } = string.Empty;
|
||||
public ushort TagNo { get; set; } = 0;
|
||||
public string CallString { get; set; } = string.Empty;
|
||||
public int CallNo { get; set; } = -1;
|
||||
public string CCAString { get; set; } = string.Empty;
|
||||
public int CCANo { get; set; } = -1;
|
||||
|
||||
|
||||
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
//모든사태값을 탭으로 구분하여 문자를 생성한다
|
||||
var sb = new System.Text.StringBuilder();
|
||||
|
||||
sb.AppendLine($"[Sts] : {Sts}");
|
||||
sb.AppendLine($"[Speed] : {Speed}");
|
||||
sb.AppendLine($"[Direction] : {Direction}");
|
||||
sb.AppendLine($"[guidesensor] : {guidesensor}");
|
||||
|
||||
sb.AppendLine($"[TagNo] : {TagNo}");
|
||||
sb.AppendLine($"[CallNo] : {CallNo}");
|
||||
sb.AppendLine($"[CCANo] : {CCANo}");
|
||||
|
||||
|
||||
return sb.ToString();
|
||||
}
|
||||
|
||||
public string ToRtfString()
|
||||
{
|
||||
var sb = new System.Text.StringBuilder();
|
||||
sb.AppendLine(@"{\rtf1\ansi\deff0");
|
||||
sb.AppendLine(@"{\colortbl ;\red0\green0\blue255;}"); // Color 1 = Blue
|
||||
|
||||
sb.AppendLine($"[Sts] : {Sts}" + @"\line");
|
||||
sb.AppendLine($"[Speed] : {Speed}" + @"\line");
|
||||
sb.AppendLine($"[Direction] : {Direction}" + @"\line");
|
||||
sb.AppendLine($"[guidesensor] : {guidesensor}" + @"\line");
|
||||
sb.AppendLine($"[TagNo] : {TagNo}" + @"\line");
|
||||
sb.AppendLine($"[CallNo] : {CallNo}" + @"\line");
|
||||
sb.AppendLine($"[CCANo] : {CCANo}" + @"\line");
|
||||
|
||||
sb.AppendLine("}");
|
||||
return sb.ToString();
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
142
HMI/SubProject/AGV/Structure/ErrorFlag.cs
Normal file
142
HMI/SubProject/AGV/Structure/ErrorFlag.cs
Normal file
@@ -0,0 +1,142 @@
|
||||
using System;
|
||||
|
||||
namespace arDev
|
||||
{
|
||||
public partial class Narumi
|
||||
{
|
||||
|
||||
public class ErrorFlag
|
||||
{
|
||||
private COMM.Flag _value { get; set; } = new COMM.Flag(16);
|
||||
public void SetValue(Int16 value) { this._value.writeValue(value); }
|
||||
public UInt16 Value
|
||||
{
|
||||
get
|
||||
{
|
||||
return (UInt16)_value.Value;
|
||||
}
|
||||
}
|
||||
public enum eflag
|
||||
{
|
||||
Emergency = 0,
|
||||
Overcurrent,
|
||||
Charger_run_error,
|
||||
Charger_pos_error,
|
||||
line_out_error = 4,
|
||||
|
||||
/// <summary>
|
||||
/// 기동시 자석 감지 에러
|
||||
/// </summary>
|
||||
runerror_by_no_magent_line=5,
|
||||
/// <summary>
|
||||
/// 호출제어기 통신 오류
|
||||
/// </summary>
|
||||
controller_comm_error =6,
|
||||
|
||||
/// <summary>
|
||||
/// 배터리 저전압
|
||||
/// </summary>
|
||||
battery_low_voltage=7,
|
||||
|
||||
spare08=8,
|
||||
|
||||
lift_timeout=9,
|
||||
lift_driver_overcurrent=10,
|
||||
lift_driver_emergency = 11,
|
||||
|
||||
/// <summary>
|
||||
/// 도착경보기 통신 오류
|
||||
/// </summary>
|
||||
arrive_ctl_comm_error,
|
||||
|
||||
/// <summary>
|
||||
/// 자동문제어기 통신 오류
|
||||
/// </summary>
|
||||
door_ctl_comm_error,
|
||||
|
||||
/// <summary>
|
||||
/// 자동충전기 통신 오류
|
||||
/// </summary>
|
||||
charger_comm_error,
|
||||
|
||||
/// <summary>
|
||||
/// 교차로 제어기 통신 오류
|
||||
/// </summary>
|
||||
cross_ctrl_comm_error,
|
||||
}
|
||||
|
||||
public bool GetValue(eflag idx)
|
||||
{
|
||||
return _value.Get((int)idx);
|
||||
}
|
||||
public bool GetChanged(eflag idx)
|
||||
{
|
||||
return _value.GetChanged((int)idx);
|
||||
}
|
||||
|
||||
public bool Emergency { get { return GetValue(eflag.Emergency); } }
|
||||
public bool Overcurrent { get { return GetValue(eflag.Overcurrent); } }
|
||||
public bool Charger_run_error { get { return GetValue(eflag.Charger_run_error); } }
|
||||
public bool Charger_pos_error { get { return GetValue(eflag.Charger_pos_error); } }
|
||||
public bool line_out_error { get { return GetValue(eflag.line_out_error); } }
|
||||
public bool runerror_by_no_magent_line { get { return GetValue(eflag.runerror_by_no_magent_line); } }
|
||||
public bool controller_comm_error { get { return GetValue(eflag.controller_comm_error); } }
|
||||
public bool arrive_ctl_comm_error { get { return GetValue(eflag.arrive_ctl_comm_error); } }
|
||||
public bool door_ctl_comm_error { get { return GetValue(eflag.door_ctl_comm_error); } }
|
||||
public bool charger_comm_error { get { return GetValue(eflag.charger_comm_error); } }
|
||||
public bool cross_ctrl_comm_error { get { return GetValue(eflag.cross_ctrl_comm_error); } }
|
||||
public override string ToString()
|
||||
{
|
||||
//모든사태값을 탭으로 구분하여 문자를 생성한다
|
||||
var sb = new System.Text.StringBuilder();
|
||||
for (int i = 0; i < 16; i++)
|
||||
{
|
||||
var def = Enum.IsDefined(typeof(eflag), i);
|
||||
if (def)
|
||||
{
|
||||
var flag = (eflag)i;
|
||||
var value = _value.Get(i);
|
||||
sb.AppendLine($"[{i:00}][{flag}] : {value}");
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
return sb.ToString();
|
||||
}
|
||||
|
||||
public string ToRtfString()
|
||||
{
|
||||
var sb = new System.Text.StringBuilder();
|
||||
sb.AppendLine(@"{\rtf1\ansi\deff0");
|
||||
sb.AppendLine(@"{\colortbl ;\red0\green0\blue255;}"); // Color 1 = Blue
|
||||
|
||||
for (int i = 0; i < 16; i++)
|
||||
{
|
||||
var def = Enum.IsDefined(typeof(eflag), i);
|
||||
if (def)
|
||||
{
|
||||
var flag = (eflag)i;
|
||||
var value = _value.Get(i);
|
||||
string line = $"[{i:00}][{flag}] : {value}";
|
||||
|
||||
// : true가 포함된 줄은 파란색
|
||||
if (value == true)
|
||||
{
|
||||
sb.AppendLine(@"\cf1 " + line + @"\cf0\line");
|
||||
}
|
||||
else
|
||||
{
|
||||
sb.AppendLine(line + @"\line");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
sb.AppendLine("}");
|
||||
return sb.ToString();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
187
HMI/SubProject/AGV/Structure/Signals.cs
Normal file
187
HMI/SubProject/AGV/Structure/Signals.cs
Normal file
@@ -0,0 +1,187 @@
|
||||
using System;
|
||||
|
||||
namespace arDev
|
||||
{
|
||||
public partial class Narumi
|
||||
{
|
||||
public enum eSignal1
|
||||
{
|
||||
front_gate_out = 0,
|
||||
rear_gte_out,
|
||||
mark_sensor_1,
|
||||
mark_sensor_2,
|
||||
lift_down_sensor,
|
||||
lift_up_sensor,
|
||||
magnet_relay,
|
||||
charger_align_sensor,
|
||||
}
|
||||
public enum eSignal2
|
||||
{
|
||||
cart_detect1 = 0,
|
||||
cart_detect2,
|
||||
}
|
||||
|
||||
public class Signal1
|
||||
{
|
||||
private COMM.Flag _value { get; set; } = new COMM.Flag(8);
|
||||
public void SetValue(Int16 value) { this._value.writeValue(value); }
|
||||
public UInt16 Value
|
||||
{
|
||||
get
|
||||
{
|
||||
return (UInt16)_value.Value;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public bool GetValue(eSignal1 idx)
|
||||
{
|
||||
return _value.Get((int)idx);
|
||||
}
|
||||
public bool GetChanged(eSignal1 idx)
|
||||
{
|
||||
return _value.GetChanged((int)idx);
|
||||
}
|
||||
|
||||
public Boolean front_gate_out { get { return GetValue(eSignal1.front_gate_out); } }
|
||||
public Boolean rear_sensor_out { get { return GetValue(eSignal1.rear_gte_out); } }
|
||||
public Boolean mark_sensor_1 { get { return GetValue(eSignal1.mark_sensor_1); } }
|
||||
public Boolean mark_sensor_2 { get { return GetValue(eSignal1.mark_sensor_2); } }
|
||||
public Boolean mark_sensor { get { return mark_sensor_1 || mark_sensor_2; } }
|
||||
public Boolean charger_align_sensor { get { return GetValue(eSignal1.charger_align_sensor); } }
|
||||
public Boolean lift_up { get { return GetValue(eSignal1.lift_up_sensor); } }
|
||||
public Boolean lift_down { get { return GetValue(eSignal1.lift_down_sensor); } }
|
||||
public Boolean magnet_on { get { return GetValue(eSignal1.magnet_relay); } }
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
//모든사태값을 탭으로 구분하여 문자를 생성한다
|
||||
var sb = new System.Text.StringBuilder();
|
||||
for (int i = 0; i < 16; i++)
|
||||
{
|
||||
var def = Enum.IsDefined(typeof(eSignal1), i);
|
||||
if (def)
|
||||
{
|
||||
var flag = (eSignal1)i;
|
||||
var value = _value.Get(i);
|
||||
sb.AppendLine($"[{i:00}][{flag}] : {value}");
|
||||
}
|
||||
|
||||
}
|
||||
return sb.ToString();
|
||||
}
|
||||
|
||||
public string ToRtfString()
|
||||
{
|
||||
var sb = new System.Text.StringBuilder();
|
||||
sb.AppendLine(@"{\rtf1\ansi\deff0");
|
||||
sb.AppendLine(@"{\colortbl ;\red0\green0\blue255;}"); // Color 1 = Blue
|
||||
|
||||
for (int i = 0; i < 16; i++)
|
||||
{
|
||||
var def = Enum.IsDefined(typeof(eSignal1), i);
|
||||
if (def)
|
||||
{
|
||||
var flag = (eSignal1)i;
|
||||
var value = _value.Get(i);
|
||||
string line = $"[{i:00}][{flag}] : {value}";
|
||||
|
||||
// : true가 포함된 줄은 파란색
|
||||
if (value == true)
|
||||
{
|
||||
sb.AppendLine(@"\cf1 " + line + @"\cf0\line");
|
||||
}
|
||||
else
|
||||
{
|
||||
sb.AppendLine(line + @"\line");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
sb.AppendLine("}");
|
||||
return sb.ToString();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
public class Signal2
|
||||
{
|
||||
private COMM.Flag _value { get; set; } = new COMM.Flag(8);
|
||||
public void SetValue(Int16 value) { this._value.writeValue(value); }
|
||||
public UInt16 Value
|
||||
{
|
||||
get
|
||||
{
|
||||
return (UInt16)_value.Value;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public bool GetValue(eSignal2 idx)
|
||||
{
|
||||
return _value.Get((int)idx);
|
||||
}
|
||||
public bool GetChanged(eSignal2 idx)
|
||||
{
|
||||
return _value.GetChanged((int)idx);
|
||||
}
|
||||
|
||||
|
||||
public Boolean cart_detect1 { get { return GetValue(eSignal2.cart_detect1); } }
|
||||
public Boolean cart_detect2 { get { return GetValue(eSignal2.cart_detect2); } }
|
||||
public override string ToString()
|
||||
{
|
||||
//모든사태값을 탭으로 구분하여 문자를 생성한다
|
||||
var sb = new System.Text.StringBuilder();
|
||||
for (int i = 0; i < 16; i++)
|
||||
{
|
||||
var def = Enum.IsDefined(typeof(eSignal2), i);
|
||||
if(def)
|
||||
{
|
||||
var flag = (eSignal2)i;
|
||||
var value = _value.Get(i);
|
||||
sb.AppendLine($"[{i:00}][{flag}] : {value}");
|
||||
}
|
||||
|
||||
}
|
||||
return sb.ToString();
|
||||
}
|
||||
|
||||
public string ToRtfString()
|
||||
{
|
||||
var sb = new System.Text.StringBuilder();
|
||||
sb.AppendLine(@"{\rtf1\ansi\deff0");
|
||||
sb.AppendLine(@"{\colortbl ;\red0\green0\blue255;}"); // Color 1 = Blue
|
||||
|
||||
for (int i = 0; i < 16; i++)
|
||||
{
|
||||
var def = Enum.IsDefined(typeof(eSignal2), i);
|
||||
if (def)
|
||||
{
|
||||
var flag = (eSignal2)i;
|
||||
var value = _value.Get(i);
|
||||
string line = $"[{i:00}][{flag}] : {value}";
|
||||
|
||||
// : true가 포함된 줄은 파란색
|
||||
if (value == true)
|
||||
{
|
||||
sb.AppendLine(@"\cf1 " + line + @"\cf0\line");
|
||||
}
|
||||
else
|
||||
{
|
||||
sb.AppendLine(line + @"\line");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
sb.AppendLine("}");
|
||||
return sb.ToString();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
108
HMI/SubProject/AGV/Structure/SystemFlag0.cs
Normal file
108
HMI/SubProject/AGV/Structure/SystemFlag0.cs
Normal file
@@ -0,0 +1,108 @@
|
||||
using System;
|
||||
|
||||
namespace arDev
|
||||
{
|
||||
public partial class Narumi
|
||||
{
|
||||
|
||||
public class SystemFlag0
|
||||
{
|
||||
private COMM.Flag _value { get; set; } = new COMM.Flag(16);
|
||||
public void SetValue(Int16 value) { this._value.writeValue(value); }
|
||||
public UInt16 Value
|
||||
{
|
||||
get
|
||||
{
|
||||
return (UInt16)_value.Value;
|
||||
}
|
||||
}
|
||||
|
||||
public enum eflag
|
||||
{
|
||||
Memory_RW_State = 5,
|
||||
EXT_IO_Conn_State,
|
||||
RFID_Conn_State,
|
||||
M5E_Module_Run_State = 8,
|
||||
Front_Ultrasonic_Conn_State,
|
||||
Front_Untrasonic_Sensor_State,
|
||||
Side_Ultrasonic_Conn_State,
|
||||
Side_Ultrasonic_Sensor_State = 12,
|
||||
Front_Guide_Sensor_State,
|
||||
Rear_Guide_Sensor_State,
|
||||
Battery_Level_Check
|
||||
}
|
||||
|
||||
public bool GetValue(eflag idx)
|
||||
{
|
||||
return _value.Get((int)idx);
|
||||
}
|
||||
public bool GetChanged(eflag idx)
|
||||
{
|
||||
return _value.GetChanged((int)idx);
|
||||
}
|
||||
public bool Memory_RW_State { get { return GetValue(eflag.Memory_RW_State); } }
|
||||
public bool EXT_IO_Conn_State { get { return GetValue(eflag.EXT_IO_Conn_State); } }
|
||||
public bool RFID_Conn_State { get { return GetValue(eflag.RFID_Conn_State); } }
|
||||
public bool M5E_Module_Run_State { get { return GetValue(eflag.M5E_Module_Run_State); } }
|
||||
public bool Front_Ultrasonic_Conn_State { get { return GetValue(eflag.Front_Ultrasonic_Conn_State); } }
|
||||
public bool Front_Untrasonic_Sensor_State { get { return GetValue(eflag.Front_Untrasonic_Sensor_State); } }
|
||||
public bool Side_Ultrasonic_Conn_State { get { return GetValue(eflag.Side_Ultrasonic_Conn_State); } }
|
||||
public bool Side_Ultrasonic_Sensor_State { get { return GetValue(eflag.Side_Ultrasonic_Sensor_State); } }
|
||||
public bool Front_Guide_Sensor_State { get { return GetValue(eflag.Front_Guide_Sensor_State); } }
|
||||
public bool Rear_Guide_Sensor_State { get { return GetValue(eflag.Rear_Guide_Sensor_State); } }
|
||||
public bool Battery_Level_Check { get { return GetValue(eflag.Battery_Level_Check); } }
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
//모든사태값을 탭으로 구분하여 문자를 생성한다
|
||||
var sb = new System.Text.StringBuilder();
|
||||
for(int i = 0; i < 16; i++)
|
||||
{
|
||||
var def = Enum.IsDefined(typeof(eflag), i);
|
||||
if (def)
|
||||
{
|
||||
var flag = (eflag)i;
|
||||
var value = _value.Get(i);
|
||||
sb.AppendLine($"[{i:00}][{flag}] : {value}");
|
||||
}
|
||||
|
||||
}
|
||||
return sb.ToString();
|
||||
}
|
||||
|
||||
public string ToRtfString()
|
||||
{
|
||||
var sb = new System.Text.StringBuilder();
|
||||
sb.AppendLine(@"{\rtf1\ansi\deff0");
|
||||
sb.AppendLine(@"{\colortbl ;\red0\green0\blue255;}"); // Color 1 = Blue
|
||||
|
||||
for (int i = 0; i < 16; i++)
|
||||
{
|
||||
var def = Enum.IsDefined(typeof(eflag), i);
|
||||
if (def)
|
||||
{
|
||||
var flag = (eflag)i;
|
||||
var value = _value.Get(i);
|
||||
string line = $"[{i:00}][{flag}] : {value}";
|
||||
|
||||
// : true가 포함된 줄은 파란색
|
||||
if (value == true)
|
||||
{
|
||||
sb.AppendLine(@"\cf1 " + line + @"\cf0\line");
|
||||
}
|
||||
else
|
||||
{
|
||||
sb.AppendLine(line + @"\line");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
sb.AppendLine("}");
|
||||
return sb.ToString();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
128
HMI/SubProject/AGV/Structure/SystemFlag1.cs
Normal file
128
HMI/SubProject/AGV/Structure/SystemFlag1.cs
Normal file
@@ -0,0 +1,128 @@
|
||||
using System;
|
||||
|
||||
namespace arDev
|
||||
{
|
||||
public partial class Narumi
|
||||
{
|
||||
|
||||
public class SystemFlag1
|
||||
{
|
||||
private COMM.Flag _value { get; set; } = new COMM.Flag(16);
|
||||
public void SetValue(Int16 value) { this._value.writeValue(value); }
|
||||
|
||||
public UInt16 Value
|
||||
{
|
||||
get
|
||||
{
|
||||
return (UInt16)_value.Value;
|
||||
}
|
||||
}
|
||||
public enum eflag
|
||||
{
|
||||
Side_Detect_Ignore = 3,
|
||||
Melody_check,
|
||||
Mark2_check,
|
||||
Mark1_check,
|
||||
gateout_check,
|
||||
Battery_charging = 8,
|
||||
re_Start,
|
||||
|
||||
/// <summary>
|
||||
/// 전방 감지 무시
|
||||
/// </summary>
|
||||
front_detect_ignore,
|
||||
|
||||
/// <summary>
|
||||
/// 전방장애물감지상태
|
||||
/// </summary>
|
||||
front_detect_check,
|
||||
|
||||
/// <summary>
|
||||
/// 전방감지 후 정지 상태
|
||||
/// </summary>
|
||||
stop_by_front_detect = 12,
|
||||
/// <summary>
|
||||
/// 교차로 진입 후 정지 상태
|
||||
/// </summary>
|
||||
stop_by_cross_in,
|
||||
agv_stop,
|
||||
agv_run
|
||||
}
|
||||
|
||||
public bool GetValue(eflag idx)
|
||||
{
|
||||
return _value.Get((int)idx);
|
||||
}
|
||||
public bool GetChanged(eflag idx)
|
||||
{
|
||||
return _value.GetChanged((int)idx);
|
||||
}
|
||||
public bool Side_Detect_Ignore { get { return GetValue(eflag.Side_Detect_Ignore); } }
|
||||
public bool Melody_check { get { return GetValue(eflag.Melody_check); } }
|
||||
public bool Mark2_check { get { return GetValue(eflag.Mark2_check); } }
|
||||
public bool Mark1_check { get { return GetValue(eflag.Mark1_check); } }
|
||||
public bool gateout_check { get { return GetValue(eflag.gateout_check); } }
|
||||
public bool Battery_charging { get { return GetValue(eflag.Battery_charging); } }
|
||||
public bool re_Start { get { return GetValue(eflag.re_Start); } }
|
||||
public bool front_detect_ignore { get { return GetValue(eflag.front_detect_ignore); } }
|
||||
public bool front_detect_check { get { return GetValue(eflag.front_detect_check); } }
|
||||
public bool stop_by_front_detect { get { return GetValue(eflag.stop_by_front_detect); } }
|
||||
public bool stop_by_cross_in { get { return GetValue(eflag.stop_by_cross_in); } }
|
||||
public bool agv_stop { get { return GetValue(eflag.agv_stop); } }
|
||||
public bool agv_run { get { return GetValue(eflag.agv_run); } }
|
||||
public bool agv_run_manual { get; set; }
|
||||
public override string ToString()
|
||||
{
|
||||
//모든사태값을 탭으로 구분하여 문자를 생성한다
|
||||
var sb = new System.Text.StringBuilder();
|
||||
for (int i = 0; i < 16; i++)
|
||||
{
|
||||
var def = Enum.IsDefined(typeof(eflag), i);
|
||||
if (def)
|
||||
{
|
||||
var flag = (eflag)i;
|
||||
var value = _value.Get(i);
|
||||
sb.AppendLine($"[{i:00}][{flag}] : {value}");
|
||||
}
|
||||
|
||||
}
|
||||
return sb.ToString();
|
||||
}
|
||||
|
||||
public string ToRtfString()
|
||||
{
|
||||
var sb = new System.Text.StringBuilder();
|
||||
sb.AppendLine(@"{\rtf1\ansi\deff0");
|
||||
sb.AppendLine(@"{\colortbl ;\red0\green0\blue255;}"); // Color 1 = Blue
|
||||
|
||||
for (int i = 0; i < 16; i++)
|
||||
{
|
||||
var def = Enum.IsDefined(typeof(eflag), i);
|
||||
if (def)
|
||||
{
|
||||
var flag = (eflag)i;
|
||||
var value = _value.Get(i);
|
||||
string line = $"[{i:00}][{flag}] : {value}";
|
||||
|
||||
// : true가 포함된 줄은 파란색
|
||||
if (value == true)
|
||||
{
|
||||
sb.AppendLine(@"\cf1 " + line + @"\cf0\line");
|
||||
}
|
||||
else
|
||||
{
|
||||
sb.AppendLine(line + @"\line");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
sb.AppendLine("}");
|
||||
return sb.ToString();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user