-
-
Notifications
You must be signed in to change notification settings - Fork 169
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #64 from SlimeVR/ipc-upgrade
IPC upgrade
- Loading branch information
Showing
42 changed files
with
6,081 additions
and
2,978 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,43 @@ | ||
package dev.slimevr.bridge; | ||
|
||
import io.eiren.util.ann.VRServerThread; | ||
import io.eiren.vr.trackers.ShareableTracker; | ||
|
||
/** | ||
* Bridge handles sending and recieving tracker data | ||
* between SlimeVR and other systems like VR APIs (SteamVR, OpenXR, etc), | ||
* apps and protocols (VMC, WebSocket, TIP). It can create and manage | ||
* tracker recieved from the <b>remote side</b> or send shared <b>local | ||
* trackers</b> to the other side. | ||
*/ | ||
public interface Bridge { | ||
|
||
@VRServerThread | ||
public void dataRead(); | ||
|
||
@VRServerThread | ||
public void dataWrite(); | ||
|
||
/** | ||
* Adds shared tracker to the bridge. Bridge should notify the | ||
* other side of this tracker, if it's the type of tracker | ||
* this bridge serves, and start sending data each update | ||
* @param tracker | ||
*/ | ||
@VRServerThread | ||
public void addSharedTracker(ShareableTracker tracker); | ||
|
||
/** | ||
* Removes tracker from a bridge. If the other side supports | ||
* tracker removal, bridge should notify it and stop sending | ||
* new data. If it doesn't support tracker removal, the bridge | ||
* can either stop sending new data, or keep sending it if it's | ||
* available. | ||
* @param tracker | ||
*/ | ||
@VRServerThread | ||
public void removeSharedTracker(ShareableTracker tracker); | ||
|
||
@VRServerThread | ||
public void startBridge(); | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
package dev.slimevr.bridge; | ||
|
||
import java.lang.annotation.Retention; | ||
import java.lang.annotation.RetentionPolicy; | ||
|
||
@Retention(value = RetentionPolicy.SOURCE) | ||
public @interface BridgeThread { | ||
|
||
} |
Oops, something went wrong.