Raritan / Server Technology Xerus™ PDU JSON-RPC API
PeripheralDevicePackage.idl
1 /* SPDX-License-Identifier: BSD-3-Clause */
2 /*
3  * Copyright 2013 Raritan Inc. All rights reserved.
4  */
5 
6 #ifndef __PERIPHERAL_DEVICE_PACKAGE_IDL__
7 #define __PERIPHERAL_DEVICE_PACKAGE_IDL__
8 
9 #include <PeripheralDeviceSlot.idl>
10 
11 /** Peripheral Devices */
12 module peripheral {
13  /** Peripheral device package information */
14  structure PackageInfo {
15  enumeration State {
16  NORMAL, ///< Device package is in normal operation
17  FW_UPDATE, ///< Device package's firmware is being updated
18  INTERNAL_ERROR, ///< Device package's internal error flag is set
19  CONFIG_ERROR ///< Device package's internal configuration is invalid
20  };
21 
22  structure HardwareInfo {
23  string serial; ///< serial number
24  string packageClass; ///< serial number prefix for current packages
25  string model; ///< like 'DPX-CC2' or 'DX-D2C6'
26  int minDowngradeVersion; ///< minimum downgrade version (or -1)
27  string revision; ///< hardware revision
28  };
29 
30  structure FirmwareInfo {
31  structure Version {
32  int majorNumber; ///< firmware version encoded as 'major << 4 | minor'
33  int minorNumber; ///< depreceated, was minor firmware version
34  int bootloaderVersion; ///< device bootloader version
35  };
36 
37  time compileDate; ///< Date of firmware compilation (Deprecated: always returns 0)
38  Version version; ///< Firmware version (0.0 if not applicable)
39  time updateDate; ///< Date of device firmware update (Deprecated: always returns 0)
40  };
41 
42  State state; ///< The peripheral device package operational state
43  vector<PosElement> position; ///< Position within 1-wire topo
44  HardwareInfo hwInfo; ///< Device package hardware specific information
45  FirmwareInfo fwInfo; ///< Device package firmware specific information
46  };
47 
48  interface Package {
49  PackageInfo getPackageInfo();
50  };
51 
53 
54  constant int SUCCESS = 0;
55  constant int ERR_NOT_SUPPORTED = 1;
56  constant int ERR_OPERATION_FAILED = 2;
57 
58  vector<string> getSupportedHandleTypes();
59  vector<string> getSupportedExternalDeviceTypes();
60 
61  string getHandleType(in int channel);
62  string getExternalDeviceType(in int channel);
63 
64  int setHandleType(in int channel, in string handleType);
65  int setExternalDeviceType(in int channel, in string type);
66 
67  };
68 }
69 
70 #endif /* !__PERIPHERAL_DEVICE_PACKAGE_IDL__ */
Definition: PeripheralDevicePackage.idl:52
Definition: PeripheralDevicePackage.idl:48
Peripheral Devices.
Definition: GatewaySensorManager.idl:17
Definition: PeripheralDevicePackage.idl:31
int minorNumber
depreceated, was minor firmware version
Definition: PeripheralDevicePackage.idl:33
int bootloaderVersion
device bootloader version
Definition: PeripheralDevicePackage.idl:34
int majorNumber
firmware version encoded as 'major << 4 | minor'
Definition: PeripheralDevicePackage.idl:32
Definition: PeripheralDevicePackage.idl:30
time updateDate
Date of device firmware update (Deprecated: always returns 0)
Definition: PeripheralDevicePackage.idl:39
Version version
Firmware version (0.0 if not applicable)
Definition: PeripheralDevicePackage.idl:38
time compileDate
Date of firmware compilation (Deprecated: always returns 0)
Definition: PeripheralDevicePackage.idl:37
Definition: PeripheralDevicePackage.idl:22
string serial
serial number
Definition: PeripheralDevicePackage.idl:23
int minDowngradeVersion
minimum downgrade version (or -1)
Definition: PeripheralDevicePackage.idl:26
string model
like 'DPX-CC2' or 'DX-D2C6'
Definition: PeripheralDevicePackage.idl:25
string revision
hardware revision
Definition: PeripheralDevicePackage.idl:27
string packageClass
serial number prefix for current packages
Definition: PeripheralDevicePackage.idl:24
Peripheral device package information.
Definition: PeripheralDevicePackage.idl:14
State
Definition: PeripheralDevicePackage.idl:15
@ FW_UPDATE
Device package's firmware is being updated.
Definition: PeripheralDevicePackage.idl:17
@ INTERNAL_ERROR
Device package's internal error flag is set.
Definition: PeripheralDevicePackage.idl:18
@ NORMAL
Device package is in normal operation.
Definition: PeripheralDevicePackage.idl:16
vector< PosElement > position
Position within 1-wire topo.
Definition: PeripheralDevicePackage.idl:43
HardwareInfo hwInfo
Device package hardware specific information.
Definition: PeripheralDevicePackage.idl:44
FirmwareInfo fwInfo
Device package firmware specific information.
Definition: PeripheralDevicePackage.idl:45
State state
The peripheral device package operational state.
Definition: PeripheralDevicePackage.idl:42