NTP Analyzer
0.8.2
Analyze the operation of time servers
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
DispersionGraph.cs
Go to the documentation of this file.
1
//
2
// Copyright (c) 2013-2017 Carsten Sonne Larsen <cs@innolan.net>
3
//
4
// Permission is hereby granted, free of charge, to any person obtaining a copy
5
// of this software and associated documentation files (the "Software"), to deal
6
// in the Software without restriction, including without limitation the rights
7
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8
// copies of the Software, and to permit persons to whom the Software is
9
// furnished to do so, subject to the following conditions:
10
//
11
// The above copyright notice and this permission notice shall be included in
12
// all copies or substantial portions of the Software.
13
//
14
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20
// THE SOFTWARE.
21
22
using
System
;
23
using
System
.Collections.Generic;
24
using
System
.Drawing;
25
using
NPlot
;
26
using
Ntp
.
Analyzer
.
Interface
;
27
28
namespace
Ntp
.Analyzer.Graph
29
{
33
public
abstract
class
DispersionGraph
:
GraphBase
34
{
35
protected
DispersionGraph
(
IDispersionGraphConfiguration
configuration)
36
: base(configuration)
37
{
38
config = configuration;
39
Time =
new
List<DateTime>();
40
Offset =
new
List<double>();
41
Jitter =
new
List<double>();
42
}
43
44
private
readonly
IDispersionGraphConfiguration
config
;
45
46
protected
readonly List<double>
Jitter
;
47
protected
readonly List<double>
Offset
;
48
protected
readonly List<DateTime>
Time
;
49
50
protected
override
void
AddPlots
()
51
{
52
var offsetPlot = SetupPlot(
"Offset"
, Color.Red, Time, Offset);
53
var jitterPlot = SetupPlot(
"Jitter"
, Color.Blue, Time, Jitter);
54
55
if
(config.Jitter.HasValue)
56
Surface.Add(jitterPlot,
PlotSurface2D
.XAxisPosition.Bottom,
PlotSurface2D
.YAxisPosition.Left);
57
58
if
(config.Offset.HasValue)
59
Surface.Add(offsetPlot,
PlotSurface2D
.XAxisPosition.Bottom,
PlotSurface2D
.YAxisPosition.Left);
60
}
61
}
62
}
Ntp.Analyzer.Graph.DispersionGraph
A dispersion graph contains an series of offsets and jitter values together with a time coordinate...
Definition:
DispersionGraph.cs:33
Ntp.Analyzer.Graph.DispersionGraph.Jitter
readonly List< double > Jitter
Definition:
DispersionGraph.cs:46
Ntp.Analyzer.Graph.DispersionGraph.DispersionGraph
DispersionGraph(IDispersionGraphConfiguration configuration)
Definition:
DispersionGraph.cs:35
Ntp.Analyzer.Graph.DispersionGraph.AddPlots
override void AddPlots()
Definition:
DispersionGraph.cs:50
Ntp.Analyzer.Graph.GraphBase
Definition:
GraphBase.cs:36
Ntp.Analyzer.Graph.DispersionGraph.config
readonly IDispersionGraphConfiguration config
Definition:
DispersionGraph.cs:44
Ntp.Analyzer.Interface
Definition:
IConfigurationNode.cs:22
Ntp.Analyzer.Graph.DispersionGraph.Time
readonly List< DateTime > Time
Definition:
DispersionGraph.cs:48
Ntp.Analyzer.Graph.DispersionGraph.Offset
readonly List< double > Offset
Definition:
DispersionGraph.cs:47
Ntp
System
PlotSurface2D
NPlot
Ntp.Analyzer.Interface.IDispersionGraphConfiguration
Definition:
IDispersionGraphConfiguration.cs:24
Ntp.Analyzer
Ntp.Analyzer
Graph
DispersionGraph.cs
Generated by
1.8.11