arMaskterK 프로젝트를 vms2016_cs 레포에서 현 레포로 이동
This commit is contained in:
131
Sub/arMasterK/Project/EventArgs.cs
Normal file
131
Sub/arMasterK/Project/EventArgs.cs
Normal file
@@ -0,0 +1,131 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace arDev
|
||||
{
|
||||
public partial class MasterK
|
||||
{
|
||||
public class DataEventArgs : EventArgs
|
||||
{
|
||||
private byte[] _buffer = null;
|
||||
|
||||
/// <summary>
|
||||
/// 바이트배열의 버퍼값
|
||||
/// </summary>
|
||||
public byte[] Value { get { return _buffer; } }
|
||||
|
||||
public eMsgType Direction { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 버퍼(바이트배열)의 데이터를 문자로 반환합니다.
|
||||
/// </summary>
|
||||
public string StrValue
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_buffer == null || _buffer.Length < 1) return string.Empty;
|
||||
return System.Text.Encoding.Default.GetString(_buffer);
|
||||
}
|
||||
}
|
||||
public DataEventArgs(eMsgType dir_, byte[] buffer)
|
||||
{
|
||||
_buffer = buffer;
|
||||
Direction = dir_;
|
||||
}
|
||||
}
|
||||
public class MessageEventArgs : EventArgs
|
||||
{
|
||||
protected Boolean _isError = false;
|
||||
public Boolean IsError { get { return _isError; } }
|
||||
protected string _message = string.Empty;
|
||||
public string Message { get { return _message; } }
|
||||
public MessageEventArgs(Boolean isError, string Message)
|
||||
{
|
||||
_isError = isError;
|
||||
_message = Message;
|
||||
}
|
||||
}
|
||||
public class FrameEventArgs : EventArgs
|
||||
{
|
||||
public eOpCode OpCode { get; set; }
|
||||
public FrameEventArgs(eOpCode opCode_)
|
||||
{
|
||||
OpCode = opCode_;
|
||||
}
|
||||
}
|
||||
public class IOValueEventArgs : EventArgs
|
||||
{
|
||||
protected eIOPINDIR _direction;
|
||||
protected int _arridx;
|
||||
protected Boolean _oldvalue;
|
||||
protected Boolean _newvalue;
|
||||
|
||||
public eIOPINDIR Direction { get { return _direction; } }
|
||||
public int ArrIDX { get { return _arridx; } }
|
||||
public Boolean OldValue { get { return _oldvalue; } }
|
||||
public Boolean NewValue { get { return _newvalue; } }
|
||||
|
||||
public IOValueEventArgs(eIOPINDIR dir, int arridx, Boolean oldvalue, Boolean newvalue)
|
||||
{
|
||||
_direction = dir;
|
||||
_arridx = arridx;
|
||||
_oldvalue = oldvalue;
|
||||
_newvalue = newvalue;
|
||||
}
|
||||
}
|
||||
public class AIValueEventArgs : EventArgs
|
||||
{
|
||||
public float[] Value { get; protected set; }
|
||||
|
||||
public AIValueEventArgs(float[] value_)
|
||||
{
|
||||
Value = value_;
|
||||
}
|
||||
}
|
||||
|
||||
#region "Events"
|
||||
|
||||
/// <summary>
|
||||
/// 일반적인 메세지 혹은 오류메세지 이벤트
|
||||
/// </summary>
|
||||
public event EventHandler<MessageEventArgs> Message;
|
||||
|
||||
/// <summary>
|
||||
/// 데이터메시이벤트 (Rx,Tx) 별로 구분됩니다.
|
||||
/// </summary>
|
||||
public event EventHandler<DataEventArgs> DataMessage;
|
||||
|
||||
/// <summary>
|
||||
/// 가공되어진 최종 메세지 형태값을 가지고 있습니다.
|
||||
/// </summary>
|
||||
public event EventHandler<FrameEventArgs> ReceiveFrame;
|
||||
|
||||
/// <summary>
|
||||
/// ReadProcess에의해서 감시되며 포트의 상태값이 바뀐다면 발생함
|
||||
/// </summary>
|
||||
public event EventHandler<IOValueEventArgs> IOValueChanged;
|
||||
|
||||
/// <summary>
|
||||
/// AI의 값을 이벤트로 발생합니다.발생주기는 AIInterval을 참고합니다.
|
||||
/// </summary>
|
||||
public event EventHandler<AIValueEventArgs> AIValueChanged;
|
||||
|
||||
/// <summary>
|
||||
/// 오류발생시 메세지가 발생함
|
||||
/// </summary>
|
||||
public event EventHandler<MessageEventArgs> IOErrorMessage;
|
||||
|
||||
/// <summary>
|
||||
/// anlog 관련한 오류 메세지
|
||||
/// </summary>
|
||||
/// <remarks>Analog Data Error Message</remarks>
|
||||
public event EventHandler<MessageEventArgs> AIErrorMessage;
|
||||
|
||||
#endregion
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user