private void UpdateStereoCompositerAndRefresh(StereoCompositerSystem stereoCompositerSystem) { if (_currSystemDesc.stereoCompositerSystem == stereoCompositerSystem) { return; } _stereoCompositer.Stop(); InitializeStereoCompositer(stereoCompositerSystem); }
public static ISRDStereoCompositer CreateStereoCompositer(StereoCompositerSystem system) { var switcher = new Dictionary <StereoCompositerSystem, Func <ISRDStereoCompositer> >() { { StereoCompositerSystem.SRD, () => { return(new SRDStereoCompositer()); } }, { StereoCompositerSystem.PassThrough, () => { return(new SRDPassThroughStereoCompositer()); } } }; return(switcher[system]()); }
private void InitializeStereoCompositer(StereoCompositerSystem stereoCompositerSystem) { if (!_cachedStereoCompositer.TryGetValue(stereoCompositerSystem, out _stereoCompositer)) { _stereoCompositer = SRDStereoCompositerFactory.CreateStereoCompositer(stereoCompositerSystem); _cachedStereoCompositer[stereoCompositerSystem] = _stereoCompositer; } _currSystemDesc.stereoCompositerSystem = stereoCompositerSystem; _stereoCompositer.Start(); }
public SRDSystemDescription(FaceTrackerSystem faceTracker, EyeViewRendererSystem eyeViewRenderer, StereoCompositerSystem stereoCompositer) { faceTrackerSystem = faceTracker; eyeViewRendererSystem = eyeViewRenderer; stereoCompositerSystem = stereoCompositer; }