Camera Information System
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

75 lines
1.7 KiB

using EC.Helper.CameraSDK;
namespace Cis.Application.Core.Component.PtzServer;
/// <summary>
/// 相机 sdk 服务接口
/// </summary>
public interface ICameraSdkServer
{
#region Base Method
/// <summary>
/// 注册相机
/// </summary>
/// <param name="cameraInfo"></param>
/// <returns></returns>
public bool Register(CameraInfo cameraInfo);
/// <summary>
/// 注销相机
/// </summary>
/// <param name="ip"></param>
/// <returns></returns>
public bool Delete(string ip);
/// <summary>
/// 是否存在相机
/// </summary>
/// <param name="ip"></param>
/// <returns></returns>
public bool IsExists(string ip);
#endregion Base Method
#region Main Method
/// <summary>
/// 获取 ptz
/// </summary>
/// <param name="ip"></param>
/// <returns></returns>
public PtzInfo GetPtzInfoByIp(string ip);
/// <summary>
/// 获取 ptz
/// </summary>
/// <param name="ip"></param>
/// <returns></returns>
public Task<PtzInfo> GetPtzInfoByIpAsync(string ip);
/// <summary>
/// 获取 ptz
/// </summary>
/// <param name="ip"></param>
/// <param name="ptzInfo"></param>
/// <returns></returns>
public bool TryGetPtzInfoByIp(string ip, out PtzInfo ptzInfo);
/// <summary>
/// 获取 ptz
/// </summary>
/// <param name="cameraId"></param>
/// <returns></returns>
public Task<PtzInfo> GetPtzInfoByIdAsync(string cameraId);
/// <summary>
/// 获取 ptz
/// </summary>
/// <param name="cameraId"></param>
/// <param name="ptzInfo"></param>
/// <returns></returns>
public bool TryGetPtzInfoById(string cameraId, out PtzInfo ptzInfo);
#endregion Main Method
}