Legrand / Raritan Xerus™ JSON-RPC API for Remote Access Devices like KX4-101, KX3G2

Loading...
Searching...
No Matches
KeySetManager.idl
1#ifndef __RADM_KEY_SET_MANAGER_IDL__
2#define __RADM_KEY_SET_MANAGER_IDL__
3
4#include <KeyboardLayout.idl>
5#include <UserEvent.idl>
6
7module radm {
8 interface KeySetManager {
9 constant int ERR_INVALID_ARGUMENT = 1;
10 constant int ERR_NAME_ALREADY_USED = 2;
11
12 /** Structure representing a key set (a named group of keyboard key codes) */
13 structure KeySet {
14 int id; ///< Unique ID of this key set
15 string name; ///< Key set name
16 KeyboardLayout keyboardLayout; ///< Keyboard layout to be assumed for this key set
17 ///< (traditional and simplified Chinese are not supported)
18 vector<int> keys; ///< Scan codes of keys in the key sets (for definition of scan codes, see KVM client SDK)
19 };
20
21 /**
22 * Get all configured key sets
23 *
24 * @return List of configured key sets
25 */
26 vector<KeySet> getAllKeySets();
27
28 /**
29 * Get a particular configured key set
30 *
31 * @param id ID of the desired key set
32 * @param keyset Returned key set
33 *
34 * @return 0 on success
35 * @return 1 if the ID could not be found
36 */
37 int getKeySetById(in int id, out KeySet keyset);
38
39 /**
40 * Add a new key set
41 *
42 * @param keyset Key set to be added
43 *
44 * @return 0 on success
45 * @return 1 if any key set parameter is invalid
46 * @return 2 if the provided key set name already is used by another key set
47 */
48 int addKeySet(in KeySet keyset);
49
50 /**
51 * Change a given key set
52 *
53 * @param keyset Key set to be updated (matched against existing key set by ID)
54 *
55 * @return 0 on success
56 * @return 1 if no key set with the given ID was found, or if any other key set paraneter is invalid
57 * @return 2 if the provided key set name already is used by another key set
58 */
59 int updateKeySet(in KeySet keyset);
60
61 /**
62 * Delete a key set
63 *
64 * @param id ID of the key set to be deleted
65 *
66 * @return 0 on success
67 * @return 1 if no key set with the given ID was found
68 */
69 int deleteKeySet(in int id);
70
71 /** Event: List of configured key sets has changed */
72 valueobject KeySetsChangedEvent extends event.UserEvent {
73 vector<KeySet> newKeySets; ///< new KeySets after change
74 };
75 };
76}
77
78#endif // __RADM_KEY_SET_MANAGER_IDL__
radm::KeySetManager
Definition KeySetManager.idl:8
radm::KeySetManager::updateKeySet
int updateKeySet(in KeySet keyset)
Change a given key set.
radm::KeySetManager::getKeySetById
int getKeySetById(in int id, out KeySet keyset)
Get a particular configured key set.
radm::KeySetManager::addKeySet
int addKeySet(in KeySet keyset)
Add a new key set.
radm::KeySetManager::getAllKeySets
vector< KeySet > getAllKeySets()
Get all configured key sets.
radm::KeySetManager::deleteKeySet
int deleteKeySet(in int id)
Delete a key set.
radm
Radm Model.
Definition AccessPort.idl:8
radm::KeyboardLayout
KeyboardLayout
Available keyboard languages.
Definition KeyboardLayout.idl:7
radm::KeySetManager::KeySet
Structure representing a key set (a named group of keyboard key codes)
Definition KeySetManager.idl:13
radm::KeySetManager::KeySet::name
string name
Key set name.
Definition KeySetManager.idl:15
radm::KeySetManager::KeySet::keys
vector< int > keys
Scan codes of keys in the key sets (for definition of scan codes, see KVM client SDK)
Definition KeySetManager.idl:18
radm::KeySetManager::KeySet::id
int id
Unique ID of this key set.
Definition KeySetManager.idl:14
radm::KeySetManager::KeySet::keyboardLayout
KeyboardLayout keyboardLayout
Keyboard layout to be assumed for this key set (traditional and simplified Chinese are not supported)
Definition KeySetManager.idl:16
radm::KeySetManager::KeySetsChangedEvent
Event: List of configured key sets has changed.
Definition KeySetManager.idl:72
radm::KeySetManager::KeySetsChangedEvent::newKeySets
vector< KeySet > newKeySets
new KeySets after change
Definition KeySetManager.idl:73