MCPcopy Create free account
hub / github.com/Serial-Studio/Serial-Studio / setExportEnabled

Method setExportEnabled

app/src/MDF4/Export.cpp:594–631  ·  view source on GitHub ↗

* @brief Enables or disables data export. */

Source from the content-addressed store, hash-verified

592 * @brief Enables or disables data export.
593 */
594void MDF4::Export::setExportEnabled(const bool enabled)
595{
596 const bool allow = enabled && AppState::instance().operationMode() != SerialStudio::ConsoleOnly;
597
598#ifdef BUILD_COMMERCIAL
599 const auto& tk = Licensing::CommercialToken::current();
600 if (tk.isValid() && SS_LICENSE_GUARD() && tk.featureTier() >= Licensing::FeatureTier::Trial) {
601 if (!allow && isOpen())
602 closeFile();
603
604 setConsumerEnabled(allow);
605 if (m_persistSettings)
606 m_settings.setValue("MDF4Export", allow);
607
608 Q_EMIT enabledChanged();
609 return;
610 }
611
612 closeFile();
613 setConsumerEnabled(false);
614 if (m_persistSettings)
615 m_settings.setValue("MDF4Export", false);
616
617 Q_EMIT enabledChanged();
618#else
619 closeFile();
620 m_exportEnabled.store(false, std::memory_order_relaxed);
621 if (m_persistSettings)
622 m_settings.setValue("MDF4Export", false);
623
624 Q_EMIT enabledChanged();
625#endif
626
627 if (enabled)
628 Misc::Utilities::showMessageBox(
629 tr("MDF4 Export is a Pro feature."),
630 tr("This feature requires a license. Please purchase one to enable MDF4 export."));
631}
632
633/**
634 * @brief Receives timestamped frame data and enqueues it for export.

Callers 2

applyExportTogglesMethod · 0.45

Calls 3

operationModeMethod · 0.80
featureTierMethod · 0.80
isValidMethod · 0.45

Tested by

no test coverage detected