/// <summary> /// Instantiates a Manager ready to manage a camera. /// </summary> /// <param name="cameraConfig">The configuration of the camera to be managed.</param> /// <returns>A <c>BaseCameraManager</c></returns> public override BaseCameraManager Build(Helpers.CameraConfig cameraConfig) { // todo: this whole method can be generic and move to base class BaseCamera camera = StaticCameraFactory.Factory.CreateCamera(cameraConfig); camera.OpenVideo(); OnvifCameraManager manager = new OnvifCameraManager((BaseOnvifPtzCamera)camera, cameraConfig); manager.RunAsync(); return(manager); }