529 lines
24 KiB
JavaScript
529 lines
24 KiB
JavaScript
/*
|
|
* Copyright 2022, Digi International Inc.
|
|
*
|
|
* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
*
|
|
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
|
* WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
|
* MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
|
* ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
|
* WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
|
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
|
|
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|
*/
|
|
|
|
// Constants.
|
|
const TEMPLATE_COMPONENT_DATA = "" +
|
|
"{" +
|
|
" \"" + ID_VISIBLE + "\" : {0}," +
|
|
" \"" + ID_HAS_PANEL + "\" : {1}," +
|
|
" \"" + ID_HAS_ARROW + "\" : {2}," +
|
|
" \"" + ID_PANEL_ALWAYS_VISIBLE + "\" : {3}," +
|
|
" \"" + ID_PANEL_ORIENTATION + "\" : \"{4}\"," +
|
|
" \"" + ID_PANEL_HORIZONTAL_MARGIN + "\" : {5}," +
|
|
" \"" + ID_PANEL_VERTICAL_MARGIN + "\" : {6}," +
|
|
" \"" + ID_ARROW_MARGIN + "\" : {7}," +
|
|
" \"" + ID_AREA_TOP_MARGIN + "\" : {8}," +
|
|
" \"" + ID_AREA_LEFT_MARGIN + "\" : {9}," +
|
|
" \"" + ID_AREA_WIDTH + "\" : {10}," +
|
|
" \"" + ID_AREA_HEIGHT + "\" : {11}" +
|
|
"}"
|
|
|
|
// Class that represents a ConnectCore device.
|
|
class ConnectCoreDevice {
|
|
|
|
// Variables
|
|
// Board image.
|
|
BOARD_IMAGE;
|
|
BOARD_IMAGE_SCALE;
|
|
|
|
// CPU panel.
|
|
CPU_COMPONENT_VISIBLE = false;
|
|
CPU_COMPONENT_HAS_PANEL = false;
|
|
CPU_COMPONENT_HAS_ARROW = false;
|
|
CPU_COMPONENT_PANEL_ALWAYS_VISIBLE = false;
|
|
CPU_COMPONENT_PANEL_ORIENTATION = VALUE_TOP;
|
|
CPU_COMPONENT_PANEL_HORIZONTAL_PERCENT = 0;
|
|
CPU_COMPONENT_PANEL_VERTICAL_PERCENT = 0;
|
|
CPU_COMPONENT_ARROW_PERCENT = 0;
|
|
CPU_COMPONENT_AREA_TOP_PERCENT = 0;
|
|
CPU_COMPONENT_AREA_LEFT_PERCENT = 0;
|
|
CPU_COMPONENT_AREA_WIDTH_PERCENT = 0;
|
|
CPU_COMPONENT_AREA_HEIGHT_PERCENT = 0;
|
|
|
|
// Memory panel.
|
|
MEMORY_COMPONENT_VISIBLE = false;
|
|
MEMORY_COMPONENT_HAS_PANEL = false;
|
|
MEMORY_COMPONENT_HAS_ARROW = false;
|
|
MEMORY_COMPONENT_PANEL_ALWAYS_VISIBLE = false;
|
|
MEMORY_COMPONENT_PANEL_ORIENTATION = VALUE_TOP;
|
|
MEMORY_COMPONENT_PANEL_HORIZONTAL_PERCENT = 0;
|
|
MEMORY_COMPONENT_PANEL_VERTICAL_PERCENT = 0;
|
|
MEMORY_COMPONENT_ARROW_PERCENT = 0;
|
|
MEMORY_COMPONENT_AREA_TOP_PERCENT = 0;
|
|
MEMORY_COMPONENT_AREA_LEFT_PERCENT = 0;
|
|
MEMORY_COMPONENT_AREA_WIDTH_PERCENT = 0;
|
|
MEMORY_COMPONENT_AREA_HEIGHT_PERCENT = 0;
|
|
|
|
// WiFi/BT panel.
|
|
WIFI_BT_COMPONENT_VISIBLE = false;
|
|
WIFI_BT_COMPONENT_HAS_PANEL = false;
|
|
WIFI_BT_COMPONENT_HAS_ARROW = false;
|
|
WIFI_BT_COMPONENT_PANEL_ALWAYS_VISIBLE = false;
|
|
WIFI_BT_COMPONENT_PANEL_ORIENTATION = VALUE_TOP;
|
|
WIFI_BT_COMPONENT_PANEL_HORIZONTAL_PERCENT = 0;
|
|
WIFI_BT_COMPONENT_PANEL_VERTICAL_PERCENT = 0;
|
|
WIFI_BT_COMPONENT_ARROW_PERCENT = 0;
|
|
WIFI_BT_COMPONENT_AREA_TOP_PERCENT = 0;
|
|
WIFI_BT_COMPONENT_AREA_LEFT_PERCENT = 0;
|
|
WIFI_BT_COMPONENT_AREA_WIDTH_PERCENT = 0;
|
|
WIFI_BT_COMPONENT_AREA_HEIGHT_PERCENT = 0;
|
|
|
|
// Ethernet0 panel.
|
|
ETHERNET0_COMPONENT_VISIBLE = false;
|
|
ETHERNET0_COMPONENT_HAS_PANEL = false;
|
|
ETHERNET0_COMPONENT_HAS_ARROW = false;
|
|
ETHERNET0_COMPONENT_PANEL_ALWAYS_VISIBLE = false;
|
|
ETHERNET0_COMPONENT_PANEL_ORIENTATION = VALUE_TOP;
|
|
ETHERNET0_COMPONENT_PANEL_HORIZONTAL_PERCENT = 0;
|
|
ETHERNET0_COMPONENT_PANEL_VERTICAL_PERCENT = 0;
|
|
ETHERNET0_COMPONENT_ARROW_PERCENT = 0;
|
|
ETHERNET0_COMPONENT_AREA_TOP_PERCENT = 0;
|
|
ETHERNET0_COMPONENT_AREA_LEFT_PERCENT = 0;
|
|
ETHERNET0_COMPONENT_AREA_WIDTH_PERCENT = 0;
|
|
ETHERNET0_COMPONENT_AREA_HEIGHT_PERCENT = 0;
|
|
|
|
// Ethernet1 panel.
|
|
ETHERNET1_COMPONENT_VISIBLE = false;
|
|
ETHERNET1_COMPONENT_HAS_PANEL = false;
|
|
ETHERNET1_COMPONENT_HAS_ARROW = false;
|
|
ETHERNET1_COMPONENT_PANEL_ALWAYS_VISIBLE = false;
|
|
ETHERNET1_COMPONENT_PANEL_ORIENTATION = VALUE_TOP;
|
|
ETHERNET1_COMPONENT_PANEL_HORIZONTAL_PERCENT = 0;
|
|
ETHERNET1_COMPONENT_PANEL_VERTICAL_PERCENT = 0;
|
|
ETHERNET1_COMPONENT_ARROW_PERCENT = 0;
|
|
ETHERNET1_COMPONENT_AREA_TOP_PERCENT = 0;
|
|
ETHERNET1_COMPONENT_AREA_LEFT_PERCENT = 0;
|
|
ETHERNET1_COMPONENT_AREA_WIDTH_PERCENT = 0;
|
|
ETHERNET1_COMPONENT_AREA_HEIGHT_PERCENT = 0;
|
|
|
|
// Console.
|
|
CONSOLE_COMPONENT_VISIBLE = false;
|
|
CONSOLE_COMPONENT_HAS_PANEL = false;
|
|
CONSOLE_COMPONENT_HAS_ARROW = false;
|
|
CONSOLE_COMPONENT_PANEL_ALWAYS_VISIBLE = false;
|
|
CONSOLE_COMPONENT_PANEL_ORIENTATION = VALUE_TOP;
|
|
CONSOLE_COMPONENT_PANEL_HORIZONTAL_PERCENT = 0;
|
|
CONSOLE_COMPONENT_PANEL_VERTICAL_PERCENT = 0;
|
|
CONSOLE_COMPONENT_ARROW_PERCENT = 0;
|
|
CONSOLE_COMPONENT_AREA_TOP_PERCENT = 0;
|
|
CONSOLE_COMPONENT_AREA_LEFT_PERCENT = 0;
|
|
CONSOLE_COMPONENT_AREA_WIDTH_PERCENT = 0;
|
|
CONSOLE_COMPONENT_AREA_HEIGHT_PERCENT = 0;
|
|
|
|
// Video panel.
|
|
VIDEO_COMPONENT_VISIBLE = false;
|
|
VIDEO_COMPONENT_HAS_PANEL = false;
|
|
VIDEO_COMPONENT_HAS_ARROW = false;
|
|
VIDEO_COMPONENT_PANEL_ALWAYS_VISIBLE = false;
|
|
VIDEO_COMPONENT_PANEL_ORIENTATION = VALUE_TOP;
|
|
VIDEO_COMPONENT_PANEL_HORIZONTAL_PERCENT = 0;
|
|
VIDEO_COMPONENT_PANEL_VERTICAL_PERCENT = 0;
|
|
VIDEO_COMPONENT_ARROW_PERCENT = 0;
|
|
VIDEO_COMPONENT_AREA_TOP_PERCENT = 0;
|
|
VIDEO_COMPONENT_AREA_LEFT_PERCENT = 0;
|
|
VIDEO_COMPONENT_AREA_WIDTH_PERCENT = 0;
|
|
VIDEO_COMPONENT_AREA_HEIGHT_PERCENT = 0;
|
|
|
|
// Audio panel.
|
|
AUDIO_COMPONENT_VISIBLE = false;
|
|
AUDIO_COMPONENT_HAS_PANEL = false;
|
|
AUDIO_COMPONENT_HAS_ARROW = false;
|
|
AUDIO_COMPONENT_PANEL_ALWAYS_VISIBLE = false;
|
|
AUDIO_COMPONENT_PANEL_ORIENTATION = VALUE_TOP;
|
|
AUDIO_COMPONENT_PANEL_HORIZONTAL_PERCENT = 0;
|
|
AUDIO_COMPONENT_PANEL_VERTICAL_PERCENT = 0;
|
|
AUDIO_COMPONENT_ARROW_PERCENT = 0;
|
|
AUDIO_COMPONENT_AREA_TOP_PERCENT = 0;
|
|
AUDIO_COMPONENT_AREA_LEFT_PERCENT = 0;
|
|
AUDIO_COMPONENT_AREA_WIDTH_PERCENT = 0;
|
|
AUDIO_COMPONENT_AREA_HEIGHT_PERCENT = 0;
|
|
|
|
// LED panel.
|
|
LED_COMPONENT_VISIBLE = false;
|
|
LED_COMPONENT_HAS_PANEL = false;
|
|
LED_COMPONENT_HAS_ARROW = false;
|
|
LED_COMPONENT_PANEL_ALWAYS_VISIBLE = false;
|
|
LED_COMPONENT_PANEL_ORIENTATION = VALUE_TOP;
|
|
LED_COMPONENT_PANEL_HORIZONTAL_PERCENT = 0;
|
|
LED_COMPONENT_PANEL_VERTICAL_PERCENT = 0;
|
|
LED_COMPONENT_ARROW_PERCENT = 0;
|
|
LED_COMPONENT_AREA_TOP_PERCENT = 0;
|
|
LED_COMPONENT_AREA_LEFT_PERCENT = 0;
|
|
LED_COMPONENT_AREA_WIDTH_PERCENT = 0;
|
|
LED_COMPONENT_AREA_HEIGHT_PERCENT = 0;
|
|
|
|
// Flash memory panel.
|
|
FLASH_MEMORY_COMPONENT_VISIBLE = false;
|
|
FLASH_MEMORY_COMPONENT_HAS_PANEL = false;
|
|
FLASH_MEMORY_COMPONENT_HAS_ARROW = false;
|
|
FLASH_MEMORY_COMPONENT_PANEL_ALWAYS_VISIBLE = false;
|
|
FLASH_MEMORY_COMPONENT_PANEL_ORIENTATION = VALUE_TOP;
|
|
FLASH_MEMORY_COMPONENT_PANEL_HORIZONTAL_PERCENT = 0;
|
|
FLASH_MEMORY_COMPONENT_PANEL_VERTICAL_PERCENT = 0;
|
|
FLASH_MEMORY_COMPONENT_ARROW_PERCENT = 0;
|
|
FLASH_MEMORY_COMPONENT_AREA_TOP_PERCENT = 0;
|
|
FLASH_MEMORY_COMPONENT_AREA_LEFT_PERCENT = 0;
|
|
FLASH_MEMORY_COMPONENT_AREA_WIDTH_PERCENT = 0;
|
|
FLASH_MEMORY_COMPONENT_AREA_HEIGHT_PERCENT = 0;
|
|
|
|
// Capabilities
|
|
SUPPORTS_VIDEO_BRIGHTNESS;
|
|
SUPPORTS_DUAL_ETHERNET;
|
|
|
|
NUM_ETHERNET_INTERFACES = 2;
|
|
|
|
// Device information.
|
|
#deviceType;
|
|
#platformName;
|
|
#serialNumber;
|
|
#ubootVersion;
|
|
#kernelVersion;
|
|
#deyVersion;
|
|
#moduleVariant;
|
|
#boardVariant;
|
|
#boardID;
|
|
#mcaHWVersion;
|
|
#mcaFWVersion;
|
|
#ethernetMAC = [];
|
|
#ethernetIP = [];
|
|
#wifiMAC;
|
|
#wifiIP;
|
|
#bluetoothMAC;
|
|
#memoryTotal;
|
|
#flashSize;
|
|
#videoResolution;
|
|
#sampleRate;
|
|
#numSamplesUpload;
|
|
|
|
// Class constructor.
|
|
constructor(deviceType, platformName, deviceData) {
|
|
this.#deviceType = deviceType;
|
|
this.#platformName = platformName;
|
|
this.#initDevice(deviceData);
|
|
}
|
|
|
|
// Initializes the device with the provided data.
|
|
#initDevice(deviceData) {
|
|
this.#ubootVersion = deviceData[ID_UBOOT_VERSION];
|
|
this.#serialNumber = deviceData[ID_SERIAL_NUMBER];
|
|
this.#kernelVersion = deviceData[ID_KERNEL_VERSION];
|
|
this.#deyVersion = deviceData[ID_DEY_VERSION];
|
|
this.#moduleVariant = deviceData[ID_MODULE_VARIANT];
|
|
this.#boardVariant = deviceData[ID_BOARD_VARIANT];
|
|
this.#boardID = deviceData[ID_BOARD_ID];
|
|
this.#mcaHWVersion = deviceData[ID_MCA_HW_VERSION];
|
|
this.#mcaFWVersion = deviceData[ID_MCA_FW_VERSION];
|
|
this.#wifiMAC = deviceData[ID_WIFI_MAC];
|
|
this.#wifiIP = deviceData[ID_WIFI_IP];
|
|
this.#bluetoothMAC = deviceData[ID_BLUETOOTH_MAC];
|
|
this.#memoryTotal = deviceData[ID_MEMORY_TOTAL];
|
|
this.#flashSize = deviceData[ID_FLASH_SIZE];
|
|
this.#videoResolution = deviceData[ID_VIDEO_RESOLUTION];
|
|
this.#sampleRate = deviceData[ID_SAMPLE_RATE];
|
|
this.#numSamplesUpload = deviceData[ID_NUM_SAMPLES_UPLOAD];
|
|
for (var index = 0; index < this.NUM_ETHERNET_INTERFACES; index++) {
|
|
this.#ethernetMAC[index] = deviceData[eval("ID_ETHERNET" + index + "_MAC")];
|
|
this.#ethernetIP[index] = deviceData[eval("ID_ETHERNET" + index + "_IP")];
|
|
}
|
|
}
|
|
|
|
refreshIPs(eth0_ip, eth1_ip, wifi_ip) {
|
|
this.#ethernetIP[0] = eth0_ip;
|
|
this.#ethernetIP[1] = eth1_ip;
|
|
this.#wifiIP = wifi_ip;
|
|
}
|
|
|
|
// Returns the device type.
|
|
getDeviceType() {
|
|
return this.#deviceType;
|
|
}
|
|
|
|
// Returns the platform name.
|
|
getPlatformName() {
|
|
return this.#platformName;
|
|
}
|
|
|
|
// Returns the device serial number.
|
|
getSerialNumber() {
|
|
return this.#serialNumber;
|
|
}
|
|
|
|
// Returns the board image file name.
|
|
getBoardImage() {
|
|
return this.BOARD_IMAGE;
|
|
}
|
|
|
|
// Returns the board image scale.
|
|
getBoardImageScale() {
|
|
return this.BOARD_IMAGE_SCALE;
|
|
}
|
|
|
|
// Returns the device U-Boot version.
|
|
getUbootVersion() {
|
|
return this.#ubootVersion;
|
|
}
|
|
|
|
// Returns the device Kernel version.
|
|
getKernelVersion() {
|
|
return this.#kernelVersion;
|
|
}
|
|
|
|
// Returns the device DEY version.
|
|
getDEYVersion() {
|
|
return this.#deyVersion;
|
|
}
|
|
|
|
// Returns the device module variant.
|
|
getModuleVariant() {
|
|
return this.#moduleVariant;
|
|
}
|
|
|
|
// Returns the device board variant.
|
|
getBoardVariant() {
|
|
return this.#boardVariant;
|
|
}
|
|
|
|
// Returns the device board ID.
|
|
getBoardID() {
|
|
return this.#boardID;
|
|
}
|
|
|
|
// Returns the device MCA hardware version.
|
|
getMCAHWVersion() {
|
|
return this.#mcaHWVersion;
|
|
}
|
|
|
|
// Returns the device MCA firmware version.
|
|
getMCAFWVersion() {
|
|
return this.#mcaFWVersion;
|
|
}
|
|
|
|
// Returns the device Ethernet MAC address for the given interface index.
|
|
getEthernetMAC(index=0) {
|
|
if (index >= this.NUM_ETHERNET_INTERFACES)
|
|
return "";
|
|
return this.#ethernetMAC[index];
|
|
}
|
|
|
|
// Returns the device Ethernet IP address for the given interface index.
|
|
getEthernetIP(index=0) {
|
|
if (index >= this.NUM_ETHERNET_INTERFACES)
|
|
return "";
|
|
return this.#ethernetIP[index];
|
|
}
|
|
|
|
// Returns whether the device supports Wifi or not.
|
|
hasWifi() {
|
|
return this.#wifiMAC != null && this.#wifiMAC != "undefined"
|
|
}
|
|
|
|
// Returns the device WiFi MAC address.
|
|
getWifiMAC() {
|
|
return this.#wifiMAC;
|
|
}
|
|
|
|
// Returns the device WiFi IP address.
|
|
getWifiIP() {
|
|
return this.#wifiIP;
|
|
}
|
|
|
|
// Returns the device Bluetooth MAC address.
|
|
getBluetoothMAC() {
|
|
return this.#bluetoothMAC;
|
|
}
|
|
|
|
// Returns the device total memory.
|
|
getMemoryTotal() {
|
|
return this.#memoryTotal;
|
|
}
|
|
|
|
// Returns the device flash size.
|
|
getFlashSize() {
|
|
return this.#flashSize;
|
|
}
|
|
|
|
// Returns the video resolution.
|
|
getVideoResolution() {
|
|
return this.#videoResolution;
|
|
}
|
|
|
|
// Returns the sample rate.
|
|
getSampleRate() {
|
|
return this.#sampleRate;
|
|
}
|
|
|
|
// Returns the number of samples to upload each batch.
|
|
getNumSamplesUpload() {
|
|
return this.#numSamplesUpload;
|
|
}
|
|
|
|
// Returns the CPU panel data.
|
|
getCPUComponentData() {
|
|
return JSON.parse(TEMPLATE_COMPONENT_DATA.format(this.CPU_COMPONENT_VISIBLE,
|
|
this.CPU_COMPONENT_HAS_PANEL,
|
|
this.CPU_COMPONENT_HAS_ARROW,
|
|
this.CPU_COMPONENT_PANEL_ALWAYS_VISIBLE,
|
|
this.CPU_COMPONENT_PANEL_ORIENTATION,
|
|
this.CPU_COMPONENT_PANEL_HORIZONTAL_PERCENT,
|
|
this.CPU_COMPONENT_PANEL_VERTICAL_PERCENT,
|
|
this.CPU_COMPONENT_ARROW_PERCENT,
|
|
this.CPU_COMPONENT_AREA_TOP_PERCENT,
|
|
this.CPU_COMPONENT_AREA_LEFT_PERCENT,
|
|
this.CPU_COMPONENT_AREA_WIDTH_PERCENT,
|
|
this.CPU_COMPONENT_AREA_HEIGHT_PERCENT));
|
|
}
|
|
|
|
// Returns the Memory panel data.
|
|
getMemoryComponentData() {
|
|
return JSON.parse(TEMPLATE_COMPONENT_DATA.format(this.MEMORY_COMPONENT_VISIBLE,
|
|
this.MEMORY_COMPONENT_HAS_PANEL,
|
|
this.MEMORY_COMPONENT_HAS_ARROW,
|
|
this.MEMORY_COMPONENT_PANEL_ALWAYS_VISIBLE,
|
|
this.MEMORY_COMPONENT_PANEL_ORIENTATION,
|
|
this.MEMORY_COMPONENT_PANEL_HORIZONTAL_PERCENT,
|
|
this.MEMORY_COMPONENT_PANEL_VERTICAL_PERCENT,
|
|
this.MEMORY_COMPONENT_ARROW_PERCENT,
|
|
this.MEMORY_COMPONENT_AREA_TOP_PERCENT,
|
|
this.MEMORY_COMPONENT_AREA_LEFT_PERCENT,
|
|
this.MEMORY_COMPONENT_AREA_WIDTH_PERCENT,
|
|
this.MEMORY_COMPONENT_AREA_HEIGHT_PERCENT));
|
|
}
|
|
|
|
// Returns the WiFi panel data.
|
|
getWifiBtComponentData() {
|
|
return JSON.parse(TEMPLATE_COMPONENT_DATA.format(this.WIFI_BT_COMPONENT_VISIBLE,
|
|
this.WIFI_BT_COMPONENT_HAS_PANEL,
|
|
this.WIFI_BT_COMPONENT_HAS_ARROW,
|
|
this.WIFI_BT_COMPONENT_PANEL_ALWAYS_VISIBLE,
|
|
this.WIFI_BT_COMPONENT_PANEL_ORIENTATION,
|
|
this.WIFI_BT_COMPONENT_PANEL_HORIZONTAL_PERCENT,
|
|
this.WIFI_BT_COMPONENT_PANEL_VERTICAL_PERCENT,
|
|
this.WIFI_BT_COMPONENT_ARROW_PERCENT,
|
|
this.WIFI_BT_COMPONENT_AREA_TOP_PERCENT,
|
|
this.WIFI_BT_COMPONENT_AREA_LEFT_PERCENT,
|
|
this.WIFI_BT_COMPONENT_AREA_WIDTH_PERCENT,
|
|
this.WIFI_BT_COMPONENT_AREA_HEIGHT_PERCENT));
|
|
}
|
|
|
|
// Returns the Ethernet panel data for the given interface index.
|
|
getEthernetComponentData(index=0) {
|
|
if (index >= this.NUM_ETHERNET_INTERFACES)
|
|
return "";
|
|
return JSON.parse(TEMPLATE_COMPONENT_DATA.format(eval("this.ETHERNET" + index + "_COMPONENT_VISIBLE"),
|
|
eval("this.ETHERNET" + index + "_COMPONENT_HAS_PANEL"),
|
|
eval("this.ETHERNET" + index + "_COMPONENT_HAS_ARROW"),
|
|
eval("this.ETHERNET" + index + "_COMPONENT_PANEL_ALWAYS_VISIBLE"),
|
|
eval("this.ETHERNET" + index + "_COMPONENT_PANEL_ORIENTATION"),
|
|
eval("this.ETHERNET" + index + "_COMPONENT_PANEL_HORIZONTAL_PERCENT"),
|
|
eval("this.ETHERNET" + index + "_COMPONENT_PANEL_VERTICAL_PERCENT"),
|
|
eval("this.ETHERNET" + index + "_COMPONENT_ARROW_PERCENT"),
|
|
eval("this.ETHERNET" + index + "_COMPONENT_AREA_TOP_PERCENT"),
|
|
eval("this.ETHERNET" + index + "_COMPONENT_AREA_LEFT_PERCENT"),
|
|
eval("this.ETHERNET" + index + "_COMPONENT_AREA_WIDTH_PERCENT"),
|
|
eval("this.ETHERNET" + index + "_COMPONENT_AREA_HEIGHT_PERCENT")));
|
|
}
|
|
|
|
// Returns the Console panel data.
|
|
getConsoleComponentData() {
|
|
return JSON.parse(TEMPLATE_COMPONENT_DATA.format(this.CONSOLE_COMPONENT_VISIBLE,
|
|
this.CONSOLE_COMPONENT_HAS_PANEL,
|
|
this.CONSOLE_COMPONENT_HAS_ARROW,
|
|
this.CONSOLE_COMPONENT_PANEL_ALWAYS_VISIBLE,
|
|
this.CONSOLE_COMPONENT_PANEL_ORIENTATION,
|
|
this.CONSOLE_COMPONENT_PANEL_HORIZONTAL_PERCENT,
|
|
this.CONSOLE_COMPONENT_PANEL_VERTICAL_PERCENT,
|
|
this.CONSOLE_COMPONENT_ARROW_PERCENT,
|
|
this.CONSOLE_COMPONENT_AREA_TOP_PERCENT,
|
|
this.CONSOLE_COMPONENT_AREA_LEFT_PERCENT,
|
|
this.CONSOLE_COMPONENT_AREA_WIDTH_PERCENT,
|
|
this.CONSOLE_COMPONENT_AREA_HEIGHT_PERCENT));
|
|
}
|
|
|
|
// Returns the Video panel data.
|
|
getVideoComponentData() {
|
|
return JSON.parse(TEMPLATE_COMPONENT_DATA.format(this.VIDEO_COMPONENT_VISIBLE,
|
|
this.VIDEO_COMPONENT_HAS_PANEL,
|
|
this.VIDEO_COMPONENT_HAS_ARROW,
|
|
this.VIDEO_COMPONENT_PANEL_ALWAYS_VISIBLE,
|
|
this.VIDEO_COMPONENT_PANEL_ORIENTATION,
|
|
this.VIDEO_COMPONENT_PANEL_HORIZONTAL_PERCENT,
|
|
this.VIDEO_COMPONENT_PANEL_VERTICAL_PERCENT,
|
|
this.VIDEO_COMPONENT_ARROW_PERCENT,
|
|
this.VIDEO_COMPONENT_AREA_TOP_PERCENT,
|
|
this.VIDEO_COMPONENT_AREA_LEFT_PERCENT,
|
|
this.VIDEO_COMPONENT_AREA_WIDTH_PERCENT,
|
|
this.VIDEO_COMPONENT_AREA_HEIGHT_PERCENT));
|
|
}
|
|
|
|
// Returns the Audio panel data.
|
|
getAudioComponentData() {
|
|
return JSON.parse(TEMPLATE_COMPONENT_DATA.format(this.AUDIO_COMPONENT_VISIBLE,
|
|
this.AUDIO_COMPONENT_HAS_PANEL,
|
|
this.AUDIO_COMPONENT_HAS_ARROW,
|
|
this.AUDIO_COMPONENT_PANEL_ALWAYS_VISIBLE,
|
|
this.AUDIO_COMPONENT_PANEL_ORIENTATION,
|
|
this.AUDIO_COMPONENT_PANEL_HORIZONTAL_PERCENT,
|
|
this.AUDIO_COMPONENT_PANEL_VERTICAL_PERCENT,
|
|
this.AUDIO_COMPONENT_ARROW_PERCENT,
|
|
this.AUDIO_COMPONENT_AREA_TOP_PERCENT,
|
|
this.AUDIO_COMPONENT_AREA_LEFT_PERCENT,
|
|
this.AUDIO_COMPONENT_AREA_WIDTH_PERCENT,
|
|
this.AUDIO_COMPONENT_AREA_HEIGHT_PERCENT));
|
|
}
|
|
|
|
// Returns the LED panel data.
|
|
getLEDComponentData() {
|
|
return JSON.parse(TEMPLATE_COMPONENT_DATA.format(this.LED_COMPONENT_VISIBLE,
|
|
this.LED_COMPONENT_HAS_PANEL,
|
|
this.LED_COMPONENT_HAS_ARROW,
|
|
this.LED_COMPONENT_PANEL_ALWAYS_VISIBLE,
|
|
this.LED_COMPONENT_PANEL_ORIENTATION,
|
|
this.LED_COMPONENT_PANEL_HORIZONTAL_PERCENT,
|
|
this.LED_COMPONENT_PANEL_VERTICAL_PERCENT,
|
|
this.LED_COMPONENT_ARROW_PERCENT,
|
|
this.LED_COMPONENT_AREA_TOP_PERCENT,
|
|
this.LED_COMPONENT_AREA_LEFT_PERCENT,
|
|
this.LED_COMPONENT_AREA_WIDTH_PERCENT,
|
|
this.LED_COMPONENT_AREA_HEIGHT_PERCENT));
|
|
}
|
|
|
|
// Returns the flash memory panel data.
|
|
getFlashMemoryComponentData() {
|
|
return JSON.parse(TEMPLATE_COMPONENT_DATA.format(this.FLASH_MEMORY_COMPONENT_VISIBLE,
|
|
this.FLASH_MEMORY_COMPONENT_HAS_PANEL,
|
|
this.FLASH_MEMORY_COMPONENT_HAS_ARROW,
|
|
this.FLASH_MEMORY_COMPONENT_PANEL_ALWAYS_VISIBLE,
|
|
this.FLASH_MEMORY_COMPONENT_PANEL_ORIENTATION,
|
|
this.FLASH_MEMORY_COMPONENT_PANEL_HORIZONTAL_PERCENT,
|
|
this.FLASH_MEMORY_COMPONENT_PANEL_VERTICAL_PERCENT,
|
|
this.FLASH_MEMORY_COMPONENT_ARROW_PERCENT,
|
|
this.FLASH_MEMORY_COMPONENT_AREA_TOP_PERCENT,
|
|
this.FLASH_MEMORY_COMPONENT_AREA_LEFT_PERCENT,
|
|
this.FLASH_MEMORY_COMPONENT_AREA_WIDTH_PERCENT,
|
|
this.FLASH_MEMORY_COMPONENT_AREA_HEIGHT_PERCENT));
|
|
}
|
|
|
|
// Returns whether the device supports video brightness or not.
|
|
supportsVideoBrightness() {
|
|
return this.SUPPORTS_VIDEO_BRIGHTNESS;
|
|
}
|
|
|
|
// Returns whether the device supports dual ethernet or not.
|
|
supportsDualEthernet() {
|
|
return this.SUPPORTS_DUAL_ETHERNET;
|
|
}
|
|
}
|