Commit Graph

575 Commits

Author SHA1 Message Date
d0854ae84b Changed explicit nullptr to more C++-like reset() 2022-10-18 22:24:53 +02:00
8429dfa4e8 Added comment. Made sure reset() of indatahandlers is called prior to starting stream. Other order could result in bugs 2022-10-17 19:51:10 +02:00
b29f004f23 Made PPM meter range-aware. Improved PPM-code. Made RtAps sensitivity-aware. Improved code to get ranges for each channel from Daq object 2022-10-17 19:37:31 +02:00
4233e66d27 Bugfix: accidentally forgot to commit two statementes in threadedindatahandler.cpp 2022-10-16 21:30:17 +02:00
bebd270b44 Bugfix: reset() was called after inCallback() when adding new handler to StreamMgr. Bugfix: start() was doubly called for RtAPS. Once from Python and once from C++ in constructor. Renamed some scoped_lock to Lck. Added some comments 2022-10-16 21:26:06 +02:00
e2aa149030 Merge branch 'master' into develop 2022-10-16 18:39:55 +02:00
76dbdfb526 Working equalizer 2022-10-16 18:39:13 +02:00
a73863d044 Merge branch 'develop' of ssh://code.ascee.nl:12001/ASCEE/lasp into develop 2022-10-13 12:07:05 +02:00
4db90e3885 Bugfix: exportAsWave() normalization failed when dtypes of data and maxabs were different 2022-10-13 12:06:51 +02:00
47a2e9972c Added filter map to siggen. Debugged biquadbank to properly work. 2022-10-12 21:32:24 +02:00
20be897a17 Filters back installed in RtAps 2022-10-12 15:23:12 +02:00
ec689621b5 Added Armadillo backend for Fft's. This one seems to work properly. Added some tests code for daq and StreamMgr in C++. Fixed a stray of a debug dmat somewhere in lasp_daqdata. 2022-10-12 15:02:42 +02:00
0d6d72fb35 Merge branch 'develop' of ssh://code.ascee.nl:12001/ASCEE/lasp into develop 2022-10-11 14:50:49 +02:00
4764a52de8 Improved code for cubes. RtAps is not working. Don't know why. TimeBuffer code has better readability. Bugfix in output from Column to Numpy. GIL release for AvPowerSpectra::compute via Pybind. 2022-10-11 14:50:44 +02:00
6ed88af3e2 Fixed assert in octave filter 2022-10-11 10:50:45 +02:00
6aa1262c73 BUG: Added SeriesBiquad Pybind11 constructor 2022-10-11 10:43:31 +02:00
6c614d7e6c Added check, that for duplex mode both in- and output channels should be enabled 2022-10-11 10:05:28 +02:00
84a0d11d43 Removed one more debugtrace in lasp_slm.cpp 2022-10-11 10:00:02 +02:00
58ed65487b Removed Boost, removed DEBUGTRACE 2022-10-11 09:55:08 +02:00
62d63c332b Removed Boost dependency 2022-10-11 09:53:50 +02:00
c05ae4d6f4 Removed carma Armadillo converters as dependency 2022-10-11 09:51:21 +02:00
c3dabfc853 Added manual Armadillo - Numpy converters 2022-10-11 09:50:15 +02:00
e4ab05d36a Removed carma usage. This bugs as it changes the default allocator for armadillo, which does not work properly when native C++ threads do not register themselves as a thread for Python. We implemented the required convertors between Python and Armadillo ourselves. This also fixes the problem of Carma not being officially Python3.10 proof. 2022-10-11 09:43:36 +02:00
ce402acd15 Fixed bug of left mutex in RtAudio backend 2022-10-10 19:29:51 +02:00
ebe385b9db Cleaned up example code 2022-10-10 19:29:24 +02:00
fae906884e Textual improvements. Formatting (Neoformat) improvements. Let DataTypeDescriptor be a reference (to a global const std map in Daq class. Improved naming of certain functions. Better DaqData implementation, now we make sure memory alignment is good at all times. Switched functions arguments in DaqData constructor to comply with all other cases of first frame, then channel. Better naming of stream in RtAudio. Better handling of faulty function calling in RtAudio start(). Bugfix in RtAudio, did call right Daq::dtypeDescr() function --> result was that only first channel was copied to all channels. Added extra check in StreamMgr. Removed unnecessary TypedDaqData class. Use a safe queue in threaded in data handler. We can now remove the Boost code for that. 2022-10-10 19:17:38 +02:00
e7f80ce741 Could not find Python on Requiem. Added include_directories. Fixed bug of old Armadillo place 2022-10-07 09:34:32 +02:00
2363c11450 Fixed a deadlock and set one debugtrace to disabled in siggen_impl. 2022-10-06 21:48:57 +02:00
a581226f3d Merged Pybind11 branch. It is more ~ less ready 2022-10-06 21:45:36 +02:00
90a5d87419 Typo fix. Added 44.1 kHz as possible sampling frequency for computing filters. 2022-10-06 21:34:33 +02:00
f7a49dc4ff Added real time spectra: RtAps. All seem to work. Bugfix with SiQtys storage. Added extra lock guards for constructor and destructors of InDataHandlers (otherwise race conditions occur). Changed time_constant integer to fs_tau in AvPowerSpectra. 2022-10-06 21:13:21 +02:00
01674db1e8 Added setFilter possibility for Siggen, and removed one default debugtrace enabled 2022-10-05 21:51:47 +02:00
4b82977709 Set some DEBUGTRACES back to disabled by default 2022-10-05 19:23:00 +02:00
9324c9bc54 Added small debugtrace 2022-10-05 14:58:38 +02:00
3481e4f9ba Bugfix for OpenMP combinded with FFT. That one could not run in parallel in its current form. 2022-10-05 14:57:39 +02:00
12d6826140 Removed some compile warnings when compiling sub-projects. Removed warnings related to unknown pragmas in case of compiling without OpenMP support. Fixed some test problems 2022-10-05 13:39:45 +02:00
31ead60469 Added RtAudio and UlDAQ as subprojects that are compiled in. Fixed proper connection of UlDAQ. Set default sensitity to 1.0 for a new DaqChannel. Segfault bug fixed in DaqData::copyToRaw. Scan in background for devices when StreamMgr() is initialized. Fixed bug in storing of DaqConfigs to lasp_shelve. Set RtAudio to 5.2.0. 2022-10-05 11:27:46 +02:00
e900a5ddad Updated PPM to give clip indices length same as number of channels. Grouped the real time components to group dsp/rt. 2022-10-04 09:48:32 +02:00
5f1a207104 Added Peak Programme Meter, added functionality to clone SeriesBiquads without copying state. Improved recording callback mechanism. Added reset() function for IndataHandlers, which send a pointer to DAQ instance. 2022-10-04 09:27:27 +02:00
bb26fc6bcc Added suggested SLM down sampling factor, improved quite a lot of documentation. Measurement object can now work with old, as well as new measurement files. 2022-10-01 19:59:35 +02:00
59085b091f Some bugfixes and useful function additions 2022-09-28 09:41:02 +02:00
288e7c8dc5 Input stream and output stream both running. Added lockfree boost dependency to git modules, removed carma build as it is not required and every time again downloads Armadillo. Added functions to enable / disable all channels at once. Fixed a bug with RtAudio input streams. Fixed a bug in StreamMgr leading to segfaults (how to: use std::move ;)). 2022-09-27 17:20:45 +02:00
5ce5fba50b Sweep bug fixed. There is still something weird with RtAudio: only one channel is outputting signal. 2022-09-22 21:02:41 +02:00
b200b465f6 Code cleanup. RescanDaqdevices changed API. DaqApi string returns only apiname. Added comments, added Doxygen groups, exported FFT wisdom load / store to Python. SLM stores reference level squared. Added comments on SLM Lpeak, Leq and Lmax, a lot of using rte = std::runtime_error, added Window string conversion, Pybind11 enum no longer exports values, added cpp_enum to convert Qty to an enumerated value in C++ code. Removed class and methods to fill comboboxes. Does not belong in LASP, but in ACME instead. DeviceInfo has operator string(). 2022-09-22 10:18:38 +02:00
b629edde4c Updated pyproject and doxyfile, and readme 2022-09-22 10:11:47 +02:00
70891ceaf4 Switched to OpenMP for parallellizing for loops. Bugfixes in PowerSpectra() class. Added tests to check Parsevall hold. Improved lots of comments. Added module groups. Use CMake to specify code version number. Device info should be obtained from StreamMgr in Python code. 2022-09-03 20:59:14 +02:00
10749137ec Removed old C-code. This is not the way forward anymore 2022-09-03 16:10:12 +02:00
34239bfabf Removed old testing code. Improved Doxyfile, added logo to Doxygen. Added pytest testing config. 2022-09-03 16:07:44 +02:00
f8e8ab422b SLM seems to be working. Needs proper testing. Not yet fully coupled to Python code 2022-08-16 21:22:35 +02:00
c75f0dddc5 Split up indatahandler with python callback in part and part that calls the Python function. Threading is now handled using a thread pool. Some bugfixes 2022-08-14 21:00:22 +02:00