All files / src/ptz PTZDevice.js

100% Statements 40/40
50% Branches 2/4
20% Functions 1/5
100% Lines 40/40

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 411x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x  
// @ts-check
// SPDX-License-Identifier: Zlib
// SPDX-FileCopyrightText: 2024 CERN (home.cern)
// SPDX-Created: 2024-02-05T16:28:20
// SPDX-FileContributor: Author: Sylvain Fargier <sylvain.fargier@cern.ch>
 
/**
 * @typedef {{ user: string, password: string }} Authentication
 * @typedef {{ src: string, auth?: Authentication }} Options
 */
 
class PTZDevice {
  constructor(options) {
    this.src = options?.src;
    this.user = options?.auth?.user;
    this.pass = options?.auth?.password;
  }
 
  /**
   * @return {Promise<any>}
   */
  async getLimits() { throw new Error("not implemented"); }
 
  /** @return {Promise<any>} */
  async getPosition(_req, _res) { throw new Error("not implemented"); }
 
  /**
   * @param {any} _params
   * @return {Promise<any>}
   */
  async putPosition(_params) { throw new Error("not implemented"); }
 
  /**
   * @param {any} _params
   * @return {Promise<any>}
   */
  async postPosition(_params) { throw new Error("not implemented"); }
}
 
export default PTZDevice;