Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
cdy816
Mars
提交
2511ba50
Mars
项目概览
cdy816
/
Mars
通知
3
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
Mars
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
2511ba50
编写于
9月 25, 2020
作者:
cdy816
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
日常更新
上级
f7f62ba2
变更
13
隐藏空白更改
内联
并排
Showing
13 changed file
with
212 addition
and
137 deletion
+212
-137
Develop/DBDevelopService/GrpcDBService.cs
Develop/DBDevelopService/GrpcDBService.cs
+1
-0
Develop/DBDevelopService/Service.cs
Develop/DBDevelopService/Service.cs
+17
-8
Develop/DBDevelopService/WebAPIDBService.cs
Develop/DBDevelopService/WebAPIDBService.cs
+9
-1
Develop/DBStudio/Program.cs
Develop/DBStudio/Program.cs
+23
-9
Develop/DbManager.Desktop/Properties/Resources.Designer.cs
Develop/DbManager.Desktop/Properties/Resources.Designer.cs
+9
-0
Develop/DbManager.Desktop/Properties/Resources.resx
Develop/DbManager.Desktop/Properties/Resources.resx
+3
-0
Develop/DbManager.Desktop/Properties/Resources.zh-CN.resx
Develop/DbManager.Desktop/Properties/Resources.zh-CN.resx
+3
-0
Develop/DbManager.Desktop/Properties/launchSettings.json
Develop/DbManager.Desktop/Properties/launchSettings.json
+1
-1
Develop/DbManager.Desktop/ViewModel/LoginViewModel.cs
Develop/DbManager.Desktop/ViewModel/LoginViewModel.cs
+10
-1
Example/Producter/SpiderDriverDemo/MainWindow.xaml
Example/Producter/SpiderDriverDemo/MainWindow.xaml
+2
-1
Example/Producter/SpiderDriverDemo/MainWindow.xaml.cs
Example/Producter/SpiderDriverDemo/MainWindow.xaml.cs
+18
-0
RunTime/DBRuntime/His/Compress/Special/LosslessCompressUnit2.cs
...e/DBRuntime/His/Compress/Special/LosslessCompressUnit2.cs
+20
-20
RunTime/DBRuntime/His/Compress/Special/NoneCompressUnit2.cs
RunTime/DBRuntime/His/Compress/Special/NoneCompressUnit2.cs
+96
-96
未找到文件。
Develop/DBDevelopService/GrpcDBService.cs
浏览文件 @
2511ba50
...
...
@@ -56,6 +56,7 @@ namespace DBDevelopService
{
try
{
LoggerService
.
Service
.
Info
(
"GrpcDBService"
,
"Ready to start to GrpcDBService......"
);
StartAsync
(
"0.0.0.0"
,
port
);
}
catch
(
Exception
ex
)
...
...
Develop/DBDevelopService/Service.cs
浏览文件 @
2511ba50
...
...
@@ -32,8 +32,9 @@ namespace DBDevelopService
DBDevelopService
.
SecurityManager
.
Manager
.
Init
();
//驱动初始化
Cdy
.
Tag
.
DriverManager
.
Manager
.
Init
();
//注册日志
ServiceLocator
.
Locator
.
Registor
<
ILog
>(
new
ConsoleLogger
());
////注册日志
//ServiceLocator.Locator.Registor<ILog>(new ConsoleLogger());
}
#
endregion
...
Constructor
...
...
...
@@ -49,12 +50,20 @@ namespace DBDevelopService
/// </summary>
public
void
Start
(
int
grpcPort
=
5001
,
int
webSocketPort
=
8000
,
bool
isEnableGrpc
=
true
,
bool
isEnableWebApi
=
true
)
{
DbManager
.
Instance
.
Load
();
if
(
isEnableGrpc
)
grpcDBService
.
Start
(
grpcPort
);
if
(
isEnableWebApi
)
webDBService
.
Start
(
webSocketPort
);
try
{
LoggerService
.
Service
.
Info
(
"Service"
,
"Ready to start...."
);
DbManager
.
Instance
.
Load
();
if
(
isEnableGrpc
)
grpcDBService
.
Start
(
grpcPort
);
if
(
isEnableWebApi
)
webDBService
.
Start
(
webSocketPort
);
}
catch
(
Exception
ex
)
{
LoggerService
.
Service
.
Erro
(
"Service"
,
"start "
+
ex
.
Message
);
}
}
/// <summary>
...
...
Develop/DBDevelopService/WebAPIDBService.cs
浏览文件 @
2511ba50
...
...
@@ -43,7 +43,15 @@ namespace DBDevelopService
/// </summary>
public
void
Start
(
int
port
)
{
StartAsync
(
"0.0.0.0"
,
port
);
try
{
LoggerService
.
Service
.
Info
(
"WebAPIDBService"
,
"Ready to start to WebAPI DBService....."
);
StartAsync
(
"0.0.0.0"
,
port
);
}
catch
(
Exception
ex
)
{
LoggerService
.
Service
.
Erro
(
"WebAPIDBService"
,
ex
.
Message
);
}
}
/// <summary>
...
...
Develop/DBStudio/Program.cs
浏览文件 @
2511ba50
...
...
@@ -63,7 +63,7 @@ namespace DBStudio
/// <summary>
///
/// </summary>
public
bool
IsGrpcEnable
{
get
;
set
;
}
public
bool
IsGrpcEnable
{
get
;
set
;
}
=
true
;
/// <summary>
///
...
...
@@ -79,14 +79,24 @@ namespace DBStudio
/// </summary>
public
void
Load
()
{
string
spath
=
System
.
IO
.
Path
.
Combine
(
System
.
IO
.
Path
.
GetDirectoryName
(
this
.
GetType
().
Assembly
.
FullName
),
"DbInStudioServer.cfg"
);
if
(
System
.
IO
.
File
.
Exists
(
spath
))
try
{
string
spath
=
System
.
IO
.
Path
.
Combine
(
System
.
IO
.
Path
.
GetDirectoryName
(
this
.
GetType
().
Assembly
.
Location
),
"DbInStudioServer.cfg"
);
LoggerService
.
Service
.
Info
(
"Config"
,
"Start to load config"
);
if
(
System
.
IO
.
File
.
Exists
(
spath
))
{
var
xxx
=
XElement
.
Load
(
spath
);
this
.
IsWebApiEnable
=
bool
.
Parse
(
xxx
.
Attribute
(
"IsWebApiEnable"
)?.
Value
);
this
.
IsGrpcEnable
=
bool
.
Parse
(
xxx
.
Attribute
(
"IsGrpcEnable"
)?.
Value
);
this
.
WebApiPort
=
int
.
Parse
(
xxx
.
Attribute
(
"WebApiPort"
)?.
Value
);
this
.
GrpcPort
=
int
.
Parse
(
xxx
.
Attribute
(
"GrpcPort"
)?.
Value
);
}
}
catch
(
Exception
ex
)
{
var
xxx
=
XElement
.
Load
(
spath
);
this
.
IsWebApiEnable
=
bool
.
Parse
(
xxx
.
Attribute
(
"IsWebApiEnable"
)?.
Value
);
this
.
IsGrpcEnable
=
bool
.
Parse
(
xxx
.
Attribute
(
"IsGrpcEnable"
)?.
Value
);
this
.
WebApiPort
=
int
.
Parse
(
xxx
.
Attribute
(
"WebApiPort"
)?.
Value
);
this
.
GrpcPort
=
int
.
Parse
(
xxx
.
Attribute
(
"GrpcPort"
)?.
Value
);
LoggerService
.
Service
.
Erro
(
"Config"
,
ex
.
Message
);
}
}
...
...
@@ -100,6 +110,10 @@ namespace DBStudio
static
void
Main
(
string
[]
args
)
{
LogoHelper
.
Print
();
//注册日志
ServiceLocator
.
Locator
.
Registor
<
ILog
>(
new
ConsoleLogger
());
Program
pg
=
new
Program
();
Config
.
Instance
.
Load
();
...
...
@@ -123,7 +137,7 @@ namespace DBStudio
AppDomain
.
CurrentDomain
.
UnhandledException
+=
CurrentDomain_UnhandledException
;
LogoHelper
.
Print
();
DBDevelopService
.
Service
.
Instanse
.
Start
(
port
,
webPort
,
Config
.
Instance
.
IsGrpcEnable
,
Config
.
Instance
.
IsWebApiEnable
);
Thread
.
Sleep
(
100
);
...
...
Develop/DbManager.Desktop/Properties/Resources.Designer.cs
浏览文件 @
2511ba50
...
...
@@ -384,6 +384,15 @@ namespace DBInStudio.Desktop.Properties {
}
}
/// <summary>
/// 查找类似 Manual 的本地化字符串。
/// </summary>
internal
static
string
Manual
{
get
{
return
ResourceManager
.
GetString
(
"Manual"
,
resourceCulture
);
}
}
/// <summary>
/// 查找类似 Welcome to Mars realtime iot database 的本地化字符串。
/// </summary>
...
...
Develop/DbManager.Desktop/Properties/Resources.resx
浏览文件 @
2511ba50
...
...
@@ -227,6 +227,9 @@
<data
name=
"MainwindowTitle"
xml:space=
"preserve"
>
<value>
Mars database developer
</value>
</data>
<data
name=
"Manual"
xml:space=
"preserve"
>
<value>
Manual
</value>
</data>
<data
name=
"MarsTitle"
xml:space=
"preserve"
>
<value>
Welcome to Mars realtime iot database
</value>
</data>
...
...
Develop/DbManager.Desktop/Properties/Resources.zh-CN.resx
浏览文件 @
2511ba50
...
...
@@ -227,6 +227,9 @@
<data
name=
"MainwindowTitle"
xml:space=
"preserve"
>
<value>
Mars数据库开发平台
</value>
</data>
<data
name=
"Manual"
xml:space=
"preserve"
>
<value>
手动
</value>
</data>
<data
name=
"MarsTitle"
xml:space=
"preserve"
>
<value>
欢迎来到Mars实时物联数据库
</value>
</data>
...
...
Develop/DbManager.Desktop/Properties/launchSettings.json
浏览文件 @
2511ba50
...
...
@@ -2,7 +2,7 @@
"profiles"
:
{
"DBInStudio.Desktop"
:
{
"commandName"
:
"Executable"
,
"executablePath"
:
"C:
\\
Users
\\
c
dy81
\\
source
\\
repos
\\
mars
\\
Output
\\
DBInStudio.exe"
"executablePath"
:
"C:
\\
Users
\\
c
hongdaoyang
\\
source
\\
repos
\\
mars
\\
Output
\\
DBInStudio.exe"
}
}
}
\ No newline at end of file
Develop/DbManager.Desktop/ViewModel/LoginViewModel.cs
浏览文件 @
2511ba50
...
...
@@ -176,9 +176,18 @@ namespace DBInStudio.Desktop.ViewModel
if
(
mServer
==
"127.0.0.1"
||
mServer
==
"localhost"
)
{
var
pps
=
Process
.
GetProcessesByName
(
"DBInStudioServer"
);
if
(
pps
==
null
||
pps
.
Length
==
0
)
{
Process
.
Start
(
"DBInStudioServer.exe"
).
WaitForExit
(
5000
);
try
{
var
vfile
=
System
.
IO
.
Path
.
Combine
(
System
.
IO
.
Path
.
GetDirectoryName
(
this
.
GetType
().
Assembly
.
Location
),
"DBInStudioServer.exe"
);
Process
.
Start
(
vfile
).
WaitForExit
(
5000
);
}
catch
{
}
}
}
}
...
...
Example/Producter/SpiderDriverDemo/MainWindow.xaml
浏览文件 @
2511ba50
...
...
@@ -5,7 +5,7 @@
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:SpiderDriverDemo"
mc:Ignorable="d"
Title="SpiderSim" Height="
290
" Width="634">
Title="SpiderSim" Height="
353
" Width="634">
<Grid>
<Button x:Name="Start" Content="Start" HorizontalAlignment="Left" Margin="502,33,0,0" VerticalAlignment="Top" Width="86" Click="Start_Click"/>
<Label Content="IP:" HorizontalAlignment="Left" Margin="31,33,0,0" VerticalAlignment="Top"/>
...
...
@@ -22,6 +22,7 @@
<Label Content="{Binding CosValue}" HorizontalAlignment="Left" Margin="102,164,0,0" VerticalAlignment="Top" Width="106"/>
<Label Content="{Binding BoolValue}" HorizontalAlignment="Left" Margin="102,207,0,0" VerticalAlignment="Top" Width="106"/>
<Label Content="{Binding DateTimeValue}" HorizontalAlignment="Left" Margin="102,247,0,0" VerticalAlignment="Top" Width="106"/>
<Button x:Name="hisDataWrite" Content="历史数据写入" HorizontalAlignment="Left" Margin="18,277,0,0" VerticalAlignment="Top" Width="86" Click="hisDataWrite_Click"/>
</Grid>
</Window>
Example/Producter/SpiderDriverDemo/MainWindow.xaml.cs
浏览文件 @
2511ba50
...
...
@@ -289,5 +289,23 @@ namespace SpiderDriverDemo
}
driverProxy
.
SetTagValue
(
values
);
}
/// <summary>
///
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private
void
hisDataWrite_Click
(
object
sender
,
RoutedEventArgs
e
)
{
List
<
TagValue
>
vals
=
new
List
<
TagValue
>();
DateTime
dt
=
DateTime
.
Now
.
AddSeconds
(-
100
);
Random
rd
=
new
Random
((
int
)
dt
.
Ticks
);
for
(
int
i
=
0
;
i
<
100
;
i
++)
{
vals
.
Add
(
new
TagValue
()
{
Quality
=
0
,
Time
=
dt
,
Value
=
rd
.
NextDouble
()
});
}
driverProxy
.
SetTagHisValue
(
0
,
TagType
.
Double
,
vals
);
}
}
}
RunTime/DBRuntime/His/Compress/Special/LosslessCompressUnit2.cs
浏览文件 @
2511ba50
...
...
@@ -71,45 +71,45 @@ namespace Cdy.Tag
switch
(
TagType
)
{
case
TagType
.
Bool
:
return
Compress
<
bool
>(
source
,
sourceAddr
,
target
,
targetAddr
+
8
,
size
,
TagType
)
+
8
;
return
Compress
<
bool
>(
source
,
sourceAddr
,
target
,
targetAddr
+
12
,
size
,
TagType
)
+
12
;
case
TagType
.
Byte
:
return
Compress
<
byte
>(
source
,
sourceAddr
,
target
,
targetAddr
+
8
,
size
,
TagType
)
+
8
;
return
Compress
<
byte
>(
source
,
sourceAddr
,
target
,
targetAddr
+
12
,
size
,
TagType
)
+
12
;
case
TagType
.
UShort
:
return
Compress
<
ushort
>(
source
,
sourceAddr
,
target
,
targetAddr
+
8
,
size
,
TagType
)
+
8
;
return
Compress
<
ushort
>(
source
,
sourceAddr
,
target
,
targetAddr
+
12
,
size
,
TagType
)
+
12
;
case
TagType
.
Short
:
return
Compress
<
short
>(
source
,
sourceAddr
,
target
,
targetAddr
+
8
,
size
,
TagType
)
+
8
;
return
Compress
<
short
>(
source
,
sourceAddr
,
target
,
targetAddr
+
12
,
size
,
TagType
)
+
12
;
case
TagType
.
UInt
:
return
Compress
<
uint
>(
source
,
sourceAddr
,
target
,
targetAddr
+
8
,
size
,
TagType
)
+
8
;
return
Compress
<
uint
>(
source
,
sourceAddr
,
target
,
targetAddr
+
12
,
size
,
TagType
)
+
12
;
case
TagType
.
Int
:
return
Compress
<
int
>(
source
,
sourceAddr
,
target
,
targetAddr
+
8
,
size
,
TagType
)
+
8
;
return
Compress
<
int
>(
source
,
sourceAddr
,
target
,
targetAddr
+
12
,
size
,
TagType
)
+
12
;
case
TagType
.
ULong
:
return
Compress
<
ulong
>(
source
,
sourceAddr
,
target
,
targetAddr
+
8
,
size
,
TagType
)
+
8
;
return
Compress
<
ulong
>(
source
,
sourceAddr
,
target
,
targetAddr
+
12
,
size
,
TagType
)
+
12
;
case
TagType
.
Long
:
return
Compress
<
long
>(
source
,
sourceAddr
,
target
,
targetAddr
+
8
,
size
,
TagType
)
+
8
;
return
Compress
<
long
>(
source
,
sourceAddr
,
target
,
targetAddr
+
12
,
size
,
TagType
)
+
12
;
case
TagType
.
Double
:
return
Compress
<
double
>(
source
,
sourceAddr
,
target
,
targetAddr
+
8
,
size
,
TagType
)
+
8
;
return
Compress
<
double
>(
source
,
sourceAddr
,
target
,
targetAddr
+
12
,
size
,
TagType
)
+
12
;
case
TagType
.
Float
:
return
Compress
<
float
>(
source
,
sourceAddr
,
target
,
targetAddr
+
8
,
size
,
TagType
)
+
8
;
return
Compress
<
float
>(
source
,
sourceAddr
,
target
,
targetAddr
+
12
,
size
,
TagType
)
+
12
;
case
TagType
.
String
:
return
Compress
<
string
>(
source
,
sourceAddr
,
target
,
targetAddr
+
8
,
size
,
TagType
)
+
8
;
return
Compress
<
string
>(
source
,
sourceAddr
,
target
,
targetAddr
+
12
,
size
,
TagType
)
+
12
;
case
TagType
.
IntPoint
:
return
Compress
<
IntPointData
>(
source
,
sourceAddr
,
target
,
targetAddr
+
8
,
size
,
TagType
)
+
8
;
return
Compress
<
IntPointData
>(
source
,
sourceAddr
,
target
,
targetAddr
+
12
,
size
,
TagType
)
+
12
;
case
TagType
.
UIntPoint
:
return
Compress
<
UIntPointData
>(
source
,
sourceAddr
,
target
,
targetAddr
+
8
,
size
,
TagType
)
+
8
;
return
Compress
<
UIntPointData
>(
source
,
sourceAddr
,
target
,
targetAddr
+
12
,
size
,
TagType
)
+
12
;
case
TagType
.
LongPoint
:
return
Compress
<
LongPointData
>(
source
,
sourceAddr
,
target
,
targetAddr
+
8
,
size
,
TagType
)
+
8
;
return
Compress
<
LongPointData
>(
source
,
sourceAddr
,
target
,
targetAddr
+
12
,
size
,
TagType
)
+
12
;
case
TagType
.
ULongPoint
:
return
Compress
<
ULongPointData
>(
source
,
sourceAddr
,
target
,
targetAddr
+
8
,
size
,
TagType
)
+
8
;
return
Compress
<
ULongPointData
>(
source
,
sourceAddr
,
target
,
targetAddr
+
12
,
size
,
TagType
)
+
12
;
case
TagType
.
IntPoint3
:
return
Compress
<
IntPoint3Data
>(
source
,
sourceAddr
,
target
,
targetAddr
+
8
,
size
,
TagType
)
+
8
;
return
Compress
<
IntPoint3Data
>(
source
,
sourceAddr
,
target
,
targetAddr
+
12
,
size
,
TagType
)
+
12
;
case
TagType
.
UIntPoint3
:
return
Compress
<
UIntPoint3Data
>(
source
,
sourceAddr
,
target
,
targetAddr
+
8
,
size
,
TagType
)
+
8
;
return
Compress
<
UIntPoint3Data
>(
source
,
sourceAddr
,
target
,
targetAddr
+
12
,
size
,
TagType
)
+
12
;
case
TagType
.
LongPoint3
:
return
Compress
<
LongPoint3Data
>(
source
,
sourceAddr
,
target
,
targetAddr
+
8
,
size
,
TagType
)
+
8
;
return
Compress
<
LongPoint3Data
>(
source
,
sourceAddr
,
target
,
targetAddr
+
12
,
size
,
TagType
)
+
12
;
case
TagType
.
ULongPoint3
:
return
Compress
<
ULongPoint3Data
>(
source
,
sourceAddr
,
target
,
targetAddr
+
8
,
size
,
TagType
)
+
8
;
return
Compress
<
ULongPoint3Data
>(
source
,
sourceAddr
,
target
,
targetAddr
+
12
,
size
,
TagType
)
+
12
;
}
return
8
+
4
;
return
12
;
}
///// <summary>
...
...
RunTime/DBRuntime/His/Compress/Special/NoneCompressUnit2.cs
浏览文件 @
2511ba50
...
...
@@ -50,11 +50,11 @@ namespace Cdy.Tag
{
// LoggerService.Service.Erro("NoneCompressUnit", "目标地址:"+targetAddr +" 数值地址: " + (targetAddr+10) +" 变量个数: "+ (size - this.QulityOffset));
target
.
WriteDatetime
(
targetAddr
,
this
.
StartTime
);
target
.
Write
((
ushor
t
)(
size
-
this
.
QulityOffset
));
//写入值的个数
target
.
Write
((
in
t
)(
size
-
this
.
QulityOffset
));
//写入值的个数
target
.
Write
(
TimeTick
);
if
(
size
>
0
)
source
.
CopyTo
(
target
,
sourceAddr
,
targetAddr
+
1
0
,
size
);
return
size
+
1
4
;
source
.
CopyTo
(
target
,
sourceAddr
,
targetAddr
+
1
6
,
size
);
return
size
+
1
6
;
}
/// <summary>
...
...
@@ -72,7 +72,7 @@ namespace Cdy.Tag
startTime
=
source
.
ReadDateTime
();
//读取值的个数
int
qoffset
=
source
.
Read
UShor
t
();
int
qoffset
=
source
.
Read
In
t
();
valueCount
=
qoffset
;
//读取时间单位
...
...
@@ -131,9 +131,9 @@ namespace Cdy.Tag
var
qs
=
ReadTimeQulity
(
source
,
sourceAddr
,
out
valuecount
,
out
time
);
//读取质量戳,时间戳2个字节,值8个字节,质量戳1个字节
var
qq
=
source
.
ReadBytes
(
valuecount
*
3
+
1
0
+
sourceAddr
,
valuecount
);
var
qq
=
source
.
ReadBytes
(
valuecount
*
3
+
1
6
+
sourceAddr
,
valuecount
);
var
valaddr
=
valuecount
*
2
+
1
0
+
sourceAddr
;
var
valaddr
=
valuecount
*
2
+
1
6
+
sourceAddr
;
var
vals
=
source
.
ReadBytes
(
valaddr
,
valuecount
);
...
...
@@ -172,9 +172,9 @@ namespace Cdy.Tag
var
qs
=
ReadTimeQulity
(
source
,
sourceAddr
,
out
valuecount
,
out
time
);
//读取质量戳,时间戳2个字节,值8个字节,质量戳1个字节
var
qq
=
source
.
ReadBytes
(
valuecount
*
3
+
1
0
+
sourceAddr
,
valuecount
);
var
qq
=
source
.
ReadBytes
(
valuecount
*
3
+
1
6
+
sourceAddr
,
valuecount
);
var
valaddr
=
valuecount
*
2
+
1
0
+
sourceAddr
;
var
valaddr
=
valuecount
*
2
+
1
6
+
sourceAddr
;
var
vals
=
source
.
ReadBytes
(
valaddr
,
valuecount
);
...
...
@@ -238,9 +238,9 @@ namespace Cdy.Tag
var
qs
=
ReadTimeQulity
(
source
,
sourceAddr
,
out
valuecount
,
out
time
);
//读取质量戳,时间戳2个字节,值8个字节,质量戳1个字节
var
qq
=
source
.
ReadBytes
(
valuecount
*
4
+
1
0
+
sourceAddr
,
valuecount
);
var
qq
=
source
.
ReadBytes
(
valuecount
*
4
+
1
6
+
sourceAddr
,
valuecount
);
var
valaddr
=
valuecount
*
2
+
1
0
+
sourceAddr
;
var
valaddr
=
valuecount
*
2
+
1
6
+
sourceAddr
;
var
vals
=
source
.
ReadShorts
(
valaddr
,
valuecount
);
...
...
@@ -304,9 +304,9 @@ namespace Cdy.Tag
var
qs
=
ReadTimeQulity
(
source
,
sourceAddr
,
out
valuecount
,
out
time
);
//读取质量戳,时间戳2个字节,值8个字节,质量戳1个字节
var
qq
=
source
.
ReadBytes
(
valuecount
*
4
+
1
0
+
sourceAddr
,
valuecount
);
var
qq
=
source
.
ReadBytes
(
valuecount
*
4
+
1
6
+
sourceAddr
,
valuecount
);
var
valaddr
=
valuecount
*
2
+
1
0
+
sourceAddr
;
var
valaddr
=
valuecount
*
2
+
1
6
+
sourceAddr
;
var
vals
=
source
.
ReadUShorts
(
valaddr
,
valuecount
);
...
...
@@ -370,9 +370,9 @@ namespace Cdy.Tag
var
qs
=
ReadTimeQulity
(
source
,
sourceAddr
,
out
valuecount
,
out
time
);
//读取质量戳,时间戳2个字节,值8个字节,质量戳1个字节
var
qq
=
source
.
ReadBytes
(
valuecount
*
6
+
1
0
+
sourceAddr
,
valuecount
);
var
qq
=
source
.
ReadBytes
(
valuecount
*
6
+
1
6
+
sourceAddr
,
valuecount
);
var
valaddr
=
valuecount
*
2
+
1
0
+
sourceAddr
;
var
valaddr
=
valuecount
*
2
+
1
6
+
sourceAddr
;
var
vals
=
source
.
ReadInts
(
valaddr
,
valuecount
);
...
...
@@ -436,9 +436,9 @@ namespace Cdy.Tag
var
qs
=
ReadTimeQulity
(
source
,
sourceAddr
,
out
valuecount
,
out
time
);
//读取质量戳,时间戳2个字节,值8个字节,质量戳1个字节
var
qq
=
source
.
ReadBytes
(
valuecount
*
6
+
1
0
+
sourceAddr
,
valuecount
);
var
qq
=
source
.
ReadBytes
(
valuecount
*
6
+
1
6
+
sourceAddr
,
valuecount
);
var
valaddr
=
valuecount
*
2
+
1
0
+
sourceAddr
;
var
valaddr
=
valuecount
*
2
+
1
6
+
sourceAddr
;
var
vals
=
source
.
ReadUInts
(
valaddr
,
valuecount
);
...
...
@@ -501,9 +501,9 @@ namespace Cdy.Tag
var
qs
=
ReadTimeQulity
(
source
,
sourceAddr
,
out
valuecount
,
out
time
);
//读取质量戳,时间戳2个字节,值8个字节,质量戳1个字节
var
qq
=
source
.
ReadBytes
(
valuecount
*
10
+
1
0
+
sourceAddr
,
valuecount
);
var
qq
=
source
.
ReadBytes
(
valuecount
*
10
+
1
6
+
sourceAddr
,
valuecount
);
var
valaddr
=
valuecount
*
2
+
1
0
+
sourceAddr
;
var
valaddr
=
valuecount
*
2
+
1
6
+
sourceAddr
;
var
vals
=
source
.
ReadLongs
(
valaddr
,
valuecount
);
...
...
@@ -566,9 +566,9 @@ namespace Cdy.Tag
var
qs
=
ReadTimeQulity
(
source
,
sourceAddr
,
out
valuecount
,
out
time
);
//读取质量戳,时间戳2个字节,值8个字节,质量戳1个字节
var
qq
=
source
.
ReadBytes
(
valuecount
*
10
+
1
0
+
sourceAddr
,
valuecount
);
var
qq
=
source
.
ReadBytes
(
valuecount
*
10
+
1
6
+
sourceAddr
,
valuecount
);
var
valaddr
=
valuecount
*
2
+
1
0
+
sourceAddr
;
var
valaddr
=
valuecount
*
2
+
1
6
+
sourceAddr
;
var
vals
=
source
.
ReadULongs
(
valaddr
,
valuecount
);
...
...
@@ -632,9 +632,9 @@ namespace Cdy.Tag
var
qs
=
ReadTimeQulity
(
source
,
sourceAddr
,
out
valuecount
,
out
time
);
//读取质量戳,时间戳2个字节,值8个字节,质量戳1个字节
var
qq
=
source
.
ReadBytes
(
valuecount
*
6
+
1
0
+
sourceAddr
,
valuecount
);
var
qq
=
source
.
ReadBytes
(
valuecount
*
6
+
1
6
+
sourceAddr
,
valuecount
);
var
valaddr
=
valuecount
*
2
+
1
0
+
sourceAddr
;
var
valaddr
=
valuecount
*
2
+
1
6
+
sourceAddr
;
var
vals
=
source
.
ReadFloats
(
valaddr
,
valuecount
);
...
...
@@ -688,33 +688,33 @@ namespace Cdy.Tag
/// <param name="timeTick"></param>
/// <param name="result"></param>
/// <returns></returns>
public
int
DeCompressAllValue
(
MarshalMemoryBlock
source
,
int
sourceAddr
,
DateTime
startTime
,
DateTime
endTime
,
int
timeTick
,
HisQueryResult
<
double
>
result
)
public
int
DeCompressAllValue
(
MarshalMemoryBlock
source
,
int
sourceAddr
,
DateTime
startTime
,
DateTime
endTime
,
int
timeTick
,
HisQueryResult
<
double
>
result
)
{
DateTime
time
;
int
valuecount
=
0
;
var
qs
=
ReadTimeQulity
(
source
,
sourceAddr
,
out
valuecount
,
out
time
);
var
qs
=
ReadTimeQulity
(
source
,
sourceAddr
,
out
valuecount
,
out
time
);
//读取质量戳,时间戳2个字节,值8个字节,质量戳1个字节
var
qq
=
source
.
ReadBytes
(
valuecount
*
10
+
10
+
sourceAddr
,
valuecount
);
var
qq
=
source
.
ReadBytes
(
valuecount
*
10
+
16
+
sourceAddr
,
valuecount
);
var
valaddr
=
valuecount
*
2
+
10
+
sourceAddr
;
var
valaddr
=
valuecount
*
2
+
16
+
sourceAddr
;
var
vals
=
source
.
ReadDoubleByMemory
(
valaddr
,
valuecount
);
int
i
=
0
;
int
rcount
=
0
;
for
(
i
=
0
;
i
<
valuecount
;
i
++)
for
(
i
=
0
;
i
<
valuecount
;
i
++)
{
if
(
qs
[
i
].
Item2
&&
qq
[
i
]<
100
&&
qs
[
i
].
Item1
>=
startTime
&&
qs
[
i
].
Item1
<
endTime
)
if
(
qs
[
i
].
Item2
&&
qq
[
i
]
<
100
&&
qs
[
i
].
Item1
>=
startTime
&&
qs
[
i
].
Item1
<
endTime
)
{
result
.
Add
(
vals
.
Span
[
i
],
qs
[
i
].
Item1
,
qq
[
i
]);
rcount
++;
}
}
return
rcount
;
}
...
...
@@ -737,9 +737,9 @@ namespace Cdy.Tag
var
qs
=
ReadTimeQulity
(
source
,
sourceAddr
,
out
valuecount
,
out
time
);
//读取质量戳,时间戳2个字节,值8个字节,质量戳1个字节
var
qq
=
source
.
ReadBytes
(
valuecount
*
10
+
1
0
+
sourceAddr
,
valuecount
);
var
qq
=
source
.
ReadBytes
(
valuecount
*
10
+
1
6
+
sourceAddr
,
valuecount
);
var
valaddr
=
valuecount
*
2
+
1
0
+
sourceAddr
;
var
valaddr
=
valuecount
*
2
+
1
6
+
sourceAddr
;
var
vals
=
source
.
ReadDateTimes
(
valaddr
,
valuecount
);
...
...
@@ -800,7 +800,7 @@ namespace Cdy.Tag
int
valuecount
=
0
;
var
qs
=
ReadTimeQulity
(
source
,
sourceAddr
,
out
valuecount
,
out
time
);
var
valaddr
=
qs
.
Count
*
2
+
10
+
sourceAddr
;
var
valaddr
=
qs
.
Count
*
2
+
16
+
sourceAddr
;
int
i
=
0
;
int
rcount
=
0
;
...
...
@@ -883,11 +883,11 @@ namespace Cdy.Tag
DateTime
stime
;
int
valuecount
=
0
;
var
qs
=
ReadTimeQulity
(
source
,
sourceAddr
,
out
valuecount
,
out
stime
);
var
qq
=
source
.
ReadBytes
(
valuecount
*
3
+
1
0
+
sourceAddr
,
valuecount
);
var
qq
=
source
.
ReadBytes
(
valuecount
*
3
+
1
6
+
sourceAddr
,
valuecount
);
var
vv
=
qs
.
ToArray
();
var
valaddr
=
qs
.
Count
*
2
+
10
+
sourceAddr
;
var
valaddr
=
qs
.
Count
*
2
+
16
+
sourceAddr
;
int
count
=
0
;
int
icount
=
0
;
...
...
@@ -1012,11 +1012,11 @@ namespace Cdy.Tag
DateTime
stime
;
int
valuecount
=
0
;
var
qs
=
ReadTimeQulity
(
source
,
sourceAddr
,
out
valuecount
,
out
stime
);
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
3
+
10
+
sourceAddr
,
qs
.
Count
);
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
3
+
16
+
sourceAddr
,
qs
.
Count
);
var
vv
=
qs
.
ToArray
();
var
valaddr
=
qs
.
Count
*
2
+
10
+
sourceAddr
;
var
valaddr
=
qs
.
Count
*
2
+
16
+
sourceAddr
;
int
count
=
0
;
int
icount
=
0
;
...
...
@@ -1141,11 +1141,11 @@ namespace Cdy.Tag
DateTime
stime
;
int
valuecount
=
0
;
var
qs
=
ReadTimeQulity
(
source
,
sourceAddr
,
out
valuecount
,
out
stime
);
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
10
+
10
+
sourceAddr
,
qs
.
Count
);
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
10
+
16
+
sourceAddr
,
qs
.
Count
);
var
vv
=
qs
.
ToArray
();
var
valaddr
=
qs
.
Count
*
2
+
10
+
sourceAddr
;
var
valaddr
=
qs
.
Count
*
2
+
16
+
sourceAddr
;
int
count
=
0
;
int
icount
=
0
;
...
...
@@ -1272,11 +1272,11 @@ namespace Cdy.Tag
DateTime
stime
;
int
valuecount
=
0
;
var
qs
=
ReadTimeQulity
(
source
,
sourceAddr
,
out
valuecount
,
out
stime
);
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
10
+
10
+
sourceAddr
,
qs
.
Count
);
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
10
+
16
+
sourceAddr
,
qs
.
Count
);
var
vv
=
qs
.
ToArray
();
var
valaddr
=
qs
.
Count
*
2
+
10
+
sourceAddr
;
var
valaddr
=
qs
.
Count
*
2
+
16
+
sourceAddr
;
int
count
=
0
;
...
...
@@ -1419,11 +1419,11 @@ namespace Cdy.Tag
DateTime
stime
;
int
valuecount
=
0
;
var
qs
=
ReadTimeQulity
(
source
,
sourceAddr
,
out
valuecount
,
out
stime
);
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
6
+
1
0
+
sourceAddr
,
qs
.
Count
);
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
6
+
1
6
+
sourceAddr
,
qs
.
Count
);
var
vv
=
qs
.
ToArray
();
var
valaddr
=
qs
.
Count
*
2
+
1
0
+
sourceAddr
;
var
valaddr
=
qs
.
Count
*
2
+
1
6
+
sourceAddr
;
int
count
=
0
;
int
icount
=
0
;
...
...
@@ -1657,11 +1657,11 @@ namespace Cdy.Tag
DateTime
stime
;
int
valuecount
=
0
;
var
qs
=
ReadTimeQulity
(
source
,
sourceAddr
,
out
valuecount
,
out
stime
);
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
6
+
1
0
+
sourceAddr
,
qs
.
Count
);
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
6
+
1
6
+
sourceAddr
,
qs
.
Count
);
var
vv
=
qs
.
ToArray
();
var
valaddr
=
qs
.
Count
*
2
+
1
0
+
sourceAddr
;
var
valaddr
=
qs
.
Count
*
2
+
1
6
+
sourceAddr
;
int
count
=
0
;
int
icount
=
0
;
int
icount1
=
0
;
...
...
@@ -1895,11 +1895,11 @@ namespace Cdy.Tag
DateTime
stime
;
int
valuecount
=
0
;
var
qs
=
ReadTimeQulity
(
source
,
sourceAddr
,
out
valuecount
,
out
stime
);
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
10
+
1
0
+
sourceAddr
,
qs
.
Count
);
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
10
+
1
6
+
sourceAddr
,
qs
.
Count
);
var
vv
=
qs
.
ToArray
();
var
valaddr
=
qs
.
Count
*
2
+
1
0
+
sourceAddr
;
var
valaddr
=
qs
.
Count
*
2
+
1
6
+
sourceAddr
;
int
count
=
0
;
int
icount
=
0
;
...
...
@@ -2140,11 +2140,11 @@ namespace Cdy.Tag
DateTime
stime
;
int
valuecount
=
0
;
var
qs
=
ReadTimeQulity
(
source
,
sourceAddr
,
out
valuecount
,
out
stime
);
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
4
+
1
0
+
sourceAddr
,
qs
.
Count
);
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
4
+
1
6
+
sourceAddr
,
qs
.
Count
);
var
vv
=
qs
.
ToArray
();
var
valaddr
=
qs
.
Count
*
2
+
1
0
+
sourceAddr
;
var
valaddr
=
qs
.
Count
*
2
+
1
6
+
sourceAddr
;
int
count
=
0
;
int
icount
=
0
;
int
icount1
=
0
;
...
...
@@ -2586,11 +2586,11 @@ namespace Cdy.Tag
DateTime
stime
;
int
valuecount
=
0
;
var
qs
=
ReadTimeQulity
(
source
,
sourceAddr
,
out
valuecount
,
out
stime
);
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
6
+
1
0
+
sourceAddr
,
qs
.
Count
);
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
6
+
1
6
+
sourceAddr
,
qs
.
Count
);
var
vv
=
qs
.
ToArray
();
var
valaddr
=
qs
.
Count
*
2
+
1
0
+
sourceAddr
;
var
valaddr
=
qs
.
Count
*
2
+
1
6
+
sourceAddr
;
int
count
=
0
;
int
icount
=
0
;
int
icount1
=
0
;
...
...
@@ -2827,11 +2827,11 @@ namespace Cdy.Tag
DateTime
stime
;
int
valuecount
=
0
;
var
qs
=
ReadTimeQulity
(
source
,
sourceAddr
,
out
valuecount
,
out
stime
);
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
10
+
1
0
+
sourceAddr
,
qs
.
Count
);
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
10
+
1
6
+
sourceAddr
,
qs
.
Count
);
var
vv
=
qs
.
ToArray
();
var
valaddr
=
qs
.
Count
*
2
+
1
0
+
sourceAddr
;
var
valaddr
=
qs
.
Count
*
2
+
1
6
+
sourceAddr
;
int
count
=
0
;
int
icount
=
0
;
int
icount1
=
0
;
...
...
@@ -3068,11 +3068,11 @@ namespace Cdy.Tag
DateTime
stime
;
int
valuecount
=
0
;
var
qs
=
ReadTimeQulity
(
source
,
sourceAddr
,
out
valuecount
,
out
stime
);
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
4
+
1
0
+
sourceAddr
,
qs
.
Count
);
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
4
+
1
6
+
sourceAddr
,
qs
.
Count
);
var
vv
=
qs
.
ToArray
();
var
valaddr
=
qs
.
Count
*
2
+
1
0
+
sourceAddr
;
var
valaddr
=
qs
.
Count
*
2
+
1
6
+
sourceAddr
;
int
count
=
0
;
int
icount
=
0
;
int
icount1
=
0
;
...
...
@@ -3505,9 +3505,9 @@ namespace Cdy.Tag
if
(
typeof
(
T
)
==
typeof
(
IntPointData
))
{
//读取质量戳,时间戳2个字节,值8个字节,质量戳1个字节
var
qq
=
source
.
ReadBytes
(
valuecount
*
10
+
1
0
+
sourceAddr
,
valuecount
);
var
qq
=
source
.
ReadBytes
(
valuecount
*
10
+
1
6
+
sourceAddr
,
valuecount
);
var
valaddr
=
valuecount
*
2
+
1
0
+
sourceAddr
;
var
valaddr
=
valuecount
*
2
+
1
6
+
sourceAddr
;
var
vals
=
source
.
ReadInts
(
valaddr
,
valuecount
*
2
);
...
...
@@ -3524,9 +3524,9 @@ namespace Cdy.Tag
else
if
(
typeof
(
T
)
==
typeof
(
UIntPointData
))
{
//读取质量戳,时间戳2个字节,值8个字节,质量戳1个字节
var
qq
=
source
.
ReadBytes
(
valuecount
*
10
+
1
0
+
sourceAddr
,
valuecount
);
var
qq
=
source
.
ReadBytes
(
valuecount
*
10
+
1
6
+
sourceAddr
,
valuecount
);
var
valaddr
=
valuecount
*
2
+
1
0
+
sourceAddr
;
var
valaddr
=
valuecount
*
2
+
1
6
+
sourceAddr
;
var
vals
=
source
.
ReadUInts
(
valaddr
,
valuecount
*
2
);
...
...
@@ -3543,9 +3543,9 @@ namespace Cdy.Tag
else
if
(
typeof
(
T
)
==
typeof
(
IntPoint3Data
))
{
//读取质量戳,时间戳2个字节,值12个字节,质量戳1个字节
var
qq
=
source
.
ReadBytes
(
valuecount
*
14
+
1
0
+
sourceAddr
,
valuecount
);
var
qq
=
source
.
ReadBytes
(
valuecount
*
14
+
1
6
+
sourceAddr
,
valuecount
);
var
valaddr
=
valuecount
*
2
+
1
0
+
sourceAddr
;
var
valaddr
=
valuecount
*
2
+
1
6
+
sourceAddr
;
var
vals
=
source
.
ReadInts
(
valaddr
,
valuecount
*
3
);
...
...
@@ -3562,9 +3562,9 @@ namespace Cdy.Tag
else
if
(
typeof
(
T
)
==
typeof
(
UIntPoint3Data
))
{
//读取质量戳,时间戳2个字节,值12个字节,质量戳1个字节
var
qq
=
source
.
ReadBytes
(
valuecount
*
14
+
1
0
+
sourceAddr
,
valuecount
);
var
qq
=
source
.
ReadBytes
(
valuecount
*
14
+
1
6
+
sourceAddr
,
valuecount
);
var
valaddr
=
valuecount
*
2
+
1
0
+
sourceAddr
;
var
valaddr
=
valuecount
*
2
+
1
6
+
sourceAddr
;
var
vals
=
source
.
ReadUInts
(
valaddr
,
valuecount
*
3
);
...
...
@@ -3581,9 +3581,9 @@ namespace Cdy.Tag
else
if
(
typeof
(
T
)
==
typeof
(
LongPointData
))
{
//读取质量戳,时间戳2个字节,值16个字节,质量戳1个字节
var
qq
=
source
.
ReadBytes
(
valuecount
*
18
+
1
0
+
sourceAddr
,
valuecount
);
var
qq
=
source
.
ReadBytes
(
valuecount
*
18
+
1
6
+
sourceAddr
,
valuecount
);
var
valaddr
=
valuecount
*
2
+
1
0
+
sourceAddr
;
var
valaddr
=
valuecount
*
2
+
1
6
+
sourceAddr
;
var
vals
=
source
.
ReadLongs
(
valaddr
,
valuecount
*
2
);
...
...
@@ -3600,9 +3600,9 @@ namespace Cdy.Tag
else
if
(
typeof
(
T
)
==
typeof
(
ULongPointData
))
{
//读取质量戳,时间戳2个字节,值8个字节,质量戳1个字节
var
qq
=
source
.
ReadBytes
(
valuecount
*
18
+
1
0
+
sourceAddr
,
valuecount
);
var
qq
=
source
.
ReadBytes
(
valuecount
*
18
+
1
6
+
sourceAddr
,
valuecount
);
var
valaddr
=
valuecount
*
2
+
1
0
+
sourceAddr
;
var
valaddr
=
valuecount
*
2
+
1
6
+
sourceAddr
;
var
vals
=
source
.
ReadULongs
(
valaddr
,
valuecount
*
2
);
...
...
@@ -3619,9 +3619,9 @@ namespace Cdy.Tag
else
if
(
typeof
(
T
)
==
typeof
(
LongPoint3Data
))
{
//读取质量戳,时间戳2个字节,值24个字节,质量戳1个字节
var
qq
=
source
.
ReadBytes
(
valuecount
*
26
+
1
0
+
sourceAddr
,
valuecount
);
var
qq
=
source
.
ReadBytes
(
valuecount
*
26
+
1
6
+
sourceAddr
,
valuecount
);
var
valaddr
=
valuecount
*
2
+
1
0
+
sourceAddr
;
var
valaddr
=
valuecount
*
2
+
1
6
+
sourceAddr
;
var
vals
=
source
.
ReadLongs
(
valaddr
,
valuecount
*
3
);
...
...
@@ -3638,9 +3638,9 @@ namespace Cdy.Tag
else
if
(
typeof
(
T
)
==
typeof
(
ULongPoint3Data
))
{
//读取质量戳,时间戳2个字节,值8个字节,质量戳1个字节
var
qq
=
source
.
ReadBytes
(
valuecount
*
26
+
1
0
+
sourceAddr
,
valuecount
);
var
qq
=
source
.
ReadBytes
(
valuecount
*
26
+
1
6
+
sourceAddr
,
valuecount
);
var
valaddr
=
valuecount
*
2
+
1
0
+
sourceAddr
;
var
valaddr
=
valuecount
*
2
+
1
6
+
sourceAddr
;
var
vals
=
source
.
ReadULongs
(
valaddr
,
valuecount
*
3
);
...
...
@@ -3678,8 +3678,8 @@ namespace Cdy.Tag
if
(
typeof
(
T
)
==
typeof
(
IntPointData
))
{
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
10
+
1
0
+
sourceAddr
,
qs
.
Count
);
var
valaddr
=
qs
.
Count
*
2
+
1
0
+
sourceAddr
;
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
10
+
1
6
+
sourceAddr
,
qs
.
Count
);
var
valaddr
=
qs
.
Count
*
2
+
1
6
+
sourceAddr
;
for
(
int
i
=
0
;
i
<
vv
.
Length
-
1
;
i
=
i
+
2
)
{
...
...
@@ -3749,8 +3749,8 @@ namespace Cdy.Tag
else
if
(
typeof
(
T
)
==
typeof
(
UIntPointData
))
{
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
10
+
1
0
+
sourceAddr
,
qs
.
Count
);
var
valaddr
=
qs
.
Count
*
2
+
1
0
+
sourceAddr
;
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
10
+
1
6
+
sourceAddr
,
qs
.
Count
);
var
valaddr
=
qs
.
Count
*
2
+
1
6
+
sourceAddr
;
for
(
int
i
=
0
;
i
<
vv
.
Length
-
1
;
i
=
i
+
2
)
{
...
...
@@ -3820,8 +3820,8 @@ namespace Cdy.Tag
else
if
(
typeof
(
T
)
==
typeof
(
LongPointData
))
{
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
18
+
1
0
+
sourceAddr
,
qs
.
Count
);
var
valaddr
=
qs
.
Count
*
2
+
1
0
+
sourceAddr
;
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
18
+
1
6
+
sourceAddr
,
qs
.
Count
);
var
valaddr
=
qs
.
Count
*
2
+
1
6
+
sourceAddr
;
for
(
int
i
=
0
;
i
<
vv
.
Length
-
1
;
i
=
i
+
2
)
{
...
...
@@ -3891,8 +3891,8 @@ namespace Cdy.Tag
else
if
(
typeof
(
T
)
==
typeof
(
ULongPointData
))
{
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
18
+
1
0
+
sourceAddr
,
qs
.
Count
);
var
valaddr
=
qs
.
Count
*
2
+
1
0
+
sourceAddr
;
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
18
+
1
6
+
sourceAddr
,
qs
.
Count
);
var
valaddr
=
qs
.
Count
*
2
+
1
6
+
sourceAddr
;
for
(
int
i
=
0
;
i
<
vv
.
Length
-
1
;
i
=
i
+
2
)
{
...
...
@@ -3962,8 +3962,8 @@ namespace Cdy.Tag
else
if
(
typeof
(
T
)
==
typeof
(
IntPoint3Data
))
{
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
14
+
1
0
+
sourceAddr
,
qs
.
Count
);
var
valaddr
=
qs
.
Count
*
2
+
1
0
+
sourceAddr
;
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
14
+
1
6
+
sourceAddr
,
qs
.
Count
);
var
valaddr
=
qs
.
Count
*
2
+
1
6
+
sourceAddr
;
for
(
int
i
=
0
;
i
<
vv
.
Length
-
1
;
i
=
i
+
3
)
{
...
...
@@ -4037,8 +4037,8 @@ namespace Cdy.Tag
else
if
(
typeof
(
T
)
==
typeof
(
LongPoint3Data
))
{
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
26
+
1
0
+
sourceAddr
,
qs
.
Count
);
var
valaddr
=
qs
.
Count
*
2
+
1
0
+
sourceAddr
;
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
26
+
1
6
+
sourceAddr
,
qs
.
Count
);
var
valaddr
=
qs
.
Count
*
2
+
1
6
+
sourceAddr
;
for
(
int
i
=
0
;
i
<
vv
.
Length
-
1
;
i
=
i
+
3
)
{
...
...
@@ -4112,8 +4112,8 @@ namespace Cdy.Tag
else
if
(
typeof
(
T
)
==
typeof
(
UIntPoint3Data
))
{
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
14
+
1
0
+
sourceAddr
,
qs
.
Count
);
var
valaddr
=
qs
.
Count
*
2
+
1
0
+
sourceAddr
;
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
14
+
1
6
+
sourceAddr
,
qs
.
Count
);
var
valaddr
=
qs
.
Count
*
2
+
1
6
+
sourceAddr
;
for
(
int
i
=
0
;
i
<
vv
.
Length
-
1
;
i
=
i
+
3
)
{
...
...
@@ -4187,8 +4187,8 @@ namespace Cdy.Tag
else
if
(
typeof
(
T
)
==
typeof
(
ULongPoint3Data
))
{
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
26
+
1
0
+
sourceAddr
,
qs
.
Count
);
var
valaddr
=
qs
.
Count
*
2
+
1
0
+
sourceAddr
;
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
26
+
1
6
+
sourceAddr
,
qs
.
Count
);
var
valaddr
=
qs
.
Count
*
2
+
1
6
+
sourceAddr
;
for
(
int
i
=
0
;
i
<
vv
.
Length
-
1
;
i
=
i
+
3
)
{
...
...
@@ -4282,13 +4282,13 @@ namespace Cdy.Tag
var
vv
=
qs
.
ToArray
();
var
valaddr
=
qs
.
Count
*
2
+
1
0
+
sourceAddr
;
var
valaddr
=
qs
.
Count
*
2
+
1
6
+
sourceAddr
;
int
count
=
0
;
if
(
typeof
(
T
)
==
typeof
(
IntPointData
))
{
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
10
+
1
0
+
sourceAddr
,
qs
.
Count
);
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
10
+
1
6
+
sourceAddr
,
qs
.
Count
);
foreach
(
var
time1
in
time
)
{
...
...
@@ -4389,7 +4389,7 @@ namespace Cdy.Tag
}
else
if
(
typeof
(
T
)
==
typeof
(
IntPoint3Data
))
{
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
14
+
1
0
+
sourceAddr
,
qs
.
Count
);
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
14
+
1
6
+
sourceAddr
,
qs
.
Count
);
foreach
(
var
time1
in
time
)
{
...
...
@@ -4504,7 +4504,7 @@ namespace Cdy.Tag
}
else
if
(
typeof
(
T
)
==
typeof
(
UIntPoint3Data
))
{
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
14
+
1
0
+
sourceAddr
,
qs
.
Count
);
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
14
+
1
6
+
sourceAddr
,
qs
.
Count
);
foreach
(
var
time1
in
time
)
{
...
...
@@ -4619,7 +4619,7 @@ namespace Cdy.Tag
}
else
if
(
typeof
(
T
)
==
typeof
(
UIntPointData
))
{
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
10
+
1
0
+
sourceAddr
,
qs
.
Count
);
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
10
+
1
6
+
sourceAddr
,
qs
.
Count
);
foreach
(
var
time1
in
time
)
{
...
...
@@ -4720,7 +4720,7 @@ namespace Cdy.Tag
}
else
if
(
typeof
(
T
)
==
typeof
(
LongPointData
))
{
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
18
+
1
0
+
sourceAddr
,
qs
.
Count
);
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
18
+
1
6
+
sourceAddr
,
qs
.
Count
);
foreach
(
var
time1
in
time
)
{
...
...
@@ -4821,7 +4821,7 @@ namespace Cdy.Tag
}
else
if
(
typeof
(
T
)
==
typeof
(
ULongPointData
))
{
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
18
+
1
0
+
sourceAddr
,
qs
.
Count
);
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
18
+
1
6
+
sourceAddr
,
qs
.
Count
);
foreach
(
var
time1
in
time
)
{
...
...
@@ -4922,7 +4922,7 @@ namespace Cdy.Tag
}
else
if
(
typeof
(
T
)
==
typeof
(
LongPoint3Data
))
{
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
26
+
1
0
+
sourceAddr
,
qs
.
Count
);
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
26
+
1
6
+
sourceAddr
,
qs
.
Count
);
foreach
(
var
time1
in
time
)
{
...
...
@@ -5037,7 +5037,7 @@ namespace Cdy.Tag
}
else
if
(
typeof
(
T
)
==
typeof
(
ULongPoint3Data
))
{
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
26
+
1
0
+
sourceAddr
,
qs
.
Count
);
var
qq
=
source
.
ReadBytes
(
qs
.
Count
*
26
+
1
6
+
sourceAddr
,
qs
.
Count
);
foreach
(
var
time1
in
time
)
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录