提交 628dfe72 编写于 作者: cdy816's avatar cdy816

日常更新

上级 5411eafd
......@@ -5,3 +5,4 @@ D:\Project\Galaxy\Cdy.Tag.Common\obj\Debug\netstandard2.0\Cdy.Tag.Common.Assembl
D:\Project\Galaxy\Cdy.Tag.Common\obj\Debug\netstandard2.0\Cdy.Tag.Common.AssemblyInfo.cs
D:\Project\Galaxy\Cdy.Tag.Common\obj\Debug\netstandard2.0\Cdy.Tag.Common.dll
D:\Project\Galaxy\Cdy.Tag.Common\obj\Debug\netstandard2.0\Cdy.Tag.Common.pdb
D:\Project\Galaxy\Cdy.Tag.Common\obj\Debug\netstandard2.0\Cdy.Tag.Common.csprojAssemblyReference.cache
......@@ -5,3 +5,4 @@ D:\Project\Galaxy\Cdy.Tag.CoreAPI\obj\Debug\netcoreapp3.1\Cdy.Tag.CoreAPI.Assemb
D:\Project\Galaxy\Cdy.Tag.CoreAPI\obj\Debug\netcoreapp3.1\Cdy.Tag.CoreAPI.AssemblyInfo.cs
D:\Project\Galaxy\Cdy.Tag.CoreAPI\obj\Debug\netcoreapp3.1\Cdy.Tag.CoreAPI.dll
D:\Project\Galaxy\Cdy.Tag.CoreAPI\obj\Debug\netcoreapp3.1\Cdy.Tag.CoreAPI.pdb
D:\Project\Galaxy\Cdy.Tag.CoreAPI\obj\Debug\netcoreapp3.1\Cdy.Tag.CoreAPI.csprojAssemblyReference.cache
......@@ -37,13 +37,19 @@ namespace Cdy.Tag
/// 单个文件保存数据时长
/// 单位小时
/// </summary>
public int FileDataDuration { get; set; } = 24;
public int FileDataDuration { get; set; } = 4;
/// <summary>
/// 单个数据块保存数据的时长
/// 单位分钟
/// </summary>
public int DataBlockDuration { get; set; } = 1;
public int DataBlockDuration { get; set; } = 10;
/// <summary>
/// 一个文件中变量的个数
/// </summary>
public int TagCountOneFile { get; set; } = 100000;
/// <summary>
/// 数据序列化类型
......
......@@ -5,3 +5,4 @@ D:\Project\Galaxy\Cdy.Tag\obj\Debug\netstandard2.0\Cdy.Tag.AssemblyInfoInputs.ca
D:\Project\Galaxy\Cdy.Tag\obj\Debug\netstandard2.0\Cdy.Tag.AssemblyInfo.cs
D:\Project\Galaxy\Cdy.Tag\obj\Debug\netstandard2.0\Cdy.Tag.dll
D:\Project\Galaxy\Cdy.Tag\obj\Debug\netstandard2.0\Cdy.Tag.pdb
D:\Project\Galaxy\Cdy.Tag\obj\Debug\netstandard2.0\Cdy.Tag.csprojAssemblyReference.cache
......@@ -75,8 +75,8 @@ namespace Cdy.Tag
public void CalMemory(long size)
{
/* 内存结构:head+数据区指针+数据区
head:数据起始地址(4)+变量数量(4)+起始时间(8)
数据区指针:[ID(4) + address(4) + datasize(4)]
head:数据大小(4)+变量数量(4)+起始时间(8)
数据区指针:[ID(4) + address(4)]
数据区:[data block]
data block:size+compressType+data
*/
......@@ -192,7 +192,7 @@ namespace Cdy.Tag
int headoffset = 16;
//数据区地址
int mTargetPosition = count * 12 + headoffset;
int mDataPosition = count * 8 + headoffset;
for (int i=0;i<count;i++)
{
......@@ -201,23 +201,23 @@ namespace Cdy.Tag
var len = mSourceMemory.ReadInt(offset + 8);
//压缩数据
var size = CompressBlockMemory(qaddr, mTargetPosition,len);
var size = CompressBlockMemory(qaddr, mDataPosition,len);
//更新头部指针区域数据
//写入变量ID
mTargetMemory.WriteInt(headoffset,id);
//写入数据区地址
mTargetMemory.WriteInt(headoffset + 4, mTargetPosition);
mTargetMemory.WriteInt(headoffset + 4, mDataPosition);
//写入数据区大小
mTargetMemory.WriteInt(headoffset + 8, size);
////写入数据区大小
//mTargetMemory.WriteInt(headoffset + 8, size);
offset += 12;
headoffset += 12;
mTargetPosition += size;
headoffset += 8;
//headoffset += 12;
mDataPosition += size;
}
mTargetMemory.WriteInt(0, mTargetPosition);//写入数据起始地址
mTargetMemory.WriteInt(0, mDataPosition);//写入数据的大小
mTargetMemory.WriteInt(4, count);//写入变量数量
mTargetMemory.WriteDatetime(8, mCurrentTime);//写入时间
}
......
......@@ -148,10 +148,11 @@ namespace Cdy.Tag
compressEnginer = new CompressEnginer(hisEnginer.CurrentMemory.Length);
var sf = DataFileSeriserManager.manager.GetSeriser( mHisDatabase.Setting.DataSeriser);
seriseEnginer = new SeriseEnginer(sf) { DatabaseName = database };
seriseEnginer = new SeriseEnginer() { DatabaseName = database };
seriseEnginer.FileDuration = mHisDatabase.Setting.FileDataDuration;
seriseEnginer.BlockDuration = mHisDatabase.Setting.DataBlockDuration;
seriseEnginer.TagCountOneFile = mHisDatabase.Setting.TagCountOneFile;
seriseEnginer.DataSeriser = mHisDatabase.Setting.DataSeriser;
querySerivce = new QuerySerivce(this.mDatabaseName);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册