sawinglogz
eaf4ab69cf
Update 700X warning based on new test data.
2020-07-24 12:51:22 -04:00
Guy Scharf
b0d4fcd628
Merge branch 'master' into updater
2020-07-21 13:51:43 -07:00
Guy Scharf
01c663b692
Check for invalid version strings in versions.xml; fix display problem; update release notes for Phil
2020-07-21 13:50:06 -07:00
sawinglogz
cfabdbe742
Improve gcc fix from d2fc5ac
.
...
Evidently gcc doesn't recognize inline forward declaration, but clang does.
I wonder who is right?
This was previously addressed by adding an #include. Instead, this patch
adds a standalone forward declaration of the QXmlStreamReader/Writer classes.
This has been tested and verified to compile with gcc and clang.
2020-07-21 13:51:20 -04:00
sawinglogz
7316ac676c
Add a menu item to create a zip of all diagnostic logs.
...
Also fix a buffering issue in XmlRecorder that left devices.xml empty
in the zip.
2020-07-21 13:25:17 -04:00
sawinglogz
5e9d391ccc
Fix a rare race condition when shutting down the logger.
...
This resulted in an occasional use-after-free crash every once in a while.
2020-07-21 13:25:17 -04:00
sawinglogz
162e5695b1
Update the OSCAR data zip to use the live debug log instead of creating one.
...
Also fix the logger so that messages are logged immediately rather than once
per second.
2020-07-21 13:25:17 -04:00
sawinglogz
20dfb666b0
Write the debug log to a file within the OSCAR data folder.
...
Also immediately emit debug messages to console even before the UI is
initialized.
And present a useful error if the OSCAR data folder can't be created.
2020-07-21 13:25:17 -04:00
sawinglogz
6a658b3be0
Enable serial device recording in the main application.
...
This is transparent to the user and is recorded into a log directory within
the OSCAR_Data directory.
Also add log rotation so that these logs don't grow forever.
2020-07-21 13:25:16 -04:00
Guy Scharf
d8a7cf2133
Remove unused code -- no effect on compilation
2020-07-19 16:42:28 -07:00
Guy Scharf
dc78287775
Update release notes.
2020-07-19 11:49:23 -07:00
Guy Scharf
6bf3a9c7e3
Make versions.xml case insensitive, update release notes
2020-07-19 11:44:21 -07:00
sawinglogz
a8f6bca387
Add monochrome printing to release notes.
2020-07-18 14:58:16 -04:00
sawinglogz
a339b4679d
First pass at adding B&W support for daily report printing.
2020-07-18 14:56:00 -04:00
sawinglogz
5765da4096
Fix double printing of flow waveform when there's more oximetry than CPAP.
2020-07-18 13:17:53 -04:00
sawinglogz
65b4440428
Add preference for B&W printing.
2020-07-18 12:50:34 -04:00
harre
d2fc5ac5d4
Add missing include to fix compile error
2020-07-11 01:41:31 +02:00
sawinglogz
d88084a342
Disable oximeter download tests by default for now.
...
They're not yet stable enough to be enabled as regression tests in master.
2020-07-10 14:55:25 -04:00
sawinglogz
eb5bef5fba
Move DeviceConnectionManager's global static variable into a local static.
...
This fixes the same issue that was just fixed in XmlReplayEvent, though
this one hadn't yet caused a crash.
2020-07-10 12:50:34 -04:00
sawinglogz
c7db24877c
Split XML recording/replay into its own files.
...
The only code change was to move XmlReplayEvent::s_factories into
a local static variable accessed by XmlReplayEvent::factories() to
ensure that it will be initialized before it is used.
Otherwise there is no guarantee in C++11 that global variables
in different source files (translation units) will be initialized
in any particular order.
2020-07-10 12:44:15 -04:00
sawinglogz
610f6b8188
Reorder function declarations within XmlReplay and XmlReplayEvent for easier reference.
...
No functional change.
2020-07-10 11:51:54 -04:00
sawinglogz
c9ebc0d175
Move function definitions out of XmlReplayEvent and XmlReplayLock class declarations.
2020-07-10 11:51:54 -04:00
sawinglogz
d5cb629069
Minor device connection manager clean-up.
...
Also fix a minor bug where the wrong error code was reported in
a rare edge case.
2020-07-10 11:51:53 -04:00
sawinglogz
bdda964bf2
Add documentation and comments to device connection manager.
...
No change to code.
2020-07-10 11:51:53 -04:00
sawinglogz
e47610cf5c
Minor cutting/pasting in device connection manager.
...
No functional change.
2020-07-10 11:51:53 -04:00
sawinglogz
09a96b893e
Split connection XML recording/replay into separate files.
...
This is significant now because it will allow accurate recording of
multiple simultaneous connections.
This is important for the future because it establishes the
necessary infrastructure for recording downloaded sessions into their
own files so that they can be saved as backups.
2020-07-10 11:51:53 -04:00
sawinglogz
2d2e44fd36
Generalize XML record/replay base classes.
2020-07-10 11:51:53 -04:00
sawinglogz
a651e1405d
Add record/replay test of downloading all sessions from oximeter.
...
Also fix a crash when the recording is truncated.
2020-07-10 11:51:53 -04:00
sawinglogz
e6258d321e
Allow limited reordering of serial port replay.
...
Now a replayed read() will return the response that follows the
matching write().
When calls are made in the same order as they were during recording,
this will have no effect, and the original ordering will be replayed.
However, minor changes to the code should still result in sensible
replay until a new recording can be made.
2020-07-10 11:51:53 -04:00
sawinglogz
918f4af2c1
Add support for signals and serial port reading to XML replay.
...
Replay now passes its initial regression test when the oximeter is unplugged.
2020-07-10 11:51:52 -04:00
sawinglogz
5947751291
Add playback of most serial port operations.
...
read() isn't yet tested because it requires the readyRead signal.
2020-07-10 11:51:52 -04:00
sawinglogz
92d0af220d
Make XML recording thread-safe.
2020-07-10 11:51:52 -04:00
sawinglogz
8fbf665b89
Simplify XmlReplayEvent retrieval and add support for matching id.
2020-07-10 11:51:52 -04:00
sawinglogz
d350e47382
Track connections by name only, not by type as well.
...
Also rename getAvailableSerialPorts for clarity.
2020-07-10 11:51:52 -04:00
sawinglogz
553cf59a95
Move connection creation to DeviceConnectionManager.
...
Calling openConnection will return an open connection or nullptr.
Deleting the connection will close it.
SerialPort now uses this under the hood, while still presenting
the QSerialPort-compatible interface.
2020-07-10 11:51:52 -04:00
sawinglogz
7c98af3f86
Refactor class hierarchy for serial port XML recording.
2020-07-10 11:51:51 -04:00
sawinglogz
1630051dd1
Generate XML tags for every serial port connection event.
2020-07-10 11:51:51 -04:00
sawinglogz
3210ecd1ba
Add plumbing for intercepting and logging serial port activity.
2020-07-10 11:51:51 -04:00
sawinglogz
3afa8c87c1
Minor tidying and documentation, no functional change.
2020-07-10 11:51:51 -04:00
sawinglogz
ac1281c1d9
Add playback of serial port scan, along with supporting infrastructure.
2020-07-10 11:51:51 -04:00
sawinglogz
efbb967b5c
Add DeviceConnectionManager class to record serial port scan.
2020-07-10 11:51:51 -04:00
sawinglogz
cd29593280
Add XML serialization/deserialization to SerialPortInfo.
2020-07-10 11:51:51 -04:00
Guy Scharf
90b8a89ca8
Update release notes to reflect recent changes
2020-07-07 14:14:45 -07:00
Guy Scharf
a89c24a194
Fix maximum zoom in when clicking on graph with popup menu visible
2020-07-07 11:07:44 -07:00
Guy Scharf
47c8ece333
Exclude Journal in calculating last day of Overview graph
...
This deals with notes that may be entered for future dates
and which should not affect the Overview graphs.
2020-07-06 11:51:09 -07:00
Guy Scharf
ed1871215e
Change language about "guessed settings" to clarify that they are missing and yesterday's shown.
2020-07-06 10:46:08 -07:00
Guy Scharf
07aa2ad883
Merge branch 'master' into guess
2020-07-05 17:59:27 -07:00
Guy Scharf
aad1535979
WIP: Guessed settings. Code is test only.
2020-07-05 11:19:19 -07:00
Guy Scharf
7e751a80f7
Fix problems with changing auto check interval
2020-07-05 10:58:25 -07:00
Guy Scharf
70262fa425
Fix reference to old include file in auto check updates
2020-07-05 00:39:55 -07:00