Komponentfunktioner
Enhetsfunktioner
Section titled “Enhetsfunktioner”Dessa funktioner används för att göra enheten kompatibel med komponentssystemet.
device.SetLedLimit()
Section titled “device.SetLedLimit()”Den här funktionen tar ett int-värde och ställer in den övre lysdiodsgränsen för alla komponentkanaler på enheten. Den används för säkerhetskontroller i bakänden och förhindrar att enheter överbelastas med mer effekt än de tål. Bör ställas in på det maximivärde som tillverkaren anger för enheten.
| Parameter | Beskrivning | Typ | Exempel |
|---|---|---|---|
| LedLimit | Önskad lysdiodsgräns för alla kanaler på enheten | Int | 80 |
const DeviceMaxLedLimit = 233; device.SetLedLimit(DeviceMaxLedLimit);device.getLedCount()
Section titled “device.getLedCount()”Den här funktionen returnerar det nuvarande totala lysdiodantalet för alla komponenter på alla kanaler på enheten. Det primära användningsfallet är att kontrollera om några komponenter har valts, eftersom 0 lysdioder innebär 0 komponenter.
| Returnerar | Beskrivning | Typ | Exempel |
|---|---|---|---|
| LedCount | Nuvarande lysdiodantal för alla kanaler | Int | 64 |
let ColorData = [] if(LightingMode == "Forced"){ // bearbeta }else if(device.getLedCount() == 0){ // bearbeta }else{ // bearbeta }device.addChannel()
Section titled “device.addChannel()”Den här funktionen lägger till en ny komponentkanal på enheten. Komponentkonfigurerings-UI:t visas på enhetssidan när den första kanalen läggs till. Den här funktionen tar en valfri men rekommenderad LedLimit för att varna användaren om att de överskrider den säkra lysdiodsgränsen för enheten. Det rekommenderas starkt att ställa in den här gränsen eftersom den används på flera ställen.
| Parameter | Beskrivning | Typ | Exempel |
|---|---|---|---|
| ChannelName | Det ChannelName som används för att referera till den här kanalen | String | ”Channel 1” |
| LedLimit | Säker drifts-lysdiodsgräns för kanalen. | Int | 204 |
// Kanalnamn, lysdiodsgränsvar 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()”Den här funktionen tar bort en kanal från enheten. Under normala förhållanden bör den här funktionen inte behövas eftersom kanaler rensas när SignalRGB stängs ned. Eftersom kanaler är beständiga mellan heta omladdningar av plugin-filen kanske du vill rensa dem i initieringsfunktionen om du stöter på problem under pluginutveckling.
| Parameter | Beskrivning | Typ | Exempel |
|---|---|---|---|
| ChannelName | Det ChannelName som ska tas bort | String | ”Channel 1” |
device.createChannel("Channel1") // Bearbeta device.removeChannel("Channel1")device.getChannelNames()
Section titled “device.getChannelNames()”Den här funktionen returnerar namnen på alla kanaler som finns på enheten. Det primära användningsfallet här är för felsökning, eftersom kanalnamn bör lagras i pluginets logik tillsammans med kanalindexet för enhetens paket. Det kan dock också användas för att iterera över alla kanaler på en enhet med en liten prestandaförlust om så önskas.
| Returnerar | Beskrivning | Typ | Exempel |
|---|---|---|---|
| Channel Names | Lista med alla kanalnamn på enheten | 1D Array | [“Channel 1”,“Channel 2”] |
let channels = device.getChannelNames();device.channel()
Section titled “device.channel()”Det här är ingången till att interagera med ComponentChannels. Returnerar en referens till ComponentChannel som matchar det givna ChannelName om en sådan finns; returnerar annars null.
| Parameter | Beskrivning | Typ | Exempel |
|---|---|---|---|
| ChannelName | Det ChannelName som referensen ska hämtas för | String | ”Channel 1” |
| Returnerar | Beskrivning | Typ |
|---|---|---|
| ComponentChannel | ComponentChannel-objekt | ComponentChannel | Null |
let components = device.channel("Channel 1").getComponentNames();ComponentChannel
Section titled “ComponentChannel”Dessa funktioner används för att inspektera och interagera med en specifik ComponentChannel-referens.
channel.SetLedLimit()
Section titled “channel.SetLedLimit()”Liksom den liknande device.ledLimit()-funktionen ställer den här funktionen in den maximala säkra lysdiodsgränsen för den här ComponentChanneln.
| Parameter | Beskrivning | Typ | Exempel |
|---|---|---|---|
| LedLimit | Önskad lysdiodsgräns för kanalen | Int | 16 |
device.channel("Channel 1").SetLedLimit(204);channel.LedCount()
Section titled “channel.LedCount()”Det här returnerar det användarkonfigurerade lysdiodantalet i ComponentChanneln.
| Returnerar | Beskrivning | Typ | Exempel |
|---|---|---|---|
| LedCount | Nuvarande lysdiodantal för kanalen | Int | 16 |
let ChannelLedCount = device.channel("Channel 1").LedCount();channel.getColors()
Section titled “channel.getColors()”Den här funktionen returnerar en array med RGB-färgdata baserat på enhetens lysdiodkarta och koordinater. Returvärdet från den här funktionen beror i hög grad på att rätt argument ställs in.
| Parametrar | Beskrivning | Typ | Exempel | Standard |
|---|---|---|---|---|
| ArrayOrder | Det önskade arrayformatet | String | ”Inline" | "Seperate” |
| ColorOrder | Önskad färgordning | String | ”RGB" | "RGB” |
| ArrayOrder | Beskrivning | Typ | Exempel |
|---|---|---|---|
| Inline | Formaterar färgdata i en platt array i ordning | 1D Array | [R,G,B,R,G,B] |
| Seperate | Formaterar färgdata i 3 separata kanaler | 2D Array | [[R,R], [G,G], [B,B]] |
ColorOrder är en 3-bokstavskombination av “RGB”, t.ex. “BGR”, “GBR”, “RBG”. Det bestämmer ordningen på färgerna när Inline ArrayOrder används. Ogiltiga värden återgår till “RGB”.
| Returnerar | Beskrivning | Typ | Exempel |
|---|---|---|---|
| RGB Data | RGB-färgdata returnerad i önskat format | Array | Se ArrayOrder-tabellen |
RGBData = device.channel("Channel 1").getColors("Inline", "GRB");channel.shouldPulseColors()
Section titled “channel.shouldPulseColors()”Den här funktionen returnerar ett boolean-värde om den här enhetskanalen ‘bör pulsa’. Det kan önskas på grund av att inga komponenter är valda eller för att visa komponentinställnings-UI:t.
device.getChannelPulseColor() kan användas för att hämta den förväntade pulsfärgen.
| Returnerar | Typ | Beskrivning |
|---|---|---|
| ShouldPulse | boolean | Ska den här kanalen pulsa |