///--------------------------------------------------------------------- internal static void Unregister(FrameRecorder recorder) { var instance = Instance; if (instance == null) { return; } instance.recorders.Remove(recorder); }
///----------------------------------------------------------------- public void Open(FrameRecorder recorder) { if (!frames.ContainsKey(recorder)) { frames.Add(recorder, recorder.NewFrame()); } else { frames[recorder].Recycle(); } recorder.Open(frames[recorder]); }
///----------------------------------------------------------------- public void Close(FrameRecorder recorder) { recorder.Close(frames[recorder]); }