Raritan PX2/PX3 JSON-RPC API
WebcamChannel.idl
1 /* SPDX-License-Identifier: BSD-3-Clause */
2 /*
3  * Copyright 2011 Raritan Inc. All rights reserved.
4  */
5 
6 #include <Webcam.idl>
7 
8 /** Webcam Management */
9 module webcam {
10 
11  /** The channel interface */
12  interface Channel_1_0_1 {
13  /**
14  * Error codes
15  */
16  constant int NO_ERROR = 0; ///< Operation successful, no error
17  constant int ERR_NOT_AVAILABLE = 2; ///< Channel is not available
18  constant int ERR_NO_SUCH_OBJECT = 3; ///< Requested object does not exist
19 
20  /**
21  * Retrieve the channel type
22  *
23  * @return the client type
24  */
25  string getClientType();
26 
27  /**
28  * Retrieve the webcam
29  *
30  * @return the webcam
31  */
32  Webcam_2_0_1 getWebcam();
33 
34  /**
35  * Determine whether the channel is available. A channel may become unavailable when higher prioritized viewers are active.
36  *
37  * @return true if the channel is available, false otherwise
38  */
39  boolean isAvailable();
40 
41  /**
42  * Releases the channel to allow lower proritized clients to view an image otherwise the channel expires when
43  * it is unused (neither a image related method nor "isAvailable" is called) for 20 seconds.
44  */
45  void release();
46 
47  /**
48  * Retrieve a image
49  *
50  * @param image Result: the image
51  *
52  * @return NO_ERROR on success
53  * @return ERR_NOT_AVAILABLE this channel is temporarily paused, because all view ports are currently used by higher prioritized events
54  * @return ERR_NO_SUCH_OBJECT the viewed webcam was detached
55  */
56  int captureImage(out Image_2_0_0 image);
57 
58  /**
59  * Triggers the capture process to the temporary folder and returns a capture token to view them.
60  * The capture token is valid for 9 seconds and needs to be refreshed when, or even better before the old token expires.
61  *
62  * @param captureToken Result: a new captureToken
63  *
64  * @return NO_ERROR on success
65  * @return ERR_NOT_AVAILABLE this channel is temporarily paused, because all view ports are currently used by higher prioritized events
66  * @return ERR_NO_SUCH_OBJECT the viewed webcam was detached
67  */
68  int triggerCapture(out string captureToken);
69  };
70 }
The webcam interface.
Definition: Webcam.idl:86
The channel interface.
Definition: WebcamChannel.idl:12
Image.
Definition: Webcam.idl:64
Webcam Management.
Definition: StorageManager.idl:10