public ControlViewModel(MainWindowViewModel mainWindowViewModel, TcpSocketManager pTcpSocket, SessionID pSessionId) { //ToDo change hardcoded Variables tcpSocketManager = pTcpSocket; userId = pSessionId.m_owner; sessionId = pSessionId; _udpPort = Int32.Parse(mainWindowViewModel.LoginViewModel.UdpPortTextBoxViewModel.Value); _udpIpAdress = mainWindowViewModel.LoginViewModel.ServerIpTextBoxViewModel.Value; _vrManager = new VrManager(userId, pSessionId.m_name, tcpSocketManager); VrManager.CloseVredEngine(); _vrManager.StartVredEngine(); _mainWindowViewModel = mainWindowViewModel; LeaveRoomCommand = new LeaveRoomCommand(this); HeadTracking = false; ControllerTracking = false; resultClipPlaneFloat = new SharedState <List <float> >("ClipPlane", new List <float>() { 1, 2, 3, 4, 5, 6, 7 }); resultClipPlaneFloat.setUpdateFunction(OnClipPlaneVrbUpdate); StartConnectToVredSocket(); StartReceiverFromVred(); }