Legrand / Raritan / Server Technology Xerus™ JSON-RPC API

Loading...
Searching...
No Matches
InternalBeeper.idl
1/* SPDX-License-Identifier: BSD-3-Clause */
2/*
3 * Copyright 2014 Raritan Inc. All rights reserved.
4 */
5
6#include <Event.idl>
7#include <UserEvent.idl>
8
9/**
10 * Human Machine Interface
11 */
12module hmi {
13
14 /** Internal beeper interface */
15 interface InternalBeeper {
16 /** Activation state */
17 enumeration State {
18 OFF, ///< Beeper is currently off
19 ON_NOTIFICATION, ///< Beeper is currently active due to an internal alarm notification
20 ON_ACTIVATION ///< Beeper is currently active due to an external activation
21 };
22
23 /** Event: The beeper has been muted or unmuted */
24 valueobject MuteChangedEvent extends event.UserEvent {
25 boolean muted;
26 };
27
28 /** Event: The beeper activation status has changed */
29 valueobject StateChangedEvent extends idl.Event {
30 State state; ///< The current beeper state
31 string reason; ///< Activation reason
32 boolean mutedTemporarily;
33 };
34
35 /**
36 * Mute beeper, turn off all internal alarm notifications.
37 *
38 * @param mute \c true to mute beeper, \c false for normal mode
39 */
40 void mute(in boolean muted);
41
42 /**
43 * Check whether beeper is currently muted
44 *
45 * @return \c true if muted, \c false if not
46 */
47 boolean isMuted();
48
49 /**
50 * Activate the beeper for a given time.
51 *
52 * @param activate Whether to turn on or off the beeper
53 * @param reason Description of the reason to turn on the beeper
54 * (only valid whtn turning on the beeper)
55 * @param timeout Activation timeout in milliseconds
56 * (only valid when turning on the beeper, 0 = infinite activation)
57 */
58 void activate(in boolean on, in string reason, in int timeout);
59
60 /**
61 * Retrieve the current beeper activation state.
62 *
63 * @param reason Return value for activation reason if the beeper
64 * is currently active
65 * @param mutedTemporarily Whether the beeper is currently muted due to a call
66 * to {@link muteCurrentActivation}.
67 * @return The current beeper state
68 */
69 State getState(out string reason, out boolean mutedTemporarily);
70
71 /**
72 * Mute the beeper for the current activation.
73 *
74 * If the beeper is currently on, it will be turned off until another call to
75 * the {@link activate} method or until a new internal notification happens.
76 */
77 void muteCurrentActivation();
78 };
79}
hmi::InternalBeeper
Internal beeper interface.
Definition InternalBeeper.idl:15
hmi::InternalBeeper::activate
void activate(in boolean on, in string reason, in int timeout)
Activate the beeper for a given time.
hmi::InternalBeeper::getState
State getState(out string reason, out boolean mutedTemporarily)
Retrieve the current beeper activation state.
hmi::InternalBeeper::mute
void mute(in boolean muted)
Mute beeper, turn off all internal alarm notifications.
hmi::InternalBeeper::isMuted
boolean isMuted()
Check whether beeper is currently muted.
hmi::InternalBeeper::muteCurrentActivation
void muteCurrentActivation()
Mute the beeper for the current activation.
hmi::InternalBeeper::State
State
Activation state.
Definition InternalBeeper.idl:17
hmi::InternalBeeper::OFF
@ OFF
Beeper is currently off.
Definition InternalBeeper.idl:18
hmi::InternalBeeper::ON_NOTIFICATION
@ ON_NOTIFICATION
Beeper is currently active due to an internal alarm notification.
Definition InternalBeeper.idl:19
hmi
Human Machine Interface.
Definition ExternalBeeper.idl:14
idl
Basic IDL definitions.
Definition Event.idl:10
hmi::InternalBeeper::MuteChangedEvent
Event: The beeper has been muted or unmuted.
Definition InternalBeeper.idl:24
hmi::InternalBeeper::StateChangedEvent
Event: The beeper activation status has changed.
Definition InternalBeeper.idl:29
hmi::InternalBeeper::StateChangedEvent::reason
string reason
Activation reason.
Definition InternalBeeper.idl:31
hmi::InternalBeeper::StateChangedEvent::state
State state
The current beeper state.
Definition InternalBeeper.idl:30
idl::Event
Common base for all events.
Definition Event.idl:13