/// <summary> /// A constructor /// </summary> /// <param name="ms">The Background Subtraction algorithm.</param> /// <param name="classObj">The Classify Blobs algorithm.</param> /// <param name="tracker">The Tracking algorithm.</param> /// <exception cref="ArgumentNullException">One of the arguments is null.</exception> public BaseImageProcess(IMotionSegmentation ms, IClassifyObjects classObj, ITrackObjects tracker) { // Check that non is null. if (ms == null || tracker == null || classObj == null) { throw new ArgumentNullException(); } motionSegmentation = ms; trackObjects = tracker; classifyObjects = classObj; }