Fungsi Komponen
Fungsi Peranti
Section titled “Fungsi Peranti”Fungsi-fungsi ini digunakan untuk menjadikan peranti serasi dengan sistem komponen.
device.SetLedLimit()
Section titled “device.SetLedLimit()”Fungsi ini mengambil nilai Int dan menetapkan had LED atas untuk semua saluran komponen peranti. Ia digunakan untuk semakan keselamatan dalam bahagian belakang dan menghalang pengguna daripada membebankan peranti mereka dengan lebih banyak penggunaan kuasa daripada yang boleh ditanganinya. Ia harus ditetapkan kepada nilai maksimum yang sama yang ditetapkan oleh pengilang untuk peranti tersebut.
| Parameter | Keterangan | Jenis | Contoh |
|---|---|---|---|
| LedLimit | Had LED yang dikehendaki untuk semua saluran peranti | Int | 80 |
const DeviceMaxLedLimit = 233; device.SetLedLimit(DeviceMaxLedLimit);device.getLedCount()
Section titled “device.getLedCount()”Fungsi ini mengembalikan bilangan LED gabungan semasa semua komponen pada semua saluran peranti. Kegunaan utamanya ialah untuk menyemak sama ada komponen dipilih, memandangkan 0 LED sama dengan 0 komponen.
| Pulangan | Keterangan | Jenis | Contoh |
|---|---|---|---|
| LedCount | Bilangan LED semasa semua saluran | Int | 64 |
let ColorData = [] if(LightingMode == "Forced"){ // do stuff }else if(device.getLedCount() == 0){ // do stuff }else{ // do stuff }device.addChannel()
Section titled “device.addChannel()”Fungsi ini menambah saluran komponen baharu pada peranti. Apabila saluran pertama ditambah, antara muka pengguna konfigurasi komponen akan muncul pada halaman peranti. Fungsi ini mengambil had LED yang pilihan tetapi disyorkan untuk memberi amaran kepada pengguna apabila mereka melebihi had LED selamat peranti. Had ini digunakan di beberapa tempat, jadi amat disyorkan untuk menetapkannya.
| Parameter | Keterangan | Jenis | Contoh |
|---|---|---|---|
| ChannelName | ChannelName yang digunakan untuk merujuk saluran ini | String | ”Channel 1” |
| LedLimit | Had LED operasi selamat saluran | Int | 204 |
//Channel Name, Led Limitvar ChannelArray = [ ["Channel 1", 204], ["Channel 2", 204],]
function SetupChannels(){ device.SetLedLimit(DeviceMaxLedLimit); for(let i = 0; i < ChannelArray.length; i++){ device.addChannel(ChannelArray[i][0],ChannelArray[i][1]); }}device.removeChannel()
Section titled “device.removeChannel()”Fungsi ini membuang saluran dari peranti. Dalam keadaan biasa, fungsi ini tidak sepatutnya diperlukan kerana saluran dibersihkan apabila SignalRGB ditutup. Walau bagaimanapun, kerana saluran berterusan antara muat semula panas fail plugin, Anda mungkin ingin membersihkannya dalam fungsi inisialisasi jika Anda menghadapi masalah semasa membangunkan plugin.
| Parameter | Keterangan | Jenis | Contoh |
|---|---|---|---|
| ChannelName | ChannelName yang hendak dibuang | String | ”Channel 1” |
device.createChannel("Channel1") // Do stuff device.removeChannel("Channel1")device.getChannelNames()
Section titled “device.getChannelNames()”Fungsi ini mengembalikan nama semua saluran yang kini wujud pada peranti. Kegunaan utamanya adalah untuk debug, kerana nama saluran dalam logik plugin harus disimpan dengan indeks saluran untuk paket peranti. Namun, ia juga boleh digunakan untuk melakukan iterasi ke atas semua saluran peranti dengan sedikit penurunan prestasi.
| Pulangan | Keterangan | Jenis | Contoh |
|---|---|---|---|
| Channel Names | Senarai semua nama saluran pada peranti | 1D Array | [“Channel 1”,“Channel 2”] |
let channels = device.getChannelNames();device.channel()
Section titled “device.channel()”Ini ialah titik masuk Anda untuk berinteraksi dengan ComponentChannels. Ia mengembalikan rujukan ke ComponentChannel itu sendiri jika ada yang sepadan dengan ChannelName yang diberikan; jika tidak, null dikembalikan.
| Parameter | Keterangan | Jenis | Contoh |
|---|---|---|---|
| ChannelName | ChannelName yang rujukannya hendak diambil | String | ”Channel 1” |
| Pulangan | Keterangan | Jenis |
|---|---|---|
| ComponentChannel | Objek ComponentChannel | ComponentChannel | Null |
let components = device.channel("Channel 1").getComponentNames();ComponentChannel
Section titled “ComponentChannel”Fungsi-fungsi ini digunakan untuk mengawal dan berinteraksi dengan rujukan ComponentChannel tertentu.
channel.SetLedLimit()
Section titled “channel.SetLedLimit()”Seperti fungsi serupa device.ledLimit(), fungsi ini menetapkan had LED selamat maksimum untuk ComponentChannel ini.
| Parameter | Keterangan | Jenis | Contoh |
|---|---|---|---|
| LedLimit | Had LED yang dikehendaki untuk saluran | Int | 16 |
device.channel("Channel 1").SetLedLimit(204);channel.LedCount()
Section titled “channel.LedCount()”Mengembalikan bilangan LED yang telah dikonfigurasi pengguna pada ComponentChannel ini.
| Pulangan | Keterangan | Jenis | Contoh |
|---|---|---|---|
| LedCount | Bilangan LED semasa saluran | Int | 16 |
let ChannelLedCount = device.channel("Channel 1").LedCount();channel.getColors()
Section titled “channel.getColors()”Fungsi ini mengembalikan array data warna RGB berdasarkan peta LED dan koordinat peranti. Nilai pulangan fungsi ini sangat bergantung pada penetapan argumen yang betul.
| Parameter | Keterangan | Jenis | Contoh | Lalai |
|---|---|---|---|---|
| ArrayOrder | Format array yang dikehendaki | String | ”Inline" | "Seperate” |
| ColorOrder | Susunan warna yang dikehendaki | String | ”RGB" | "RGB” |
| Array Order | Keterangan | Jenis | Contoh |
|---|---|---|---|
| Inline | Format data warna ke dalam array rata dalam susunan yang betul | 1D Array | [R,G,B,R,G,B] |
| Seperate | Format data warna ke dalam 3 saluran berasingan | 2D Array | [[R,R], [G,G], [B,B]] |
ColorOrder ialah gabungan 3 huruf dari “RGB”, contohnya “BGR”, “GBR”, “RBG”. Ia menentukan susunan warna apabila menggunakan Inline ArrayOrder. Nilai yang tidak sah akan ditetapkan semula kepada “RGB”.
| Pulangan | Keterangan | Jenis | Contoh |
|---|---|---|---|
| RGB Data | Data warna RGB yang dikembalikan dalam format yang dikehendaki | Array | Lihat jadual Array Order |
RGBData = device.channel("Channel 1").getColors("Inline", "GRB");channel.shouldPulseColors()
Section titled “channel.shouldPulseColors()”Fungsi ini mengembalikan nilai boolean yang menunjukkan sama ada saluran peranti ini harus “berdenyut”. Ini boleh diminta apabila tiada komponen dipilih atau apabila antara muka pengguna onboarding persediaan komponen sedang dipaparkan.
device.getChannelPulseColor() boleh digunakan untuk mendapatkan warna denyutan yang dijangkakan.
| Pulangan | Jenis | Keterangan |
|---|---|---|
| ShouldPulse | boolean | Sama ada saluran ini harus berdenyut |