aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Embedded_SW/Embedded/Communication/PMR/Debugging/StopDebugLogResponse.pb-c.c
blob: 7a885594e97d299ea1637e909f580003716f3a6f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
/* Generated by the protocol buffer compiler.  DO NOT EDIT! */
/* Generated from: StopDebugLogResponse.proto */

/* Do not generate deprecated warnings for self */
#ifndef PROTOBUF_C__NO_DEPRECATED
#define PROTOBUF_C__NO_DEPRECATED
#endif

#include "StopDebugLogResponse.pb-c.h"
void   stop_debug_log_response__init
                     (StopDebugLogResponse         *message)
{
  static const StopDebugLogResponse init_value = STOP_DEBUG_LOG_RESPONSE__INIT;
  *message = init_value;
}
size_t stop_debug_log_response__get_packed_size
                     (const StopDebugLogResponse *message)
{
  assert(message->base.descriptor == &stop_debug_log_response__descriptor);
  return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
}
size_t stop_debug_log_response__pack
                     (const StopDebugLogResponse *message,
                      uint8_t       *out)
{
  assert(message->base.descriptor == &stop_debug_log_response__descriptor);
  return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
}
size_t stop_debug_log_response__pack_to_buffer
                     (const StopDebugLogResponse *message,
                      ProtobufCBuffer *buffer)
{
  assert(message->base.descriptor == &stop_debug_log_response__descriptor);
  return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
}
StopDebugLogResponse *
       stop_debug_log_response__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data)
{
  return (StopDebugLogResponse *)
     protobuf_c_message_unpack (&stop_debug_log_response__descriptor,
                                allocator, len, data);
}
void   stop_debug_log_response__free_unpacked
                     (StopDebugLogResponse *message,
                      ProtobufCAllocator *allocator)
{
  if(!message)
    return;
  assert(message->base.descriptor == &stop_debug_log_response__descriptor);
  protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
}
#define stop_debug_log_response__field_descriptors NULL
#define stop_debug_log_response__field_indices_by_name NULL
#define stop_debug_log_response__number_ranges NULL
const ProtobufCMessageDescriptor stop_debug_log_response__descriptor =
{
  PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
  "StopDebugLogResponse",
  "StopDebugLogResponse",
  "StopDebugLogResponse",
  "",
  sizeof(StopDebugLogResponse),
  0,
  stop_debug_log_response__field_descriptors,
  stop_debug_log_response__field_indices_by_name,
  0,  stop_debug_log_response__number_ranges,
  (ProtobufCMessageInit) stop_debug_log_response__init,
  NULL,NULL,NULL    /* reserved[123] */
};
n">GetValue(StrokeProperty); } set { SetValue(StrokeProperty, value); } } public static readonly DependencyProperty StrokeProperty = DependencyProperty.Register("Stroke", typeof(Color), typeof(RealTimeGraphExLineScroll), new PropertyMetadata(Colors.Black, new PropertyChangedCallback(CrossModelChanged))); /// <summary> /// Gets or sets the graph fill color. /// </summary> public Color Fill { get { return (Color)GetValue(FillProperty); } set { SetValue(FillProperty, value); } } public static readonly DependencyProperty FillProperty = DependencyProperty.Register("Fill", typeof(Color), typeof(RealTimeGraphExLineScroll), new PropertyMetadata(Colors.Gray, new PropertyChangedCallback(CrossModelChanged))); /// <summary> /// Gets or sets whether the graph will be rendered using the Fill color property. /// </summary> public bool FillGraph { get { return (bool)GetValue(FillGraphProperty); } set { SetValue(FillGraphProperty, value); } } public static readonly DependencyProperty FillGraphProperty = DependencyProperty.Register("FillGraph", typeof(bool), typeof(RealTimeGraphExLineScroll), new PropertyMetadata(false, new PropertyChangedCallback(CrossModelChanged))); /// <summary> /// Gets or sets the IDataSeries used to push data vectorsCollection to the graph. /// </summary> public GraphController Controller { get { return (GraphController)GetValue(ControllerProperty); } set { SetValue(ControllerProperty, value); } } public static readonly DependencyProperty ControllerProperty = DependencyProperty.Register("Controller", typeof(GraphController), typeof(RealTimeGraphExLineScroll), new PropertyMetadata(null, new PropertyChangedCallback(GraphControllerChanged))); private static void GraphControllerChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) { var control = d as RealTimeGraphExLineScroll; if (control.Controller != null) { control.Controller.RegisterMethods(control.ClearGraph, control.StartPushThread, control.SetPaused, control.ChangeRenderMode, control.OnPushMarker); control._graphController = control.Controller; } } #endregion #region Constructors public RealTimeGraphExLineScroll() : base() { graphPolygon = new ConcurrentpointsList(); _markers = new List<double>(); } #endregion #region Override Methods protected override void OnSizeChanged(object sender, SizeChangedEventArgs e) { OnSetCrossThreadFields(); } protected override void OnSetCrossThreadFields() { base.OnSetCrossThreadFields(); this.Dispatcher.Invoke(() => { _maxPoints = MaxPoints; _scaleFactor = _width / _maxPoints; _graphController = Controller; _stroke = Stroke; _fillGraph = FillGraph; _fill = Fill; }, DispatcherPriority.Send); } protected override void OnClearGraph() { base.OnClearGraph(); _graphController.dataSeries.ClearPoints(); graphPolygon.Clear(); } protected internal override void OnRenderGraph() { if (_graphController != null && _graphController.dataSeries.Points != null && _graphController.dataSeries.Points.Count > 0 && _width > 1 && _height > 1) { var points = _graphController.dataSeries.Points.GetAndClearAllPoints(); if (_useAutoRange && points.Count > 0) { Dispatcher.Invoke(() => { Maximum = points.Concat(graphPolygon.GetPoints()).Max(); Minimum = points.Concat(graphPolygon.GetPoints()).Min(); }); } if (!_isPaused) { for (int i = 0; i < points.Count; i++) { double value = points[i]; NormalizeValue(ref value); graphPolygon.Add(value); xValueCounter += _scaleFactor; } if (graphPolygon.Count > _maxPoints + 1) { xValueCounter -= (_scaleFactor * (graphPolygon.Count - (_maxPoints + 1))); graphPolygon.RemoveFromStart(graphPolygon.Count - (_maxPoints + 1)); } } updateCounter++; if (updateCounter >= 1) { updateCounter = 0; if (!_disableRendering) { WriteableBitmap bmp = BitmapFactory.New((int)_mainWidth, (int)_mainHeight); bmp.Clear(Colors.Transparent); OnDrawVisuals(bmp); bmp.Freeze(); img.Dispatcher.BeginInvoke(new Action(() => { img.Source = bmp; }), System.Windows.Threading.DispatcherPriority.Send); } } } } protected override void OnZoomingComplete(Point transformOrigin, double scaleX, double scaleY) { base.OnZoomingComplete(transformOrigin, scaleX, scaleY); } #endregion #region Virtual Methods protected virtual void OnPushMarker() { } /// <summary> /// Calculate the scaling factor for the current graph width. /// </summary> /// <returns></returns> protected virtual double GetPolygonScaleFactor() { return _width / (graphPolygon.Count - 1); } /// <summary> /// Draw the actual polygon on the image. /// </summary> /// <param name="bmp"></param> [HandleProcessCorruptedStateExceptions] protected virtual void OnDrawVisuals(WriteableBitmap bmp) { Color stroke = _graphController.dataSeries.GetStrokeColor() != null ? _graphController.dataSeries.GetStrokeColor().Value : _stroke; Color fill = _graphController.dataSeries.GetFillColor() != null ? _graphController.dataSeries.GetFillColor().Value : _fill; double scale = GetPolygonScaleFactor(); OnBeforeRenderingVisuals(bmp, scale); if (_fillGraph) //Fill Graph { bmp.FillPolygon(graphPolygon.ToPolygonPointsFill(_offSetX, _offSetY, _mainWidth, _mainHeight, scale, ConvertYToImageYFliped), fill); } DrawPolyline(bmp, graphPolygon.ToPolygonPoints(_offSetX, _offSetY, scale, ConvertYToImageYFliped), stroke); OnAfterRenderingVisuals(bmp, scale); } #endregion } }