From db0f4ab3e09a174eda80e6763515acebb95ac877 Mon Sep 17 00:00:00 2001 From: Thorsten Liebig Date: Thu, 2 Sep 2010 22:16:37 +0200 Subject: [PATCH] MT-engine has access to MT-operator --- FDTD/engine_multithread.cpp | 3 ++- FDTD/engine_multithread.h | 3 ++- FDTD/operator_multithread.h | 1 + 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/FDTD/engine_multithread.cpp b/FDTD/engine_multithread.cpp index 55eed90..44b4121 100644 --- a/FDTD/engine_multithread.cpp +++ b/FDTD/engine_multithread.cpp @@ -44,8 +44,9 @@ Engine_Multithread* Engine_Multithread::New(const Operator_Multithread* op, unsi return e; } -Engine_Multithread::Engine_Multithread(const Operator_SSE_Compressed* op) : Engine_SSE_Compressed(op) +Engine_Multithread::Engine_Multithread(const Operator_Multithread* op) : Engine_SSE_Compressed(op) { + m_Op_MT = op; m_type = SSE; m_barrier_VoltUpdate = 0; m_barrier_VoltExcite = 0; diff --git a/FDTD/engine_multithread.h b/FDTD/engine_multithread.h index 6b5ffe3..07f9ec6 100644 --- a/FDTD/engine_multithread.h +++ b/FDTD/engine_multithread.h @@ -90,7 +90,8 @@ public: virtual bool IterateTS(unsigned int iterTS); protected: - Engine_Multithread(const Operator_SSE_Compressed* op); + Engine_Multithread(const Operator_Multithread* op); + const Operator_Multithread* m_Op_MT; boost::thread_group m_thread_group; boost::barrier *m_startBarrier, *m_stopBarrier; boost::barrier *m_barrier_VoltUpdate, *m_barrier_VoltExcite, *m_barrier_PreVolt, *m_barrier_PostVolt; diff --git a/FDTD/operator_multithread.h b/FDTD/operator_multithread.h index ddc17af..d6333d2 100644 --- a/FDTD/operator_multithread.h +++ b/FDTD/operator_multithread.h @@ -24,6 +24,7 @@ class Operator_Multithread : public Operator_SSE_Compressed { + friend class Engine_Multithread; friend class Operator_Thread; public: //! Create a new operator