Update Cluster Events in Cpp authored by Jonathan Ehret's avatar Jonathan Ehret
......@@ -69,7 +69,7 @@ void AUserInputSync::EndPlay(const EEndPlayReason::Type EndPlayReason) {
IDisplayClusterClusterManager* ClusterManager = IDisplayCluster::Get().GetClusterMgr();
if (ClusterManager && ClusterEventListenerDelegate.IsBound())
{
ClusterManager->RemoveClusterEventListener(ClusterEventListenerDelegate);
ClusterManager->RemoveClusterEventJsonListener(ClusterEventListenerDelegate);
}
Super::EndPlay(EndPlayReason);
}
......@@ -83,20 +83,20 @@ void AUserInputSync::OnUserInput() {
IDisplayClusterClusterManager* const Manager = IDisplayCluster::Get().GetClusterMgr();
if (Manager)
{
if (Manager->IsStandalone()) {
if (!URWTHVRUtilities::IsRoomMountedMode()) {
//in standalone (e.g., desktop editor play) cluster events are not executed....
ReactOnUserInput();
}
else {
// else create a cluster event to react to
FDisplayClusterClusterEvent cluster_event;
cluster_event.Name = "Some Custom Name, e.g., G pressed";
Manager->EmitClusterEvent(cluster_event, true);
FDisplayClusterClusterEventJson ClusterEvent;
ClusterEvent.Name = "Some Custom Name, e.g., G pressed";
Manager->EmitClusterEventJson(ClusterEvent, true);
}
}
}
void AUserInputSync::HandleClusterEvent(const FDisplayClusterClusterEvent& Event) {
void AUserInputSync::HandleClusterEvent(const FDisplayClusterClusterEventJson& Event) {
if (Event.Name == "Some Custom Name, e.g., G pressed") {
//now we actually react on all cluster nodes:
ReactOnUserInput();
......
......