Loading...
Searching...
No Matches
Pdu.idl
/* SPDX-License-Identifier: BSD-3-Clause */
/*
* Copyright 2009 Raritan Inc. All rights reserved.
*/
#ifndef __PDUMODEL_PDU_IDL__
#define __PDUMODEL_PDU_IDL__
#include <Nameplate.idl>
#include <Outlet.idl>
#include <PeripheralDeviceSlot.idl>
#include <PeripheralDeviceManager.idl>
#include <Port.idl>
#include <OverCurrentProtector.idl>
#include <Inlet.idl>
#include <TransferSwitch.idl>
#include <StateSensor.idl>
#include <SensorLogger.idl>
#include <Controller.idl>
#include <InternalBeeper.idl>
#include <AlertedSensorManager.idl>
/**
* PDU Model
*/
module pdumodel {
/** Main PDU interface */
interface Pdu {
constant int ERR_INVALID_PARAM = 1; ///< Invalid parameters
/** PDU orientations */
enumeration PduOrientation {
PO_NONE, ///< No PDU orientation (non-reversible ETO, default)
PO_BOTTOMFEED, ///< Bottom feed PDU orientation (reversible ETO, normal order)
PO_TOPFEED ///< Top feed PDU orientation (reversible ETO, reversed order)
};
/** PDU metadata */
structure MetaData {
Nameplate nameplate; ///< %Nameplate information
string ctrlBoardSerial; ///< Main controller serial number
string hwRevision; ///< Hardware revision
string fwRevision; ///< Firmware revision
string macAddress; ///< MAC address
boolean hasSwitchableOutlets; ///< \c true if at least one outlet is switchable
boolean hasMeteredOutlets; ///< \c true if at least one outlet is metered
boolean hasLatchingOutletRelays; ///< \c true if at least one outlet has a latching relay
boolean isInlineMeter; ///< \c true if all inlets have exactly one outlet
boolean isEnergyPulseSupported; ///< \c true if the PDU has one or more LED(s) capable
///< of emitting pulses to measure consumed energy
boolean hasDCInlets; ///< \c true if at least one inlet is DC
PduOrientation pduOrientation; ///< PDU orientation at boot
};
/** PDU sensors */
structure Sensors {
vector<sensors.StateSensor> powerSupplyStatus; ///< Power supply fault status
sensors.NumericSensor activePower; ///< Active power sensor
sensors.NumericSensor apparentPower; ///< Active power sensor
sensors.NumericSensor activeEnergy; ///< Active energy sensor
sensors.NumericSensor apparentEnergy; ///< Active energy sensor
};
/** PDU statistics */
structure Statistic {
vector<CircuitBreakerStatistic> cbStats; ///< Circuit breaker statistics
vector<CtrlStatistic> ctrlStats; ///< Sub controller statistics
vector<OutletStatistic> outletStats; ///< %Outlet statistics
peripheral.DeviceManager.Statistics peripheralStats; ///< Peripheral device statistics
};
/** %Outlet power state on device startup */
enumeration StartupState {
SS_ON, ///< %Outlet will be switched on
SS_OFF, ///< %Outlet will be switched off
SS_LASTKNOWN ///< Restore last known power state
};
/** PDU settings */
[sparse_in]
structure Settings {
string name; ///< User-defined name
StartupState startupState; ///< Default outlet state after applying power to outlets; can be overriden per outlet
int cycleDelay; ///< Default power-cycle interval in seconds; can be overriden per outlet
int inRushGuardDelay; ///< Minimum delay in milliseconds between switching two outlets on
vector<int> outletPowerStateSequence; ///< The order in which multiple outlets should be switched.
///< Format: List of outlet numbers (0-based), empty for default.
///< \n Affects the following functions:
///< \li \c setAllOutletPowerStates
///< \li \c cycleAllOutletPowerStates
///< \li \c setMultipleOutletPowerStates
///< \li \c cycleMultipleOutletPowerStates
int powerOnDelay; ///< Delay in seconds before restoring outlet states after power is applied to outlets
boolean latchingRelays; ///< If true, relays keep their state during power-cycling
boolean energyPulseEnabled; ///< Enables energy consumption counting using the PDU's LED(s)
int energyPulsesPerKWh; ///< Ratio between LED pulses and energy consumption
int demandUpdateInterval; ///< BCM2 only: Update interval in seconds for demand sensors
int demandAveragingIntervals; ///< BCM2 only: Average demand sensors over this many update intervals
boolean suspendTripCauseOutlets; ///< If true, outlets suspected to have caused an OCP to trip are
///< automatically suspended (turned off)
boolean inhibitRelayControl; ///< If true, all relay control methods are disabled
};
/** %Outlet sequencing status */
structure OutletSequenceState {
boolean sequenceRunning; ///< \c true if an outlet sequence is currently running
int nextOutletToSwitch; ///< Number (0-based) of the next outlet in the sequence
int timeUntilNextSwitch; ///< Time in milliseconds before the next outlet is switched
int outletsRemaining; ///< Number of outlets remaining in the sequence
int cancelableOutletsRemaining; ///< Number of outlets remaining whose switch operation can be canceled
///< (non-cancelable operations won't be affected by canceling the sequence)
};
/** Port with id and properties, used in PortAppearedEvent and getPorts() */
structure PortWithProperties {
string id; ///< this id corresponds to portID in PortDisappearedEvent
portsmodel.Port port; ///< the appeared port
portsmodel.Port.Properties properties; ///< actual properties of appeared port
};
/** Event: PDU settings have been changed */
valueobject SettingsChangedEvent extends event.UserEvent {
Settings oldSettings; ///< Settings before change
Settings newSettings; ///< Settings after change
};
/** Event: Load shedding mode was enabled or disabled */
valueobject LoadSheddingModeChangedEvent extends event.UserEvent {
boolean enabled; ///< Whether load shedding mode is enabled after the change
};
/** Event: Outlet sequencing state has changed */
valueobject OutletSequenceStateChangedEvent extends idl.Event {
OutletSequenceState newState; ///< New sequencing state
};
/** Event: Serial port has appeared */
valueobject PortAppearedEvent extends idl.Event {
PortWithProperties port; ///< port with id and actual properties
};
/** Event: Serial port has disappeared */
valueobject PortDisappearedEvent extends idl.Event {
string portId; ///< this id corresponds to port id used in PortAppearedEvent and getPorts()
};
/**
* Retrieve the PDU nameplate information.
*
* @return Nameplate information
*/
Nameplate getNameplate();
/**
* Retrieve the PDU metadata.
*
* @return PDU metadata
*/
MetaData getMetaData();
/**
* Retrieve the PDU sensors.
*
* @return PDU sensors
*/
Sensors getSensors();
/**
* Get the sensor logger.
*
* @return Sensor logger reference
*/
sensors.Logger getSensorLogger();
/**
* Get the alerted sensor manager.
*
* @return Alerted sensor manager
*/
sensors.AlertedSensorManager getAlertedSensorManager();
/**
* Get the list of sub controllers.
*
* @return List of sub controllers
*/
vector<Controller> getControllers();
/**
* Get the list of outlets.
*
* @return List of outlets, indexed by their number (0-based)
*/
vector<Outlet> getOutlets();
/**
* Get the list of overcurrent protectors.
*
* @return List of OCPs, indexed by their number (0-based)
*/
vector<OverCurrentProtector> getOverCurrentProtectors();
/**
* Get the list of inlets.
*
* @return List of inlets, indexed by their number (0-based)
*/
vector<Inlet> getInlets();
/**
* Returns list of Transfer Switches.
* This list may be empty.
*/
vector<TransferSwitch> getTransferSwitches();
/**
* Get the peripheral device manager.
*
* @return Peripheral device manager
*/
peripheral.DeviceManager getPeripheralDeviceManager();
/**
* Get the built-in beeper, if there is any.
*
* @return Beeper interface
*/
hmi.InternalBeeper getBeeper();
/**
* Retrieve the PDU settings.
*
* @return PDU settings
*/
Settings getSettings();
/**
* Retrieve the current load shedding state.
*
* @return \c true if load shedding is currently enabled
*/
boolean isLoadSheddingActive();
/**
* Change the PDU settings.
*
* @param settings New PDU settings
*
* @return 0 if OK
* @return 1 if any parameters are invalid
*
* @note The Settings structure can be "sparse"; fields missing in the
* JSON representation will remain unchanged.
*/
int setSettings(in Settings settings);
/**
* Enable or disable load shedding.
*
* @param active \c true to enable, \c false to disable load shedding
*/
void setLoadSheddingActive(in boolean active);
/**
* Get all feature ports of this device
*
* This returns an entry for all feature ports, no matter whether
* something is connected or not.
* A device with n feature ports will return n entries here.
*
* @return List of all Feature Ports
*/
vector<portsmodel.Port> getFeaturePorts();
/**
* Get all sensor ports of this device
*
* This returns an entry for all sensor ports, no matter whether
* something is connected or not.
* A device with n sensor ports will return n entries here.
*
* @return List of all Sensor Ports
*/
vector<portsmodel.Port> getSensorPorts();
/**
* Get all remote hub ports of this device
*
* This returns an entry for all remote hub ports, no matter whether
* something is connected or not.
* A device with n remote hub ports will return n entries here.
*
* @return List of all Remote Hub Ports
*/
vector<portsmodel.Port> getRemoteHubPorts();
/**
* Get all serial ports of this device using filters
*
* This returns an entry for all detected ports, no matter whether
* something is connected or not. The ports may be filtered by
* peripheral.PortType and/or supported device type portsmodel.Port.DeviceTypeId.
*
* @param portType filter for port type, or use peripheral.Portype.UNSPECIFIED
* @param devType filter the ports that support a specific device, or use portsmodel.Port.DeviceTypeId.UNSPECIFIED
*
* @return List of ports with id and properties.
*/
vector<PortWithProperties> getPorts(in peripheral.PortType portType, in portsmodel.Port.DeviceTypeId devType);
/**
* Enter RS485 config mode and assign an address to a relay board.
* @warning This is dangerous! Do not use except for manufacturing.
*
* @param addr New relay board address
*
* @return 0 if OK
* @return 1 if any parameters are invalid
*/
int enterRS485ConfigModeAndAssignCtrlBoardAddress(in int addr);
/**
* Enter RS485 config mode and assign an address to a sub controller
* device with a given device ID.
* @warning This is dangerous! Do not use except for manufacturing.
*
* @param deviceId Device id of the sub controller
* which is supposed to get the address
* @param addr New relay board address
*
* @return 0 if OK
* @return 1 if any parameters are invalid
*/
int enterRS485ConfigModeAndAssignSCBoardAddress(in int deviceId, in int addr);
/**
* Leave RS485 config mode.
*
* @return 0 if OK
*/
int leaveRS485ConfigMode();
/**
* Switch all outlets.
*
* @param pstate New power state for all outlets
*
* @return 0 if OK
* @return 5 if relay control is disabled in the PDU settings
*/
int setAllOutletPowerStates(in Outlet.PowerState pstate);
/**
* Switch multiple outlets.
*
* @param outletNumbers List of outlet numbers (0-based)
* @param state New power state for all outlets in list
* @param respectSequence \c true to switch in defined sequence order
*
* @return 0 if OK
* @return 3 if any of the selected outlets is disabled
* @return 5 if relay control is disabled in the PDU settings
*/
int setMultipleOutletPowerStates(in vector<int> outletNumbers,
in Outlet.PowerState state,
in boolean respectSequence);
/**
* Power-cycle all outlets.
*
* @return 0 if OK
* @return 5 if relay control is disabled in the PDU settings
*/
int cycleAllOutletPowerStates();
/**
* Power-cycle multiple outlets.
*
* @param outletNumbers List of outlet numbers (0-based)
* @param respectSequence \c true to switch in defined sequence order
*
* @return 0 if OK
* @return 3 if any of the selected outlets is disabled
* @return 5 if relay control is disabled in the PDU settings
*/
int cycleMultipleOutletPowerStates(in vector<int> outletNumbers,
in boolean respectSequence);
/**
* Retrieve PDU statistics.
*
* @return PDU statistics
*/
Statistic getStatistic();
/**
* Retrieve the current outlet sequencing status.
*
* @return Sequencing status
*/
OutletSequenceState getOutletSequenceState();
/**
* Stop a currently running outlet sequence.
*/
void cancelOutletSequence();
};
}
#endif
hmi::InternalBeeper
Internal beeper interface.
Definition InternalBeeper.idl:15
pdumodel::Outlet
Outlet interface
Definition Outlet.idl:30
pdumodel::Outlet::PowerState
PowerState
Outlet power state.
Definition Outlet.idl:56
pdumodel::Pdu
Main PDU interface.
Definition Pdu.idl:29
pdumodel::Pdu::getSensors
Sensors getSensors()
Retrieve the PDU sensors.
pdumodel::Pdu::cycleMultipleOutletPowerStates
int cycleMultipleOutletPowerStates(in vector< int > outletNumbers, in boolean respectSequence)
Power-cycle multiple outlets.
pdumodel::Pdu::getBeeper
hmi::InternalBeeper getBeeper()
Get the built-in beeper, if there is any.
pdumodel::Pdu::leaveRS485ConfigMode
int leaveRS485ConfigMode()
Leave RS485 config mode.
pdumodel::Pdu::getControllers
vector< Controller > getControllers()
Get the list of sub controllers.
pdumodel::Pdu::getSensorLogger
sensors::Logger getSensorLogger()
Get the sensor logger.
pdumodel::Pdu::getInlets
vector< Inlet > getInlets()
Get the list of inlets.
pdumodel::Pdu::getPorts
vector< PortWithProperties > getPorts(in peripheral::PortType portType, in portsmodel.Port.DeviceTypeId devType)
Get all serial ports of this device using filters.
pdumodel::Pdu::isLoadSheddingActive
boolean isLoadSheddingActive()
Retrieve the current load shedding state.
pdumodel::Pdu::setAllOutletPowerStates
int setAllOutletPowerStates(in Outlet::PowerState pstate)
Switch all outlets.
pdumodel::Pdu::getSettings
Settings getSettings()
Retrieve the PDU settings.
pdumodel::Pdu::PduOrientation
PduOrientation
PDU orientations.
Definition Pdu.idl:34
pdumodel::Pdu::PO_BOTTOMFEED
@ PO_BOTTOMFEED
Bottom feed PDU orientation (reversible ETO, normal order)
Definition Pdu.idl:36
pdumodel::Pdu::PO_NONE
@ PO_NONE
No PDU orientation (non-reversible ETO, default)
Definition Pdu.idl:35
pdumodel::Pdu::getOverCurrentProtectors
vector< OverCurrentProtector > getOverCurrentProtectors()
Get the list of overcurrent protectors.
pdumodel::Pdu::enterRS485ConfigModeAndAssignSCBoardAddress
int enterRS485ConfigModeAndAssignSCBoardAddress(in int deviceId, in int addr)
Enter RS485 config mode and assign an address to a sub controller device with a given device ID.
pdumodel::Pdu::getFeaturePorts
vector< portsmodel::Port > getFeaturePorts()
Get all feature ports of this device.
pdumodel::Pdu::cancelOutletSequence
void cancelOutletSequence()
Stop a currently running outlet sequence.
pdumodel::Pdu::setMultipleOutletPowerStates
int setMultipleOutletPowerStates(in vector< int > outletNumbers, in Outlet::PowerState state, in boolean respectSequence)
Switch multiple outlets.
pdumodel::Pdu::getRemoteHubPorts
vector< portsmodel::Port > getRemoteHubPorts()
Get all remote hub ports of this device.
pdumodel::Pdu::StartupState
StartupState
Outlet power state on device startup
Definition Pdu.idl:75
pdumodel::Pdu::SS_ON
@ SS_ON
Outlet will be switched on
Definition Pdu.idl:76
pdumodel::Pdu::SS_OFF
@ SS_OFF
Outlet will be switched off
Definition Pdu.idl:77
pdumodel::Pdu::getOutlets
vector< Outlet > getOutlets()
Get the list of outlets.
pdumodel::Pdu::setSettings
int setSettings(in Settings settings)
Change the PDU settings.
pdumodel::Pdu::getPeripheralDeviceManager
peripheral::DeviceManager getPeripheralDeviceManager()
Get the peripheral device manager.
pdumodel::Pdu::getNameplate
Nameplate getNameplate()
Retrieve the PDU nameplate information.
pdumodel::Pdu::getOutletSequenceState
OutletSequenceState getOutletSequenceState()
Retrieve the current outlet sequencing status.
pdumodel::Pdu::getAlertedSensorManager
sensors::AlertedSensorManager getAlertedSensorManager()
Get the alerted sensor manager.
pdumodel::Pdu::enterRS485ConfigModeAndAssignCtrlBoardAddress
int enterRS485ConfigModeAndAssignCtrlBoardAddress(in int addr)
Enter RS485 config mode and assign an address to a relay board.
pdumodel::Pdu::setLoadSheddingActive
void setLoadSheddingActive(in boolean active)
Enable or disable load shedding.
pdumodel::Pdu::getSensorPorts
vector< portsmodel::Port > getSensorPorts()
Get all sensor ports of this device.
pdumodel::Pdu::cycleAllOutletPowerStates
int cycleAllOutletPowerStates()
Power-cycle all outlets.
pdumodel::Pdu::getStatistic
Statistic getStatistic()
Retrieve PDU statistics.
pdumodel::Pdu::getMetaData
MetaData getMetaData()
Retrieve the PDU metadata.
pdumodel::Pdu::getTransferSwitches
vector< TransferSwitch > getTransferSwitches()
Returns list of Transfer Switches.
peripheral::DeviceManager
Peripheral Device Manager.
Definition PeripheralDeviceManager.idl:22
portsmodel::Port
Port interface.
Definition Port.idl:19
portsmodel::Port::DeviceTypeId
DeviceTypeId
devices types that may be connected to port
Definition Port.idl:35
sensors::AlertedSensorManager
A global instance keeping track of sensors in alerted state.
Definition AlertedSensorManager.idl:15
sensors::Logger
Sensor logger interface.
Definition SensorLogger.idl:31
sensors::NumericSensor
A sensor with numeric readings.
Definition NumericSensor.idl:17
sensors::StateSensor
Sensor with discrete readings.
Definition StateSensor.idl:43
hmi
Human Machine Interface.
Definition ExternalBeeper.idl:14
idl
Basic IDL definitions.
Definition Event.idl:10
pdumodel
PDU Model.
Definition Circuit.idl:16
peripheral
Peripheral Devices.
Definition GatewaySensorManager.idl:17
portsmodel
Ports.
Definition Port.idl:16
sensors
Sensors Model.
Definition AccumulatingNumericSensor.idl:13
idl::Event
Common base for all events.
Definition Event.idl:13
pdumodel::Nameplate
Component nameplate information.
Definition Nameplate.idl:23
pdumodel::Pdu::LoadSheddingModeChangedEvent
Event: Load shedding mode was enabled or disabled.
Definition Pdu.idl:130
pdumodel::Pdu::LoadSheddingModeChangedEvent::enabled
boolean enabled
Whether load shedding mode is enabled after the change.
Definition Pdu.idl:131
pdumodel::Pdu::MetaData
PDU metadata.
Definition Pdu.idl:41
pdumodel::Pdu::MetaData::hasDCInlets
boolean hasDCInlets
true if at least one inlet is DC
Definition Pdu.idl:53
pdumodel::Pdu::MetaData::hasSwitchableOutlets
boolean hasSwitchableOutlets
true if at least one outlet is switchable
Definition Pdu.idl:47
pdumodel::Pdu::MetaData::hasMeteredOutlets
boolean hasMeteredOutlets
true if at least one outlet is metered
Definition Pdu.idl:48
pdumodel::Pdu::MetaData::isEnergyPulseSupported
boolean isEnergyPulseSupported
true if the PDU has one or more LED(s) capable of emitting pulses to measure consumed energy
Definition Pdu.idl:51
pdumodel::Pdu::MetaData::isInlineMeter
boolean isInlineMeter
true if all inlets have exactly one outlet
Definition Pdu.idl:50
pdumodel::Pdu::MetaData::hasLatchingOutletRelays
boolean hasLatchingOutletRelays
true if at least one outlet has a latching relay
Definition Pdu.idl:49
pdumodel::Pdu::MetaData::pduOrientation
PduOrientation pduOrientation
PDU orientation at boot.
Definition Pdu.idl:54
pdumodel::Pdu::MetaData::hwRevision
string hwRevision
Hardware revision.
Definition Pdu.idl:44
pdumodel::Pdu::MetaData::nameplate
Nameplate nameplate
Nameplate information
Definition Pdu.idl:42
pdumodel::Pdu::MetaData::fwRevision
string fwRevision
Firmware revision.
Definition Pdu.idl:45
pdumodel::Pdu::MetaData::macAddress
string macAddress
MAC address.
Definition Pdu.idl:46
pdumodel::Pdu::MetaData::ctrlBoardSerial
string ctrlBoardSerial
Main controller serial number.
Definition Pdu.idl:43
pdumodel::Pdu::OutletSequenceStateChangedEvent
Event: Outlet sequencing state has changed.
Definition Pdu.idl:135
pdumodel::Pdu::OutletSequenceStateChangedEvent::newState
OutletSequenceState newState
New sequencing state.
Definition Pdu.idl:136
pdumodel::Pdu::OutletSequenceState
Outlet sequencing status
Definition Pdu.idl:107
pdumodel::Pdu::OutletSequenceState::cancelableOutletsRemaining
int cancelableOutletsRemaining
Number of outlets remaining whose switch operation can be canceled (non-cancelable operations won't b...
Definition Pdu.idl:112
pdumodel::Pdu::OutletSequenceState::timeUntilNextSwitch
int timeUntilNextSwitch
Time in milliseconds before the next outlet is switched.
Definition Pdu.idl:110
pdumodel::Pdu::OutletSequenceState::outletsRemaining
int outletsRemaining
Number of outlets remaining in the sequence.
Definition Pdu.idl:111
pdumodel::Pdu::OutletSequenceState::sequenceRunning
boolean sequenceRunning
true if an outlet sequence is currently running
Definition Pdu.idl:108
pdumodel::Pdu::OutletSequenceState::nextOutletToSwitch
int nextOutletToSwitch
Number (0-based) of the next outlet in the sequence.
Definition Pdu.idl:109
pdumodel::Pdu::PortAppearedEvent
Event: Serial port has appeared.
Definition Pdu.idl:140
pdumodel::Pdu::PortAppearedEvent::port
PortWithProperties port
port with id and actual properties
Definition Pdu.idl:141
pdumodel::Pdu::PortDisappearedEvent
Event: Serial port has disappeared.
Definition Pdu.idl:145
pdumodel::Pdu::PortDisappearedEvent::portId
string portId
this id corresponds to port id used in PortAppearedEvent and getPorts()
Definition Pdu.idl:146
pdumodel::Pdu::PortWithProperties
Port with id and properties, used in PortAppearedEvent and getPorts()
Definition Pdu.idl:117
pdumodel::Pdu::PortWithProperties::id
string id
this id corresponds to portID in PortDisappearedEvent
Definition Pdu.idl:118
pdumodel::Pdu::PortWithProperties::port
portsmodel::Port port
the appeared port
Definition Pdu.idl:119
pdumodel::Pdu::PortWithProperties::properties
portsmodel::Port Properties properties
actual properties of appeared port
Definition Pdu.idl:120
pdumodel::Pdu::Sensors
PDU sensors.
Definition Pdu.idl:58
pdumodel::Pdu::Sensors::apparentEnergy
sensors::NumericSensor apparentEnergy
Active energy sensor.
Definition Pdu.idl:63
pdumodel::Pdu::Sensors::powerSupplyStatus
vector< sensors::StateSensor > powerSupplyStatus
Power supply fault status.
Definition Pdu.idl:59
pdumodel::Pdu::Sensors::apparentPower
sensors::NumericSensor apparentPower
Active power sensor.
Definition Pdu.idl:61
pdumodel::Pdu::Sensors::activeEnergy
sensors::NumericSensor activeEnergy
Active energy sensor.
Definition Pdu.idl:62
pdumodel::Pdu::Sensors::activePower
sensors::NumericSensor activePower
Active power sensor.
Definition Pdu.idl:60
pdumodel::Pdu::SettingsChangedEvent
Event: PDU settings have been changed.
Definition Pdu.idl:124
pdumodel::Pdu::SettingsChangedEvent::oldSettings
Settings oldSettings
Settings before change.
Definition Pdu.idl:125
pdumodel::Pdu::SettingsChangedEvent::newSettings
Settings newSettings
Settings after change.
Definition Pdu.idl:126
pdumodel::Pdu::Settings
PDU settings.
Definition Pdu.idl:83
pdumodel::Pdu::Settings::name
string name
User-defined name.
Definition Pdu.idl:84
pdumodel::Pdu::Settings::outletPowerStateSequence
vector< int > outletPowerStateSequence
The order in which multiple outlets should be switched.
Definition Pdu.idl:88
pdumodel::Pdu::Settings::cycleDelay
int cycleDelay
Default power-cycle interval in seconds; can be overriden per outlet.
Definition Pdu.idl:86
pdumodel::Pdu::Settings::inRushGuardDelay
int inRushGuardDelay
Minimum delay in milliseconds between switching two outlets on.
Definition Pdu.idl:87
pdumodel::Pdu::Settings::powerOnDelay
int powerOnDelay
Delay in seconds before restoring outlet states after power is applied to outlets.
Definition Pdu.idl:95
pdumodel::Pdu::Settings::inhibitRelayControl
boolean inhibitRelayControl
If true, all relay control methods are disabled.
Definition Pdu.idl:103
pdumodel::Pdu::Settings::suspendTripCauseOutlets
boolean suspendTripCauseOutlets
If true, outlets suspected to have caused an OCP to trip are automatically suspended (turned off)
Definition Pdu.idl:101
pdumodel::Pdu::Settings::energyPulsesPerKWh
int energyPulsesPerKWh
Ratio between LED pulses and energy consumption.
Definition Pdu.idl:98
pdumodel::Pdu::Settings::energyPulseEnabled
boolean energyPulseEnabled
Enables energy consumption counting using the PDU's LED(s)
Definition Pdu.idl:97
pdumodel::Pdu::Settings::latchingRelays
boolean latchingRelays
If true, relays keep their state during power-cycling.
Definition Pdu.idl:96
pdumodel::Pdu::Settings::startupState
StartupState startupState
Default outlet state after applying power to outlets; can be overriden per outlet.
Definition Pdu.idl:85
pdumodel::Pdu::Settings::demandUpdateInterval
int demandUpdateInterval
BCM2 only: Update interval in seconds for demand sensors.
Definition Pdu.idl:99
pdumodel::Pdu::Settings::demandAveragingIntervals
int demandAveragingIntervals
BCM2 only: Average demand sensors over this many update intervals.
Definition Pdu.idl:100
pdumodel::Pdu::Statistic
PDU statistics.
Definition Pdu.idl:67
pdumodel::Pdu::Statistic::cbStats
vector< CircuitBreakerStatistic > cbStats
Circuit breaker statistics.
Definition Pdu.idl:68
pdumodel::Pdu::Statistic::ctrlStats
vector< CtrlStatistic > ctrlStats
Sub controller statistics.
Definition Pdu.idl:69
pdumodel::Pdu::Statistic::peripheralStats
peripheral::DeviceManager Statistics peripheralStats
Peripheral device statistics.
Definition Pdu.idl:71
pdumodel::Pdu::Statistic::outletStats
vector< OutletStatistic > outletStats
Outlet statistics
Definition Pdu.idl:70
peripheral::DeviceManager::Statistics
Peripheral device statistics.
Definition PeripheralDeviceManager.idl:125
portsmodel::Port::Properties
Port properties.
Definition Port.idl:57