namespace Mirle.Component.MPLC.DataBlocks.Interfaces
{
///
/// 資料區塊介面
///
public interface IDataBlock
{
///
/// 設置原始資料
///
/// 原始資料
void SetRawData(byte[] newRawData);
///
/// 取得原始資料
///
/// 原始資料
byte[] GetRawData();
///
/// 取得位元
///
/// 位置
/// 是否成功取得
/// True/False
bool TryGetBit(string address, out bool value);
///
/// 設置位元開啟
///
/// 位置
/// True/False
bool TrySetBitOn(string address);
///
/// 設置位元關閉
///
/// 位置
/// True/False
bool TrySetBitOff(string address);
///
/// 取得字元
///
/// 位置
/// 值
/// True/False
bool TryGetWord(string address, out int value);
///
/// 設置字元
///
/// 位置
/// 值
/// True/False
bool TrySetWord(string address, int value);
///
/// 取得多個字元
///
/// 位置
/// 資料集
/// 長度
/// True/False
bool TryGetWords(string address, out int[] data, int length);
///
/// 設置多個字元
///
/// 位置
/// 資料集
/// True/False
bool TrySetWords(string address, int[] data);
}
}