583 lines · 41.9 KB · Text
RawDownload
<UserControl x:Class="GSF.PhasorProtocols.UI.UserControls.RealTimeMeasurementUserControl"             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"             xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"              xmlns:d="http://schemas.microsoft.com/expression/blend/2008"              mc:Ignorable="d" d:DesignHeight="590" d:DesignWidth="850"             xmlns:tsfBinding="clr-namespace:GSF.TimeSeries.UI.Binding;assembly=GSF.TimeSeries.UI"             xmlns:tsf="clr-namespace:GSF.TimeSeries.UI;assembly=GSF.TimeSeries.UI.WPF"             Background="Transparent">     <UserControl.Resources>        <ResourceDictionary>            <ResourceDictionary.MergedDictionaries>                <ResourceDictionary Source="/GSF.TimeSeries.UI.WPF;Component/Resources/CommonResource.xaml"/>                <ResourceDictionary Source="/GSF.TimeSeries.UI.WPF;Component/Resources/StyleResource.xaml"/>            </ResourceDictionary.MergedDictionaries>        </ResourceDictionary>    </UserControl.Resources>     <StackPanel Orientation="Vertical">         <StackPanel.Resources>             <HierarchicalDataTemplate x:Key="MeasurementNodeTemplate">                <Border BorderThickness="0,0,0,1" BorderBrush="#FFDDDDDD">                                                           <StackPanel Orientation="Horizontal" VerticalAlignment="Center">                        <StackPanel.Resources>                            <Style TargetType="{x:Type TextBlock}">                                <Setter Property="HorizontalAlignment" Value="Left"/>                                <Setter Property="TextAlignment" Value="Left"/>                                <Setter Property="VerticalAlignment" Value="Center"/>                            </Style>                        </StackPanel.Resources>                         <TextBlock Text="{tsfBinding:Column Path=ID}" Width="150"/>                        <TextBlock Text="{tsfBinding:Column Path=Description}" Width="350" TextWrapping="Wrap"/>                        <TextBlock Text="{tsfBinding:Column Path=TimeTag}" FontWeight="Bold" Width="100" HorizontalAlignment="Center" TextAlignment="Center"/>                        <TextBlock Text="{tsfBinding:Column Path=Value}" FontWeight="Bold" Width="90"                                   Foreground="{tsfBinding:Column Path=Quality, Converter={StaticResource StringToStatusColorConverter}}" HorizontalAlignment="Center" TextAlignment="Center"/>                        <TextBlock Text="{tsfBinding:Column Path=EngineeringUnit}" Width="60" HorizontalAlignment="Center" TextAlignment="Center"/>                    </StackPanel>                </Border>            </HierarchicalDataTemplate>             <HierarchicalDataTemplate x:Key="DeviceNodeTemplate" ItemsSource="{tsfBinding:Column Path=MeasurementList}" ItemTemplate="{StaticResource MeasurementNodeTemplate}">                <StackPanel Orientation="Horizontal" VerticalAlignment="Center">                     <StackPanel.Resources>                        <Style TargetType="{x:Type TextBlock}">                            <Setter Property="HorizontalAlignment" Value="Left"/>                            <Setter Property="TextAlignment" Value="Left"/>                            <Setter Property="VerticalAlignment" Value="Center"/>                        </Style>                    </StackPanel.Resources>                     <Ellipse Width="12" Height="12" VerticalAlignment="Center" Fill="{tsfBinding:Column Path=StatusColor, Converter={StaticResource StringToStatusColorConverter}}" Margin="2"/>                    <TextBlock Text="{tsfBinding:Column Path=Acronym}" Width="175" FontWeight="Bold"/>                    <TextBlock Text="{tsfBinding:Column Path=Name}" Width="300" FontWeight="Bold"/>                    <TextBlock Text="{tsfBinding:Column Path=ProtocolName}" Width="135" FontWeight="Bold"/>                    <TextBlock Text="{tsfBinding:Column Path=VendorDeviceName}" Width="100" FontWeight="Bold"/>                    <Button Content="Edit" Tag="{tsfBinding:Column Path=Acronym}" Template="{StaticResource HyperlinkStyleButtonTemplate}"                             Width="50" Click="ButtonEdit_Click"  />                </StackPanel>            </HierarchicalDataTemplate>             <HierarchicalDataTemplate x:Key="RootNodeTemplate" ItemsSource="{tsfBinding:Column Path=DeviceList}" ItemTemplate="{StaticResource DeviceNodeTemplate}">                 <StackPanel Orientation="Horizontal" VerticalAlignment="Center">                     <StackPanel.Resources>                        <Style TargetType="{x:Type TextBlock}">                            <Setter Property="HorizontalAlignment" Value="Left"/>                            <Setter Property="TextAlignment" Value="Left"/>                            <Setter Property="VerticalAlignment" Value="Center"/>                        </Style>                    </StackPanel.Resources>                     <Ellipse Width="12" Height="12" VerticalAlignment="Center" Fill="{tsfBinding:Column Path=StatusColor, Converter={StaticResource StringToStatusColorConverter}}" Margin="2"/>                    <TextBlock Text="{tsfBinding:Column Path=Acronym}" Width="175" FontWeight="Bold"/>                    <TextBlock Text="{tsfBinding:Column Path=Name}" Width="550" FontWeight="Bold"/>                    <Button Content="Edit" Template="{StaticResource HyperlinkStyleButtonTemplate}" Width="50" Click="ButtonEdit_Click"                                Visibility="{tsfBinding:Column Path=ID, Converter={StaticResource ObjectToVisibilityConverter}}"/>                </StackPanel>             </HierarchicalDataTemplate>             <!--<Style x:Key="ExpandedItemStyle" TargetType="TreeViewItem">                <Setter Property="IsExpanded" Value="{tsfBinding:Column Path=DataContext.Expanded, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType=UserControl, AncestorLevel=1}}"/>            </Style>-->            <Style x:Key="ExpandedItemStyle" TargetType="TreeViewItem">                <Setter Property="IsExpanded" Value="{tsfBinding:Column Path=Expanded}" />            </Style>          </StackPanel.Resources>         <StackPanel Orientation="Vertical">                        <tsf:TsfPopup x:Name="PopupSettings" Topmost="False" Placement="Center">                                <Border CornerRadius="5" BorderThickness="1" Background="White" BorderBrush="Blue">                     <Grid>                         <Grid.ColumnDefinitions>                            <ColumnDefinition Width="2*"/>                            <ColumnDefinition Width="*"/>                        </Grid.ColumnDefinitions>                         <Grid.RowDefinitions>                            <RowDefinition Height="Auto"/>                            <RowDefinition Height="Auto"/>                        </Grid.RowDefinitions>                         <TextBlock Text="Measurement Data Refresh Interval (in seconds)" Grid.Column="0" Grid.Row="0"/>                        <TextBox x:Name="TextBoxRefreshInterval" Grid.Row="0" Grid.Column="1" Width="50"/>                         <StackPanel Orientation="Horizontal" Grid.Row="1" Grid.Column="0" Grid.ColumnSpan="2" HorizontalAlignment="Right">                            <Button Content="Restore Default" Margin="2" Width="Auto" Click="ButtonRestore_Click"/>                            <Button Content="Cancel" Margin="2" Click="ButtonCancel_Click"/>                            <Button Content="Save" Margin="2" IsDefault="True" Click="ButtonSave_Click"/>                        </StackPanel>                     </Grid>                 </Border>                           </tsf:TsfPopup>              <tsf:TsfPopup x:Name="ShowuserStatusDoc" Topmost="False" Placement="Center" MinHeight="540">                 <Border CornerRadius="5" BorderThickness="2" Background="White" BorderBrush="Blue">                    <Grid>                        <Grid.RowDefinitions>                            <RowDefinition Height="*"/>                            <RowDefinition Height="Auto"/>                        </Grid.RowDefinitions>                         <TabControl VerticalAlignment="Stretch">                            <TabItem Header="IEEE C37.118">                                <Grid Margin="5">                                    <Grid.Resources>                                        <Style TargetType="{x:Type TextBlock}">                                            <Setter Property="HorizontalAlignment" Value="Left"/>                                            <Setter Property="TextAlignment" Value="Left"/>                                            <Setter Property="VerticalAlignment" Value="Center"/>                                            <Setter Property="Padding" Value="0"/>                                        </Style>                                         <Style TargetType="{x:Type CheckBox}">                                            <Setter Property="Width" Value="Auto"/>                                            <Setter Property="HorizontalAlignment" Value="Left"/>                                            <Setter Property="HorizontalContentAlignment" Value="Left"/>                                        </Style>                                    </Grid.Resources>                                                                        <Grid.ColumnDefinitions>                                        <ColumnDefinition Width="45" MinWidth="1" MaxWidth="50" />                                        <ColumnDefinition Width="155" MinWidth="1" MaxWidth="165" />                                        <ColumnDefinition Width="600" MinWidth="1" MaxWidth="1005"/>                                    </Grid.ColumnDefinitions>                                     <Grid.RowDefinitions>                                        <RowDefinition Height="Auto"/>                                        <RowDefinition Height="Auto"/>                                        <RowDefinition Height="Auto"/>                                        <RowDefinition Height="Auto"/>                                        <RowDefinition Height="Auto"/>                                        <RowDefinition Height="Auto"/>                                        <RowDefinition Height="Auto"/>                                        <RowDefinition Height="Auto"/>                                        <RowDefinition Height="Auto"/>                                        <RowDefinition Height="Auto"/>                                    </Grid.RowDefinitions>                                     <TextBlock Text="Bit(s)" Grid.Row="0" Grid.Column="0" FontWeight="Bold" />                                    <TextBlock Text="Description" Grid.Row="0" Grid.Column="1" FontWeight="Bold"/>                                    <TextBlock Text="Comment" Grid.Row="0" Grid.Column="2" FontWeight="Bold"/>                                     <TextBlock Text="15" Grid.Row="1" Grid.Column="0"/>                                    <TextBlock Text="Data valid" Grid.Row="1" Grid.Column="1"/>                                    <TextBlock Text="0 when PMU data is valid, 1 when invalid or PMU is in test mode." Grid.Row="1" Grid.Column="2"/>                                     <TextBlock Text="14" Grid.Row="2" Grid.Column="0"/>                                    <TextBlock Text="PMU error" Grid.Row="2" Grid.Column="1"/>                                    <TextBlock Text="0 when no error, including configuration error." Grid.Row="2" Grid.Column="2"/>                                     <TextBlock Text="13" Grid.Row="3" Grid.Column="0"/>                                    <TextBlock Text="PMU sync" Grid.Row="3" Grid.Column="1"/>                                    <TextBlock Text="0 when in sync." Grid.Row="3" Grid.Column="2"/>                                     <TextBlock Text="12" Grid.Row="4" Grid.Column="0"/>                                    <TextBlock Text="Data sorting" Grid.Row="4" Grid.Column="1"/>                                    <TextBlock Text="0 by time stamp, 1 by arrival." Grid.Row="4" Grid.Column="2"/>                                     <TextBlock Text="11" Grid.Row="5" Grid.Column="0"/>                                    <TextBlock Text="PMU trigger detected" Grid.Row="5" Grid.Column="1"/>                                    <TextBlock Text="0 when no trigger." Grid.Row="5" Grid.Column="2"/>                                     <TextBlock Text="10" Grid.Row="6" Grid.Column="0"/>                                    <TextBlock Text="Configuration changed" Grid.Row="6" Grid.Column="1"/>                                    <TextBlock Text="set to 1 for 1 min when configuration changed." Grid.Row="6" Grid.Column="2"/>                                     <TextBlock Text="09-06" Grid.Row="7" Grid.Column="0"/>                                    <TextBlock Text="Reserved for security" Grid.Row="7" Grid.Column="1"/>                                    <TextBlock Text="presently set to 0." Grid.Row="7" Grid.Column="2"/>                                     <TextBlock VerticalAlignment="Top" Text="05-04" Grid.Row="8" Grid.Column="0"/>                                    <TextBlock VerticalAlignment="Top" Text="Unlocked time" Grid.Row="8" Grid.Column="1"/>                                    <StackPanel Grid.Row="8" Grid.Column="2">                                        <TextBlock Text="00 = sync locked, best quality." />                                        <TextBlock Text="01 = Unlocked for 10 s " />                                        <TextBlock Text="10 = Unlocked for 100 s" />                                        <TextBlock Text="11 = Unlocked over 1000 s" />                                    </StackPanel>                                     <TextBlock VerticalAlignment="Top" Text="03-00" Grid.Row="9" Grid.Column="0"/>                                    <TextBlock VerticalAlignment="Top" Text="Trigger reason" Grid.Row="9" Grid.Column="1"/>                                    <Grid Grid.Row="9" Grid.Column="2">                                        <Grid.ColumnDefinitions>                                            <ColumnDefinition Width="Auto" />                                            <ColumnDefinition Width="Auto" />                                        </Grid.ColumnDefinitions>                                         <Grid.RowDefinitions>                                            <RowDefinition Height="Auto" />                                            <RowDefinition Height="Auto" />                                            <RowDefinition Height="Auto" />                                            <RowDefinition Height="Auto" />                                            <RowDefinition Height="Auto" />                                        </Grid.RowDefinitions>                                         <TextBlock Margin="5,0" Text="1111–1000: Available for user definition" Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="2" />                                        <TextBlock Margin="5,0" Text="0111: Digital" Grid.Row="1" Grid.Column="0" />                                        <TextBlock Margin="5,0" Text="0101: df/dt high" Grid.Row="2" Grid.Column="0" />                                        <TextBlock Margin="5,0" Text="0011: Phase-angle diff" Grid.Row="3" Grid.Column="0" />                                        <TextBlock Margin="5,0" Text="0011: 0001: Magnitude low" Grid.Row="4" Grid.Column="0" />                                         <TextBlock Margin="5,0" Text="0110: Reserved" Grid.Row="1" Grid.Column="1" />                                        <TextBlock Margin="5,0" Text="0100: Frequency high/low" Grid.Row="2" Grid.Column="1" />                                        <TextBlock Margin="5,0" Text="0010: Magnitude high" Grid.Row="3" Grid.Column="1" />                                        <TextBlock Margin="5,0" Text="0000: Manual" Grid.Row="4" Grid.Column="1" />                                    </Grid>                                </Grid>                            </TabItem>                            <TabItem Header="IEEE C37.118.2">                                <Grid Margin="5">                                    <Grid.Resources>                                        <Style TargetType="{x:Type TextBlock}">                                            <Setter Property="HorizontalAlignment" Value="Left"/>                                            <Setter Property="TextAlignment" Value="Left"/>                                            <Setter Property="VerticalAlignment" Value="Center"/>                                            <Setter Property="Padding" Value="0"/>                                        </Style>                                         <Style TargetType="{x:Type CheckBox}">                                            <Setter Property="Width" Value="Auto"/>                                            <Setter Property="HorizontalAlignment" Value="Left"/>                                            <Setter Property="HorizontalContentAlignment" Value="Left"/>                                        </Style>                                    </Grid.Resources>                                     <Grid.ColumnDefinitions>                                        <ColumnDefinition Width="45" MinWidth="1" MaxWidth="50" />                                        <ColumnDefinition Width="155" MinWidth="1" MaxWidth="165" />                                        <ColumnDefinition Width="600" MinWidth="1" MaxWidth="1005"/>                                    </Grid.ColumnDefinitions>                                     <Grid.RowDefinitions>                                        <RowDefinition Height="Auto"/>                                        <RowDefinition Height="Auto"/>                                        <RowDefinition Height="Auto"/>                                        <RowDefinition Height="Auto"/>                                        <RowDefinition Height="Auto"/>                                        <RowDefinition Height="Auto"/>                                        <RowDefinition Height="Auto"/>                                        <RowDefinition Height="Auto"/>                                        <RowDefinition Height="Auto"/>                                        <RowDefinition Height="Auto"/>                                    </Grid.RowDefinitions>                                     <TextBlock Text="Bit(s)" Grid.Row="0" Grid.Column="0" FontWeight="Bold" />                                    <TextBlock Text="Description" Grid.Row="0" Grid.Column="1" FontWeight="Bold"/>                                    <TextBlock Text="Comment" Grid.Row="0" Grid.Column="2" FontWeight="Bold"/>                                     <TextBlock VerticalAlignment="Top" Text="15-14" Grid.Row="1" Grid.Column="0"/>                                    <TextBlock VerticalAlignment="Top" Text="Data error" Grid.Row="1" Grid.Column="1"/>                                    <Grid Grid.Row="1" Grid.Column="2">                                        <Grid.ColumnDefinitions>                                            <ColumnDefinition Width="Auto" />                                            <ColumnDefinition Width="Auto" />                                        </Grid.ColumnDefinitions>                                         <Grid.RowDefinitions>                                            <RowDefinition Height="Auto" />                                            <RowDefinition Height="Auto" />                                            <RowDefinition Height="Auto" />                                            <RowDefinition Height="Auto" />                                        </Grid.RowDefinitions>                                         <TextBlock Margin="5,0" Text="00" Grid.Row="0" Grid.Column="0" />                                        <TextBlock Margin="5,0" Text="01" Grid.Row="1" Grid.Column="0" />                                        <TextBlock Margin="5,0" Text="10" Grid.Row="2" Grid.Column="0" />                                        <TextBlock Margin="5,0" Text="11" Grid.Row="3" Grid.Column="0" />                                         <TextBlock Margin="5,0" Text="Good measurement data, no errors" Grid.Row="0" Grid.Column="1" />                                        <TextBlock Margin="5,0" Text="PMU error. No information about data" Grid.Row="1" Grid.Column="1" />                                        <TextBlock Margin="5,0" Text="PMU in test mode (do not use values) or absent data tags have been inserted (do not use values)" Grid.Row="2" Grid.Column="1" />                                        <TextBlock Margin="5,0" Text="PMU error (do not use values)" Grid.Row="3" Grid.Column="1" />                                    </Grid>                                     <TextBlock VerticalAlignment="Top" Text="13" Grid.Row="2" Grid.Column="0"/>                                    <TextBlock VerticalAlignment="Top" Text="PMU sync" Grid.Row="2" Grid.Column="1"/>                                    <TextBlock VerticalAlignment="Top" Text="0 when in sync with a UTC traceable time source" Grid.Row="2" Grid.Column="2"/>                                     <TextBlock VerticalAlignment="Top" Text="12" Grid.Row="3" Grid.Column="0"/>                                    <TextBlock VerticalAlignment="Top" Text="Data sorting" Grid.Row="3" Grid.Column="1"/>                                    <TextBlock VerticalAlignment="Top" Text="0 by time stamp, 1 by arrival" Grid.Row="3" Grid.Column="2"/>                                     <TextBlock VerticalAlignment="Top" Text="11" Grid.Row="4" Grid.Column="0"/>                                    <TextBlock VerticalAlignment="Top" Text="PMU trigger detected" Grid.Row="4" Grid.Column="1"/>                                    <TextBlock VerticalAlignment="Top" Text="0 when no trigger" Grid.Row="4" Grid.Column="2"/>                                     <TextBlock VerticalAlignment="Top" Text="10" Grid.Row="5" Grid.Column="0"/>                                    <TextBlock VerticalAlignment="Top" Text="Configuration changed" Grid.Row="5" Grid.Column="1"/>                                    <TextBlock VerticalAlignment="Top" Text="set to 1 for 1 min to advise configuration will change, and clear to 0 when change effected." Grid.Row="5" Grid.Column="2"/>                                     <TextBlock VerticalAlignment="Top" Text="09" Grid.Row="6" Grid.Column="0"/>                                    <TextBlock VerticalAlignment="Top" Text="Data modified" Grid.Row="6" Grid.Column="1"/>                                    <TextBlock VerticalAlignment="Top" Text="1 if data modified by post processing, 0 otherwise" Grid.Row="6" Grid.Column="2"/>                                     <TextBlock VerticalAlignment="Top" Text="08-06" Grid.Row="7" Grid.Column="0"/>                                    <TextBlock VerticalAlignment="Top" Text="PMU Time quality" Grid.Row="7" Grid.Column="1"/>                                    <Grid Grid.Row="7" Grid.Column="2">                                        <Grid.ColumnDefinitions>                                            <ColumnDefinition Width="Auto" />                                            <ColumnDefinition Width="Auto" />                                            <ColumnDefinition Width="Auto" />                                        </Grid.ColumnDefinitions>                                         <Grid.RowDefinitions>                                            <RowDefinition Height="Auto" />                                            <RowDefinition Height="Auto" />                                            <RowDefinition Height="Auto" />                                            <RowDefinition Height="Auto" />                                            <RowDefinition Height="Auto" />                                            <RowDefinition Height="Auto" />                                            <RowDefinition Height="Auto" />                                            <RowDefinition Height="Auto" />                                            <RowDefinition Height="Auto" />                                        </Grid.RowDefinitions>                                         <TextBlock Margin="5,0" FontWeight="Bold" Text="Binary" Grid.Row="0" Grid.Column="0" />                                        <TextBlock Margin="5,0" Text="111" Grid.Row="1" Grid.Column="0" />                                        <TextBlock Margin="5,0" Text="110" Grid.Row="2" Grid.Column="0" />                                        <TextBlock Margin="5,0" Text="101" Grid.Row="3" Grid.Column="0" />                                        <TextBlock Margin="5,0" Text="100" Grid.Row="4" Grid.Column="0" />                                        <TextBlock Margin="5,0" Text="011" Grid.Row="5" Grid.Column="0" />                                        <TextBlock Margin="5,0" Text="010" Grid.Row="6" Grid.Column="0" />                                        <TextBlock Margin="5,0" Text="001" Grid.Row="7" Grid.Column="0" />                                        <TextBlock Margin="5,0" Text="000" Grid.Row="8" Grid.Column="0" />                                         <TextBlock Margin="5,0" FontWeight="Bold" Text="hex" Grid.Row="0" Grid.Column="1" />                                        <TextBlock Margin="5,0" Text="7" Grid.Row="1" Grid.Column="1" />                                        <TextBlock Margin="5,0" Text="6" Grid.Row="2" Grid.Column="1" />                                        <TextBlock Margin="5,0" Text="5" Grid.Row="3" Grid.Column="1" />                                        <TextBlock Margin="5,0" Text="4" Grid.Row="4" Grid.Column="1" />                                        <TextBlock Margin="5,0" Text="3" Grid.Row="5" Grid.Column="1" />                                        <TextBlock Margin="5,0" Text="2" Grid.Row="6" Grid.Column="1" />                                        <TextBlock Margin="5,0" Text="1" Grid.Row="7" Grid.Column="1" />                                        <TextBlock Margin="5,0" Text="0" Grid.Row="8" Grid.Column="1" />                                         <TextBlock Margin="5,0" FontWeight="Bold" Text="Value (worst-case accuracy)" Grid.Row="0" Grid.Column="2" />                                        <TextBlock Margin="5,0" Text="Estimated maximum time error > 10 ms or time error unknown" Grid.Row="1" Grid.Column="2" />                                        <TextBlock Margin="5,0" Text="Estimated maximum time error &lt; 10 ms" Grid.Row="2" Grid.Column="2" />                                        <TextBlock Margin="5,0" Text="Estimated maximum time error &lt; 1 ms" Grid.Row="3" Grid.Column="2" />                                        <TextBlock Margin="5,0" Text="Estimated maximum time error &lt; 100 μs" Grid.Row="4" Grid.Column="2" />                                        <TextBlock Margin="5,0" Text="Estimated maximum time error &lt; 10 μs" Grid.Row="5" Grid.Column="2" />                                        <TextBlock Margin="5,0" Text="Estimated maximum time error &lt; 1 μs" Grid.Row="6" Grid.Column="2" />                                        <TextBlock Margin="5,0" Text="Estimated maximum time error &lt; 100 ns" Grid.Row="7" Grid.Column="2" />                                        <TextBlock Margin="5,0" Text="Not used (indicates code from previous version of profile)" Grid.Row="8" Grid.Column="2" />                                    </Grid>                                     <TextBlock VerticalAlignment="Top" Text="05-04" Grid.Row="8" Grid.Column="0"/>                                    <TextBlock VerticalAlignment="Top" Text="Unlocked time" Grid.Row="8" Grid.Column="1"/>                                    <StackPanel Grid.Row="8" Grid.Column="2">                                        <TextBlock Text="00 = sync locked, best quality." />                                        <TextBlock Text="01 = Unlocked for 10 s " />                                        <TextBlock Text="10 = Unlocked for 100 s" />                                        <TextBlock Text="11 = Unlocked over 1000 s" />                                    </StackPanel>                                     <TextBlock VerticalAlignment="Top" Text="03-00" Grid.Row="9" Grid.Column="0"/>                                    <TextBlock VerticalAlignment="Top" Text="Trigger reason" Grid.Row="9" Grid.Column="1"/>                                    <Grid Grid.Row="9" Grid.Column="2">                                        <Grid.ColumnDefinitions>                                            <ColumnDefinition Width="Auto" />                                            <ColumnDefinition Width="Auto" />                                        </Grid.ColumnDefinitions>                                         <Grid.RowDefinitions>                                            <RowDefinition Height="Auto" />                                            <RowDefinition Height="Auto" />                                            <RowDefinition Height="Auto" />                                            <RowDefinition Height="Auto" />                                            <RowDefinition Height="Auto" />                                        </Grid.RowDefinitions>                                         <TextBlock Margin="5,0" Text="1111–1000: Available for user definition" Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="2" />                                        <TextBlock Margin="5,0" Text="0111: Digital" Grid.Row="1" Grid.Column="0" />                                        <TextBlock Margin="5,0" Text="0101: df/dt high" Grid.Row="2" Grid.Column="0" />                                        <TextBlock Margin="5,0" Text="0011: Phase-angle diff" Grid.Row="3" Grid.Column="0" />                                        <TextBlock Margin="5,0" Text="0011: 0001: Magnitude low" Grid.Row="4" Grid.Column="0" />                                         <TextBlock Margin="5,0" Text="0110: Reserved" Grid.Row="1" Grid.Column="1" />                                        <TextBlock Margin="5,0" Text="0100: Frequency high/low" Grid.Row="2" Grid.Column="1" />                                        <TextBlock Margin="5,0" Text="0010: Magnitude high" Grid.Row="3" Grid.Column="1" />                                        <TextBlock Margin="5,0" Text="0000: Manual" Grid.Row="4" Grid.Column="1" />                                    </Grid>                                </Grid>                            </TabItem>                            <TabItem Header="IEEE 1344">                                <Grid Margin="5">                                    <Grid.Resources>                                        <Style TargetType="{x:Type TextBlock}">                                            <Setter Property="HorizontalAlignment" Value="Left"/>                                            <Setter Property="TextAlignment" Value="Left"/>                                            <Setter Property="VerticalAlignment" Value="Center"/>                                            <Setter Property="Padding" Value="0"/>                                        </Style>                                         <Style TargetType="{x:Type CheckBox}">                                            <Setter Property="Width" Value="Auto"/>                                            <Setter Property="HorizontalAlignment" Value="Left"/>                                            <Setter Property="HorizontalContentAlignment" Value="Left"/>                                        </Style>                                    </Grid.Resources>                                                                        <Grid.ColumnDefinitions>                                        <ColumnDefinition Width="45" MinWidth="1" MaxWidth="50" />                                        <ColumnDefinition Width="155" MinWidth="1" MaxWidth="165" />                                        <ColumnDefinition Width="600" MinWidth="1" MaxWidth="1005"/>                                    </Grid.ColumnDefinitions>                                     <Grid.RowDefinitions>                                        <RowDefinition Height="Auto"/>                                        <RowDefinition Height="Auto"/>                                        <RowDefinition Height="Auto"/>                                        <RowDefinition Height="Auto"/>                                        <RowDefinition Height="Auto"/>                                        <RowDefinition Height="Auto"/>                                        <RowDefinition Height="Auto"/>                                        <RowDefinition Height="Auto"/>                                        <RowDefinition Height="Auto"/>                                        <RowDefinition Height="Auto"/>                                        <RowDefinition Height="Auto"/>                                        <RowDefinition Height="Auto"/>                                        <RowDefinition Height="Auto"/>                                    </Grid.RowDefinitions>                                     <TextBlock Text="Bit(s)" Grid.Row="0" Grid.Column="0" FontWeight="Bold" />                                    <TextBlock Text="Description" Grid.Row="0" Grid.Column="1" FontWeight="Bold"/>                                    <TextBlock Text="Comment" Grid.Row="0" Grid.Column="2" FontWeight="Bold"/>                                     <TextBlock Text="15" Grid.Row="1" Grid.Column="0"/>                                    <TextBlock Text="PMU sync" Grid.Row="1" Grid.Column="1"/>                                    <TextBlock Text="synchronization status (0: valid data, 1: invalid data)." Grid.Row="1" Grid.Column="2"/>                                     <TextBlock Text="14" Grid.Row="2" Grid.Column="0"/>                                    <TextBlock Text="Data valid" Grid.Row="2" Grid.Column="1"/>                                    <TextBlock Text="Data integrity (0: valid data, 1: invalid data)." Grid.Row="2" Grid.Column="2"/>                                     <TextBlock Text="13-11" Grid.Row="3" Grid.Column="0"/>                                    <TextBlock Text="Trigger reason" Grid.Row="3" Grid.Column="1"/>                                    <TextBlock Text="Trigger Status:" Grid.Row="3" Grid.Column="2"/>                                    <TextBlock Text="111: Frequency trigger" Grid.Row="4" Grid.Column="2"/>                                    <TextBlock Text="110: df/dt trigger" Grid.Row="5" Grid.Column="2"/>                                    <TextBlock Text="101: Angle trigger" Grid.Row="6" Grid.Column="2"/>                                    <TextBlock Text="100: Overcurrent trigger" Grid.Row="7" Grid.Column="2"/>                                    <TextBlock Text="011: Undervoltage trigger" Grid.Row="8" Grid.Column="2"/>                                    <TextBlock Text="010: Rate trigger" Grid.Row="9" Grid.Column="2"/>                                    <TextBlock Text="000-001: Unused, user defined" Grid.Row="10" Grid.Column="2"/>                                     <TextBlock Text="10-0" Grid.Row="11" Grid.Column="0"/>                                    <TextBlock Text="Byte count" Grid.Row="11" Grid.Column="1"/>                                    <TextBlock Text="Number of bytes in frame including SOC," Grid.Row="11" Grid.Column="2"/>                                    <TextBlock Text="SMPCNT, STAT, and CRC16, 10-2047" Grid.Row="12" Grid.Column="2"/>                                </Grid>                            </TabItem>                            <TabItem Header="Abstract High Order Bits">                                <Grid Margin="5">                                    <Grid.Resources>                                        <Style TargetType="{x:Type TextBlock}">                                            <Setter Property="HorizontalAlignment" Value="Left"/>                                            <Setter Property="TextAlignment" Value="Left"/>                                            <Setter Property="VerticalAlignment" Value="Center"/>                                            <Setter Property="Padding" Value="0"/>                                        </Style> 

Lines 1–500 of 583.

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t