Legrand / Raritan / Server Technology Xerus™ PDU JSON-RPC API
PortFuse.idl
1 /* SPDX-License-Identifier: BSD-3-Clause */
2 /*
3  * Copyright 2018 Raritan Inc. All rights reserved.
4  */
5 
6 #ifndef __PORTSMODEL_PORT_FUSE_IDL__
7 #define __PORTSMODEL_PORT_FUSE_IDL__
8 
9 #include <Event.idl>
10 
11 /**
12  * Ports
13  */
14 module portsmodel {
15  /**
16  * Interface describing a controllable fuse for a device port */
17  interface PortFuse {
18  /** Status type for port fuse */
19  enumeration Status {
20  UNKNOWN, ///< Status can't be determined
21  TRIPPED, ///< Fuse is open (tripped)
22  GOOD ///< Fuse is closed (good)
23  };
24 
25  /** Event: The state of the fuse has changed */
26  valueobject StatusChangedEvent extends idl.Event {
27  Status oldStatus; ///< Previous fuse status
28  Status newStatus; ///< Current (new) fuse status
29  };
30 
31  /**
32  * Get the current status of the fuse
33  *
34  * @return Current fuse status
35  */
37 
38  /**
39  * Attempt a fuse reset
40  *
41  * Tries to recover the fuse from tripped state. When calling
42  * this after correcting the previous short circuit condition,
43  * the fuse should transition into 'good' state again. If the
44  * short circuit condition is still present, this operation
45  * is a no-op.
46  */
47  void reset();
48 
49  /**
50  * Get the trip count of the fuse (since last reboot)
51  *
52  * @return Current fuse trip count
53  */
54  int getTripCount();
55  };
56 }
57 
58 #endif /* __PORTSMODEL_PORT_FUSE_IDL__ */
Interface describing a controllable fuse for a device port.
Definition: PortFuse.idl:17
int getTripCount()
Get the trip count of the fuse (since last reboot)
void reset()
Attempt a fuse reset.
Status
Status type for port fuse.
Definition: PortFuse.idl:19
@ UNKNOWN
Status can't be determined.
Definition: PortFuse.idl:20
@ TRIPPED
Fuse is open (tripped)
Definition: PortFuse.idl:21
Status getStatus()
Get the current status of the fuse.
Basic IDL definitions.
Definition: Event.idl:10
Ports.
Definition: Port.idl:15
Common base for all events.
Definition: Event.idl:13
Event: The state of the fuse has changed.
Definition: PortFuse.idl:26
Status newStatus
Current (new) fuse status.
Definition: PortFuse.idl:28
Status oldStatus
Previous fuse status.
Definition: PortFuse.idl:27