Esempio n. 1
0
        private void ProcessStream1D(NodeSystemLib2.FormatData1D.InputPortData1D port)
        {
            var _buffer = port.Read();

            WriterObject   writer = null;
            Stream1DWriter stream = null;

            if (_recording)
            {
                writer = _writers[port];
                stream = (Stream1DWriter)writer.Writer;
            }

            foreach (var sample in _buffer.ZipWithValueInput(_portEn))
            {
                if (sample.Scalar >= 0.5 && !_recording)
                {
                    _firstWrittenSampleTime = sample.Stamp;
                    StartRecording();

                    writer = _writers[port];
                    stream = (Stream1DWriter)writer.Writer;
                }
                else if (sample.Scalar < 0.5 && _recording)
                {
                    EndRecording();
                }

                if (_recording)
                {
                    stream.WriteSample(sample.Sample);
                    writer.SetNewStamp(sample.Stamp);
                }
            }
        }
Esempio n. 2
0
        private void InitWriters()
        {
            foreach (var input in InputPorts.OfType <NodeSystemLib2.FormatData1D.InputPortData1D>().Where(c => c.Connection != null))
            {
                var path = GetFilename(input, "bin");

                var writer = new Stream1DWriter(
                    new System.IO.BinaryWriter(
                        File.Open(path, FileMode.Create)
                        )
                    );

                _writers.Add(input, new WriterObject {
                    Path = path, Writer = writer
                });
            }

            foreach (var input in InputPorts.OfType <NodeSystemLib2.FormatValue.InputPortValueDouble>().Except(new[] { _portEn }).Where(c => c.Connection != null))
            {
                var path = GetFilename(input, "csv");

                var writer = new Stream2DWriter(
                    File.CreateText(path), ','
                    );

                _writers.Add(input, new WriterObject {
                    Path = path, Writer = writer
                });
            }
        }
Esempio n. 3
0
 protected override void OnRecordingStarted()
 {
     lock (_writerLock) {
         _path = CreateOutputFilename("signal", "bin");
         var handle = System.IO.File.Open(_path, System.IO.FileMode.Create, System.IO.FileAccess.Write);
         _binaryStream = new System.IO.BinaryWriter(handle);
         _writer       = new Stream1DWriter(_binaryStream);
     }
 }