Legrand / Raritan / Server Technology Xerus™ JSON-RPC API

Loading...
Searching...
No Matches
SensorHub.idl
1/* SPDX-License-Identifier: BSD-3-Clause */
2/*
3 * Copyright 2020 Raritan Inc. All rights reserved.
4 */
5
6#ifndef __PERIPHERAL_SENSORHUB_IDL__
7#define __PERIPHERAL_SENSORHUB_IDL__
8
9#include <UserEvent.idl>
10#include <PortFuse.idl>
11#include <PeripheralDevicePackage.idl>
12#include <PeripheralDeviceSlot.idl>
13
14/**
15 * Peripheral Devices
16 */
17module peripheral {
18
19 /** Sensor Hub interface */
20 interface SensorHub {
21
22 /** peripheral device hw configuration */
23 enumeration UpstreamType {
24 BUILTIN, ///< a built in hardware
25 ENV_HUB, ///< a not galvanically isolated environmental hub with reduced fuse capability
26 REMOTE_HUB ///< a galvanically isolated remote hub with full fuse capability
27 };
28
29 /**
30 * Information for a single hub Port
31 */
32 structure HubPortInfo {
33 string hubPort; ///< Sensor hub port a peripheral device is connected to
34 portsmodel.PortFuse fuse; ///< Reference to the port fuse
35 };
36
37 /**
38 * Static (type, version) information for a %SensorHub.
39 */
40 structure DeviceInfo {
41 string serial; ///< Serial number of device
42 string model; ///< Model name of device
43 UpstreamType upstreamType; ///< Hardware type (indicated a certain upstream type)
44 PosElement position; ///< Peripheral device position element, list forms position
45 int protocolVersion; ///< Protocol version the hub is supporting
46 int bootVersion; ///< Bootcode software version
47 int appVersion; ///< Application code software version
48 vector<HubPortInfo> hubPortInfos; ///< Information about contained hub ports
49 };
50
51 /**
52 * Get static (hardware and firmware) information
53 *
54 * @return Result: hardware and firmware information
55 */
56 DeviceInfo getDeviceInfo();
57
58 /**
59 * Retrieve hub package information
60 *
61 * @return package information
62 */
63 PackageInfo getPackageInfo();
64 };
65}
66
67#endif /* __PERIPHERAL_SENSORHUB_IDL__ */
peripheral::SensorHub
Sensor Hub interface.
Definition SensorHub.idl:20
peripheral::SensorHub::UpstreamType
UpstreamType
peripheral device hw configuration
Definition SensorHub.idl:23
peripheral::SensorHub::ENV_HUB
@ ENV_HUB
a not galvanically isolated environmental hub with reduced fuse capability
Definition SensorHub.idl:25
peripheral::SensorHub::BUILTIN
@ BUILTIN
a built in hardware
Definition SensorHub.idl:24
peripheral::SensorHub::REMOTE_HUB
@ REMOTE_HUB
a galvanically isolated remote hub with full fuse capability
Definition SensorHub.idl:26
peripheral::SensorHub::getPackageInfo
PackageInfo getPackageInfo()
Retrieve hub package information.
peripheral::SensorHub::getDeviceInfo
DeviceInfo getDeviceInfo()
Get static (hardware and firmware) information.
portsmodel::PortFuse
Interface describing a controllable fuse for a device port.
Definition PortFuse.idl:17
peripheral
Peripheral Devices.
Definition GatewaySensorManager.idl:17
portsmodel
Ports.
Definition Port.idl:16
serial
Serial Ports.
Definition AnalogModem.idl:12
peripheral::PackageInfo
Peripheral device package information.
Definition PeripheralDevicePackage.idl:14
peripheral::PosElement
peripheral device position element, list forms position
Definition PosElement.idl:31
peripheral::SensorHub::DeviceInfo
Static (type, version) information for a SensorHub.
Definition SensorHub.idl:40
peripheral::SensorHub::DeviceInfo::bootVersion
int bootVersion
Bootcode software version.
Definition SensorHub.idl:46
peripheral::SensorHub::DeviceInfo::upstreamType
UpstreamType upstreamType
Hardware type (indicated a certain upstream type)
Definition SensorHub.idl:43
peripheral::SensorHub::DeviceInfo::protocolVersion
int protocolVersion
Protocol version the hub is supporting.
Definition SensorHub.idl:45
peripheral::SensorHub::DeviceInfo::position
PosElement position
Peripheral device position element, list forms position.
Definition SensorHub.idl:44
peripheral::SensorHub::DeviceInfo::hubPortInfos
vector< HubPortInfo > hubPortInfos
Information about contained hub ports.
Definition SensorHub.idl:48
peripheral::SensorHub::DeviceInfo::model
string model
Model name of device.
Definition SensorHub.idl:42
peripheral::SensorHub::DeviceInfo::appVersion
int appVersion
Application code software version.
Definition SensorHub.idl:47
peripheral::SensorHub::HubPortInfo
Information for a single hub Port.
Definition SensorHub.idl:32
peripheral::SensorHub::HubPortInfo::hubPort
string hubPort
Sensor hub port a peripheral device is connected to.
Definition SensorHub.idl:33
peripheral::SensorHub::HubPortInfo::fuse
portsmodel::PortFuse fuse
Reference to the port fuse.
Definition SensorHub.idl:34