/// <summary> /// Image Processing Unit Constructor /// </summary> /// <param name="streamer">Streamer to get frames from</param> /// <param name="ballTracker">Ball Tracker [default is null - will be created]</param> /// <param name="imagingData">Imaging data [default is null - will be created]</param> /// <param name="analyzerTool">Statistics Tool [default is null - will be created]</param> public FrameProcessingUnit(FramePublisher streamer, Tracker ballTracker = null, IImageData imagingData = null, IDetectionAnalyzer analyzerTool = null) : base(streamer, imagingData) { _ballTracker = ballTracker ?? new BallTracker(ImagingData, streamer); AnalyzerTool = analyzerTool ?? new DetectionStatisticAnalyzer(); _lastFrameTimeStamp = DateTime.Now; }