Legrand / Raritan / Server Technology Xerus™ JSON-RPC API
Loading...
Searching...
No Matches
Inlet.idl
1/* SPDX-License-Identifier: BSD-3-Clause */
2/*
3 * Copyright 2009 Raritan Inc. All rights reserved.
4 */
5
6#ifndef __PDUMODEL_INLET_IDL__
7#define __PDUMODEL_INLET_IDL__
8
9#include <EDevice.idl>
10#include <Nameplate.idl>
11#include <NumericSensor.idl>
12#include <StateSensor.idl>
13#include <Pole.idl>
14#include <ResidualCurrentStateSensor.idl>
15
16/**
17 * PDU Model
18 */
19module pdumodel {
20
21 /** %Inlet interface */
22 interface Inlet extends EDevice {
23
24 /** %Inlet metadata */
25 structure MetaData {
26 string label; ///< %Inlet label
27 string plugType; ///< Plug type
28 Nameplate namePlate; ///< %Nameplate information
29 Rating rating; ///< Numerical usage ratings
30 boolean hasWaveformSupport; ///< Whether waveform reading is supported on this inlet
31 boolean isDC; ///< Current type, \c true for DC, \c false for AC
32 };
33
34 /** %Inlet sensors */
35 structure Sensors {
36 sensors.NumericSensor voltage; ///< RMS voltage sensor (may be a VoltageMonitoringSensor)
37 sensors.NumericSensor current; ///< RMS current sensor
38 sensors.NumericSensor peakCurrent; ///< Peak current sensor
39 sensors.NumericSensor residualCurrent; ///< Residual current sensor
40 sensors.NumericSensor residualACCurrent; ///< AC Residual current sensor
41 ///< (AC portion of residual operating current)
42 sensors.NumericSensor residualDCCurrent; ///< DC Residual current sensor
43 ///< (DC portion of residual operating current)
44 sensors.NumericSensor activePower; ///< Active power sensor
45 sensors.NumericSensor reactivePower; ///< Reactive power sensor
46 sensors.NumericSensor apparentPower; ///< Apparent power sensor
47 sensors.NumericSensor powerFactor; ///< Power factor sensor
48 sensors.NumericSensor displacementPowerFactor; ///< Displacement power factor sensor
49 sensors.NumericSensor activeEnergy; ///< Active energy sensor
50 sensors.NumericSensor apparentEnergy; ///< Apparent energy sensor
51 sensors.NumericSensor unbalancedCurrent; ///< Current unbalance sensor
52 sensors.NumericSensor unbalancedLineLineCurrent; ///< Line-Line current unbalance sensor
53 sensors.NumericSensor unbalancedVoltage; ///< Voltage unbalance sensor
54 sensors.NumericSensor unbalancedLineLineVoltage; ///< Line-Line voltage unbalance sensor
55 sensors.NumericSensor lineFrequency; ///< Line AC frequency sensor
56 sensors.NumericSensor phaseAngle; ///< Phase angle sensor
57 sensors.NumericSensor crestFactor; ///< Crest factor sensor
58 sensors.NumericSensor voltageThd; ///< Voltage total harmonic distortion sensor
59 sensors.NumericSensor currentThd; ///< Current total harmonic distortion sensor
60 sensors.StateSensor powerQuality; ///< Power quality sensor
61 sensors.StateSensor surgeProtectorStatus; ///< Surge protector status sensor
62 ResidualCurrentStateSensor residualCurrentStatus; ///< Residual current monitor state sensor
63 };
64
65 /** %Inlet settings */
66 structure Settings {
67 string name; ///< User-defined name
68 };
69
70 /** Event: Inlet settings have been changed */
71 valueobject SettingsChangedEvent extends event.UserEvent {
72 Settings oldSettings; ///< Settings before change
73 Settings newSettings; ///< Settings after change
74 };
75
76 /** Event: Inlet has been enabled or disabled */
77 valueobject EnableStateChangedEvent extends event.UserEvent {
78 boolean enabled; ///< New enable state
79 };
80
81 /**
82 * Retrieve the inlet metadata.
83 *
84 * @return %Inlet metadata
85 */
87
88 /**
89 * Get the inlet sensors.
90 *
91 * @return %Inlet sensors
92 */
94
95 /**
96 * Get the list of inlet poles.
97 *
98 * @return List of inlet poles
99 */
100 vector<Pole> getPoles();
101
102 /**
103 * Get the list of inlet line pairs.
104 *
105 * @return List of inlet line pairs
106 */
107 vector<MeteredLinePair> getLinePairs();
108
109 /**
110 * Retrieve the inlet settings.
111 *
112 * @return %Inlet settings
113 */
115
116 /**
117 * Change the inlet settings.
118 *
119 * @param settings New inlet settings
120 *
121 * @return 0 if OK
122 * @return 1 if any parameters are invalid
123 */
124 int setSettings(in Settings settings);
125
126 /**
127 * Enable/disable PDU operation for this inlet.
128 *
129 * When PDU operation is disabled the sensors for this inlet and all
130 * children will no longer be updated, and outlet switching is no
131 * longer allowed. This can be useful for multi-inlet units if one
132 * inlet is temporarily expected to be powered down.
133 *
134 * @param enabled \c true to enable PDU operation
135 */
136 void setEnabled(in boolean enabled);
137
138 /**
139 * Test whether PDU operation is enabled for this inlet.
140 *
141 * @return \c true if PDU operation is enabled
142 */
143 boolean isEnabled();
144 };
145
146}
147
148#endif
Common base interface for any kind of electrical device that is used in the PDU model,...
Definition: EDevice.idl:27
Inlet interface
Definition: Inlet.idl:22
MetaData getMetaData()
Retrieve the inlet metadata.
int setSettings(in Settings settings)
Change the inlet settings.
boolean isEnabled()
Test whether PDU operation is enabled for this inlet.
Sensors getSensors()
Get the inlet sensors.
vector< Pole > getPoles()
Get the list of inlet poles.
Settings getSettings()
Retrieve the inlet settings.
vector< MeteredLinePair > getLinePairs()
Get the list of inlet line pairs.
void setEnabled(in boolean enabled)
Enable/disable PDU operation for this inlet.
Residual current state sensor interface.
A sensor with numeric readings.
Sensor with discrete readings.
Definition: StateSensor.idl:43
PDU Model.
Definition: Ade.idl:12
Sensors Model.
Event: Inlet has been enabled or disabled.
Definition: Inlet.idl:77
boolean enabled
New enable state.
Definition: Inlet.idl:78
Inlet metadata
Definition: Inlet.idl:25
boolean hasWaveformSupport
Whether waveform reading is supported on this inlet.
Definition: Inlet.idl:30
string plugType
Plug type.
Definition: Inlet.idl:27
string label
Inlet label
Definition: Inlet.idl:26
boolean isDC
Current type, true for DC, false for AC.
Definition: Inlet.idl:31
Rating rating
Numerical usage ratings.
Definition: Inlet.idl:29
Nameplate namePlate
Nameplate information
Definition: Inlet.idl:28
Inlet sensors
Definition: Inlet.idl:35
sensors::NumericSensor voltage
RMS voltage sensor (may be a VoltageMonitoringSensor)
Definition: Inlet.idl:36
sensors::NumericSensor activeEnergy
Active energy sensor.
Definition: Inlet.idl:49
sensors::NumericSensor residualCurrent
Residual current sensor.
Definition: Inlet.idl:39
sensors::NumericSensor unbalancedLineLineCurrent
Line-Line current unbalance sensor.
Definition: Inlet.idl:52
sensors::NumericSensor unbalancedVoltage
Voltage unbalance sensor.
Definition: Inlet.idl:53
sensors::StateSensor powerQuality
Power quality sensor.
Definition: Inlet.idl:60
sensors::NumericSensor currentThd
Current total harmonic distortion sensor.
Definition: Inlet.idl:59
sensors::NumericSensor unbalancedLineLineVoltage
Line-Line voltage unbalance sensor.
Definition: Inlet.idl:54
sensors::NumericSensor residualDCCurrent
DC Residual current sensor.
Definition: Inlet.idl:42
sensors::NumericSensor crestFactor
Crest factor sensor.
Definition: Inlet.idl:57
sensors::NumericSensor displacementPowerFactor
Displacement power factor sensor.
Definition: Inlet.idl:48
sensors::NumericSensor peakCurrent
Peak current sensor.
Definition: Inlet.idl:38
sensors::NumericSensor lineFrequency
Line AC frequency sensor.
Definition: Inlet.idl:55
sensors::NumericSensor reactivePower
Reactive power sensor.
Definition: Inlet.idl:45
ResidualCurrentStateSensor residualCurrentStatus
Residual current monitor state sensor.
Definition: Inlet.idl:62
sensors::NumericSensor current
RMS current sensor.
Definition: Inlet.idl:37
sensors::StateSensor surgeProtectorStatus
Surge protector status sensor.
Definition: Inlet.idl:61
sensors::NumericSensor powerFactor
Power factor sensor.
Definition: Inlet.idl:47
sensors::NumericSensor unbalancedCurrent
Current unbalance sensor.
Definition: Inlet.idl:51
sensors::NumericSensor apparentEnergy
Apparent energy sensor.
Definition: Inlet.idl:50
sensors::NumericSensor residualACCurrent
AC Residual current sensor.
Definition: Inlet.idl:40
sensors::NumericSensor apparentPower
Apparent power sensor.
Definition: Inlet.idl:46
sensors::NumericSensor phaseAngle
Phase angle sensor.
Definition: Inlet.idl:56
sensors::NumericSensor activePower
Active power sensor.
Definition: Inlet.idl:44
sensors::NumericSensor voltageThd
Voltage total harmonic distortion sensor.
Definition: Inlet.idl:58
Event: Inlet settings have been changed.
Definition: Inlet.idl:71
Settings newSettings
Settings after change.
Definition: Inlet.idl:73
Settings oldSettings
Settings before change.
Definition: Inlet.idl:72
Inlet settings
Definition: Inlet.idl:66
string name
User-defined name.
Definition: Inlet.idl:67
Component nameplate information.
Definition: Nameplate.idl:23
Numerical usage ratings.
Definition: Nameplate.idl:15