22 using System.Collections.Generic;
29 namespace Ntp.Analyzer.Config.Syntax
42 var fixedRun = Nodes.SingleOrDefault(n => n.Symbol ==
Symbol.KeywordFixedRun) as BooleanSettingNode;
44 var width = Nodes.SingleOrDefault(n => n.Symbol ==
Symbol.KeywordWidth) as IntegerSettingNode;
45 var height = Nodes.SingleOrDefault(n => n.Symbol ==
Symbol.KeywordHeight) as IntegerSettingNode;
46 var timespan = Nodes.SingleOrDefault(n => n.Symbol ==
Symbol.KeywordTimespan) as IntegerSettingNode;
47 var stamp = Nodes.SingleOrDefault(n => n.Symbol ==
Symbol.KeywordTimeStamp) as
TimeStampNode ??
50 var jitter = Nodes.SingleOrDefault(n => n.Symbol ==
Symbol.KeywordJitter) as NumericSettingNode;
51 var offset = Nodes.SingleOrDefault(n => n.Symbol ==
Symbol.KeywordOffset) as NumericSettingNode;
52 var balance = Nodes.SingleOrDefault(n => n.Symbol ==
Symbol.KeywordGraphBalance) as NumericSettingNode;
53 var delay = Nodes.SingleOrDefault(n => n.Symbol ==
Symbol.KeywordGraphDelay) as NumericSettingNode;
79 CheckIsUnique(
new List<Symbol>
90 Symbol.KeywordFilterFactor,
91 Symbol.KeywordGraphBalance,
95 Symbol.KeywordDestinations,
99 CheckAllIsPresent(
new List<Symbol>
102 Symbol.KeywordDestinations
105 CheckOneIsPresent(
new List<Symbol>
107 Symbol.KeywordGraphBalance,
113 CheckOnlyOneIsPresent(
new List<Symbol>
122 CheckTypeIs<IntegerSettingNode>(
Symbol.KeywordFrequency);
123 CheckTypeIs<BooleanSettingNode>(
Symbol.KeywordInitialRun);
124 CheckTypeIs<BooleanSettingNode>(
Symbol.KeywordFixedRun);
125 CheckTypeIs<StringSettingNode>(
Symbol.KeywordTitle);
126 CheckTypeIs<IntegerSettingNode>(
Symbol.KeywordWidth);
127 CheckTypeIs<IntegerSettingNode>(
Symbol.KeywordHeight);
128 CheckTypeIs<IntegerSettingNode>(
Symbol.KeywordTimespan);
129 CheckTypeIs<TimeStampNode>(
Symbol.KeywordGraphTime);
130 CheckTypeIs<TimeStampNode>(
Symbol.KeywordTimeStamp);
131 CheckTypeIs<NumericSettingNode>(
Symbol.KeywordFilterFactor);
132 CheckTypeIs<NumericSettingNode>(
Symbol.KeywordGraphBalance);
133 CheckTypeIs<NumericSettingNode>(
Symbol.KeywordGraphDelay);
134 CheckTypeIs<NumericSettingNode>(
Symbol.KeywordJitter);
135 CheckTypeIs<NumericSettingNode>(
Symbol.KeywordOffset);
PeerGraphSyntaxNode(string name, int line)
override void ValidateTypes()
Override to validates the types in this syntax node.
override PeerGraphConfiguration InternalCompile()
override void ValidateMandatories()
Override to validates the mandatory types in this syntax node.
Peer graph configuration used when creating Ntp.Analyzer.Graph.PeerGraph.