Loading...
Searching...
No Matches
PeripheralDevicePackage.idl
/* SPDX-License-Identifier: BSD-3-Clause */
/*
* Copyright 2013 Raritan Inc. All rights reserved.
*/
#ifndef __PERIPHERAL_DEVICE_PACKAGE_IDL__
#define __PERIPHERAL_DEVICE_PACKAGE_IDL__
#include <PeripheralDeviceSlot.idl>
/** Peripheral Devices */
module peripheral {
/** Peripheral device package information */
structure PackageInfo {
enumeration State {
NORMAL, ///< Device package is in normal operation
FW_UPDATE, ///< Device package's firmware is being updated
INTERNAL_ERROR, ///< Device package's internal error flag is set
CONFIG_ERROR ///< Device package's internal configuration is invalid
};
structure HardwareInfo {
string serial; ///< serial number
string packageClass; ///< serial number prefix for current packages
string model; ///< like 'DPX-CC2' or 'DX-D2C6'
int minDowngradeVersion; ///< minimum downgrade version (or -1)
string revision; ///< hardware revision
string address; ///< ROM code for 1-wire devices
};
structure FirmwareInfo {
structure Version {
int majorNumber; ///< firmware version encoded as 'major << 4 | minor'
int minorNumber; ///< depreceated, was minor firmware version
int bootloaderVersion; ///< device bootloader version
};
time compileDate; ///< Date of firmware compilation (Deprecated: always returns 0)
Version version; ///< Firmware version (0.0 if not applicable)
time updateDate; ///< Date of device firmware update (Deprecated: always returns 0)
string firmwareName; ///< firmware file name
};
State state; ///< The peripheral device package operational state
vector<PosElement> position; ///< Position within 1-wire topo
HardwareInfo hwInfo; ///< Device package hardware specific information
FirmwareInfo fwInfo; ///< Device package firmware specific information
};
interface Package {
PackageInfo getPackageInfo();
};
interface DoorHandleControllerPackage extends Package {
constant int SUCCESS = 0;
constant int ERR_NOT_SUPPORTED = 1;
constant int ERR_OPERATION_FAILED = 2;
vector<string> getSupportedHandleTypes();
vector<string> getSupportedExternalDeviceTypes();
string getHandleType(in int channel);
string getExternalDeviceType(in int channel);
int setHandleType(in int channel, in string handleType);
int setExternalDeviceType(in int channel, in string type);
/** Event: A handle was opened without being electronically unlocked */
valueobject MechanicallyUnlockedEvent extends idl.Event {
PackageInfo packageInfo; ///< package info
int channel; ///< channel number (zero-based)
string doorStateName; ///< name of the door state sensor (if assigned)
string doorHandleName; ///< name of the door handle sensor (if assigned)
string doorLockName; ///< name of the door lock actuator (if assigned)
};
/** Event: A door was opened without unlocking the door handle */
valueobject DoorForcedOpenEvent extends idl.Event {
PackageInfo packageInfo; ///< package info
int channel; ///< channel number (zero-based)
string doorStateName; ///< name of the door state sensor (if assigned)
string doorHandleName; ///< name of the door handle sensor (if assigned)
string doorLockName; ///< name of the door lock actuator (if assigned)
};
};
interface BatteryPoweredDevicePackage extends Package {
/**
* This method outputs the given voltage value or zero if no value is available.
* @return 0 or the voltage value in V
*/
double getBatteryVoltage();
/** Event: the voltage of this device changed */
valueobject VoltageChangedEvent extends idl.Event {
double oldVoltage; ///< old voltage
double newVoltage; ///< new voltage
};
};
}
#endif /* !__PERIPHERAL_DEVICE_PACKAGE_IDL__ */
peripheral::BatteryPoweredDevicePackage
Definition PeripheralDevicePackage.idl:88
peripheral::BatteryPoweredDevicePackage::getBatteryVoltage
double getBatteryVoltage()
This method outputs the given voltage value or zero if no value is available.
peripheral::DoorHandleControllerPackage
Definition PeripheralDevicePackage.idl:54
peripheral::Package
Definition PeripheralDevicePackage.idl:50
idl
Basic IDL definitions.
Definition Event.idl:10
peripheral
Peripheral Devices.
Definition GatewaySensorManager.idl:17
idl::Event
Common base for all events.
Definition Event.idl:13
peripheral::BatteryPoweredDevicePackage::VoltageChangedEvent
Event: the voltage of this device changed.
Definition PeripheralDevicePackage.idl:97
peripheral::BatteryPoweredDevicePackage::VoltageChangedEvent::oldVoltage
double oldVoltage
old voltage
Definition PeripheralDevicePackage.idl:98
peripheral::BatteryPoweredDevicePackage::VoltageChangedEvent::newVoltage
double newVoltage
new voltage
Definition PeripheralDevicePackage.idl:99
peripheral::DoorHandleControllerPackage::DoorForcedOpenEvent
Event: A door was opened without unlocking the door handle.
Definition PeripheralDevicePackage.idl:79
peripheral::DoorHandleControllerPackage::DoorForcedOpenEvent::packageInfo
PackageInfo packageInfo
package info
Definition PeripheralDevicePackage.idl:80
peripheral::DoorHandleControllerPackage::DoorForcedOpenEvent::channel
int channel
channel number (zero-based)
Definition PeripheralDevicePackage.idl:81
peripheral::DoorHandleControllerPackage::DoorForcedOpenEvent::doorLockName
string doorLockName
name of the door lock actuator (if assigned)
Definition PeripheralDevicePackage.idl:84
peripheral::DoorHandleControllerPackage::DoorForcedOpenEvent::doorStateName
string doorStateName
name of the door state sensor (if assigned)
Definition PeripheralDevicePackage.idl:82
peripheral::DoorHandleControllerPackage::DoorForcedOpenEvent::doorHandleName
string doorHandleName
name of the door handle sensor (if assigned)
Definition PeripheralDevicePackage.idl:83
peripheral::DoorHandleControllerPackage::MechanicallyUnlockedEvent
Event: A handle was opened without being electronically unlocked.
Definition PeripheralDevicePackage.idl:70
peripheral::DoorHandleControllerPackage::MechanicallyUnlockedEvent::doorLockName
string doorLockName
name of the door lock actuator (if assigned)
Definition PeripheralDevicePackage.idl:75
peripheral::DoorHandleControllerPackage::MechanicallyUnlockedEvent::channel
int channel
channel number (zero-based)
Definition PeripheralDevicePackage.idl:72
peripheral::DoorHandleControllerPackage::MechanicallyUnlockedEvent::doorStateName
string doorStateName
name of the door state sensor (if assigned)
Definition PeripheralDevicePackage.idl:73
peripheral::DoorHandleControllerPackage::MechanicallyUnlockedEvent::packageInfo
PackageInfo packageInfo
package info
Definition PeripheralDevicePackage.idl:71
peripheral::DoorHandleControllerPackage::MechanicallyUnlockedEvent::doorHandleName
string doorHandleName
name of the door handle sensor (if assigned)
Definition PeripheralDevicePackage.idl:74
peripheral::PackageInfo::FirmwareInfo::Version
Definition PeripheralDevicePackage.idl:32
peripheral::PackageInfo::FirmwareInfo::Version::minorNumber
int minorNumber
depreceated, was minor firmware version
Definition PeripheralDevicePackage.idl:34
peripheral::PackageInfo::FirmwareInfo::Version::bootloaderVersion
int bootloaderVersion
device bootloader version
Definition PeripheralDevicePackage.idl:35
peripheral::PackageInfo::FirmwareInfo::Version::majorNumber
int majorNumber
firmware version encoded as 'major << 4 | minor'
Definition PeripheralDevicePackage.idl:33
peripheral::PackageInfo::FirmwareInfo
Definition PeripheralDevicePackage.idl:31
peripheral::PackageInfo::FirmwareInfo::updateDate
time updateDate
Date of device firmware update (Deprecated: always returns 0)
Definition PeripheralDevicePackage.idl:40
peripheral::PackageInfo::FirmwareInfo::version
Version version
Firmware version (0.0 if not applicable)
Definition PeripheralDevicePackage.idl:39
peripheral::PackageInfo::FirmwareInfo::firmwareName
string firmwareName
firmware file name
Definition PeripheralDevicePackage.idl:41
peripheral::PackageInfo::FirmwareInfo::compileDate
time compileDate
Date of firmware compilation (Deprecated: always returns 0)
Definition PeripheralDevicePackage.idl:38
peripheral::PackageInfo::HardwareInfo
Definition PeripheralDevicePackage.idl:22
peripheral::PackageInfo::HardwareInfo::serial
string serial
serial number
Definition PeripheralDevicePackage.idl:23
peripheral::PackageInfo::HardwareInfo::minDowngradeVersion
int minDowngradeVersion
minimum downgrade version (or -1)
Definition PeripheralDevicePackage.idl:26
peripheral::PackageInfo::HardwareInfo::model
string model
like 'DPX-CC2' or 'DX-D2C6'
Definition PeripheralDevicePackage.idl:25
peripheral::PackageInfo::HardwareInfo::revision
string revision
hardware revision
Definition PeripheralDevicePackage.idl:27
peripheral::PackageInfo::HardwareInfo::packageClass
string packageClass
serial number prefix for current packages
Definition PeripheralDevicePackage.idl:24
peripheral::PackageInfo::HardwareInfo::address
string address
ROM code for 1-wire devices.
Definition PeripheralDevicePackage.idl:28
peripheral::PackageInfo
Peripheral device package information.
Definition PeripheralDevicePackage.idl:14
peripheral::PackageInfo::State
State
Definition PeripheralDevicePackage.idl:15
peripheral::PackageInfo::FW_UPDATE
@ FW_UPDATE
Device package's firmware is being updated.
Definition PeripheralDevicePackage.idl:17
peripheral::PackageInfo::INTERNAL_ERROR
@ INTERNAL_ERROR
Device package's internal error flag is set.
Definition PeripheralDevicePackage.idl:18
peripheral::PackageInfo::NORMAL
@ NORMAL
Device package is in normal operation.
Definition PeripheralDevicePackage.idl:16
peripheral::PackageInfo::position
vector< PosElement > position
Position within 1-wire topo.
Definition PeripheralDevicePackage.idl:45
peripheral::PackageInfo::hwInfo
HardwareInfo hwInfo
Device package hardware specific information.
Definition PeripheralDevicePackage.idl:46
peripheral::PackageInfo::fwInfo
FirmwareInfo fwInfo
Device package firmware specific information.
Definition PeripheralDevicePackage.idl:47
peripheral::PackageInfo::state
State state
The peripheral device package operational state.
Definition PeripheralDevicePackage.idl:44