From 405b255344d1900aacaf2e898ed62c712d5bc7b4 Mon Sep 17 00:00:00 2001 From: "Ryan@WorkStation" Date: Wed, 20 Mar 2024 14:13:16 -0400 Subject: [PATCH] QDC: fix bug when charge sensitiy change, parity change --- ClassDigitizer.cpp | 4 +++- DigiSettingsPanel.cpp | 11 +++++++++++ 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/ClassDigitizer.cpp b/ClassDigitizer.cpp index c1a93b6..3243d8c 100644 --- a/ClassDigitizer.cpp +++ b/ClassDigitizer.cpp @@ -1339,8 +1339,10 @@ void Digitizer::SetOptimialAggOrg(){ uint32_t aggOrg = std::floor(maxAggOrg) ; int bufferSize = pow(2, aggOrg) * EventAgg * eventSize; printf("================= BufferSize : %d kSample | system memeory : %d kSample \n", bufferSize / 1024, MemorySizekSample); - + WriteRegister(DPP::AggregateOrganization, aggOrg); + //TODO when maxAggOrg < 1, need to reduce the Event/Agg + } \ No newline at end of file diff --git a/DigiSettingsPanel.cpp b/DigiSettingsPanel.cpp index 106d4d0..4d20e44 100644 --- a/DigiSettingsPanel.cpp +++ b/DigiSettingsPanel.cpp @@ -397,6 +397,17 @@ void DigiSettingsPanel::SetUpComboBoxBit(RComboBox * &cb, QString label, QGridLa int chID = ch < 0 ? chSelection[ID]->currentData().toInt() : ch; + if( ch == -1 && chID == -1) { + + for(int kk = 0; kk < digi[ID]->GetNumRegChannels(); kk++){ + digi[ID]->SetBits(para, bit, cb->currentData().toUInt(), kk); + } + + UpdatePanelFromMemory(); + emit UpdateOtherPanels(); + return; + } + digi[ID]->SetBits(para, bit, cb->currentData().toUInt(), chID); if( para.IsCoupled() == true && chID >= 0 ) digi[ID]->SetBits(para, bit, cb->currentData().toUInt(), chID%2 == 0 ? chID + 1 : chID - 1); UpdatePanelFromMemory();