Commit Graph

144 Commits

Author SHA1 Message Date
vsonnier
9c32b97910 Make Gradient constructor using doubles instead of floats, to prevent narrowing-conversion warnings down the road 2020-01-04 21:20:36 +01:00
Benoît Allard
f00efe7e58 Fix missing import for GLX on linux. (#767)
Haha, this looks indeed useful, so let's take it to master.
2019-12-29 17:32:53 +01:00
antihax
cd6df01166 Winsock.h was included multiple times through windows.h causing compile errors (#772)
* Prevent redefinition of winsock.

* Remove redundant windows.h import
2019-12-11 06:50:06 +01:00
Vincent Sonnier
4f7dcd4d89
Use Google Turbo Color for Default Theme WF colors (#748)
* Use Google Turbo Color for Default Theme WF colors

* Added Default Jet Waterfall as the old WF color theme

* Oups duplicate IDs for widgets is wrong
2019-09-23 07:24:04 +02:00
vsonnier
9bf25b8feb Fix #739: removed usage of std::binary_function deprecated after C++11 2019-06-02 18:56:00 +02:00
Charles J. Cliffe
0f098e3cbb Compiler warnings: comment unused params 2019-03-14 23:07:51 -04:00
Diane Bruce
f449a65457 Add __FreeBSD__ where needed to properly compile on FreeBSD + fix for Windows 2019-03-11 20:14:19 +01:00
vsonnier
1d2e35cbac More Spin locks experiments 2019-03-05 06:44:58 +01:00
vsonnier
8dfc7503f2 Fix wrong condition in DataTree 2019-03-03 13:22:29 +01:00
vsonnier
5ab44e3104 Use spin-locks for short-lived, non-recursive locking sequences 2019-03-03 10:36:10 +01:00
vsonnier
44a9274cb1 More fake partial template specialization 2019-03-01 22:18:43 +01:00
vsonnier
dd92e75cda Try to workaround explicit specialization in class scope error for GCC and friends 2019-02-28 22:05:27 +01:00
vsonnier
3b47045d28 Rework of DataElement to use more templates and much less memcpy... 2019-02-22 20:19:30 +01:00
vsonnier
2f84df3c47 Make DataTree throw exception objects, instead of dynamically allocated ones for simplicity 2018-06-08 05:58:55 +02:00
vsonnier
e46d7f9735 Migration to wxWidgets v3.11:
- Seen on Windows: Bookmarkview slow update because the controls are self-reacting to the rebuild control events, so fix nullify them during control rebuilding.
- Update OpenGL initialization using v3.1 level context and canvas attributes instead of the deprecated calls.
2018-03-11 11:47:14 +01:00
vsonnier
c1e60f31f5 Fix #615 Be smarter when looking for font resources 2018-02-15 19:02:56 +01:00
vsonnier
f1208c7f5c When saving bookmarks, use active information when available
+ Fixed std::string <=> std::wstring conversions using wxString
+ cleanups.
2018-01-08 19:26:34 +01:00
vsonnier
aec0100f78 ThreadBlockingQueue : remove useless/dangerous operations, forbid both copy and assignment. 2017-09-10 19:35:12 +02:00
vsonnier
3f90cbb858 Flush queues on terminate() calls to unblock push()s and so ease threads termination 2017-08-28 20:53:21 +02:00
vsonnier
c64baab99d Threads vs. Queues lifetimes, cleanups.
- Ideally Queues must outlive the threads using them, but wasn't done so. Yes, std::shared_ptr them!
- Now queues are always valid in the context of the threads using them.
- No longer need tedious queues deallocation by the original owner.
- Misc cleanups.
2017-08-13 19:19:25 +02:00
vsonnier
8f608bbf5c Cleanup: remove some unused params and variables, conversion warnings seen with #550. 2017-05-29 20:22:10 +02:00
vsonnier
56b56685e0 Yet Another Semicolon After Endif left... (#549) 2017-05-27 15:28:42 +02:00
vsonnier
d170f731c5 Fix #549, plus more usual syntax for #548 2017-05-27 07:46:28 +02:00
vsonnier
9b0ce69e8f Use the nuclear option to solve the hung problem:
Besides deadlocks, a thread can in theory get stuck in a blocking pop(),
not seeing the stopping flag in particular. So assure liveness by making all
pop() timed pop.
2017-05-25 09:32:27 +02:00
vsonnier
77a82e1617 Another fix for the neverending hung application bugs:
- Clear up DemodulatorInstance garbage collection, only do it in a single thread (AppFrame::OnIdle)
- Add a specific mutex lock for the list of deleted demodulators,
- Add a specific lock to control DemodulatorInstance thread lifetimes, protecting IsTerminated() of concurrent join and delete
2017-05-25 08:03:08 +02:00
vsonnier
4b323e9863 Make ReBuffer refcount management automatic, using std::shared_ptr:
- No longer need to call setRefCount() / decRefCount()
- Restore old ThreadBlockingQueue using std::deque, for std::shared_ptr correct behaviour.
2017-05-24 12:28:37 +02:00
vsonnier
af20f680a4 Clearer ThreadBlockingQueue impl by using a field to hold size... 2017-05-21 21:04:12 +02:00
vsonnier
41c7dd231b Fix tabs introduced in latest commits... 2017-05-21 10:03:21 +02:00
vsonnier
e0af609224 Use a circular buffer for ThreadBlockingQueue (allocation-free) 2017-05-21 09:39:29 +02:00
vsonnier
c1fef72103 Use more a reliable time source in Windows for the Timer class 2017-05-20 13:31:55 +02:00
vsonnier
0a19686b51 Remove 'threadlocal' pedantic and very limited usage that is not supported on all platforms 2017-04-05 19:28:18 +02:00
Charles J. Cliffe
8dfb8ea3f1 minor fixes 2017-02-16 21:54:18 -05:00
vsonnier
7d412eccb6 BLOCKING_QUEUE: display current Thread id in both hex and decimal so both worlds are happy (GDB and Visual Studio) 2017-02-14 18:42:12 +01:00
vsonnier
25f7ba386d BLOCKING_QUEUE: remove ThreadBlockingQueue dependency to ThreadQueue, remove ThreadQueue.h from CMakeLists 2017-02-14 18:42:11 +01:00
vsonnier
c7467a88bc BLOCKING_QUEUE: prepare by raising up max queue lenghts
BLOCKING_QUEUE: Replaced ThreadQueue usage by ThreadBlockingQueue usage
BLOCKING_QUEUE: instrument all push() with timeouts, showed some call have to be non-blocking...
BLOCKING_QUEUE: tuned push()/try_push()
2017-02-14 18:42:05 +01:00
vsonnier
d3db510643 pre-BLOCKING_QUEUE: Simplified, fixed ThreadQueue, VisualProcessor (use std:deque, cleaner templates, max_size fixes) 2017-02-12 12:53:50 +01:00
vsonnier
c00060a7d9 FIX: size_t definition not visible on some systems, so include stddef.h explicitly 2017-01-29 17:10:44 +01:00
vsonnier
115b0ffa58 CLEANUP: some compiler and static analysis warnings 2017-01-28 14:57:27 +01:00
Charles J. Cliffe
5c72b97309 Merge branch 'develop' into master 2017-01-02 21:22:13 -05:00
Charles J. Cliffe
3ec14fbe38 Licence fix, add SPDX-License-Identifier, remove unused code files 2017-01-02 21:07:43 -05:00
Charles J. Cliffe
68495b4d90 Dual bookmark backup files with user notification, auto-recovery and bail; save top level branch expand states 2016-12-27 13:01:19 -05:00
Charles J. Cliffe
cf056acfe6 Load/Save view ranges 2016-12-27 00:46:12 -05:00
Charles J. Cliffe
2cc05baaa1 Bookmarks/Recents now loading & saving 2016-12-13 21:09:44 -05:00
Charles J. Cliffe
746b7cfcae Bookmarks now save on exit; not loaded on startup yet. 2016-12-12 23:47:05 -05:00
Charles J. Cliffe
020cef12c9 Recents list, DataTree rewindAll(), Bookmark view updates 2016-10-05 19:10:01 -04:00
Charles J. Cliffe
95fd357c72 Add font scale support to meter panel 2016-07-21 18:43:11 -04:00
Charles J. Cliffe
4d2ea8d08a Merge pull request #398 from vsonnier/thread_clean_3
thread_clean_3: Multithreading AudioThread hardening, use of try_pop() and more.
2016-07-08 21:28:11 -04:00
vsonnier
21c8a81c32 TH_CLEAN_3.5: push() cleanup side of things, assure SDRThread::readStream() to actually check for full + make ThreadQueue notify even in case on not-successfull push(), make it spam notify_all() everytime 2016-07-08 23:30:15 +02:00
Charles J. Cliffe
baa5d93ba6 Merge branch 'master' into gain_gui_cleanup 2016-07-06 21:00:04 -04:00
Charles J. Cliffe
a87c58c4a8 Initial Meter Panel work 2016-07-03 20:59:49 -04:00