Пример #1
0
        private FJobRequest CreateFJobRequest(int jobId, SMapWorkRequest smwr)
        {
            Coords       coords       = smwr.SCoords.GetCoords();
            RectangleInt area         = smwr.Area.GetRectangleInt();
            SizeInt      samplePoints = smwr.CanvasSize.GetSizeInt();

            FJobRequest fJobRequest = new FJobRequest(jobId, smwr.Name, FJobRequestType.Generate, coords, area, samplePoints, (uint)smwr.MaxIterations);

            return(fJobRequest);
        }
Пример #2
0
        private FJobRequest CreateFJobRequest(SCoordsWorkRequest sCoordsWorkRequest, int jobId)
        {
            SCoords sCoords = sCoordsWorkRequest.SCoords;

            MqMessages.Coords coords = new MqMessages.Coords(sCoords.LeftBot.X, sCoords.RightTop.X, sCoords.LeftBot.Y, sCoords.RightTop.Y);

            CanvasSize cs           = sCoordsWorkRequest.CanvasSize;
            SizeInt    samplePoints = new SizeInt(cs.Width, cs.Height);

            MapSection ms = sCoordsWorkRequest.MapSection;

            RectangleInt area = new RectangleInt(new PointInt(ms.SectionAnchor.X, ms.SectionAnchor.Y), new SizeInt(ms.CanvasSize.Width, ms.CanvasSize.Height));

            string      name        = "CoordsRequest";
            FJobRequest fJobRequest = new FJobRequest(jobId, name, FJobRequestType.TransformCoords, coords, area, samplePoints, 0, sCoordsWorkRequest.TransformType);

            return(fJobRequest);
        }
Пример #3
0
        private SCoords GetResponseFromMq(string requestMsgId)
        {
            using (MessageQueue inQ = GetJobResponseQueue())
            {
                Message m = MqHelper.GetMessageByCorId(inQ, requestMsgId, WaitDuration);

                if (m == null)
                {
                    Debug.WriteLine("The FCoordsResult did not arrive.");
                    return(null);
                }

                Debug.WriteLine("Received a message.");
                FCoordsResult jobResult = (FCoordsResult)m.Body;

                MqMessages.Coords coords = jobResult.Coords;

                SPoint  leftBot  = new SPoint(coords.StartX, coords.StartY);
                SPoint  rightTop = new SPoint(coords.EndX, coords.EndY);
                SCoords result   = new SCoords(leftBot, rightTop);

                return(result);
            }
        }
Пример #4
0
 public MqMessages.Coords GetCoords()
 {
     MqMessages.Coords result = new MqMessages.Coords(LeftBot.X, RightTop.X, LeftBot.Y, RightTop.Y);
     return(result);
 }
Пример #5
0
 public FCoordsResult(int jobId, Coords coords)
 {
     JobId  = jobId;
     Coords = coords ?? throw new ArgumentNullException(nameof(coords));
 }