Zum Hauptinhalt springen
Version: 2.2.0

Haply::Inverse::Unity::DeviceBehaviour

Stellt die Basisklasse für Inverse Geräte dar und bietet gemeinsame Funktionen und Zustandsverwaltung.

Erbt von MonoBehaviour

Geerbt von Haply.Inverse.Unity.Inverse3, Haply.Inverse.Unity.VerseGrip

Öffentliche Veranstaltungen

Name
Action< DeviceBehaviour, Ret >FehlerEreignis()
VerbindungszustandsdelegierteConnectionStateChanged()
Ereignis, das ausgelöst wird, wenn sich der Verbindungsstatus des Geräts ändert.
Action< DeviceBehaviour, DeviceConnectionState, DeviceConnectionState >ConnectionStateChangedAsync()
Ereignis, das kurz nach der Änderung des Verbindungsstatus des Geräts ausgelöst wird.

Öffentliche Funktionen

Name
delegieren ungültigVerbindungsStateDelegate(DeviceBehaviour device, DeviceConnectionState state, DeviceConnectionState prevState)
Delegat für die Behandlung von Änderungen des Verbindungsstatus des Geräts.
voidSetSetupToPerform()
Zeigt an, dass das Setup im nächsten Frame durchgeführt werden soll.
override stringToString()
Gibt eine String-Darstellung des Objekts zurück, die eine von Menschen lesbare Beschreibung enthält, die den Namen des Objekts, den Klassentyp und die Geräte-ID umfasst.

Geschützte Funktionen

Name
voidInvokeReadyEvent()
Ruft das Ereignis Ready auf.
virtuelle LeereEinrichtung()
Diese Methode wird automatisch aufgerufen, sobald das _performSetup-Flag gesetzt ist, um Berechnungen zu bewältigen, die zu umfangreich sind, um bei jedem Bild aufgerufen zu werden.
virtuelle LeereErwachen()
voidOnEnable()
voidOnDisable()
voidOnDestroy()
virtuelle LeereFixedUpdate()

Öffentliche Immobilien

Name
GerätetypGerätetyp
Ruft den Typ des Geräts ab.
intSelectedDeviceId
uintGeräte-ID
Ruft die Geräte-ID ab.
boolIstBereit
Zeigt an, ob das Gerät einsatzbereit ist.
CursorBehaviourCursor
Liest oder setzt das mit dem Gerät verbundene CursorBehaviour.
DeviceConnectionStateVerbindungsstatus
Liest oder setzt den aktuellen Verbindungsstatus des Geräts.
boolIsConnected
Ermittelt, ob das Gerät verbunden ist.
boolIsOpened
Ermittelt, ob das Gerät geöffnet ist.

Geschützte Eigenschaften

Name
BaseCoordinateConverterCoordinateConverter
boolIsCursorSet
Zeigt an, ob der Cursor gesetzt wurde.

Öffentliche Attribute

Name
Konstante intANY_ID
UnityEvent< DeviceBehaviour >DeviceOpened
Ereignis, das ausgelöst wird, wenn der ConnectionState in den Zustand DeviceConnectionState.Opened übergeht.
UnityEvent< DeviceBehaviour >DeviceClosed
Ereignis, das ausgelöst wird, wenn der ConnectionState in den Zustand DeviceConnectionState.Connected übergeht.

Geschützte Attribute

Name
String_Objektname

Öffentliche Veranstaltungen Dokumentation

Ereignis FehlerEreignis

Action< DeviceBehaviour, Ret > ErrorEvent()

Ereignis ConnectionStateChanged

ConnectionStateDelegate ConnectionStateChanged()

Ereignis, das ausgelöst wird, wenn sich der Zustand der Geräteverbindung ändert.

Ereignis ConnectionStateChangedAsync

Action< DeviceBehaviour, DeviceConnectionState, DeviceConnectionState > ConnectionStateChangedAsync()

Ereignis, das kurz nach der Änderung des Verbindungsstatus des Geräts ausgelöst wird.

Siehe: ConnectionStateChanged

Dieses Ereignis wird auf dem Haupt-Thread ausgelöst, was eine sichere Interaktion mit Unity-Szenenobjekten und UI-Elementen ermöglicht. Beachten Sie, dass der Gerätestatus in einem separaten Hochfrequenz-Thread aktualisiert wird, so dass der Status zum Zeitpunkt des Ereignisses leicht vom aktuellen Status bei der Behandlung des Ereignisses abweichen kann. Verwenden Sie das Ereignis ConnectionStateChanged, wenn Sie mehr Präzision benötigen.

Öffentliche Funktionen Dokumentation

Funktion ConnectionStateDelegate

delegate void ConnectionStateDelegate(
DeviceBehaviour device,
DeviceConnectionState state,
DeviceConnectionState prevState
)

Delegat für die Behandlung von Änderungen des Verbindungsstatus des Geräts.

Parameter:

  • state Der neue Zustand des Geräts.
  • prevState Der vorherige Zustand des Geräts.
  • device Die Geräteinstanz, die das Ereignis auslöst.

Funktion SetSetupToPerform

void SetSetupToPerform()

Zeigt an, dass die Einrichtung beim nächsten Bild durchgeführt werden soll.

Siehe: Einrichtung

Funktion ToString

override string ToString()

Gibt eine Zeichenkettendarstellung des Objekts zurück, die eine von Menschen lesbare Beschreibung enthält, die den Namen des Objekts, den Klassentyp und die Geräte-ID umfasst.

Rückgabe: Eine Zeichenfolge, die das aktuelle Objekt darstellt, einschließlich seines Namens, Klassentyps und der Geräte-ID.

The returned string follows the format: "name <Class>(#id)", where:

  • "name" ist der Wert des Objekts _objectName Feld.
  • "Klasse" ist der Name der Klassenart des Objekts.
  • "id" ist die Geräte-ID, formatiert als 4-stellige hexadezimale Zeichenfolge, oder "*", wenn die Geräte-ID ANY_ID. Wenn DeviceId ist ANY_IDder Wert von SelectedDeviceId verwendet wird.

Diese Methode hilft bei der Fehlersuche und Protokollierung, indem sie eine präzise und informative Beschreibung des Objekts liefert.

Geschützte Funktionen Dokumentation

Funktion InvokeReadyEvent

void InvokeReadyEvent()

Ruft das Ereignis Ready auf.

Diese Methode wird automatisch von der Eigenschaft IsReady aufgerufen, wenn sich der Wert zu true ändert. Sie muss von abgeleiteten Klassen implementiert werden, um das entsprechende Ereignis auszulösen.

Die Eigenschaft IsReady muss in abgeleiteten Klassen auf true gesetzt werden, wenn das Gerät vollständig initialisiert und einsatzbereit ist.

Funktion Einrichten

virtual void Setup()

Diese Methode wird automatisch aufgerufen, sobald das _performSetup-Flag gesetzt ist, um Berechnungen zu verarbeiten, die zu umfangreich sind, um bei jedem Bild aufgerufen zu werden.

Neuimplementiert von: Haply: :Inverse::Unity::Inverse3::Setup

Diese Methode kann überschrieben werden, wobei darauf zu achten ist, dass der Basisaufruf erhalten bleibt. Verwenden Sie SetSetupToPerform, um den Setup-Aufruf auszulösen.

Funktion Wachsam

virtual void Awake()

Funktion OnEnable

void OnEnable()

Funktion OnDisable

void OnDisable()

Funktion OnDestroy

void OnDestroy()

Funktion FixedUpdate

virtual void FixedUpdate()

Neuimplementiert durch: Haply: :Inverse::Unity::Inverse3::FixedUpdate

Dokumentation über öffentliches Eigentum

Eigenschaft DeviceType

DeviceType DeviceType;

Ruft den Typ des Geräts ab.

Kann Inverse.DeviceType.Inverse3, Inverse.DeviceType.VerseGrip oder Inverse.DeviceType.Nil sein, falls nicht bereits durch den DeviceMapper festgelegt.

Eigenschaft SelectedDeviceId

int SelectedDeviceId;

Eigenschaft DeviceId

uint DeviceId;

Ruft die Geräte-ID ab.

Eigenschaft IsReady

bool IsReady;

Zeigt an, ob das Gerät einsatzbereit ist.

Eigenschaft Cursor

CursorBehaviour Cursor;

Liest oder setzt das mit dem Gerät verbundene CursorBehaviour.

Eigenschaft ConnectionState

DeviceConnectionState ConnectionState;

Liest oder setzt den aktuellen Verbindungsstatus des Geräts.

Das Gerät kann sich entweder im Zustand DeviceConnectionState.Disconnected, DeviceConnectionState.Connected oder DeviceConnectionState.Opened befinden. Die Änderung des Zustands löst die entsprechenden Ereignisse und Zustandsänderungsbenachrichtigungen aus.

Eigenschaft IsConnected

bool IsConnected;

Ermittelt, ob das Gerät angeschlossen ist.

Eigenschaft IsOpened

bool IsOpened;

Ermittelt, ob das Gerät geöffnet ist.

Geschütztes Eigentum Dokumentation

Eigenschaft CoordinateConverter

BaseCoordinateConverter CoordinateConverter;

Eigenschaft IsCursorSet

bool IsCursorSet;

Zeigt an, ob der Cursor gesetzt wurde.

Diese Eigenschaft hilft bei der Optimierung von Prüfungen auf die Existenz des Cursors, da direkte Vergleiche mit null in Unity teuer sein können.

Öffentliche Attribute Dokumentation

Variable ANY_ID

static const int ANY_ID = 0;

variabel DeviceOpened

UnityEvent< DeviceBehaviour > DeviceOpened;

Ereignis, das ausgelöst wird, wenn der ConnectionState in den Zustand DeviceConnectionState.Opened übergeht.

Siehe: ConnectionStateChanged

Dies zeigt an, dass das Gerät einsatzbereit ist und alle notwendigen Daten, wie DeviceId und Inverse3.Handedness, korrekt initialisiert sind. Abhängig vom DeviceType kann die DeviceBehaviour-Instanz, die als erstes Argument übergeben wird, auf den entsprechenden Typ gecastet werden, entweder Inverse3 oder VerseGrip.

Dieses Ereignis wird auf dem Haupt-Thread ausgelöst, was eine sichere Interaktion mit Unity-Szenenobjekten und UI-Elementen ermöglicht. Beachten Sie, dass der Gerätestatus in einem separaten Hochfrequenz-Thread aktualisiert wird, so dass der Status zum Zeitpunkt des Ereignisses leicht vom aktuellen Status bei der Behandlung des Ereignisses abweichen kann. Verwenden Sie das Ereignis ConnectionStateChanged, wenn Sie mehr Präzision benötigen.

variabel DeviceClosed

UnityEvent< DeviceBehaviour > DeviceClosed;

Ereignis, das ausgelöst wird, wenn der ConnectionState in den Zustand DeviceConnectionState.Connected übergeht.

Siehe: ConnectionStateChanged

Dies zeigt an, dass das Gerät nicht mehr einsatzbereit ist. Je nach DeviceType kann die als erstes Argument übergebene DeviceBehaviour-Instanz auf den entsprechenden Typ gecastet werden, entweder Inverse3 oder VerseGrip.

Dieses Ereignis wird auf dem Haupt-Thread ausgelöst, was eine sichere Interaktion mit Unity-Szenenobjekten und UI-Elementen ermöglicht. Beachten Sie, dass der Gerätestatus in einem separaten Hochfrequenz-Thread aktualisiert wird, so dass der Status zum Zeitpunkt des Ereignisses leicht vom aktuellen Status bei der Behandlung des Ereignisses abweichen kann. Verwenden Sie das Ereignis ConnectionStateChanged, wenn Sie mehr Präzision benötigen.

Geschützte Attribute Dokumentation

Variable _Objektname

string _objectName;