Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
T
Thick-Common
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
潘栩锋
Thick-Common
Commits
d9662735
Commit
d9662735
authored
Nov 22, 2019
by
潘栩锋
🚴
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Flyad7_WPF 测试 TimeGridAdv
parent
ba757040
Hide whitespace changes
Inline
Side-by-side
Showing
15 changed files
with
283 additions
and
473 deletions
+283
-473
FlyADClientAdv.cs
Project.FLY.FlyADBase/FlyADBase/FlyADClientAdv.cs
+1
-1
IFlyADClientAdv.cs
Project.FLY.FlyADBase/FlyADBase/IFlyADClientAdv.cs
+1
-1
TimeGridAdvHelper.cs
Project.FLY.FlyADBase/FlyADBase/TimeGridAdvHelper.cs
+1
-1
BinConverter.cs
Project.FLY.FlyADBase/Flyad7_WPF/Converters/BinConverter.cs
+45
-0
BytesConverter.cs
...ect.FLY.FlyADBase/Flyad7_WPF/Converters/BytesConverter.cs
+55
-0
IO2BinConverter.cs
...ct.FLY.FlyADBase/Flyad7_WPF/Converters/IO2BinConverter.cs
+29
-0
MyConv.xaml
Project.FLY.FlyADBase/Flyad7_WPF/Converters/MyConv.xaml
+7
-0
DebugAppParam.cs
Project.FLY.FlyADBase/Flyad7_WPF/DebugAppParam.cs
+3
-2
Flyad7_WPF.csproj
Project.FLY.FlyADBase/Flyad7_WPF/Flyad7_WPF.csproj
+14
-0
MainWindow.xaml
Project.FLY.FlyADBase/Flyad7_WPF/MainWindow.xaml
+14
-10
MainWindow.xaml.cs
Project.FLY.FlyADBase/Flyad7_WPF/MainWindow.xaml.cs
+72
-198
Window1.xaml
Project.FLY.FlyADBase/Flyad7_WPF/Window1.xaml
+12
-0
Window1.xaml.cs
Project.FLY.FlyADBase/Flyad7_WPF/Window1.xaml.cs
+27
-0
Window_setAccess.xaml.cs
Project.FLY.FlyADBase/Flyad7_WPF/Window_setAccess.xaml.cs
+2
-1
thick_public.sln
thick_public.sln
+0
-259
No files found.
Project.FLY.FlyADBase/FlyADBase/FlyADClientAdv.cs
View file @
d9662735
...
...
@@ -445,7 +445,7 @@ namespace FlyADBase
/// </summary>
/// <param name="gridAdvUnits"></param>
/// <param name="dat"></param>
public
void
ToGrid
(
List
<
GridAdvUnit
>
gridAdvUnits
,
out
int
[]
dat
)
public
void
ToGrid
(
IEnumerable
<
GridAdvUnit
>
gridAdvUnits
,
out
int
[]
dat
)
{
dat
=
mTimeGridAdvHelper
.
ToGrid
(
gridAdvUnits
,
PosOfGrid
,
SGrid
.
GRID_MAX_SIZE
);
}
...
...
Project.FLY.FlyADBase/FlyADBase/IFlyADClientAdv.cs
View file @
d9662735
...
...
@@ -129,7 +129,7 @@ namespace FlyADBase
/// </summary>
/// <param name="gridAdvUnits"></param>
/// <param name="dat"></param>
void
ToGrid
(
List
<
GridAdvUnit
>
gridAdvUnits
,
out
int
[]
dat
);
void
ToGrid
(
IEnumerable
<
GridAdvUnit
>
gridAdvUnits
,
out
int
[]
dat
);
/// <summary>
/// 动作完成
/// </summary>
...
...
Project.FLY.FlyADBase/FlyADBase/TimeGridAdvHelper.cs
View file @
d9662735
...
...
@@ -515,7 +515,7 @@ namespace FlyADBase
/// <param name="posOfGrid"></param>
/// <param name="gridLen"></param>
/// <returns></returns>
public
int
[]
ToGrid
(
List
<
GridAdvUnit
>
gridAdvUnits
,
int
posOfGrid
,
int
gridLen
)
public
int
[]
ToGrid
(
IEnumerable
<
GridAdvUnit
>
gridAdvUnits
,
int
posOfGrid
,
int
gridLen
)
{
int
[]
grids_sum
=
new
int
[
gridLen
];
int
[]
grids_cnt
=
new
int
[
gridLen
];
...
...
Project.FLY.FlyADBase/Flyad7_WPF/Converters/BinConverter.cs
0 → 100644
View file @
d9662735
using
System
;
using
System.Collections.Generic
;
using
System.Globalization
;
using
System.Linq
;
using
System.Text
;
using
System.Threading.Tasks
;
using
System.Windows.Data
;
namespace
Flyad7_WPF.Converters
{
public
class
BinConverter
:
IValueConverter
{
public
object
Convert
(
object
value
,
Type
targetType
,
object
parameter
,
CultureInfo
culture
)
{
string
index_str
=
(
string
)
parameter
;
if
(!
int
.
TryParse
(
index_str
,
out
int
index
))
{
index
=
0
;
}
if
(
index
<
0
)
index
=
0
;
if
(
index
>
15
)
index
=
15
;
if
(!(
value
is
UInt16
))
return
null
;
UInt16
v
=
(
UInt16
)
value
;
if
(
Misc
.
MyBase
.
CHECKBIT
(
v
,
index
))
{
return
1
;
}
else
{
return
0
;
}
}
public
object
ConvertBack
(
object
value
,
Type
targetType
,
object
parameter
,
CultureInfo
culture
)
{
throw
new
NotImplementedException
();
}
}
}
Project.FLY.FlyADBase/Flyad7_WPF/Converters/BytesConverter.cs
0 → 100644
View file @
d9662735
using
System
;
using
System.Collections.Generic
;
using
System.Linq
;
using
System.Text
;
using
System.Threading.Tasks
;
using
System.Windows.Data
;
namespace
Flyad7_WPF.Converters
{
public
class
BytesConverter
:
IValueConverter
{
#
region
IValueConverter
成员
public
object
Convert
(
object
value
,
Type
targetType
,
object
parameter
,
System
.
Globalization
.
CultureInfo
culture
)
{
byte
[]
bs
=
(
byte
[])
value
;
string
str
=
""
;
for
(
int
i
=
0
;
i
<
bs
.
Length
;
i
++)
str
+=
bs
[
i
].
ToString
(
"X2"
);
return
str
;
}
public
object
ConvertBack
(
object
value
,
Type
targetType
,
object
parameter
,
System
.
Globalization
.
CultureInfo
culture
)
{
string
str
=
(
string
)
value
;
string
h
=
""
;
List
<
byte
>
bs
=
new
List
<
byte
>();
for
(
int
i
=
0
;
i
<
str
.
Length
;
i
++)
{
if
(
str
[
i
]
!=
' '
)
h
+=
str
[
i
];
if
(((
str
[
i
]
==
' '
)
&&
(
h
.
Length
!=
0
))
||
(
h
.
Length
>=
2
))
{
byte
b
=
0
;
if
(
byte
.
TryParse
(
h
,
System
.
Globalization
.
NumberStyles
.
AllowHexSpecifier
,
null
,
out
b
))
{
bs
.
Add
(
b
);
}
else
{
break
;
}
h
=
""
;
}
}
return
bs
.
ToArray
();
}
#
endregion
}
}
Project.FLY.FlyADBase/Flyad7_WPF/Converters/IO2BinConverter.cs
0 → 100644
View file @
d9662735
using
System
;
using
System.Collections.Generic
;
using
System.Linq
;
using
System.Text
;
using
System.Threading.Tasks
;
using
System.Windows.Data
;
namespace
Flyad7_WPF.Converters
{
public
class
IO2BinConverter
:
IValueConverter
{
#
region
IValueConverter
成员
public
object
Convert
(
object
value
,
Type
targetType
,
object
parameter
,
System
.
Globalization
.
CultureInfo
culture
)
{
UInt16
io
=
(
UInt16
)
value
;
string
str
=
System
.
Convert
.
ToString
(
io
,
2
);
return
str
.
PadLeft
(
16
,
'0'
);
}
public
object
ConvertBack
(
object
value
,
Type
targetType
,
object
parameter
,
System
.
Globalization
.
CultureInfo
culture
)
{
return
System
.
Convert
.
ToUInt16
((
string
)
value
,
2
);
}
#
endregion
}
}
Project.FLY.FlyADBase/Flyad7_WPF/Converters/MyConv.xaml
0 → 100644
View file @
d9662735
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:Flyad7_WPF.Converters">
<local:BytesConverter x:Key="bytesconv"/>
<local:IO2BinConverter x:Key="io2bin"/>
<local:BinConverter x:Key="binConv"/>
</ResourceDictionary>
\ No newline at end of file
Project.FLY.FlyADBase/Flyad7_WPF/DebugAppParam.cs
View file @
d9662735
...
...
@@ -38,8 +38,8 @@ namespace Flyad7_WPF
public
UInt32
HVelocity2
;
public
int
PosLen
;
public
int
ADLag
;
public
int
ADLag
{
get
;
set
;
}
#
region
INotifyPropertyChanged
成员
public
event
PropertyChangedEventHandler
PropertyChanged
;
#
endregion
...
...
@@ -77,6 +77,7 @@ namespace Flyad7_WPF
{
string
json
=
File
.
ReadAllText
(
file_path
);
var
param
=
JsonConvert
.
DeserializeObject
<
DebugAppParamJsonDB
>(
json
);
EPStr
=
param
.
EPStr
;
HasTimeGrid
=
param
.
HasTimeGrid
;
HasGrid
=
param
.
HasGrid
;
...
...
Project.FLY.FlyADBase/Flyad7_WPF/Flyad7_WPF.csproj
View file @
d9662735
...
...
@@ -73,8 +73,14 @@
</ApplicationDefinition>
<Compile
Include=
"AutoForwBackw.cs"
/>
<Compile
Include=
"AutoSync.cs"
/>
<Compile
Include=
"Converters\BinConverter.cs"
/>
<Compile
Include=
"Converters\BytesConverter.cs"
/>
<Compile
Include=
"Converters\IO2BinConverter.cs"
/>
<Compile
Include=
"DebugAppParam.cs"
/>
<Compile
Include=
"FlyADClientUI.cs"
/>
<Compile
Include=
"Window1.xaml.cs"
>
<DependentUpon>
Window1.xaml
</DependentUpon>
</Compile>
<Compile
Include=
"Window_InitArea.xaml.cs"
>
<DependentUpon>
Window_InitArea.xaml
</DependentUpon>
</Compile>
...
...
@@ -87,6 +93,10 @@
<Compile
Include=
"Window_sync_graph.xaml.cs"
>
<DependentUpon>
Window_sync_graph.xaml
</DependentUpon>
</Compile>
<Page
Include=
"Converters\MyConv.xaml"
>
<SubType>
Designer
</SubType>
<Generator>
MSBuild:Compile
</Generator>
</Page>
<Page
Include=
"MainWindow.xaml"
>
<Generator>
MSBuild:Compile
</Generator>
<SubType>
Designer
</SubType>
...
...
@@ -99,6 +109,10 @@
<DependentUpon>
MainWindow.xaml
</DependentUpon>
<SubType>
Code
</SubType>
</Compile>
<Page
Include=
"Window1.xaml"
>
<SubType>
Designer
</SubType>
<Generator>
MSBuild:Compile
</Generator>
</Page>
<Page
Include=
"Window_InitArea.xaml"
>
<SubType>
Designer
</SubType>
<Generator>
MSBuild:Compile
</Generator>
...
...
Project.FLY.FlyADBase/Flyad7_WPF/MainWindow.xaml
View file @
d9662735
...
...
@@ -3,19 +3,23 @@
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:flyadbase="clr-namespace:FlyADBase;assembly=FlyADBase"
xmlns:local="clr-namespace:Flyad7_WPF"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d"
xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:Chr="clr-namespace:System.Windows.Forms.DataVisualization.Charting;assembly=System.Windows.Forms.DataVisualization"
Title="MainWindow" Height="606" Width="1161">
Title="MainWindow" Height="606" Width="1161"
d:DataContext="{d:DesignInstance Type=flyadbase:FlyAD7}"
>
<Window.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="Converters/MyConv.xaml"/>
</ResourceDictionary.MergedDictionaries>
<ObjectDataProvider MethodName="GetValues" ObjectType="{x:Type sys:Enum}" x:Key="MOTORTYPE">
<ObjectDataProvider.MethodParameters>
<x:Type TypeName="flyadbase:MOTORTYPE" />
</ObjectDataProvider.MethodParameters>
</ObjectDataProvider>
<local:IO2BinConverter x:Key="io2bin"></local:IO2BinConverter>
<local:BytesConverter x:Key="bytesconv">
</local:BytesConverter>
<Style TargetType="TextBlock" x:Key="TextBlockStyle_groupTitle">
<Setter Property="FontSize" Value="16" />
</Style>
...
...
@@ -122,11 +126,11 @@
<StackPanel>
<StackPanel Orientation="Horizontal">
<TextBlock Style="{StaticResource TextBlockStyle_itemTitle}" Text="输入" />
<TextBox Style="{StaticResource TextBoxStyle_itemContent}" Text="{Binding IStatus,
Converter={StaticResource ResourceKey=io2bin}}" IsEnabled="False" Width="121
" />
<TextBox Style="{StaticResource TextBoxStyle_itemContent}" Text="{Binding IStatus,
Mode=OneWay,Converter={StaticResource ResourceKey=io2bin}}" IsEnabled="False" Width="120
" />
</StackPanel>
<StackPanel Orientation="Horizontal">
<TextBlock Style="{StaticResource TextBlockStyle_itemTitle}" Text="输出" />
<TextBox Style="{StaticResource TextBoxStyle_itemContent}" Text="{Binding OStatus,Converter={StaticResource ResourceKey=io2bin}}" IsEnabled="False" Width="120" />
<TextBox Style="{StaticResource TextBoxStyle_itemContent}" Text="{Binding OStatus,
Mode=OneWay,
Converter={StaticResource ResourceKey=io2bin}}" IsEnabled="False" Width="120" />
</StackPanel>
<StackPanel Orientation="Horizontal">
<Button Style="{StaticResource ButtonStyle}" Content="输出设置" Click="button_output_Click" />
...
...
@@ -140,10 +144,10 @@
<Setter Property="Margin" Value="3"/>
</Style>
</StackPanel.Resources>
<Button Style="{StaticResource ButtonStyle_Bit}" x:Name="button_bit3" Content="
1
" Click="button_setbit_Click" />
<Button Style="{StaticResource ButtonStyle_Bit}" x:Name="button_bit2" Content="
1
" Click="button_setbit_Click" />
<Button Style="{StaticResource ButtonStyle_Bit}" x:Name="button_bit1" Content="1" Click="button_setbit_Click" />
<Button Style="{StaticResource ButtonStyle_Bit}" x:Name="button_bit0" Content="
1
" Click="button_setbit_Click" />
<Button Style="{StaticResource ButtonStyle_Bit}" x:Name="button_bit3" Content="
{Binding OStatus,Converter={StaticResource binConv}, ConverterParameter=3}" Tag="3
" Click="button_setbit_Click" />
<Button Style="{StaticResource ButtonStyle_Bit}" x:Name="button_bit2" Content="
{Binding OStatus,Converter={StaticResource binConv}, ConverterParameter=2}" Tag="2
" Click="button_setbit_Click" />
<Button Style="{StaticResource ButtonStyle_Bit}" x:Name="button_bit1" Content="
{Binding OStatus,Converter={StaticResource binConv}, ConverterParameter=1}" Tag="
1" Click="button_setbit_Click" />
<Button Style="{StaticResource ButtonStyle_Bit}" x:Name="button_bit0" Content="
{Binding OStatus,Converter={StaticResource binConv}, ConverterParameter=0}" Tag="0
" Click="button_setbit_Click" />
</StackPanel>
</StackPanel>
</GroupBox>
...
...
Project.FLY.FlyADBase/Flyad7_WPF/MainWindow.xaml.cs
View file @
d9662735
...
...
@@ -33,7 +33,7 @@ namespace Flyad7_WPF
AutoForwBackw
autofb
;
FlyADClientUI
flyad_clientui
;
AutoSync
mAutoSync
;
int
timeGridAdvIndex
=
0
;
public
MainWindow
()
{
InitializeComponent
();
...
...
@@ -64,24 +64,6 @@ namespace Flyad7_WPF
flyad
.
TimeGridEvent
+=
flyad_TimeGridEvent
;
flyad
.
TimeGridAdvEvent
+=
flyad_TimeGridAdvEvent
;
flyad
.
PropertyChanged
+=
(
s
,
e
)
=>
{
if
(
e
.
PropertyName
==
"OStatus"
)
{
Button
[]
bit
=
new
Button
[
4
]
{
button_bit0
,
button_bit1
,
button_bit2
,
button_bit3
};
for
(
int
i
=
0
;
i
<
bit
.
Length
;
i
++)
{
if
(
Misc
.
MyBase
.
CHECKBIT
(
flyad
.
OStatus
,
i
))
{
bit
[
i
].
Content
=
"1"
;
}
else
{
bit
[
i
].
Content
=
"0"
;
}
}
}
};
param
.
PropertyChanged
+=
(
s
,
e
)
=>
{
param
.
Save
();
...
...
@@ -101,39 +83,6 @@ namespace Flyad7_WPF
}
private
void
flyad_TimeGridAdvEvent
(
object
sender
,
TimeGridAdvEventArgs
e
)
{
Series
series_pos
=
chart3
.
Series
[
0
];
Series
series_ad
=
chart3
.
Series
[
1
];
while
(
series_pos
.
Points
.
Count
()
>
5000
)
{
series_pos
.
Points
.
RemoveAt
(
0
);
}
while
(
series_ad
.
Points
.
Count
()
>
5000
)
{
series_ad
.
Points
.
RemoveAt
(
0
);
}
foreach
(
var
data
in
e
.
Data
)
{
int
pos
=
data
.
pos
;
int
ad
=
data
.
ad
;
DateTime
dt
=
data
.
dt
;
series_pos
.
Points
.
AddY
(
pos
);
DataPoint
p
=
series_pos
.
Points
.
Last
();
p
.
AxisLabel
=
$"
{
dt
:
ss
.
ff
}
"
;
series_ad
.
Points
.
AddY
(
ad
);
p
=
series_ad
.
Points
.
Last
();
p
.
AxisLabel
=
$"
{
dt
:
ss
.
ff
}
"
;
}
chart3
.
ChartAreas
[
0
].
AxisX
.
Minimum
=
0
;
chart3
.
ChartAreas
[
0
].
AxisX
.
Maximum
=
e
.
Data
.
Count
();
}
/// <summary>
/// grid图
...
...
@@ -279,44 +228,27 @@ namespace Flyad7_WPF
//
// chart1
//
chartArea1
.
Name
=
"chartArea1"
;
chartArea1
.
AxisX
.
LabelStyle
.
Font
=
new
System
.
Drawing
.
Font
(
"Trebuchet MS"
,
8.25F
,
System
.
Drawing
.
FontStyle
.
Bold
);
chartArea1
.
AxisX
.
LineColor
=
System
.
Drawing
.
Color
.
FromArgb
(((
int
)(((
byte
)(
64
)))),
((
int
)(((
byte
)(
64
)))),
((
int
)(((
byte
)(
64
)))),
((
int
)(((
byte
)(
64
)))));
chartArea1
.
AxisX
.
MajorGrid
.
LineColor
=
System
.
Drawing
.
Color
.
FromArgb
(((
int
)(((
byte
)(
64
)))),
((
int
)(((
byte
)(
64
)))),
((
int
)(((
byte
)(
64
)))),
((
int
)(((
byte
)(
64
)))));
chartArea1
.
AxisX
.
IsLabelAutoFit
=
true
;
chartArea1
.
AxisX
.
LabelAutoFitStyle
=
LabelAutoFitStyles
.
DecreaseFont
;
chartArea1
.
AxisX
.
IntervalAutoMode
=
System
.
Windows
.
Forms
.
DataVisualization
.
Charting
.
IntervalAutoMode
.
VariableCount
;
chartArea1
.
AxisY
.
LabelStyle
.
Font
=
new
System
.
Drawing
.
Font
(
"Trebuchet MS"
,
8.25F
,
System
.
Drawing
.
FontStyle
.
Bold
);
chartArea1
.
AxisY
.
LineColor
=
System
.
Drawing
.
Color
.
FromArgb
(((
int
)(((
byte
)(
64
)))),
((
int
)(((
byte
)(
64
)))),
((
int
)(((
byte
)(
64
)))),
((
int
)(((
byte
)(
64
)))));
chartArea1
.
AxisY
.
MajorGrid
.
LineColor
=
System
.
Drawing
.
Color
.
FromArgb
(((
int
)(((
byte
)(
64
)))),
((
int
)(((
byte
)(
64
)))),
((
int
)(((
byte
)(
64
)))),
((
int
)(((
byte
)(
64
)))));
chartArea1
.
AxisY2
.
LabelStyle
.
Font
=
new
System
.
Drawing
.
Font
(
"Trebuchet MS"
,
8.25F
,
System
.
Drawing
.
FontStyle
.
Bold
);
chartArea1
.
AxisY2
.
LineColor
=
System
.
Drawing
.
Color
.
FromArgb
(((
int
)(((
byte
)(
64
)))),
((
int
)(((
byte
)(
64
)))),
((
int
)(((
byte
)(
64
)))),
((
int
)(((
byte
)(
64
)))));
chartArea1
.
AxisY2
.
MajorGrid
.
LineColor
=
System
.
Drawing
.
Color
.
FromArgb
(((
int
)(((
byte
)(
64
)))),
((
int
)(((
byte
)(
64
)))),
((
int
)(((
byte
)(
64
)))),
((
int
)(((
byte
)(
64
)))));
chartArea1
.
BackColor
=
System
.
Drawing
.
Color
.
OldLace
;
//chartArea1.BackGradientStyle = System.Windows.Forms.DataVisualization.Charting.GradientStyle.TopBottom;
//chartArea1.BackSecondaryColor = System.Drawing.Color.White;
chartArea1
.
BorderColor
=
System
.
Drawing
.
Color
.
FromArgb
(((
int
)(((
byte
)(
64
)))),
((
int
)(((
byte
)(
64
)))),
((
int
)(((
byte
)(
64
)))),
((
int
)(((
byte
)(
64
)))));
chartArea1
.
BorderDashStyle
=
System
.
Windows
.
Forms
.
DataVisualization
.
Charting
.
ChartDashStyle
.
Solid
;
chartArea1
.
Name
=
"Default"
;
chartArea1
.
ShadowColor
=
System
.
Drawing
.
Color
.
Transparent
;
chartArea1
.
CursorX
.
IsUserEnabled
=
true
;
chartArea1
.
CursorX
.
IsUserSelectionEnabled
=
true
;
chartArea1
.
CursorX
.
SelectionColor
=
System
.
Drawing
.
SystemColors
.
Highlight
;
//chartArea1.CursorY.IsUserEnabled = true;
//chartArea1.CursorY.IsUserSelectionEnabled = true;
//chartArea1.CursorY.SelectionColor = System.Drawing.SystemColors.Highlight;
//对数坐标
//chartArea1.AxisY.IsLogarithmic = true;
//chartArea1.AxisY.LogarithmBase = Math.E;
this
.
chart3
.
ChartAreas
.
Add
(
chartArea1
);
chart3
.
ChartAreas
.
Add
(
chartArea1
);
legend1
.
Name
=
"Default"
;
legend1
.
BackColor
=
System
.
Drawing
.
Color
.
Transparent
;
legend1
.
Enabled
=
true
;
legend1
.
Font
=
new
System
.
Drawing
.
Font
(
"Trebuchet MS"
,
8.25F
,
System
.
Drawing
.
FontStyle
.
Bold
);
...
...
@@ -325,10 +257,9 @@ namespace Flyad7_WPF
legend1
.
IsDockedInsideChartArea
=
true
;
legend1
.
DockedToChartArea
=
chartArea1
.
Name
;
//legend1.IsTextAutoFit = false;
legend1
.
Name
=
"Default"
;
chart3
.
Legends
.
Add
(
legend1
);
series1
.
Name
=
"Series 1"
;
series1
.
BorderColor
=
System
.
Drawing
.
Color
.
FromArgb
(((
int
)(((
byte
)(
180
)))),
((
int
)(((
byte
)(
26
)))),
((
int
)(((
byte
)(
59
)))),
((
int
)(((
byte
)(
105
)))));
series1
.
BorderWidth
=
3
;
...
...
@@ -336,75 +267,95 @@ namespace Flyad7_WPF
series1
.
ChartType
=
System
.
Windows
.
Forms
.
DataVisualization
.
Charting
.
SeriesChartType
.
Line
;
series1
.
Color
=
System
.
Drawing
.
Color
.
FromArgb
(((
int
)(((
byte
)(
220
)))),
((
int
)(((
byte
)(
65
)))),
((
int
)(((
byte
)(
140
)))),
((
int
)(((
byte
)(
240
)))));
series1
.
Legend
=
legend1
.
Name
;
series1
.
LegendText
=
"脉冲"
;
//series1.MarkerSize = 8;
//series1.MarkerStyle = System.Windows.Forms.DataVisualization.Charting.MarkerStyle.Circle;
series1
.
LegendText
=
"Series 1"
;
series1
.
ShadowColor
=
System
.
Drawing
.
Color
.
Black
;
series1
.
ShadowOffset
=
2
;
series1
.
XValueType
=
System
.
Windows
.
Forms
.
DataVisualization
.
Charting
.
ChartValueType
.
Int32
;
series1
.
YValueType
=
System
.
Windows
.
Forms
.
DataVisualization
.
Charting
.
ChartValueType
.
Int32
;
chart3
.
Series
.
Add
(
series1
);
series2
.
Name
=
"Series 2"
;
series2
.
BorderColor
=
System
.
Drawing
.
Color
.
DarkRed
;
series2
.
BorderColor
=
System
.
Drawing
.
Color
.
Pink
;
series2
.
BorderWidth
=
3
;
series2
.
ChartArea
=
chartArea1
.
Name
;
series2
.
ChartType
=
System
.
Windows
.
Forms
.
DataVisualization
.
Charting
.
SeriesChartType
.
Line
;
series2
.
Color
=
System
.
Drawing
.
Color
.
Red
;
series2
.
Legend
=
legend1
.
Name
;
series2
.
LegendText
=
"AD"
;
//series1.MarkerSize = 8;
//series1.MarkerStyle = System.Windows.Forms.DataVisualization.Charting.MarkerStyle.Circle;
series2
.
LegendText
=
"Series 2"
;
series2
.
ShadowColor
=
System
.
Drawing
.
Color
.
Black
;
series2
.
ShadowOffset
=
2
;
series2
.
XValueType
=
System
.
Windows
.
Forms
.
DataVisualization
.
Charting
.
ChartValueType
.
Int32
;
series2
.
YValueType
=
System
.
Windows
.
Forms
.
DataVisualization
.
Charting
.
ChartValueType
.
Int32
;
series2
.
YAxisType
=
AxisType
.
Secondary
;
chart3
.
Series
.
Add
(
series1
);
chart3
.
Series
.
Add
(
series2
);
chart3
.
BackColor
=
System
.
Drawing
.
Color
.
Transparent
;
//this.chart1.Location = new System.Drawing.Point(16, 32);
chart3
.
Name
=
"chart3"
;
chart3
.
BackColor
=
System
.
Drawing
.
Color
.
Transparent
;
}
#
region
grid
void
flyad_GridEvent
(
object
sender
,
MiniGridEventArgs
e
)
{
if
(
param
.
HasGrid
)
{
run_gridmarker
.
Text
=
e
.
marker
.
ToString
();
if
(!
param
.
HasGrid
)
return
;
System
.
Windows
.
Forms
.
DataVisualization
.
Charting
.
Series
series_forw
=
chart1
.
Series
[
"Series 1"
];
System
.
Windows
.
Forms
.
DataVisualization
.
Charting
.
Series
series_backw
=
chart1
.
Series
[
"Series 2"
];
System
.
Windows
.
Forms
.
DataVisualization
.
Charting
.
Series
series
;
run_gridmarker
.
Text
=
e
.
marker
.
ToString
();
if
(
e
.
direction
==
DIRECTION
.
FORWARD
)
{
series
=
series_forw
;
}
else
{
series
=
series_backw
;
}
series
.
Points
.
Clear
();
System
.
Windows
.
Forms
.
DataVisualization
.
Charting
.
Series
series_forw
=
chart1
.
Series
[
"Series 1"
];
System
.
Windows
.
Forms
.
DataVisualization
.
Charting
.
Series
series_backw
=
chart1
.
Series
[
"Series 2"
];
System
.
Windows
.
Forms
.
DataVisualization
.
Charting
.
Series
series
;
series
=
(
e
.
direction
==
DIRECTION
.
FORWARD
)
?
series_forw
:
series_backw
;
series
.
Points
.
Clear
();
int
gridLen
=
flyad
.
PosLen
/
flyad
.
PosOfGrid
;
int
gridLen
=
flyad
.
PosLen
/
flyad
.
PosOfGrid
;
for
(
int
i
=
0
;
i
<
e
.
buf
.
Length
;
i
++)
{
int
pos
=
(
e
.
grid_start
+
i
)
*
flyad
.
PosOfGrid
;
int
ad
=
e
.
buf
[
i
];
series
.
Points
.
AddXY
(
pos
,
ad
);
if
(
ad
==
Misc
.
MyBase
.
NULL_VALUE
)
series
.
Points
[
i
].
IsEmpty
=
true
;
}
for
(
int
i
=
0
;
i
<
e
.
buf
.
Length
;
i
++)
{
int
pos
=
(
e
.
grid_start
+
i
)
*
flyad
.
PosOfGrid
;
int
ad
=
e
.
buf
[
i
];
series
.
Points
.
AddXY
(
pos
,
ad
);
if
(
ad
==
Misc
.
MyBase
.
NULL_VALUE
)
series
.
Points
[
i
].
IsEmpty
=
true
;
}
chart1
.
ChartAreas
[
0
].
AxisX
.
Minimum
=
0
;
chart1
.
ChartAreas
[
0
].
AxisX
.
Maximum
=
flyad
.
PosLen
;
chart1
.
ChartAreas
[
0
].
AxisX
.
Minimum
=
0
;
chart1
.
ChartAreas
[
0
].
AxisX
.
Maximum
=
flyad
.
PosLen
;
}
private
void
flyad_TimeGridAdvEvent
(
object
sender
,
TimeGridAdvEventArgs
e
)
{
if
(!
param
.
HasGridAdv
)
return
;
flyad
.
ToGrid
(
e
.
Data
,
out
int
[]
datas
);
//画图
timeGridAdvIndex
++;
if
(
timeGridAdvIndex
>=
chart3
.
Series
.
Count
())
timeGridAdvIndex
=
0
;
System
.
Windows
.
Forms
.
DataVisualization
.
Charting
.
Series
series
=
chart3
.
Series
[
timeGridAdvIndex
];
series
.
Points
.
Clear
();
int
gridLen
=
flyad
.
PosLen
/
flyad
.
PosOfGrid
;
for
(
int
i
=
0
;
i
<
datas
.
Length
;
i
++)
{
int
pos
=
i
*
flyad
.
PosOfGrid
;
int
ad
=
datas
[
i
];
series
.
Points
.
AddXY
(
pos
,
ad
);
if
(
ad
==
Misc
.
MyBase
.
NULL_VALUE
)
series
.
Points
[
i
].
IsEmpty
=
true
;
}
chart1
.
ChartAreas
[
0
].
AxisX
.
Minimum
=
0
;
chart1
.
ChartAreas
[
0
].
AxisX
.
Maximum
=
flyad
.
PosLen
;
}
private
void
button_cleargrid_Click
(
object
sender
,
RoutedEventArgs
e
)
{
System
.
Windows
.
Forms
.
DataVisualization
.
Charting
.
Series
series_forw
=
chart1
.
Series
[
"Series 1"
];
...
...
@@ -577,11 +528,6 @@ namespace Flyad7_WPF
private
void
button3_Click
(
object
sender
,
RoutedEventArgs
e
)
{
flyad
.
UpdateParam
();
}
private
void
button_initarea_Click
(
object
sender
,
RoutedEventArgs
e
)
{
...
...
@@ -641,18 +587,14 @@ namespace Flyad7_WPF
private
void
button_setbit_Click
(
object
sender
,
RoutedEventArgs
e
)
{
Button
[]
bit
=
new
Button
[
4
]
{
button_bit0
,
button_bit1
,
button_bit2
,
button_bit3
};
for
(
int
i
=
0
;
i
<
bit
.
Length
;
i
++)
{
if
(
sender
==
bit
[
i
])
{
if
(
Misc
.
MyBase
.
CHECKBIT
(
flyad
.
OStatus
,
i
))
flyad
.
SetOutputBit
(
i
,
false
);
else
flyad
.
SetOutputBit
(
i
,
true
);
break
;
}
}
var
btn
=
sender
as
Button
;
if
(!
int
.
TryParse
((
btn
.
Tag
as
string
),
out
int
index
))
return
;
if
(
Misc
.
MyBase
.
CHECKBIT
(
flyad
.
OStatus
,
index
))
flyad
.
SetOutputBit
(
index
,
false
);
else
flyad
.
SetOutputBit
(
index
,
true
);
}
...
...
@@ -666,74 +608,6 @@ namespace Flyad7_WPF
flyad
.
RuntoMax
();
}
}
public
class
IO2BinConverter
:
IValueConverter
{
#
region
IValueConverter
成员
public
object
Convert
(
object
value
,
Type
targetType
,
object
parameter
,
System
.
Globalization
.
CultureInfo
culture
)
{
UInt16
io
=
(
UInt16
)
value
;
string
str
=
System
.
Convert
.
ToString
(
io
,
2
);
return
str
.
PadLeft
(
16
,
'0'
);
}
public
object
ConvertBack
(
object
value
,
Type
targetType
,
object
parameter
,
System
.
Globalization
.
CultureInfo
culture
)
{
return
System
.
Convert
.
ToUInt16
((
string
)
value
,
2
);
}
#
endregion
}
public
class
BytesConverter
:
IValueConverter
{
#
region
IValueConverter
成员
public
object
Convert
(
object
value
,
Type
targetType
,
object
parameter
,
System
.
Globalization
.
CultureInfo
culture
)
{
byte
[]
bs
=
(
byte
[])
value
;
string
str
=
""
;
for
(
int
i
=
0
;
i
<
bs
.
Length
;
i
++)
str
+=
bs
[
i
].
ToString
(
"X2"
);
return
str
;
}
public
object
ConvertBack
(
object
value
,
Type
targetType
,
object
parameter
,
System
.
Globalization
.
CultureInfo
culture
)
{
string
str
=
(
string
)
value
;
string
h
=
""
;
List
<
byte
>
bs
=
new
List
<
byte
>();
for
(
int
i
=
0
;
i
<
str
.
Length
;
i
++)
{
if
(
str
[
i
]
!=
' '
)
h
+=
str
[
i
];
if
(((
str
[
i
]
==
' '
)
&&
(
h
.
Length
!=
0
))
||
(
h
.
Length
>=
2
)
)
{
byte
b
=
0
;
if
(
byte
.
TryParse
(
h
,
System
.
Globalization
.
NumberStyles
.
AllowHexSpecifier
,
null
,
out
b
))
{
bs
.
Add
(
b
);
}
else
{
break
;
}
h
=
""
;
}
}
return
bs
.
ToArray
();
}
#
endregion
}
}
Project.FLY.FlyADBase/Flyad7_WPF/Window1.xaml
0 → 100644
View file @
d9662735
<Window x:Class="Flyad7_WPF.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:Flyad7_WPF"
mc:Ignorable="d"
Title="Window1" Height="450" Width="800">
<Grid>
</Grid>
</Window>
Project.FLY.FlyADBase/Flyad7_WPF/Window1.xaml.cs
0 → 100644
View file @
d9662735
using
System
;
using
System.Collections.Generic
;
using
System.Linq
;
using
System.Text
;
using
System.Threading.Tasks
;
using
System.Windows
;
using
System.Windows.Controls
;
using
System.Windows.Data
;
using
System.Windows.Documents
;
using
System.Windows.Input
;
using
System.Windows.Media
;
using
System.Windows.Media.Imaging
;
using
System.Windows.Shapes
;
namespace
Flyad7_WPF
{
/// <summary>
/// Window1.xaml 的交互逻辑
/// </summary>
public
partial
class
Window1
:
Window
{
public
Window1
()
{
InitializeComponent
();
}
}
}
Project.FLY.FlyADBase/Flyad7_WPF/Window_setAccess.xaml.cs
View file @
d9662735
using
System
;
using
Flyad7_WPF.Converters
;
using
System
;
using
System.Collections.Generic
;
using
System.Linq
;
using
System.Text
;
...
...
thick_public.sln
deleted
100644 → 0
View file @
ba757040
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 15
VisualStudioVersion = 15.0.28307.106
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FLY.ModbusMapper", "Project.FLY.ModbusMapper\FLY.ModbusMapper\FLY.ModbusMapper.csproj", "{6D4B9BDA-2A66-4583-B244-758BC4213D9F}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FLY.ControlLibrary", "Project.FLY.ControlLibrary\FLY.ControlLibrary\FLY.ControlLibrary.csproj", "{119C3ADC-F8E1-4F72-B89B-006236FF8586}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OBJComponents", "Project.FLY.OBJComponents\OBJComponents\OBJComponents.csproj", "{A539505D-9AC0-426B-A9A0-197DF50598B0}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Misc", "Project.FLY.Misc\MISC\Misc.csproj", "{5EE61AC6-5269-4F0F-B8FA-4334FE4A678F}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FObjBase", "Project.FLY.FObjSys\FObjSys\FObjBase.csproj", "{ABFE87D4-B692-4AE9-A8C0-1F470B8ACBB8}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Thick", "Thick", "{1262AB40-4503-469A-A00B-50C1AE6A3BA6}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FLY.Thick.Base", "Project.FLY.Thick.Base\FLY.Thick.Base\FLY.Thick.Base.csproj", "{91A1AAFE-A528-4C2E-A48A-9259E780255A}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FLY.Thick.Base.UI", "Project.FLY.Thick.Base\FLY.Thick.Base.UI\FLY.Thick.Base.UI.csproj", "{EC84265E-4196-4834-8AC0-81956777C5E9}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FLY.ModbusModule", "Project.FLY.ModbusModule\FLY.ModbusModule\FLY.ModbusModule.csproj", "{8E19C40F-CE7F-4982-BD90-4EB4E9E04E34}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FLY.Thick.BulkDataModule", "Project.FLY.Thick.BulkData\FLY.Thick.BulkData\FLY.Thick.BulkDataModule.csproj", "{2F88B5EC-85BC-4B5E-B254-06D2F2771F67}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FLY.UI.Module", "Project.FLY.UI.Module\FLY.UI.Module\FLY.UI.Module.csproj", "{4DF79671-E814-49BD-864D-8257D6C6E072}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FLY.AppHelper", "Project.FLY.AppHelper\FLY.AppHelper\FLY.AppHelper.csproj", "{9C46D98F-6500-490B-9E56-C89DFFFA05F8}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FlyADBase", "Project.FLY.FlyADBase\FlyADBase\FlyADBase.csproj", "{DD8A6858-1261-49F7-86BE-5AC5C3A0EC34}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TCPManager", "Project.FLY.FObjSys\TCPManager\TCPManager.csproj", "{7D455950-7D7D-4C79-8E9C-4CF53F09559A}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "UnitTests", "UnitTests", "{83968208-EA90-43E4-AA90-91E98684408C}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Server_ConsoleApp", "Project.FLY.FObjSys\UnitTest\Server_ConsoleApp\Server_ConsoleApp.csproj", "{879D3D11-30A4-418C-980F-E46F8D5F4B00}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Client_ConsoleApp", "Project.FLY.FObjSys\UnitTest\Client_ConsoleApp\Client_ConsoleApp.csproj", "{EAC6FEEE-0A64-4C9A-BA59-BB9DC57C3CB1}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FObjSysTest", "Project.FLY.FObjSys\UnitTest\FObjSysTest\FObjSysTest.csproj", "{CF136F1D-A1B3-472A-93C4-1640192A5C16}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "FobjSys.UnitTest", "FobjSys.UnitTest", "{0CCF1095-E435-4EC9-9B5D-08F9B6359242}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Debug|Mixed Platforms = Debug|Mixed Platforms
Debug|x86 = Debug|x86
Release|Any CPU = Release|Any CPU
Release|Mixed Platforms = Release|Mixed Platforms
Release|x86 = Release|x86
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{6D4B9BDA-2A66-4583-B244-758BC4213D9F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{6D4B9BDA-2A66-4583-B244-758BC4213D9F}.Debug|Any CPU.Build.0 = Debug|Any CPU
{6D4B9BDA-2A66-4583-B244-758BC4213D9F}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{6D4B9BDA-2A66-4583-B244-758BC4213D9F}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{6D4B9BDA-2A66-4583-B244-758BC4213D9F}.Debug|x86.ActiveCfg = Debug|Any CPU
{6D4B9BDA-2A66-4583-B244-758BC4213D9F}.Release|Any CPU.ActiveCfg = Release|Any CPU
{6D4B9BDA-2A66-4583-B244-758BC4213D9F}.Release|Any CPU.Build.0 = Release|Any CPU
{6D4B9BDA-2A66-4583-B244-758BC4213D9F}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{6D4B9BDA-2A66-4583-B244-758BC4213D9F}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{6D4B9BDA-2A66-4583-B244-758BC4213D9F}.Release|x86.ActiveCfg = Release|Any CPU
{119C3ADC-F8E1-4F72-B89B-006236FF8586}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{119C3ADC-F8E1-4F72-B89B-006236FF8586}.Debug|Any CPU.Build.0 = Debug|Any CPU
{119C3ADC-F8E1-4F72-B89B-006236FF8586}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{119C3ADC-F8E1-4F72-B89B-006236FF8586}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{119C3ADC-F8E1-4F72-B89B-006236FF8586}.Debug|x86.ActiveCfg = Debug|Any CPU
{119C3ADC-F8E1-4F72-B89B-006236FF8586}.Debug|x86.Build.0 = Debug|Any CPU
{119C3ADC-F8E1-4F72-B89B-006236FF8586}.Release|Any CPU.ActiveCfg = Release|Any CPU
{119C3ADC-F8E1-4F72-B89B-006236FF8586}.Release|Any CPU.Build.0 = Release|Any CPU
{119C3ADC-F8E1-4F72-B89B-006236FF8586}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{119C3ADC-F8E1-4F72-B89B-006236FF8586}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{119C3ADC-F8E1-4F72-B89B-006236FF8586}.Release|x86.ActiveCfg = Release|Any CPU
{119C3ADC-F8E1-4F72-B89B-006236FF8586}.Release|x86.Build.0 = Release|Any CPU
{A539505D-9AC0-426B-A9A0-197DF50598B0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{A539505D-9AC0-426B-A9A0-197DF50598B0}.Debug|Any CPU.Build.0 = Debug|Any CPU
{A539505D-9AC0-426B-A9A0-197DF50598B0}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{A539505D-9AC0-426B-A9A0-197DF50598B0}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{A539505D-9AC0-426B-A9A0-197DF50598B0}.Debug|x86.ActiveCfg = Debug|Any CPU
{A539505D-9AC0-426B-A9A0-197DF50598B0}.Debug|x86.Build.0 = Debug|Any CPU
{A539505D-9AC0-426B-A9A0-197DF50598B0}.Release|Any CPU.ActiveCfg = Release|Any CPU
{A539505D-9AC0-426B-A9A0-197DF50598B0}.Release|Any CPU.Build.0 = Release|Any CPU
{A539505D-9AC0-426B-A9A0-197DF50598B0}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{A539505D-9AC0-426B-A9A0-197DF50598B0}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{A539505D-9AC0-426B-A9A0-197DF50598B0}.Release|x86.ActiveCfg = Release|Any CPU
{A539505D-9AC0-426B-A9A0-197DF50598B0}.Release|x86.Build.0 = Release|Any CPU
{5EE61AC6-5269-4F0F-B8FA-4334FE4A678F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{5EE61AC6-5269-4F0F-B8FA-4334FE4A678F}.Debug|Any CPU.Build.0 = Debug|Any CPU
{5EE61AC6-5269-4F0F-B8FA-4334FE4A678F}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{5EE61AC6-5269-4F0F-B8FA-4334FE4A678F}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{5EE61AC6-5269-4F0F-B8FA-4334FE4A678F}.Debug|x86.ActiveCfg = Debug|Any CPU
{5EE61AC6-5269-4F0F-B8FA-4334FE4A678F}.Debug|x86.Build.0 = Debug|Any CPU
{5EE61AC6-5269-4F0F-B8FA-4334FE4A678F}.Release|Any CPU.ActiveCfg = Release|Any CPU
{5EE61AC6-5269-4F0F-B8FA-4334FE4A678F}.Release|Any CPU.Build.0 = Release|Any CPU
{5EE61AC6-5269-4F0F-B8FA-4334FE4A678F}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{5EE61AC6-5269-4F0F-B8FA-4334FE4A678F}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{5EE61AC6-5269-4F0F-B8FA-4334FE4A678F}.Release|x86.ActiveCfg = Release|Any CPU
{5EE61AC6-5269-4F0F-B8FA-4334FE4A678F}.Release|x86.Build.0 = Release|Any CPU
{ABFE87D4-B692-4AE9-A8C0-1F470B8ACBB8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{ABFE87D4-B692-4AE9-A8C0-1F470B8ACBB8}.Debug|Any CPU.Build.0 = Debug|Any CPU
{ABFE87D4-B692-4AE9-A8C0-1F470B8ACBB8}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{ABFE87D4-B692-4AE9-A8C0-1F470B8ACBB8}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{ABFE87D4-B692-4AE9-A8C0-1F470B8ACBB8}.Debug|x86.ActiveCfg = Debug|Any CPU
{ABFE87D4-B692-4AE9-A8C0-1F470B8ACBB8}.Debug|x86.Build.0 = Debug|Any CPU
{ABFE87D4-B692-4AE9-A8C0-1F470B8ACBB8}.Release|Any CPU.ActiveCfg = Release|Any CPU
{ABFE87D4-B692-4AE9-A8C0-1F470B8ACBB8}.Release|Any CPU.Build.0 = Release|Any CPU
{ABFE87D4-B692-4AE9-A8C0-1F470B8ACBB8}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{ABFE87D4-B692-4AE9-A8C0-1F470B8ACBB8}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{ABFE87D4-B692-4AE9-A8C0-1F470B8ACBB8}.Release|x86.ActiveCfg = Release|Any CPU
{ABFE87D4-B692-4AE9-A8C0-1F470B8ACBB8}.Release|x86.Build.0 = Release|Any CPU
{91A1AAFE-A528-4C2E-A48A-9259E780255A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{91A1AAFE-A528-4C2E-A48A-9259E780255A}.Debug|Any CPU.Build.0 = Debug|Any CPU
{91A1AAFE-A528-4C2E-A48A-9259E780255A}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{91A1AAFE-A528-4C2E-A48A-9259E780255A}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{91A1AAFE-A528-4C2E-A48A-9259E780255A}.Debug|x86.ActiveCfg = Debug|Any CPU
{91A1AAFE-A528-4C2E-A48A-9259E780255A}.Debug|x86.Build.0 = Debug|Any CPU
{91A1AAFE-A528-4C2E-A48A-9259E780255A}.Release|Any CPU.ActiveCfg = Release|Any CPU
{91A1AAFE-A528-4C2E-A48A-9259E780255A}.Release|Any CPU.Build.0 = Release|Any CPU
{91A1AAFE-A528-4C2E-A48A-9259E780255A}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{91A1AAFE-A528-4C2E-A48A-9259E780255A}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{91A1AAFE-A528-4C2E-A48A-9259E780255A}.Release|x86.ActiveCfg = Release|Any CPU
{91A1AAFE-A528-4C2E-A48A-9259E780255A}.Release|x86.Build.0 = Release|Any CPU
{EC84265E-4196-4834-8AC0-81956777C5E9}.Debug|Any CPU.ActiveCfg = Debug|x86
{EC84265E-4196-4834-8AC0-81956777C5E9}.Debug|Mixed Platforms.ActiveCfg = Debug|x86
{EC84265E-4196-4834-8AC0-81956777C5E9}.Debug|Mixed Platforms.Build.0 = Debug|x86
{EC84265E-4196-4834-8AC0-81956777C5E9}.Debug|x86.ActiveCfg = Debug|x86
{EC84265E-4196-4834-8AC0-81956777C5E9}.Debug|x86.Build.0 = Debug|x86
{EC84265E-4196-4834-8AC0-81956777C5E9}.Release|Any CPU.ActiveCfg = Release|x86
{EC84265E-4196-4834-8AC0-81956777C5E9}.Release|Mixed Platforms.ActiveCfg = Release|x86
{EC84265E-4196-4834-8AC0-81956777C5E9}.Release|Mixed Platforms.Build.0 = Release|x86
{EC84265E-4196-4834-8AC0-81956777C5E9}.Release|x86.ActiveCfg = Release|x86
{EC84265E-4196-4834-8AC0-81956777C5E9}.Release|x86.Build.0 = Release|x86
{8E19C40F-CE7F-4982-BD90-4EB4E9E04E34}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{8E19C40F-CE7F-4982-BD90-4EB4E9E04E34}.Debug|Any CPU.Build.0 = Debug|Any CPU
{8E19C40F-CE7F-4982-BD90-4EB4E9E04E34}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{8E19C40F-CE7F-4982-BD90-4EB4E9E04E34}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{8E19C40F-CE7F-4982-BD90-4EB4E9E04E34}.Debug|x86.ActiveCfg = Debug|Any CPU
{8E19C40F-CE7F-4982-BD90-4EB4E9E04E34}.Debug|x86.Build.0 = Debug|Any CPU
{8E19C40F-CE7F-4982-BD90-4EB4E9E04E34}.Release|Any CPU.ActiveCfg = Release|Any CPU
{8E19C40F-CE7F-4982-BD90-4EB4E9E04E34}.Release|Any CPU.Build.0 = Release|Any CPU
{8E19C40F-CE7F-4982-BD90-4EB4E9E04E34}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{8E19C40F-CE7F-4982-BD90-4EB4E9E04E34}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{8E19C40F-CE7F-4982-BD90-4EB4E9E04E34}.Release|x86.ActiveCfg = Release|Any CPU
{8E19C40F-CE7F-4982-BD90-4EB4E9E04E34}.Release|x86.Build.0 = Release|Any CPU
{2F88B5EC-85BC-4B5E-B254-06D2F2771F67}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{2F88B5EC-85BC-4B5E-B254-06D2F2771F67}.Debug|Any CPU.Build.0 = Debug|Any CPU
{2F88B5EC-85BC-4B5E-B254-06D2F2771F67}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{2F88B5EC-85BC-4B5E-B254-06D2F2771F67}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{2F88B5EC-85BC-4B5E-B254-06D2F2771F67}.Debug|x86.ActiveCfg = Debug|Any CPU
{2F88B5EC-85BC-4B5E-B254-06D2F2771F67}.Debug|x86.Build.0 = Debug|Any CPU
{2F88B5EC-85BC-4B5E-B254-06D2F2771F67}.Release|Any CPU.ActiveCfg = Release|Any CPU
{2F88B5EC-85BC-4B5E-B254-06D2F2771F67}.Release|Any CPU.Build.0 = Release|Any CPU
{2F88B5EC-85BC-4B5E-B254-06D2F2771F67}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{2F88B5EC-85BC-4B5E-B254-06D2F2771F67}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{2F88B5EC-85BC-4B5E-B254-06D2F2771F67}.Release|x86.ActiveCfg = Release|Any CPU
{2F88B5EC-85BC-4B5E-B254-06D2F2771F67}.Release|x86.Build.0 = Release|Any CPU
{4DF79671-E814-49BD-864D-8257D6C6E072}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{4DF79671-E814-49BD-864D-8257D6C6E072}.Debug|Any CPU.Build.0 = Debug|Any CPU
{4DF79671-E814-49BD-864D-8257D6C6E072}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{4DF79671-E814-49BD-864D-8257D6C6E072}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{4DF79671-E814-49BD-864D-8257D6C6E072}.Debug|x86.ActiveCfg = Debug|Any CPU
{4DF79671-E814-49BD-864D-8257D6C6E072}.Debug|x86.Build.0 = Debug|Any CPU
{4DF79671-E814-49BD-864D-8257D6C6E072}.Release|Any CPU.ActiveCfg = Release|Any CPU
{4DF79671-E814-49BD-864D-8257D6C6E072}.Release|Any CPU.Build.0 = Release|Any CPU
{4DF79671-E814-49BD-864D-8257D6C6E072}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{4DF79671-E814-49BD-864D-8257D6C6E072}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{4DF79671-E814-49BD-864D-8257D6C6E072}.Release|x86.ActiveCfg = Release|Any CPU
{4DF79671-E814-49BD-864D-8257D6C6E072}.Release|x86.Build.0 = Release|Any CPU
{9C46D98F-6500-490B-9E56-C89DFFFA05F8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{9C46D98F-6500-490B-9E56-C89DFFFA05F8}.Debug|Any CPU.Build.0 = Debug|Any CPU
{9C46D98F-6500-490B-9E56-C89DFFFA05F8}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{9C46D98F-6500-490B-9E56-C89DFFFA05F8}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{9C46D98F-6500-490B-9E56-C89DFFFA05F8}.Debug|x86.ActiveCfg = Debug|Any CPU
{9C46D98F-6500-490B-9E56-C89DFFFA05F8}.Debug|x86.Build.0 = Debug|Any CPU
{9C46D98F-6500-490B-9E56-C89DFFFA05F8}.Release|Any CPU.ActiveCfg = Release|Any CPU
{9C46D98F-6500-490B-9E56-C89DFFFA05F8}.Release|Any CPU.Build.0 = Release|Any CPU
{9C46D98F-6500-490B-9E56-C89DFFFA05F8}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{9C46D98F-6500-490B-9E56-C89DFFFA05F8}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{9C46D98F-6500-490B-9E56-C89DFFFA05F8}.Release|x86.ActiveCfg = Release|Any CPU
{9C46D98F-6500-490B-9E56-C89DFFFA05F8}.Release|x86.Build.0 = Release|Any CPU
{DD8A6858-1261-49F7-86BE-5AC5C3A0EC34}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{DD8A6858-1261-49F7-86BE-5AC5C3A0EC34}.Debug|Any CPU.Build.0 = Debug|Any CPU
{DD8A6858-1261-49F7-86BE-5AC5C3A0EC34}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{DD8A6858-1261-49F7-86BE-5AC5C3A0EC34}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{DD8A6858-1261-49F7-86BE-5AC5C3A0EC34}.Debug|x86.ActiveCfg = Debug|Any CPU
{DD8A6858-1261-49F7-86BE-5AC5C3A0EC34}.Debug|x86.Build.0 = Debug|Any CPU
{DD8A6858-1261-49F7-86BE-5AC5C3A0EC34}.Release|Any CPU.ActiveCfg = Release|Any CPU
{DD8A6858-1261-49F7-86BE-5AC5C3A0EC34}.Release|Any CPU.Build.0 = Release|Any CPU
{DD8A6858-1261-49F7-86BE-5AC5C3A0EC34}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{DD8A6858-1261-49F7-86BE-5AC5C3A0EC34}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{DD8A6858-1261-49F7-86BE-5AC5C3A0EC34}.Release|x86.ActiveCfg = Release|Any CPU
{DD8A6858-1261-49F7-86BE-5AC5C3A0EC34}.Release|x86.Build.0 = Release|Any CPU
{7D455950-7D7D-4C79-8E9C-4CF53F09559A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{7D455950-7D7D-4C79-8E9C-4CF53F09559A}.Debug|Any CPU.Build.0 = Debug|Any CPU
{7D455950-7D7D-4C79-8E9C-4CF53F09559A}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{7D455950-7D7D-4C79-8E9C-4CF53F09559A}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{7D455950-7D7D-4C79-8E9C-4CF53F09559A}.Debug|x86.ActiveCfg = Debug|Any CPU
{7D455950-7D7D-4C79-8E9C-4CF53F09559A}.Debug|x86.Build.0 = Debug|Any CPU
{7D455950-7D7D-4C79-8E9C-4CF53F09559A}.Release|Any CPU.ActiveCfg = Release|Any CPU
{7D455950-7D7D-4C79-8E9C-4CF53F09559A}.Release|Any CPU.Build.0 = Release|Any CPU
{7D455950-7D7D-4C79-8E9C-4CF53F09559A}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{7D455950-7D7D-4C79-8E9C-4CF53F09559A}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{7D455950-7D7D-4C79-8E9C-4CF53F09559A}.Release|x86.ActiveCfg = Release|Any CPU
{7D455950-7D7D-4C79-8E9C-4CF53F09559A}.Release|x86.Build.0 = Release|Any CPU
{879D3D11-30A4-418C-980F-E46F8D5F4B00}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{879D3D11-30A4-418C-980F-E46F8D5F4B00}.Debug|Any CPU.Build.0 = Debug|Any CPU
{879D3D11-30A4-418C-980F-E46F8D5F4B00}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{879D3D11-30A4-418C-980F-E46F8D5F4B00}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{879D3D11-30A4-418C-980F-E46F8D5F4B00}.Debug|x86.ActiveCfg = Debug|Any CPU
{879D3D11-30A4-418C-980F-E46F8D5F4B00}.Debug|x86.Build.0 = Debug|Any CPU
{879D3D11-30A4-418C-980F-E46F8D5F4B00}.Release|Any CPU.ActiveCfg = Release|Any CPU
{879D3D11-30A4-418C-980F-E46F8D5F4B00}.Release|Any CPU.Build.0 = Release|Any CPU
{879D3D11-30A4-418C-980F-E46F8D5F4B00}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{879D3D11-30A4-418C-980F-E46F8D5F4B00}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{879D3D11-30A4-418C-980F-E46F8D5F4B00}.Release|x86.ActiveCfg = Release|Any CPU
{879D3D11-30A4-418C-980F-E46F8D5F4B00}.Release|x86.Build.0 = Release|Any CPU
{EAC6FEEE-0A64-4C9A-BA59-BB9DC57C3CB1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{EAC6FEEE-0A64-4C9A-BA59-BB9DC57C3CB1}.Debug|Any CPU.Build.0 = Debug|Any CPU
{EAC6FEEE-0A64-4C9A-BA59-BB9DC57C3CB1}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{EAC6FEEE-0A64-4C9A-BA59-BB9DC57C3CB1}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{EAC6FEEE-0A64-4C9A-BA59-BB9DC57C3CB1}.Debug|x86.ActiveCfg = Debug|Any CPU
{EAC6FEEE-0A64-4C9A-BA59-BB9DC57C3CB1}.Debug|x86.Build.0 = Debug|Any CPU
{EAC6FEEE-0A64-4C9A-BA59-BB9DC57C3CB1}.Release|Any CPU.ActiveCfg = Release|Any CPU
{EAC6FEEE-0A64-4C9A-BA59-BB9DC57C3CB1}.Release|Any CPU.Build.0 = Release|Any CPU
{EAC6FEEE-0A64-4C9A-BA59-BB9DC57C3CB1}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{EAC6FEEE-0A64-4C9A-BA59-BB9DC57C3CB1}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{EAC6FEEE-0A64-4C9A-BA59-BB9DC57C3CB1}.Release|x86.ActiveCfg = Release|Any CPU
{EAC6FEEE-0A64-4C9A-BA59-BB9DC57C3CB1}.Release|x86.Build.0 = Release|Any CPU
{CF136F1D-A1B3-472A-93C4-1640192A5C16}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{CF136F1D-A1B3-472A-93C4-1640192A5C16}.Debug|Any CPU.Build.0 = Debug|Any CPU
{CF136F1D-A1B3-472A-93C4-1640192A5C16}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{CF136F1D-A1B3-472A-93C4-1640192A5C16}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{CF136F1D-A1B3-472A-93C4-1640192A5C16}.Debug|x86.ActiveCfg = Debug|Any CPU
{CF136F1D-A1B3-472A-93C4-1640192A5C16}.Debug|x86.Build.0 = Debug|Any CPU
{CF136F1D-A1B3-472A-93C4-1640192A5C16}.Release|Any CPU.ActiveCfg = Release|Any CPU
{CF136F1D-A1B3-472A-93C4-1640192A5C16}.Release|Any CPU.Build.0 = Release|Any CPU
{CF136F1D-A1B3-472A-93C4-1640192A5C16}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{CF136F1D-A1B3-472A-93C4-1640192A5C16}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{CF136F1D-A1B3-472A-93C4-1640192A5C16}.Release|x86.ActiveCfg = Release|Any CPU
{CF136F1D-A1B3-472A-93C4-1640192A5C16}.Release|x86.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(NestedProjects) = preSolution
{91A1AAFE-A528-4C2E-A48A-9259E780255A} = {1262AB40-4503-469A-A00B-50C1AE6A3BA6}
{EC84265E-4196-4834-8AC0-81956777C5E9} = {1262AB40-4503-469A-A00B-50C1AE6A3BA6}
{2F88B5EC-85BC-4B5E-B254-06D2F2771F67} = {1262AB40-4503-469A-A00B-50C1AE6A3BA6}
{DD8A6858-1261-49F7-86BE-5AC5C3A0EC34} = {1262AB40-4503-469A-A00B-50C1AE6A3BA6}
{879D3D11-30A4-418C-980F-E46F8D5F4B00} = {0CCF1095-E435-4EC9-9B5D-08F9B6359242}
{EAC6FEEE-0A64-4C9A-BA59-BB9DC57C3CB1} = {0CCF1095-E435-4EC9-9B5D-08F9B6359242}
{CF136F1D-A1B3-472A-93C4-1640192A5C16} = {0CCF1095-E435-4EC9-9B5D-08F9B6359242}
{0CCF1095-E435-4EC9-9B5D-08F9B6359242} = {83968208-EA90-43E4-AA90-91E98684408C}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {BD78A3E8-6F11-4F24-AB5F-A9F25461F64F}
EndGlobalSection
EndGlobal
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment