/// <summary> /// Creates a Camera Manager using the <c>Helpers.CameraConfig</c> supplied. /// </summary> /// <param name="cameraConfig">The list of camera configuration details to build and manage the camera with.</param> /// <returns></returns> public virtual BaseCameraManager CreateCameraManager(Helpers.CameraConfig cameraConfig) { CameraManagerBuilder builder = this.Builders[cameraConfig.CameraClass]; if (builder == null) { throw new System.ArgumentNullException(cameraConfig.CameraClass); } return(builder.Build(cameraConfig)); }
/// <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); }
/// <summary> /// Instantiates a Builder Manager ready for use. /// </summary> /// <param name="cameraConfig">The config of the camera to be built and managed</param> /// <returns></returns> public virtual BaseCameraManager Build(Helpers.CameraConfig cameraConfig) { throw new NotImplementedException("Not yet implemented."); }