Raritan PX2/PX3 JSON-RPC API: pdu-json-rpc-api/idl/Bcm.idl Source File

Raritan PX2/PX3 JSON-RPC API

Bcm.idl
1 /* SPDX-License-Identifier: BSD-3-Clause */
2 /*
3 * Copyright 2011 Raritan Inc. All rights reserved.
4 */
5
6 #ifndef __PDUMODEL_BCM_IDL__
7 #define __PDUMODEL_BCM_IDL__
8
9 #include <Pole.idl>
10
11 /** PDU Model */
12 module pdumodel {
13
14 /** Branch Circuit Monitor */
15 interface Bcm {
16
17 /** Power Line Configuration */
18 enumeration LineConfig {
19 UNCONNECTED, ///< Not connected
20 L1_N, ///< L1-Neutral
21 L2_N, ///< L2-Neutral
22 L3_N ///< L3-Neutral
23 };
24
25 /** Current Transformer Type */
26 enumeration TransformerType {
27 VOLTAGE, ///< Voltage-type transformer
28 TURNSRATIO ///< Turns ratio transformer
29 };
30
31 /** Phase Configuration */
32 structure PhaseConfig {
33 LineConfig lineConfig; ///< Power line configuration
34 TransformerType ctType; ///< Current transformer type
35 int fsCurrent; ///< Full-scale current (voltage-type transformer)
36 int fsVoltage; ///< Full-scale voltage (voltage-type transformer)
37 int turnsRatio; ///< Turns ratio (turns ratio transformer)
38 int burdenResistor; ///< Burden resistor (turns ratio transformer)
39 };
40
41 /** Channel Configuration */
42 structure ChannelConfig {
43 int channel; ///< Channel number
44 string label; ///< Channel label
45 boolean is3Phase; ///< \c true for three-phase channels
46 PhaseConfig lineA; ///< Line A phase config
47 PhaseConfig lineB; ///< Line B phase config (three-phase only)
48 PhaseConfig lineC; ///< Line C phase config (three-phase only)
49 };
50
51 /**
52 * Retrieve the BMC's channel count.
53 *
54 * @return Number of BCM channels
55 */
56 int getChannelCount();
57
58 /**
59 * Retrieve the configuration for all channels.
60 *
61 * @return List of channel configurations
62 */
63 vector<ChannelConfig> getChannelConfigs();
64
65 /**
66 * Set the configuration for one channel.
67 *
68 * @param channel Channel number
69 * @param config New channel configuration
70 *
71 * @return 0 if OK
72 * @return 1 for invalid phase configuration
73 * @return 2 for invalid arguments
74 */
75 int setChannelConfig(in int channel, in ChannelConfig config);
76
77 };
78
79 }
80
81 #endif
pdumodel::Bcm::L2_N
L2-Neutral.
Definition: Bcm.idl:21
pdumodel::Bcm::PhaseConfig::lineConfig
LineConfig lineConfig
Power line configuration.
Definition: Bcm.idl:33
pdumodel::Bcm::ChannelConfig::lineB
PhaseConfig lineB
Line B phase config (three-phase only)
Definition: Bcm.idl:47
pdumodel::Bcm::LineConfig
LineConfig
Power Line Configuration.
Definition: Bcm.idl:18
pdumodel::Bcm::PhaseConfig::fsVoltage
int fsVoltage
Full-scale voltage (voltage-type transformer)
Definition: Bcm.idl:36
pdumodel::Bcm::PhaseConfig::fsCurrent
int fsCurrent
Full-scale current (voltage-type transformer)
Definition: Bcm.idl:35
pdumodel::Bcm::UNCONNECTED
Not connected.
Definition: Bcm.idl:19
pdumodel::Bcm::VOLTAGE
Voltage-type transformer.
Definition: Bcm.idl:27
pdumodel::Bcm::ChannelConfig::lineC
PhaseConfig lineC
Line C phase config (three-phase only)
Definition: Bcm.idl:48
pdumodel::Bcm::ChannelConfig::is3Phase
boolean is3Phase
true for three-phase channels
Definition: Bcm.idl:45
pdumodel::Bcm::TransformerType
TransformerType
Current Transformer Type.
Definition: Bcm.idl:26
pdumodel::Bcm::PhaseConfig::burdenResistor
int burdenResistor
Burden resistor (turns ratio transformer)
Definition: Bcm.idl:38
pdumodel::Bcm::ChannelConfig::label
string label
Channel label.
Definition: Bcm.idl:44
pdumodel::Bcm::PhaseConfig
Phase Configuration.
Definition: Bcm.idl:32
pdumodel::Bcm::ChannelConfig::channel
int channel
Channel number.
Definition: Bcm.idl:43
pdumodel::Bcm::PhaseConfig::turnsRatio
int turnsRatio
Turns ratio (turns ratio transformer)
Definition: Bcm.idl:37
pdumodel::Bcm::ChannelConfig
Channel Configuration.
Definition: Bcm.idl:42
pdumodel::Bcm::PhaseConfig::ctType
TransformerType ctType
Current transformer type.
Definition: Bcm.idl:34
pdumodel
PDU Model.
Definition: Ade.idl:12
pdumodel::Bcm::L1_N
L1-Neutral.
Definition: Bcm.idl:20
pdumodel::Bcm::ChannelConfig::lineA
PhaseConfig lineA
Line A phase config.
Definition: Bcm.idl:46
pdumodel::Bcm
Branch Circuit Monitor.
Definition: Bcm.idl:15