//==============================================================
// Copyright (C) 2019 Inc. All rights reserved.
//
//==============================================================
// Create by 种道洋 at 2019/12/27 18:45:02.
// Version 1.0
// 种道洋
//==============================================================
using System;
using System.Collections.Generic;
using System.Text;
namespace Cdy.Tag
{
///
/// 压缩单元
///
public abstract class CompressUnitbase
{
#region ... Variables ...
#endregion ...Variables...
#region ... Events ...
#endregion ...Events...
#region ... Constructor...
#endregion ...Constructor...
#region ... Properties ...
///
/// 描述
///
public abstract string Desc { get; }
///
/// 类型编码
///
public abstract int TypeCode { get; }
///
/// 质量戳位置偏移
///
public int QulityOffset { get; set; }
///
///
///
public RecordType RecordType { get; set; }
///
///
///
public DateTime StartTime { get; set; }
///
/// 变量类型
///
public TagType TagType { get; set; }
///
/// 压缩类型
///
public byte CompressType { get; set; }
///
///
///
public Dictionary Parameters { get; set; }
/////
/////
/////
//public float CompressParameter1 { get; set; }
/////
/////
/////
//public float CompressParameter2 { get; set; }
/////
/////
/////
//public float CompressParameter3 { get; set; }
#endregion ...Properties...
#region ... Methods ...
///
///
///
///
///
///
///
///
///
public abstract long Compress(MarshalMemoryBlock source, long sourceAddr, MarshalMemoryBlock target, long targetAddr, long size);
/////
/////
/////
/////
/////
/////
/////
/////
//public abstract bool? DeCompressBoolValue(MarshalMemoryBlock source, int sourceAddr,DateTime time,int timeTick, QueryValueMatchType type);
/////
/////
/////
/////
/////
/////
/////
//public abstract int DeCompressBoolValue(MarshalMemoryBlock source, int sourceAddr, List time, int timeTick, QueryValueMatchType type, HisQueryResult result);
/////
///// 解压缩某个事件段内所有值
/////
/////
/////
/////
/////
/////
/////
/////
//public abstract int DeCompressAllValue(MarshalMemoryBlock source, int sourceAddr, DateTime startTime,DateTime endTime, int timeTick, HisQueryResult result);
/////
/////
/////
/////
/////
/////
/////
//public abstract byte? DeCompressByteValue(MarshalMemoryBlock source, int sourceAddr, DateTime time, int timeTick, QueryValueMatchType type);
/////
/////
/////
/////
/////
/////
/////
//public abstract int DeCompressByteValue(MarshalMemoryBlock source, int sourceAddr, List time, int timeTick, QueryValueMatchType type, HisQueryResult result);
/////
/////
/////
/////
/////
/////
/////
/////
/////
/////
//public abstract int DeCompressAllValue(MarshalMemoryBlock source, int sourceAddr, DateTime startTime, DateTime endTime, int timeTick, HisQueryResult result);
/////
/////
/////
/////
/////
/////
/////
//public abstract short? DeCompressShortValue(MarshalMemoryBlock source, int sourceAddr, DateTime time, int timeTick, QueryValueMatchType type);
/////
/////
/////
/////
/////
/////
/////
//public abstract int DeCompressShortValue(MarshalMemoryBlock source, int sourceAddr, List time, int timeTick, QueryValueMatchType type, HisQueryResult result);
/////
/////
/////
/////
/////
/////
/////
/////
/////
/////
//public abstract int DeCompressAllValue(MarshalMemoryBlock source, int sourceAddr, DateTime startTime, DateTime endTime, int timeTick, HisQueryResult result);
/////
/////
/////
/////
/////
/////
/////
//public abstract ushort? DeCompressUShortValue(MarshalMemoryBlock source, int sourceAddr, DateTime time, int timeTick, QueryValueMatchType type);
/////
/////
/////
/////
/////
/////
/////
//public abstract int DeCompressUShortValue(MarshalMemoryBlock source, int sourceAddr, List time, int timeTick, QueryValueMatchType type, HisQueryResult result);
/////
/////
/////
/////
/////
/////
/////
/////
/////
/////
//public abstract int DeCompressAllValue(MarshalMemoryBlock source, int sourceAddr, DateTime startTime, DateTime endTime, int timeTick, HisQueryResult result);
/////
/////
/////
/////
/////
/////
/////
//public abstract int? DeCompressIntValue(MarshalMemoryBlock source, int sourceAddr, DateTime time, int timeTick, QueryValueMatchType type);
/////
/////
/////
/////
/////
/////
/////
//public abstract int DeCompressIntValue(MarshalMemoryBlock source, int sourceAddr, List time, int timeTick, QueryValueMatchType type, HisQueryResult result);
/////
/////
/////
/////
/////
/////
/////
/////
/////
/////
//public abstract int DeCompressAllValue(MarshalMemoryBlock source, int sourceAddr, DateTime startTime, DateTime endTime, int timeTick, HisQueryResult result);
/////
/////
/////
/////
/////
/////
/////
//public abstract uint? DeCompressUIntValue(MarshalMemoryBlock source, int sourceAddr, DateTime time, int timeTick, QueryValueMatchType type);
/////
/////
/////
/////
/////
/////
/////
//public abstract int DeCompressUIntValue(MarshalMemoryBlock source, int sourceAddr, List time, int timeTick, QueryValueMatchType type, HisQueryResult result);
/////
/////
/////
/////
/////
/////
/////
/////
/////
/////
//public abstract int DeCompressAllValue(MarshalMemoryBlock source, int sourceAddr, DateTime startTime, DateTime endTime, int timeTick, HisQueryResult result);
/////
/////
/////
/////
/////
/////
/////
//public abstract long? DeCompressLongValue(MarshalMemoryBlock source, int sourceAddr, DateTime time, int timeTick, QueryValueMatchType type);
/////
/////
/////
/////
/////
/////
/////
//public abstract int DeCompressLongValue(MarshalMemoryBlock source, int sourceAddr, List time, int timeTick, QueryValueMatchType type, HisQueryResult result);
/////
/////
/////
/////
/////
/////
/////
/////
/////
/////
//public abstract int DeCompressAllValue(MarshalMemoryBlock source, int sourceAddr, DateTime startTime, DateTime endTime, int timeTick, HisQueryResult result);
/////
/////
/////
/////
/////
/////
/////
//public abstract ulong? DeCompressULongValue(MarshalMemoryBlock source, int sourceAddr, DateTime time, int timeTick, QueryValueMatchType type);
/////
/////
/////
/////
/////
/////
/////
//public abstract int DeCompressULongValue(MarshalMemoryBlock source, int sourceAddr, List time, int timeTick, QueryValueMatchType type, HisQueryResult result);
/////
/////
/////
/////
/////
/////
/////
/////
/////
/////
//public abstract int DeCompressAllValue(MarshalMemoryBlock source, int sourceAddr, DateTime startTime, DateTime endTime, int timeTick, HisQueryResult result);
/////
/////
/////
/////
/////
/////
/////
/////
//public abstract float? DeCompressFloatValue(MarshalMemoryBlock source, int sourceAddr, DateTime time, int timeTick, QueryValueMatchType type);
/////
/////
/////
/////
/////
/////
/////
/////
//public abstract int DeCompressFloatValue(MarshalMemoryBlock source, int sourceAddr, List time, int timeTick, QueryValueMatchType type, HisQueryResult result);
/////
/////
/////
/////
/////
/////
/////
/////
/////
/////
//public abstract int DeCompressAllValue(MarshalMemoryBlock source, int sourceAddr, DateTime startTime, DateTime endTime, int timeTick, HisQueryResult result);
/////
/////
/////
/////
/////
/////
/////
/////
//public abstract double? DeCompressDoubleValue(MarshalMemoryBlock source, int sourceAddr, DateTime time, int timeTick, QueryValueMatchType type);
/////
/////
/////
/////
/////
/////
/////
/////
//public abstract int DeCompressDoubleValue(MarshalMemoryBlock source, int sourceAddr, List time, int timeTick, QueryValueMatchType type, HisQueryResult result);
/////
/////
/////
/////
/////
/////
/////
/////
/////
/////
//public abstract int DeCompressAllValue(MarshalMemoryBlock source, int sourceAddr, DateTime startTime, DateTime endTime, int timeTick, HisQueryResult result);
/////
/////
/////
/////
/////
/////
/////
//public abstract DateTime? DeCompressDateTimeValue(MarshalMemoryBlock source, int sourceAddr, DateTime time, int timeTick, QueryValueMatchType type);
/////
/////
/////
/////
/////
/////
/////
//public abstract int DeCompressDateTimeValue(MarshalMemoryBlock source, int sourceAddr, List time, int timeTick, QueryValueMatchType type, HisQueryResult result);
/////
/////
/////
/////
/////
/////
/////
/////
/////
/////
//public abstract int DeCompressAllValue(MarshalMemoryBlock source, int sourceAddr, DateTime startTime, DateTime endTime, int timeTick, HisQueryResult result);
/////
/////
/////
/////
/////
/////
/////
//public abstract string DeCompressStringValue(MarshalMemoryBlock source, int sourceAddr, DateTime time, int timeTick, QueryValueMatchType type);
/////
/////
/////
/////
/////
/////
/////
//public abstract int DeCompressStringValue(MarshalMemoryBlock source, int sourceAddr, List time, int timeTick, QueryValueMatchType type, HisQueryResult result);
/////
/////
/////
/////
/////
/////
/////
/////
/////
/////
//public abstract int DeCompressAllValue(MarshalMemoryBlock source, int sourceAddr, DateTime startTime, DateTime endTime, int timeTick, HisQueryResult result);
///
///
///
///
///
///
///
///
///
///
///
public abstract int DeCompressAllValue(MarshalMemoryBlock source, int sourceAddr, DateTime startTime, DateTime endTime, int timeTick, HisQueryResult result);
///
///
///
///
///
///
///
///
///
///
///
public abstract int DeCompressValue(MarshalMemoryBlock source, int sourceAddr, List time, int timeTick, QueryValueMatchType type, HisQueryResult result);
///
///
///
///
///
///
///
///
///
///
public abstract object DeCompressValue(MarshalMemoryBlock source, int sourceAddr, DateTime time, int timeTick, QueryValueMatchType type);
/////
/////
/////
/////
/////
/////
/////
/////
/////
/////
//public abstract int DeCompressAllPointValue(MarshalMemoryBlock source, int sourceAddr, DateTime startTime, DateTime endTime, int timeTick, HisQueryResult result);
/////
/////
/////
/////
/////
/////
/////
/////
/////
/////
//public abstract T DeCompressPointValue(MarshalMemoryBlock source, int sourceAddr, DateTime time, int timeTick, QueryValueMatchType type);
/////
/////
/////
/////
/////
/////
/////
/////
/////
/////
/////
//public abstract int DeCompressPointValue(MarshalMemoryBlock source, int sourceAddr, List time, int timeTick, QueryValueMatchType type, HisQueryResult result);
public abstract CompressUnitbase Clone();
#endregion ...Methods...
#region ... Interfaces ...
#endregion ...Interfaces...
}
}