İçeriğe geç

Eklenti Dışa Aktarımları

Cihaz bilgisi ve çalışma zamanı giriş noktaları, görünen ad, canvas boyutları, aranacak ürün ve satıcı kimlikleri, render döngüsünün ne olduğu gibi bilgileri raporlayan arka uç API’si ile iletişim kurmak için çeşitli fonksiyonlar kullanıyoruz.

Bu fonksiyonlar SignalRGB’de görüntülenecek cihaz adını ve yayıncıyı dışa aktarır.

export function Name() { return "String olarak Cihaz Ürün Adı"; };
export function Publisher() { return "String olarak Siz!"; };

Bu fonksiyonlar sistemde cihazı aramak için kullanılır. Her ikisi de “0x ” biçiminde hex değerleri olarak kodlanmıştır. Bunların cihaz kimliklerinizle tam olarak eşleşmesi gerekir. Eklentiniz SignalRGB’de görünmüyorsa büyük ihtimalle satıcı ve ürün kimliği uyuşmazlığından kaynaklanıyordur. SignalRGB’de bir cihazı tespit etmek için gereken minimum şart eşleşen bir satıcı ve ürün kimliğidir.

export function VendorId() { return 0xABCD;}; // Cihazın USB Satıcı Kimliği (Hex olarak)
export function ProductId() { return 0xABCD;}; // Cihazın USB Ürün Kimliği (Hex olarak)

Bu, canvas üzerindeki cihaz kutusunun temel boyutunu — herhangi bir ölçeklendirmeden önce — yalnızca tam sayılardan oluşan 2D dizi olarak ayarlar. Eklentinizde bu sınırların dışındaki renkleri alamazsınız; bu nedenle boyutun, LED’leri bir ızgaraya çevirdiğinizde cihazın LED’lerinin genişliğini ve yüksekliğini karşılayacak şekilde ayarlanması gerekir.

export function Size() { return [X,Y]; };

Bu fonksiyonlar, herhangi bir kullanıcı özelleştirmesinden önce cihazın varsayılan konumunu ayarlar. DefaultPosition, sol üst köşenin 2D koordinatlarını döndürür. DefaultScale, 1.0-30.0 ölçeğinde ölçeklendirme çarpanını döndürür.

export function DefaultPosition(){return [X,Y]};
export function DefaultScale(){return 8.0};

Bu fonksiyon, cihazdaki tüm LED adlarının 2D dizisini döndürür. Bunlar, tuş basma efektlerini ve LED boyama özelliklerini desteklemek için Desteklenen Tuş Adlarını izlemelidir.

var vLedNames = [
"Scroll Wheel",
"Side Led 1","Side Led 2","Side Led 3","Side Led 4", "Side Led 5","logo", "Right Side Led",
"Dpi 1","dpi 2","Dpi 3",
"Battery indicator"
];
export function LedNames(){return vLedNames;};

Bu fonksiyon, cihazın piksel arabelleği içindeki bireysel LED konumlarının matrisini döndürür. Tüm konumlar cihazın Size() dışa aktarımıyla belirlenen sınırlar içinde olmalıdır.

var vLedPositions = [
[3,0],
[0,1],[0,2],[0,3],[0,4],[0,5],[3,5],[5,5],
[0,2],[0,1],[0,0],
[3,1]
];
export function LedPositions(){return vLedPositions;};

Bu fonksiyon, cihaz eklentisinin tüm ayarlarını içerir. Bu ayarlar, fonksiyon tarafından bir dizi içinde döndürülen JS/JSON nesneleri olarak saklanır. Daha fazla bilgi için Kullanıcı Kontrolleri sayfasına bakın.

export function ControllableParameters(){
return [
{AYAR},
{AYAR}
];
}

Bu fonksiyon, SignalRGB’nin cihaz için hangi USB uç noktalarını açmak ve kullanmak istediğini belirlemekten sorumludur. Her uç noktanın, cihazdaki her USB uç noktasının değerlerine karşılık gelen dört filtre parametresi bulunur. Her cihaz için birden fazla uç nokta ‘açılabilir’ ancak aynı anda yalnızca biri kullanılır. Aktif uç noktayı değiştirmek için device.set_endpoint() sayfasına bakın.

Not: Komutların genellikle belirli bir uç noktaya gönderilmesi gerekir. Belirli bir rapor kimliği veya uzunluk almak üzere yapılandırılmış bir uç noktaya gönderilen komutlar, bu değerler eşleşmezse hata verecektir.

Not: Tüm cihazlar yapıldıkları yere ve zamana bağlı olarak tutarlı uç noktalar kullanmayabilir. Birden fazla uç noktayı doğrulamak, gerektiğinde otomatik olarak yedek kullanmanıza olanak tanır.

Mevcut Parametreler
interface
usage
usage_page
collection
export function Validate(endpoint)
{
return (endpoint.interface === 2 && endpoint.collection === 0x0003) ||
endpoint.interface === 1;
}

Bu fonksiyon kullanılacak USB protokol türünü ayarlar. Çoğu cihaz HID protokollerini kullanır, ancak AIO’lar gibi bazı cihazlar bunun yerine Ham USB kontrol fonksiyonlarını kullanır.

Not: Bu fonksiyon SignalRGB tarafından kullanılamadığında varsayılan değer HID protokolüdür.

ProtokolString Değeri
HID”HID”
Lib/ham USB”RAWUSB"
export function Type() { return "Hid"; }

Bu fonksiyon çakışan exe adlarının bir listesini dışa aktarır. SignalRGB, bunlardan biri çalışırken eklentiyi başlatmayacaktır. Çakışan süreç kapatıldığında veya hata mesajı kullanıcı tarafından atlatıldığında eklenti başlatılacaktır.

Not: Bu adlar çalışan exe adıyla tam olarak eşleşmelidir.

export function ConflictingProcesses() {
return ["NGenuity2.exe"];
}

Bu fonksiyon cihazın görsel URL string’ini döndürür. Standart eklenti görsel boyutu, 920x920 canlı alanlı 1024x1024 piksel büyüklüğündedir.

export function ImageUrl(){ return "URL görsel string'i";}