From 50ad75f2a2a607d764e799b7455a9ef053f0ed32 Mon Sep 17 00:00:00 2001 From: Ray Speth Date: Mon, 14 Nov 2016 20:34:45 -0500 Subject: [PATCH] [Reactor] Make ReactorNet uncopyable --- include/cantera/zeroD/ReactorNet.h | 5 +++-- src/zeroD/ReactorNet.cpp | 9 ++------- 2 files changed, 5 insertions(+), 9 deletions(-) diff --git a/include/cantera/zeroD/ReactorNet.h b/include/cantera/zeroD/ReactorNet.h index 066366903..1b459683c 100644 --- a/include/cantera/zeroD/ReactorNet.h +++ b/include/cantera/zeroD/ReactorNet.h @@ -24,7 +24,8 @@ class ReactorNet : public FuncEval { public: ReactorNet(); - virtual ~ReactorNet(); + virtual ~ReactorNet() {}; + ReactorNet(const ReactorNet&) = delete; //! @name Methods to set up a simulation. //@{ @@ -216,7 +217,7 @@ protected: void initialize(); std::vector m_reactors; - Integrator* m_integ; + std::unique_ptr m_integ; doublereal m_time; bool m_init; bool m_integrator_init; //!< True if integrator initialization is current diff --git a/src/zeroD/ReactorNet.cpp b/src/zeroD/ReactorNet.cpp index ffa8c2f55..d85da613c 100644 --- a/src/zeroD/ReactorNet.cpp +++ b/src/zeroD/ReactorNet.cpp @@ -15,13 +15,13 @@ namespace Cantera { ReactorNet::ReactorNet() : - m_integ(0), m_time(0.0), m_init(false), m_integrator_init(false), + m_integ(newIntegrator("CVODE")), + m_time(0.0), m_init(false), m_integrator_init(false), m_nv(0), m_rtol(1.0e-9), m_rtolsens(1.0e-4), m_atols(1.0e-15), m_atolsens(1.0e-6), m_maxstep(0.0), m_maxErrTestFails(0), m_verbose(false) { - m_integ = newIntegrator("CVODE"); suppressErrors(true); // use backward differencing, with a full Jacobian computed @@ -31,11 +31,6 @@ ReactorNet::ReactorNet() : m_integ->setIterator(Newton_Iter); } -ReactorNet::~ReactorNet() -{ - delete m_integ; -} - void ReactorNet::setInitialTime(double time) { m_time = time;