internal override void Init(ICollector parent, LabelValues labelValues, bool publish) { base.Init(parent, labelValues, publish); _upperBounds = ((Histogram)parent)._buckets; _bucketCounts = new ThreadSafeLong[_upperBounds.Length]; }
private void label_MouseLeftButtonDown(object sender, MouseButtonEventArgs e) { LabelValues Removeditem = LabelList.FirstOrDefault(r => r.label == sender); var p = Business.GetMoeinStructureDefineBusiness().GetByID(Removeditem.ID); if (Removeditem.Type == Constants.CodeTitle.Goruh) { canvas.Children.Clear(); LabelList.Clear(); top = 0; left = 0; width = 100; height = 50; depth = 0; SetGrid(p); return; } Label RemovedLabel = Removeditem.label; Guid?id = Removeditem.ID; LabelList.Remove(Removeditem); canvas.Children.Remove(RemovedLabel); depth--; //pass removed id SetGridOnRemove(id); }
public void RemoveLabelled(params string[] labelValues) { var key = new LabelValues(LabelNames, labelValues); TChild unused; _labelledMetrics.TryRemove(key, out unused); }
private void AddLabel(LabelValues labelValue) { try { //var label = new Label(); //label.Content = labelValue.value; //label.Width = width; //label.Height = height; //label.Margin = new Thickness(left + depth * width, top, left + label.Width + depth * width, top + label.Height); //labelValue.label = label; depth++; var T = new List <string>(); foreach (var item in this.NavBar.ItemsList) { T.Add(item); } T.Add(labelValue.value); this.NavBar.ItemsList = T; //this.NavBar.ItemsList.Add(label.Content.ToString()); //canvas.Children.Add(label); } catch { throw; } }
internal void Init(LabelValues labelValues, SummaryConfiguration configuration, DateTime now) { base.Init(labelValues, configuration); _sortedObjectives = new double[Configuration.Objectives.Count]; _buffer = new SampleBuffer(Configuration.BufCap); _streamDuration = new TimeSpan(Configuration.MaxAge.Ticks / Configuration.AgeBuckets); _headStreamExpTime = now.Add(_streamDuration); _bufferExpTime = _headStreamExpTime; _streams = new QuantileStream[Configuration.AgeBuckets]; for (int i = 0; i < Configuration.AgeBuckets; i++) { _streams[i] = QuantileStream.NewTargeted(Configuration.Objectives); } _headStream = _streams[0]; for (int i = 0; i < Configuration.Objectives.Count; i++) { _sortedObjectives[i] = Configuration.Objectives[i].Quantile; } Array.Sort(_sortedObjectives); }
public void RemoveLabelled(params string[] labelValues) { var key = new LabelValues(LabelNames, labelValues); T temp; _labelledMetrics.TryRemove(key, out temp); }
private T GetOrAddLabelled(LabelValues key) { return(_labelledMetrics.GetOrAdd(key, labels1 => { var child = new T(); child.Init(this, labels1); return child; })); }
private TChild GetOrAddLabelled(LabelValues key) { return(_labelledMetrics.GetOrAdd(key, k => { var child = new TChild(); child.Init(this, k, publish: !_suppressInitialValue); return child; })); }
public HistogramMetric(LabelValues labels, ImmutableArray <double> buckets) { _labels = labels; _upperBounds = buckets; _cumulativeCounts = new AtomicLong[buckets.Length]; for (int i = 0; i < buckets.Length; ++i) { _cumulativeCounts[i] = new AtomicLong(0); } }
public TMetric WithLabels(params string[] values) { if (values.Length != LabelNames.Length) { throw new ArgumentException($"The provided values does not have the same length as the expected labels. Labels: {LabelNames.Length}"); } var labelValues = new LabelValues(LabelNames, values.ToImmutableArray()); return(ImmutableInterlocked.GetOrAdd(ref _metrics, labelValues, _factory)); }
private bool isLoadedMultiQuoteFotter() { //TODO Check that all componenets of Footer are loaded correctly LabelValues lableValues = new LabelValues(); if ( (InfoFooterLabel.Exists()) && (InfoFooterLabel.Displayed) && (Equals(InfoFooterLabel.Text, lableValues.GetExpectedFooterText())) ) { return(true); } return(false); }
public SummaryMetric( IClock clock, LabelValues labels, ImmutableArray <Quantile> quantiles, Duration maxAge, int ageBuckets) { _labels = labels; _quantiles = quantiles; if (_quantiles.Length > 0) { _quantileValues = new TimeWindowQuantiles(clock, quantiles, maxAge, ageBuckets); } else { _quantileValues = null; } }
private void AddLabel(LabelValues labellsit) { try { var label = new Label(); label.Content = labellsit.name; label.Width = width; label.Height = height; label.Margin = new Thickness(left + depth * width, top, left + label.Width + depth * width, top + label.Height); label.MouseLeftButtonDown += label_MouseLeftButtonDown; labellsit.label = label; depth++; canvas.Children.Add(label); } catch { throw; } }
internal void Init(ICollector parent, LabelValues labelValues, DateTime now) { base.Init(parent, labelValues); _objectives = ((Summary)parent)._objectives; _maxAge = ((Summary)parent)._maxAge; _ageBuckets = ((Summary)parent)._ageBuckets; _bufCap = ((Summary)parent)._bufCap; _sortedObjectives = new double[_objectives.Count]; _hotBuf = new SampleBuffer(_bufCap); _coldBuf = new SampleBuffer(_bufCap); _streamDuration = new TimeSpan(_maxAge.Ticks / _ageBuckets); _headStreamExpTime = now.Add(_streamDuration); _hotBufExpTime = _headStreamExpTime; _streams = new QuantileStream[_ageBuckets]; for (var i = 0; i < _ageBuckets; i++) { _streams[i] = QuantileStream.NewTargeted(_objectives); } _headStream = _streams[0]; for (var i = 0; i < _objectives.Count; i++) { _sortedObjectives[i] = _objectives[i].Quantile; } Array.Sort(_sortedObjectives); _wireMetric = new CSummary { Quantiles = new CQuantile[_objectives.Count] }; for (int i = 0; i < _objectives.Count; i++) { _wireMetric.Quantiles[i] = new CQuantile { Quantile = _objectives[i].Quantile } } ; }
internal override void Init(ICollector parent, LabelValues labelValues) { base.Init(parent, labelValues); _buckets = ((Histogram)parent)._buckets; if (_buckets == null) { return; } _bucketCounts = new ulong[_buckets.Length]; _wireMetric = new Advanced.DataContracts.Histogram(); for (int i = 0; i < _bucketCounts.Length; i++) { _wireMetric.bucket.Add(new Bucket { upper_bound = _buckets[i] }); } }
private TChild GetOrAddLabelled(LabelValues key) { tryagain: if (_labelledMetrics.TryGetValue(key, out var existing)) { return(existing); } var child = new TChild(); child.Init(this, key); if (_labelledMetrics.TryAdd(key, child)) { return(child); } // If we get here, a child with the same labels was concurrently added by another thread. // We do not want to return a different child here, so throw it away and try again. goto tryagain; }
/// <summary> /// Initialize a new instance of the KryptonLabel class. /// </summary> public KryptonLabel() { SetStyle(ControlStyles.OptimizedDoubleBuffer, true); // The label cannot take the focus SetStyle(ControlStyles.Selectable, false); // Set default properties _style = LabelStyle.NormalPanel; _useMnemonic = true; _orientation = VisualOrientation.Top; _target = null; EnabledTarget = true; // Create content storage Values = new LabelValues(NeedPaintDelegate); Values.TextChanged += OnLabelTextChanged; // Create palette redirector _paletteCommonRedirect = new PaletteContentInheritRedirect(Redirector, PaletteContentStyle.LabelNormalPanel); // Create the palette provider StateCommon = new PaletteContent(_paletteCommonRedirect, NeedPaintDelegate); StateDisabled = new PaletteContent(StateCommon, NeedPaintDelegate); StateNormal = new PaletteContent(StateCommon, NeedPaintDelegate); // Our view contains background and border with content inside _drawContent = new ViewDrawContent(StateNormal, this, VisualOrientation.Top) { UseMnemonic = _useMnemonic }; // Create the view manager instance ViewManager = new ViewManager(this, _drawContent); // We want to be auto sized by default, but not the property default! AutoSize = true; AutoSizeMode = AutoSizeMode.GrowAndShrink; }
internal override void Init(ICollector parent, LabelValues labelValues, bool publish) { Init(parent, labelValues, DateTime.UtcNow, publish); }
protected internal override void Init(LabelValues labelValues, SummaryConfiguration configuration) { Init(labelValues, configuration, DateTime.UtcNow); }
protected internal override void Init(LabelValues labelValues, HistogramConfiguration configuration) { base.Init(labelValues, configuration); _bucketCounts = new ThreadSafeLong[Configuration.Buckets.Count]; }
public GaugeMetric(LabelValues labels) { _labels = labels; _value = new AtomicDouble(0); }
protected internal virtual void Init(LabelValues labelValues, TConfig configuration) { _labelValues = labelValues; Configuration = configuration; }
public T Labels(params string[] labelValues) { var key = new LabelValues(LabelNames, labelValues); return(GetOrAddLabelled(key)); }
internal virtual void Init(ICollector parent, LabelValues labelValues, bool publish) { _labelValues = labelValues; _publish = publish; }
internal override void Init(ICollector parent, LabelValues labelValues) { Init(parent, labelValues, DateTime.UtcNow); }
internal virtual void Init(ICollector parent, LabelValues labelValues) { _labelValues = labelValues; }
/// <summary> /// Initialize a new instance of the RadioButton class. /// </summary> public KryptonRadioButton() { // Turn off standard click and double click events, we do that manually SetStyle(ControlStyles.StandardClick | ControlStyles.StandardDoubleClick, false); // Set default properties _style = LabelStyle.NormalPanel; _orientation = VisualOrientation.Top; _checkPosition = VisualOrientation.Left; _checked = false; _useMnemonic = true; _autoCheck = true; // Create content storage Values = new LabelValues(NeedPaintDelegate); Values.TextChanged += OnRadioButtonTextChanged; Images = new RadioButtonImages(NeedPaintDelegate); // Create palette redirector _paletteCommonRedirect = new PaletteContentInheritRedirect(Redirector, PaletteContentStyle.LabelNormalPanel); _paletteRadioButtonImages = new PaletteRedirectRadioButton(Redirector, Images); // Create the palette provider StateCommon = new PaletteContent(_paletteCommonRedirect, NeedPaintDelegate); StateDisabled = new PaletteContent(StateCommon, NeedPaintDelegate); StateNormal = new PaletteContent(StateCommon, NeedPaintDelegate); OverrideFocus = new PaletteContent(_paletteCommonRedirect, NeedPaintDelegate); // Override the normal values with the focus, when the control has focus _overrideNormal = new PaletteContentInheritOverride(OverrideFocus, StateNormal, PaletteState.FocusOverride, false); // Our view contains background and border with content inside _drawContent = new ViewDrawContent(_overrideNormal, Values, VisualOrientation.Top) { UseMnemonic = _useMnemonic, // Only draw a focus rectangle when focus cues are needed in the top level form TestForFocusCues = true }; // Create the check box image drawer and place inside element so it is always centered _drawRadioButton = new ViewDrawRadioButton(_paletteRadioButtonImages) { CheckState = _checked }; _layoutCenter = new ViewLayoutCenter { _drawRadioButton }; // Place check box on the left and the label in the remainder _layoutDocker = new ViewLayoutDocker { { _layoutCenter, ViewDockStyle.Left }, { _drawContent, ViewDockStyle.Fill } }; // Need a controller for handling mouse input _controller = new RadioButtonController(_drawRadioButton, _layoutDocker, NeedPaintDelegate); _controller.Click += OnControllerClick; _controller.Enabled = true; _layoutDocker.MouseController = _controller; _layoutDocker.KeyController = _controller; // Change the layout to match the inital right to left setting and orientation UpdateForOrientation(); // Create the view manager instance ViewManager = new ViewManager(this, _layoutDocker); // We want to be auto sized by default, but not the property default! AutoSize = true; AutoSizeMode = AutoSizeMode.GrowAndShrink; }
/// <summary> /// Given an expression, it will parse it and return the result as a nullable ushort /// </summary> /// <param name="value"></param> /// <returns></returns> public ExpressionResult ParseExpression(string value) { ExpressionResult expressionResult = new ExpressionResult(); expressionResult.Successful = true; expressionResult.References = new List <string>(); value = value.Trim(); if (HandleExpression != null) { HandleExpressionEventArgs heea = new HandleExpressionEventArgs(value); HandleExpression(this, heea); value = heea.Expression; } if (value.SafeContains('(')) { // Check for advanced expression handlers foreach (var item in ExpressionExtensions) { if (value.StartsWith(item.Key.ToLower() + "(")) { string expr = value.Substring(value.SafeIndexOf('(') + 1); expr = expr.Remove(expr.Length - 1); expressionResult.Value = item.Value(expr); return(expressionResult); } } return(EvaluateParenthesis(value)); } if (value.StartsWith("~")) { expressionResult = ParseExpression(value.Substring(1)); if (expressionResult.Successful) { expressionResult.Value = (ushort)~expressionResult.Value; } return(expressionResult); } if (!HasOperators(value)) { // Parse value ushort result; EvaluateValueEventArgs args = new EvaluateValueEventArgs(value); if (EvaluateExpressionValue != null) { EvaluateExpressionValue(this, args); } if (args.Handled) { expressionResult.Value = args.Result; return(expressionResult); } else if (value.StartsWith("0d")) { value = value.Substring(2); } if (value.StartsWith("'")) // Character { if (value.Length < 3) { expressionResult.Successful = false; return(expressionResult); } value = value.Substring(1, value.Length - 2).Unescape(); if (value == null) { expressionResult.Successful = false; return(expressionResult); } if (value.Length != 1) { expressionResult.Successful = false; return(expressionResult); } expressionResult.Value = (ushort)Encoding.ASCII.GetBytes(value)[0]; return(expressionResult); } else if (value.StartsWith("{") && value.EndsWith("}")) // instruction literal { string instruction = value.Substring(1, value.Length - 2); Assembler subAssembler = new Assembler(); List <ListEntry> assembly = subAssembler.Assemble(instruction); if (assembly.Count == 0) { expressionResult.Successful = false; return(expressionResult); } if (assembly[0].Output == null) { expressionResult.Successful = false; return(expressionResult); } if (assembly[0].Output.Length == 0) { expressionResult.Successful = false; return(expressionResult); } expressionResult.Value = assembly[0].Output[0]; return(expressionResult); } else if (value.StartsWith("0x")) // Hex { value = value.Substring(2); if (!ushort.TryParse(value.Replace("_", ""), NumberStyles.HexNumber, null, out result)) { expressionResult.Successful = false; return(expressionResult); } else { expressionResult.Value = result; return(expressionResult); } } else if (value.StartsWith("0b")) // Binary { value = value.Substring(2); ushort?binResult = ParseBinary(value.Replace("_", "")); if (binResult == null) { expressionResult.Successful = false; } else { expressionResult.Value = binResult.Value; } return(expressionResult); } else if (value.StartsWith("0o")) { value = value.Substring(2); try { expressionResult.Value = Convert.ToUInt16(value.Replace("_", ""), 8); return(expressionResult); } catch { expressionResult.Successful = false; return(expressionResult); } } else if (ushort.TryParse(value.Replace("_", ""), out result)) // Decimal { expressionResult.Value = result; return(expressionResult); } else if (value == "$") { if (LineNumbers.Count == 0) { expressionResult.Successful = false; return(expressionResult); } expressionResult.Value = currentAddress; return(expressionResult); } else if (value.StartsWith("$")) // Relative label { if (LineNumbers.Count == 0) { expressionResult.Successful = false; return(expressionResult); } value = value.Substring(1); int nextLabelIndex = -1; // Find the next relative label after the current line for (int i = 0; i < RelativeLabels.Count; i++) { if (RelativeLabels.ElementAt(i).Key > LineNumbers.Peek()) { nextLabelIndex = i; break; } } if (nextLabelIndex == -1) { nextLabelIndex = RelativeLabels.Count - 1; // If no such label is found, use the last one } bool initialPlus = true; // For each plus, increment that label index, and each minus decrements it foreach (char c in value) { if (c == '+') // The intial plus symbol is ignored { if (initialPlus) { nextLabelIndex++; } initialPlus = false; } else if (c == '-') { nextLabelIndex--; } } if (nextLabelIndex < 0) { expressionResult.Successful = false; return(expressionResult); } if (nextLabelIndex > RelativeLabels.Count - 1) { expressionResult.Successful = false; return(expressionResult); } expressionResult.Value = RelativeLabels.ElementAt(nextLabelIndex).Value; return(expressionResult); } else if (value.ToLower() == "true") { expressionResult.Value = 1; return(expressionResult); } else if (value.ToLower() == "false") { expressionResult.Value = 0; return(expressionResult); } else // Defined value or error { if (value.StartsWith(".")) { value = PriorGlobalLabel + "_" + value.Substring(1); } if (Values.ContainsKey(value)) { expressionResult.Value = Values[value]; } else if (LabelValues.ContainsKey(value)) { expressionResult.Relocate = true; expressionResult.Value = LabelValues.GetValue(value); } else { expressionResult.Successful = false; } expressionResult.References.Add(value); if (!ReferencedValues.Contains(value)) { ReferencedValues.Add(value); } return(expressionResult); } } // Parse expression string[] operands = GetOperands(value); if (operands == null) { expressionResult.Successful = false; return(expressionResult); } if (string.IsNullOrEmpty(operands[0]) && operands[1] == "-") { expressionResult = ParseExpression(operands[2]); expressionResult.Value = (ushort)-expressionResult.Value; return(expressionResult); } if (operands == null) { expressionResult.Successful = false; return(expressionResult); } ExpressionResult left = ParseExpression(operands[0]); ExpressionResult right = ParseExpression(operands[2]); expressionResult.References.AddRange(left.References.Concat(right.References)); if ((!left.Successful || !right.Successful) && operands[1] != "===" && operands[1] != "!==") { expressionResult.Successful = false; return(expressionResult); } switch (operands[1]) { case "*": expressionResult.Value = (ushort)(left.Value * right.Value); break; case "/": expressionResult.Value = (ushort)(left.Value / right.Value); break; case "+": expressionResult.Value = (ushort)(left.Value + right.Value); break; case "-": expressionResult.Value = (ushort)(left.Value - right.Value); break; case "<<": expressionResult.Value = (ushort)(left.Value << right.Value); break; case ">>": expressionResult.Value = (ushort)(left.Value >> right.Value); break; case "|": expressionResult.Value = (ushort)(left.Value | right.Value); break; case "^": expressionResult.Value = (ushort)(left.Value ^ right.Value); break; case "&": expressionResult.Value = (ushort)(left.Value & right.Value); break; case "%": expressionResult.Value = (ushort)(left.Value % right.Value); break; case "==": expressionResult.Value = (ushort)(left.Value == right.Value ? 1 : 0); break; case "!=": case "<>": expressionResult.Value = (ushort)(left.Value != right.Value ? 1 : 0); break; case "<": expressionResult.Value = (ushort)(left.Value < right.Value ? 1 : 0); break; case ">": expressionResult.Value = (ushort)(left.Value > right.Value ? 1 : 0); break; case "<=": expressionResult.Value = (ushort)(left.Value <= right.Value ? 1 : 0); break; case ">=": expressionResult.Value = (ushort)(left.Value >= right.Value ? 1 : 0); break; case "===": expressionResult.Value = (ushort)(operands[0].ToLower().Trim() == operands[2].ToLower().Trim() ? 1 : 0); break; case "!==": expressionResult.Value = (ushort)(operands[0].ToLower().Trim() != operands[2].ToLower().Trim() ? 1 : 0); break; case "&&": expressionResult.Value = (ushort)(left.Value > 0 && right.Value > 1 ? 1 : 0); break; case "||": expressionResult.Value = (ushort)(left.Value > 0 || right.Value > 1 ? 1 : 0); break; case "^^": expressionResult.Value = (ushort)(left.Value > 0 ^ right.Value > 1 ? 1 : 0); // between boolean operators, ^ is ^^ in C# break; default: expressionResult.Successful = false; return(expressionResult); } return(expressionResult); }
public CounterMetric(LabelValues labels) { _labels = labels; _value = new AtomicDouble(0); }