azonenberg changed the topic of #scopehal to: ngscopeclient, libscopehal, and libscopeprotocols development and testing | https://github.com/ngscopeclient/scopehal-apps | Logs: https://libera.irclog.whitequark.org/scopehal
Degi has quit [Ping timeout: 240 seconds]
Degi has joined #scopehal
<_whitenotifier-9> [scopehal] azonenberg pushed 1 commit to master [+0/-0/±25] https://github.com/ngscopeclient/scopehal/compare/0200ba5184bb...fe1e6be9cf75
<_whitenotifier-9> [scopehal] azonenberg fe1e6be - Massive refactoring to use shared_ptr for all instrument objects
<_whitenotifier-9> [scopehal-apps] azonenberg pushed 1 commit to master [+0/-0/±41] https://github.com/ngscopeclient/scopehal-apps/compare/47f131a2dce3...03a571911ca4
<_whitenotifier-9> [scopehal-apps] azonenberg 03a5719 - Refactoring to use shared_ptr for all instrument objects
<d1b2> <azonenberg> ok that's the first refactoring landed. All instrument creation and (almost) all code handling instruments in ngscopeclient uses shared_ptr's
<d1b2> <azonenberg> while channels still use raw pointers to refer to their parent instrument (this will become a weak_ptr eventually)
<d1b2> <azonenberg> Next cleanup is going to be unifying the per-instrument-class worker threads into one
<d1b2> <azonenberg> (i hope i didnt introduce any dangling reference bugs during this refactoring but please keep an eye out for any evidence of a scope sitting around after it should have been destroyed)
<d1b2> <azonenberg> Making good progress on the second refactoring. Not yet pushed, and we still have separate state/context objects per type of instrument and one thread spawned per instrument per type (so a scope + meter would get two copies of the same unified thread procedure)
<d1b2> <azonenberg> needs a couple more hours to do that
<d1b2> <azonenberg> then once i get that done, the next step will be unifying all of the state so i can have one thread per instrument no matter how many types it implements
<_whitenotifier-9> [stm32-cpp] azonenberg pushed 1 commit to master [+1/-0/±1] https://github.com/azonenberg/stm32-cpp/compare/f0606d8992ef...cfc7a8f01f96
<_whitenotifier-9> [stm32-cpp] azonenberg cfc7a8f - Initial RAII wrapper for fault disabling