Exemple #1
0
        private void OnFrameProcessed(object sender, CameraPreview.FrameProcessedEventArgs e)
        {
            lock (_processing)
            {
                JsonObject data = new JsonObject();

                data.Add("peaks", e.Peaks);
                data.Add("timestamp", JsonValue.CreateNumberValue(e.Timestamp));
                _peaks.Add(data);

                Debug.WriteLine("-- Frame {0} processed --", _peaks.Count);

                if (_peaks.Count == _settings.Frames)
                {
                    Debug.WriteLine("All {0} frames captured & processed!", _peaks.Count);

                    _camPreview.Release();

                    DispatchCommandResult(new PluginResult(PluginResult.Status.OK, _peaks.Stringify()));

                    if (_settings.KeepImages)
                    {
                        SaveImages();
                    }

                    Debug.WriteLine("Memory used after:   {0:N0}", GC.GetTotalMemory(true));
                }
            }
        }