Raritan PX2/PX3 JSON-RPC API
Emd.idl
1 /* SPDX-License-Identifier: BSD-3-Clause */
2 /*
3  * Copyright 2010 Raritan Inc. All rights reserved.
4  */
5 
6 #ifndef __EMDMODEL_EMD_IDL__
7 #define __EMDMODEL_EMD_IDL__
8 
9 #include <InternalBeeper.idl>
10 #include <Nameplate.idl>
11 #include <PeripheralDeviceManager.idl>
12 #include <Port.idl>
13 #include <SensorLogger.idl>
14 
15 /**
16  * EMD Model interfaces
17  */
18 
19 module emdmodel {
20 
21  interface Emd_2_2_8 {
22 
23  constant int ERR_INVALID_PARAMS = 1;
24 
25  /** EMD metadata */
26  structure MetaData {
27  pdumodel.Nameplate_2_0_0 nameplate; ///< %Nameplate information
28  string ctrlBoardSerial; ///< Main controller serial number
29  string hwRevision; ///< Hardware revision
30  string fwRevision; ///< Firmware revision
31  string macAddress; ///< MAC address
32  };
33 
34  /** EMD settings */
35  structure Settings {
36  string name; ///< User-defined name
37  };
38 
39  /** Event: EMD settings have changed */
40  valueobject SettingsChangedEvent extends event.UserEvent {
41  Settings oldSettings; ///< Settings before change
42  Settings newSettings; ///< Settings after change
43  };
44 
45  /**
46  * Retrieve the EMD metadata.
47  *
48  * @return EMD metadata
49  */
50  MetaData getMetaData();
51 
52  /**
53  * Get the peripheral device manager.
54  *
55  * @return Peripheral device manager
56  */
57  peripheral.DeviceManager_3_0_2 getPeripheralDeviceManager();
58 
59  /**
60  * Get the built-in beeper, if there is any.
61  *
62  * @return Beeper interface
63  */
64  hmi.InternalBeeper_2_0_1 getBeeper();
65 
66  /**
67  * Retrieve the EMD settings.
68  *
69  * @return EMD settings
70  */
71  Settings getSettings();
72 
73  /**
74  * Change the EMD settings.
75  *
76  * @param settings New EMD settings
77  *
78  * @return 0 if OK
79  * @return ERR_INVALID_PARAMS if any parameters are invalid
80  */
81  int setSettings(in Settings settings);
82 
83  /**
84  * Get all feature ports of this device
85  *
86  * This returns an entry for all feature ports, no matter whether
87  * something is connected or not.
88  * A device with n feature ports will return n entries here.
89  *
90  * @return List of all Feature Ports
91  */
92  vector<portsmodel.Port_2_0_2> getFeaturePorts();
93 
94  /**
95  * Get all auxiliary ports of this device
96  *
97  * This returns an entry for all auxiliary ports, no matter whether
98  * something is connected or not.
99  * A device with n auxiliary ports will return n entries here.
100  *
101  * @return List of all Auxiliary Ports
102  */
103  vector<portsmodel.Port_2_0_2> getAuxiliaryPorts();
104 
105  /**
106  * Get the sensor logger.
107  *
108  * @return Sensor logger reference
109  */
110  sensors.Logger_2_1_6 getSensorLogger();
111  };
112 }
113 
114 #endif /* !__EMDMODEL_EMD_IDL__ */
string macAddress
MAC address.
Definition: Emd.idl:31
string name
User-defined name.
Definition: Emd.idl:36
EMD metadata.
Definition: Emd.idl:26
string fwRevision
Firmware revision.
Definition: Emd.idl:30
Definition: Emd.idl:21
pdumodel::Nameplate_2_0_0 nameplate
Nameplate information
Definition: Emd.idl:27
Peripheral Devices.
Definition: PeripheralDeviceManager.idl:17
EMD Model interfaces.
Definition: Emd.idl:19
string ctrlBoardSerial
Main controller serial number.
Definition: Emd.idl:28
EMD settings.
Definition: Emd.idl:35
Component nameplate information.
Definition: Nameplate.idl:23
Ports.
Definition: Port.idl:15
Human Machine Interface.
Definition: ExternalBeeper.idl:14
Settings newSettings
Settings after change.
Definition: Emd.idl:42
Internal beeper interface.
Definition: InternalBeeper.idl:15
Sensors Model.
Definition: AccumulatingNumericSensor.idl:13
PDU Model.
Definition: Ade.idl:12
Sensor logger interface.
Definition: SensorLogger.idl:31
Port interface.
Definition: Port.idl:18
string hwRevision
Hardware revision.
Definition: Emd.idl:29
Peripheral Device Manager.
Definition: PeripheralDeviceManager.idl:20