From 0f176d56c137c99080bdd774d18b529c24b234e3 Mon Sep 17 00:00:00 2001
From: wierenga <sdos@astron.nl>
Date: Mon, 24 Apr 2006 12:30:32 +0000
Subject: [PATCH] BugID: 708 Keep modified state of beamformer weights
 registers.

---
 MAC/APL/PIC/RSPDriver/src/SetWeightsCmd.cc | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/MAC/APL/PIC/RSPDriver/src/SetWeightsCmd.cc b/MAC/APL/PIC/RSPDriver/src/SetWeightsCmd.cc
index 2b881b4d29c..b81b5b05705 100644
--- a/MAC/APL/PIC/RSPDriver/src/SetWeightsCmd.cc
+++ b/MAC/APL/PIC/RSPDriver/src/SetWeightsCmd.cc
@@ -74,7 +74,7 @@ void SetWeightsCmd::ack(CacheBuffer& /*cache*/)
   getPort()->send(ack);
 }
 
-void SetWeightsCmd::apply(CacheBuffer& cache, bool /*setModFlag*/)
+void SetWeightsCmd::apply(CacheBuffer& cache, bool setModFlag)
 {
   // copy to offset N_LOCAL_XLETS in the cache
   Range dst_range = Range(MEPHeader::N_LOCAL_XLETS,
@@ -89,6 +89,11 @@ void SetWeightsCmd::apply(CacheBuffer& cache, bool /*setModFlag*/)
       cache.getBeamletWeights()()(0, cache_rcu, dst_range) =
 	m_event->weights()(0, input_rcu, Range::all());
 
+      if (setModFlag) {
+	cache.getCache().getBFState().modified(cache_rcu * MEPHeader::N_PHASE);
+	cache.getCache().getBFState().modified(cache_rcu * MEPHeader::N_PHASE + 1);
+      }
+
       input_rcu++;
     }
   }
-- 
GitLab