summaryrefslogtreecommitdiff
path: root/grapher/Models/Mouse/PointData.cs
blob: e3f44eac593011d650b053a2282a901bc48054b4 (plain) (blame)
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
using System;

namespace grapher.Models.Mouse
{
    public class PointData
    {
        #region Constructors

        public PointData()
        {
            Lock = new Object();
            X = new double[] { 0.01 };
            Y = new double[] { 0.01 };
        }

        #endregion Constructors

        #region Properties

        public Object Lock { get; }

        private double[] X { get; set; }
        private double[] Y { get; set; }

        public void Set(double x, double y)
        {
            lock(Lock)
            {
                X[0] = x;
                Y[0] = y;
            }
        }

        #endregion Properties

        #region Methods

        public void Get(out double[] x, out double[] y)
        {
            lock(Lock)
            {
                x = X;
                y = Y;
            }
        }

        #endregion Methods
    }
}