From dfacab67184a6341d0081fcc7a617def73f808da Mon Sep 17 00:00:00 2001 From: Walter Van Herck <w.van.herck@fz-juelich.de> Date: Fri, 3 Feb 2017 17:06:34 +0100 Subject: [PATCH] Removed unnecessary copy of SimulationElement vector in MainComputation --- Core/Computation/IComputationTerm.h | 2 +- Core/Computation/MainComputation.cpp | 6 +--- .../Computation/ParticleLayoutComputation.cpp | 9 +++--- Core/Computation/ParticleLayoutComputation.h | 2 +- .../RoughMultiLayerComputation.cpp | 9 +++--- Core/Computation/RoughMultiLayerComputation.h | 2 +- Core/Computation/SpecularComputation.cpp | 7 ++--- Core/Computation/SpecularComputation.h | 2 +- Core/Simulation/GISASSimulation.cpp | 2 +- Core/Simulation/GISASSimulation.h | 2 +- Core/Simulation/OffSpecSimulation.cpp | 2 +- Core/Simulation/OffSpecSimulation.h | 2 +- Core/Simulation/Simulation.cpp | 4 +-- Core/Simulation/Simulation.h | 2 +- auto/Wrap/doxygen_core.i | 14 ++++----- auto/Wrap/libBornAgainCore.py | 12 ++++---- auto/Wrap/libBornAgainCore_wrap.cpp | 30 +++++++++---------- 17 files changed, 50 insertions(+), 59 deletions(-) diff --git a/Core/Computation/IComputationTerm.h b/Core/Computation/IComputationTerm.h index e3ad3594a40..c44e79ebe87 100644 --- a/Core/Computation/IComputationTerm.h +++ b/Core/Computation/IComputationTerm.h @@ -37,7 +37,7 @@ public: //! Calculate scattering intensity for each SimulationElement //! returns false if nothing needed to be calculated - virtual bool eval(const SimulationOptions& options, + virtual void eval(const SimulationOptions& options, ProgressHandler* progress, bool polarized, const std::vector<SimulationElement>::iterator& begin_it, diff --git a/Core/Computation/MainComputation.cpp b/Core/Computation/MainComputation.cpp index aa409694b14..eb763f1954b 100644 --- a/Core/Computation/MainComputation.cpp +++ b/Core/Computation/MainComputation.cpp @@ -82,16 +82,12 @@ void MainComputation::run() // This allows them to be added and normalized together to the beam afterwards void MainComputation::runProtected() { - std::vector<SimulationElement> layer_elements; - std::copy(m_begin_it, m_end_it, std::back_inserter(layer_elements)); bool polarized = mP_multi_layer->containsMagneticMaterial(); // add all IComputationTerms: for (const IComputationTerm* comp: m_computation_terms) { if (!m_progress->alive()) return; - if (comp->eval(m_sim_options, m_progress, polarized, - layer_elements.begin(), layer_elements.end()) ) - addElementsWithWeight(layer_elements.begin(), layer_elements.end(), m_begin_it, 1.0); + comp->eval(m_sim_options, m_progress, polarized, m_begin_it, m_end_it ); } } diff --git a/Core/Computation/ParticleLayoutComputation.cpp b/Core/Computation/ParticleLayoutComputation.cpp index 194e62c1baf..9b148933891 100644 --- a/Core/Computation/ParticleLayoutComputation.cpp +++ b/Core/Computation/ParticleLayoutComputation.cpp @@ -33,7 +33,7 @@ ParticleLayoutComputation::ParticleLayoutComputation(const MultiLayer* p_multila {} //! Computes scattering intensity for given range of simulation elements. -bool ParticleLayoutComputation::eval( +void ParticleLayoutComputation::eval( const SimulationOptions& options, ProgressHandler* progress, bool polarized, @@ -48,15 +48,14 @@ bool ParticleLayoutComputation::eval( DelayedProgressCounter counter(100); for (std::vector<SimulationElement>::iterator it = begin_it; it != end_it; ++it) { if (!progress->alive()) - return false; + return; double alpha_f = it->getAlphaMean(); size_t n_layers = mp_multilayer->getNumberOfLayers(); if (n_layers > 1 && alpha_f < 0) { - it->setIntensity(0.0); // zero for transmission with multilayers (n>1) + continue; // zero for transmission with multilayers (n>1) } else { - it->setIntensity(p_strategy->evaluate(*it) * total_surface_density); + it->addIntensity(p_strategy->evaluate(*it) * total_surface_density); } counter.stepProgress(progress); } - return true; } diff --git a/Core/Computation/ParticleLayoutComputation.h b/Core/Computation/ParticleLayoutComputation.h index 9d545efc7a7..76e378b2cbf 100644 --- a/Core/Computation/ParticleLayoutComputation.h +++ b/Core/Computation/ParticleLayoutComputation.h @@ -33,7 +33,7 @@ public: const MultiLayer* p_multilayer, const IFresnelMap* p_fresnel_map, const ILayout* p_layout, size_t layer_index); - bool eval(const SimulationOptions& options, + void eval(const SimulationOptions& options, ProgressHandler* progress, bool polarized, const std::vector<SimulationElement>::iterator& begin_it, diff --git a/Core/Computation/RoughMultiLayerComputation.cpp b/Core/Computation/RoughMultiLayerComputation.cpp index b0e8c80b292..ce7e5fd5017 100644 --- a/Core/Computation/RoughMultiLayerComputation.cpp +++ b/Core/Computation/RoughMultiLayerComputation.cpp @@ -48,22 +48,21 @@ RoughMultiLayerComputation::RoughMultiLayerComputation(const MultiLayer *p_multi RoughMultiLayerComputation::~RoughMultiLayerComputation() {} -bool RoughMultiLayerComputation::eval( +void RoughMultiLayerComputation::eval( const SimulationOptions&, ProgressHandler* progress, bool, const std::vector<SimulationElement>::iterator& begin_it, const std::vector<SimulationElement>::iterator& end_it) const { if (mp_multilayer->requiresMatrixRTCoefficients()) { - return false; + return; } DelayedProgressCounter counter(100); for (std::vector<SimulationElement>::iterator it = begin_it; it != end_it; ++it) { if (!progress->alive()) - return false; - it->setIntensity(evaluate(*it)); + return; + it->addIntensity(evaluate(*it)); counter.stepProgress(progress); } - return true; } double RoughMultiLayerComputation::evaluate(const SimulationElement& sim_element) const diff --git a/Core/Computation/RoughMultiLayerComputation.h b/Core/Computation/RoughMultiLayerComputation.h index 45055761950..74fda308731 100644 --- a/Core/Computation/RoughMultiLayerComputation.h +++ b/Core/Computation/RoughMultiLayerComputation.h @@ -34,7 +34,7 @@ public: const IFresnelMap* p_fresnel_map); ~RoughMultiLayerComputation(); - bool eval(const SimulationOptions& options, + void eval(const SimulationOptions& options, ProgressHandler* progress, bool polarized, const std::vector<SimulationElement>::iterator& begin_it, diff --git a/Core/Computation/SpecularComputation.cpp b/Core/Computation/SpecularComputation.cpp index 723a28ca734..10927382b01 100644 --- a/Core/Computation/SpecularComputation.cpp +++ b/Core/Computation/SpecularComputation.cpp @@ -24,13 +24,13 @@ SpecularComputation::SpecularComputation(const MultiLayer* p_multi_layer, : IComputationTerm(p_multi_layer, p_fresnel_map) {} -bool SpecularComputation::eval( +void SpecularComputation::eval( const SimulationOptions&, ProgressHandler*, bool, const std::vector<SimulationElement>::iterator& begin_it, const std::vector<SimulationElement>::iterator& end_it) const { if (mp_multilayer->requiresMatrixRTCoefficients()) - return false; + return; for (auto it = begin_it; it != end_it; ++it) { if (it->containsSpecularWavevector()) { @@ -43,9 +43,6 @@ bool SpecularComputation::eval( continue; double intensity = std::norm(R)*sin_alpha_i/solid_angle; it->setIntensity(intensity); - } else { - it->setIntensity(0.0); } } - return true; } diff --git a/Core/Computation/SpecularComputation.h b/Core/Computation/SpecularComputation.h index bba8bdc8f2c..f86107b456e 100644 --- a/Core/Computation/SpecularComputation.h +++ b/Core/Computation/SpecularComputation.h @@ -27,7 +27,7 @@ class SpecularComputation final : public IComputationTerm public: SpecularComputation(const MultiLayer* p_multi_layer, const IFresnelMap* p_fresnel_map); - bool eval(const SimulationOptions& options, + void eval(const SimulationOptions& options, ProgressHandler* progress, bool polarized, const std::vector<SimulationElement>::iterator& begin_it, diff --git a/Core/Simulation/GISASSimulation.cpp b/Core/Simulation/GISASSimulation.cpp index 174a04704be..251500c2ca6 100644 --- a/Core/Simulation/GISASSimulation.cpp +++ b/Core/Simulation/GISASSimulation.cpp @@ -52,7 +52,7 @@ void GISASSimulation::prepareSimulation() Simulation::prepareSimulation(); } -int GISASSimulation::numberOfSimulationElements() const +size_t GISASSimulation::numberOfSimulationElements() const { return getInstrument().getDetector()->numberOfSimulationElements(); } diff --git a/Core/Simulation/GISASSimulation.h b/Core/Simulation/GISASSimulation.h index ca51cde535d..d42ba234737 100644 --- a/Core/Simulation/GISASSimulation.h +++ b/Core/Simulation/GISASSimulation.h @@ -43,7 +43,7 @@ public: void prepareSimulation() final; //! Gets the number of elements this simulation needs to calculate - int numberOfSimulationElements() const final; + size_t numberOfSimulationElements() const final; //! Returns clone of the detector intensity map with detector resolution applied OutputData<double>* getDetectorIntensity( diff --git a/Core/Simulation/OffSpecSimulation.cpp b/Core/Simulation/OffSpecSimulation.cpp index 282b5bcc533..832bf39edc1 100644 --- a/Core/Simulation/OffSpecSimulation.cpp +++ b/Core/Simulation/OffSpecSimulation.cpp @@ -55,7 +55,7 @@ void OffSpecSimulation::prepareSimulation() Simulation::prepareSimulation(); } -int OffSpecSimulation::numberOfSimulationElements() const +size_t OffSpecSimulation::numberOfSimulationElements() const { checkInitialization(); return getInstrument().getDetector()->numberOfSimulationElements()*mp_alpha_i_axis->size(); diff --git a/Core/Simulation/OffSpecSimulation.h b/Core/Simulation/OffSpecSimulation.h index cf63576ca79..8db60398d63 100644 --- a/Core/Simulation/OffSpecSimulation.h +++ b/Core/Simulation/OffSpecSimulation.h @@ -39,7 +39,7 @@ public: void prepareSimulation() final; //! Gets the number of elements this simulation needs to calculate - int numberOfSimulationElements() const final; + size_t numberOfSimulationElements() const final; //! Returns clone of the detector intensity map OutputData<double>* getDetectorIntensity( diff --git a/Core/Simulation/Simulation.cpp b/Core/Simulation/Simulation.cpp index 63a8143d159..b2664bfe596 100644 --- a/Core/Simulation/Simulation.cpp +++ b/Core/Simulation/Simulation.cpp @@ -125,9 +125,9 @@ void Simulation::runSimulation() size_t param_combinations = m_distribution_handler.getTotalNumberOfSamples(); m_progress.reset(); - int prefac = ( mP_sample->totalNofLayouts()>0 ? 1 : 0 ) + size_t prefactor = ( mP_sample->totalNofLayouts()>0 ? 1 : 0 ) + ( mP_sample->hasRoughness() ? 1 : 0 ); - m_progress.setExpectedNTicks(prefac*param_combinations*numberOfSimulationElements()); + m_progress.setExpectedNTicks(prefactor*param_combinations*numberOfSimulationElements()); // no averaging needed: if (param_combinations == 1) { diff --git a/Core/Simulation/Simulation.h b/Core/Simulation/Simulation.h index 9ff17464573..73b7ecaa6c6 100644 --- a/Core/Simulation/Simulation.h +++ b/Core/Simulation/Simulation.h @@ -69,7 +69,7 @@ public: void setSampleBuilder(const std::shared_ptr<IMultiLayerBuilder> sample_builder); std::shared_ptr<IMultiLayerBuilder> getSampleBuilder() const { return mP_sample_builder; } - virtual int numberOfSimulationElements() const=0; + virtual size_t numberOfSimulationElements() const=0; //! Clone simulated intensity map virtual OutputData<double>* getDetectorIntensity( diff --git a/auto/Wrap/doxygen_core.i b/auto/Wrap/doxygen_core.i index 6d4a76e90ab..e728bd58ce3 100644 --- a/auto/Wrap/doxygen_core.i +++ b/auto/Wrap/doxygen_core.i @@ -4991,7 +4991,7 @@ Calls the INodeVisitor's visit method. Put into a clean state for running a simulation. "; -%feature("docstring") GISASSimulation::numberOfSimulationElements "int GISASSimulation::numberOfSimulationElements() const final +%feature("docstring") GISASSimulation::numberOfSimulationElements "size_t GISASSimulation::numberOfSimulationElements() const final Gets the number of elements this simulation needs to calculate. "; @@ -5765,7 +5765,7 @@ C++ includes: IComputationTerm.h %feature("docstring") IComputationTerm::~IComputationTerm "IComputationTerm::~IComputationTerm() "; -%feature("docstring") IComputationTerm::eval "virtual bool IComputationTerm::eval(const SimulationOptions &options, ProgressHandler *progress, bool polarized, const std::vector< SimulationElement >::iterator &begin_it, const std::vector< SimulationElement >::iterator &end_it) const =0 +%feature("docstring") IComputationTerm::eval "virtual void IComputationTerm::eval(const SimulationOptions &options, ProgressHandler *progress, bool polarized, const std::vector< SimulationElement >::iterator &begin_it, const std::vector< SimulationElement >::iterator &end_it) const =0 Calculate scattering intensity for each SimulationElement returns false if nothing needed to be calculated "; @@ -9712,7 +9712,7 @@ Calls the INodeVisitor's visit method. Put into a clean state for running a simulation. "; -%feature("docstring") OffSpecSimulation::numberOfSimulationElements "int OffSpecSimulation::numberOfSimulationElements() const final +%feature("docstring") OffSpecSimulation::numberOfSimulationElements "size_t OffSpecSimulation::numberOfSimulationElements() const final Gets the number of elements this simulation needs to calculate. "; @@ -10844,7 +10844,7 @@ C++ includes: ParticleLayoutComputation.h %feature("docstring") ParticleLayoutComputation::ParticleLayoutComputation "ParticleLayoutComputation::ParticleLayoutComputation(const MultiLayer *p_multilayer, const IFresnelMap *p_fresnel_map, const ILayout *p_layout, size_t layer_index) "; -%feature("docstring") ParticleLayoutComputation::eval "bool ParticleLayoutComputation::eval(const SimulationOptions &options, ProgressHandler *progress, bool polarized, const std::vector< SimulationElement >::iterator &begin_it, const std::vector< SimulationElement >::iterator &end_it) const override +%feature("docstring") ParticleLayoutComputation::eval "void ParticleLayoutComputation::eval(const SimulationOptions &options, ProgressHandler *progress, bool polarized, const std::vector< SimulationElement >::iterator &begin_it, const std::vector< SimulationElement >::iterator &end_it) const override Computes scattering intensity for given range of simulation elements. "; @@ -11587,7 +11587,7 @@ C++ includes: RoughMultiLayerComputation.h %feature("docstring") RoughMultiLayerComputation::~RoughMultiLayerComputation "RoughMultiLayerComputation::~RoughMultiLayerComputation() "; -%feature("docstring") RoughMultiLayerComputation::eval "bool RoughMultiLayerComputation::eval(const SimulationOptions &options, ProgressHandler *progress, bool polarized, const std::vector< SimulationElement >::iterator &begin_it, const std::vector< SimulationElement >::iterator &end_it) const override +%feature("docstring") RoughMultiLayerComputation::eval "void RoughMultiLayerComputation::eval(const SimulationOptions &options, ProgressHandler *progress, bool polarized, const std::vector< SimulationElement >::iterator &begin_it, const std::vector< SimulationElement >::iterator &end_it) const override Calculate scattering intensity for each SimulationElement returns false if nothing needed to be calculated "; @@ -12059,7 +12059,7 @@ The MultiLayer object will not be owned by the Simulation object. %feature("docstring") Simulation::getSampleBuilder "std::shared_ptr<IMultiLayerBuilder> Simulation::getSampleBuilder() const "; -%feature("docstring") Simulation::numberOfSimulationElements "virtual int Simulation::numberOfSimulationElements() const =0 +%feature("docstring") Simulation::numberOfSimulationElements "virtual size_t Simulation::numberOfSimulationElements() const =0 "; %feature("docstring") Simulation::getDetectorIntensity "virtual OutputData<double>* Simulation::getDetectorIntensity(IDetector2D::EAxesUnits units_type=IDetector2D::DEFAULT) const =0 @@ -12435,7 +12435,7 @@ C++ includes: SpecularComputation.h %feature("docstring") SpecularComputation::SpecularComputation "SpecularComputation::SpecularComputation(const MultiLayer *p_multi_layer, const IFresnelMap *p_fresnel_map) "; -%feature("docstring") SpecularComputation::eval "bool SpecularComputation::eval(const SimulationOptions &options, ProgressHandler *progress, bool polarized, const std::vector< SimulationElement >::iterator &begin_it, const std::vector< SimulationElement >::iterator &end_it) const override +%feature("docstring") SpecularComputation::eval "void SpecularComputation::eval(const SimulationOptions &options, ProgressHandler *progress, bool polarized, const std::vector< SimulationElement >::iterator &begin_it, const std::vector< SimulationElement >::iterator &end_it) const override Calculate scattering intensity for each SimulationElement returns false if nothing needed to be calculated "; diff --git a/auto/Wrap/libBornAgainCore.py b/auto/Wrap/libBornAgainCore.py index baa97d37283..435ef244d40 100644 --- a/auto/Wrap/libBornAgainCore.py +++ b/auto/Wrap/libBornAgainCore.py @@ -15789,9 +15789,9 @@ class Simulation(ICloneable, INode): def numberOfSimulationElements(self): """ - numberOfSimulationElements(Simulation self) -> int + numberOfSimulationElements(Simulation self) -> size_t - virtual int Simulation::numberOfSimulationElements() const =0 + virtual size_t Simulation::numberOfSimulationElements() const =0 """ return _libBornAgainCore.Simulation_numberOfSimulationElements(self) @@ -16142,9 +16142,9 @@ class GISASSimulation(Simulation): def numberOfSimulationElements(self): """ - numberOfSimulationElements(GISASSimulation self) -> int + numberOfSimulationElements(GISASSimulation self) -> size_t - int GISASSimulation::numberOfSimulationElements() const final + size_t GISASSimulation::numberOfSimulationElements() const final Gets the number of elements this simulation needs to calculate. @@ -22554,9 +22554,9 @@ class OffSpecSimulation(Simulation): def numberOfSimulationElements(self): """ - numberOfSimulationElements(OffSpecSimulation self) -> int + numberOfSimulationElements(OffSpecSimulation self) -> size_t - int OffSpecSimulation::numberOfSimulationElements() const final + size_t OffSpecSimulation::numberOfSimulationElements() const final Gets the number of elements this simulation needs to calculate. diff --git a/auto/Wrap/libBornAgainCore_wrap.cpp b/auto/Wrap/libBornAgainCore_wrap.cpp index 76f0f06588f..9ff9998abca 100644 --- a/auto/Wrap/libBornAgainCore_wrap.cpp +++ b/auto/Wrap/libBornAgainCore_wrap.cpp @@ -73691,7 +73691,7 @@ SWIGINTERN PyObject *_wrap_Simulation_numberOfSimulationElements(PyObject *SWIGU void *argp1 = 0 ; int res1 = 0 ; PyObject * obj0 = 0 ; - int result; + size_t result; if (!PyArg_ParseTuple(args,(char *)"O:Simulation_numberOfSimulationElements",&obj0)) SWIG_fail; res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_Simulation, 0 | 0 ); @@ -73699,8 +73699,8 @@ SWIGINTERN PyObject *_wrap_Simulation_numberOfSimulationElements(PyObject *SWIGU SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Simulation_numberOfSimulationElements" "', argument " "1"" of type '" "Simulation const *""'"); } arg1 = reinterpret_cast< Simulation * >(argp1); - result = (int)((Simulation const *)arg1)->numberOfSimulationElements(); - resultobj = SWIG_From_int(static_cast< int >(result)); + result = ((Simulation const *)arg1)->numberOfSimulationElements(); + resultobj = SWIG_From_size_t(static_cast< size_t >(result)); return resultobj; fail: return NULL; @@ -75074,7 +75074,7 @@ SWIGINTERN PyObject *_wrap_GISASSimulation_numberOfSimulationElements(PyObject * void *argp1 = 0 ; int res1 = 0 ; PyObject * obj0 = 0 ; - int result; + size_t result; if (!PyArg_ParseTuple(args,(char *)"O:GISASSimulation_numberOfSimulationElements",&obj0)) SWIG_fail; res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_GISASSimulation, 0 | 0 ); @@ -75082,8 +75082,8 @@ SWIGINTERN PyObject *_wrap_GISASSimulation_numberOfSimulationElements(PyObject * SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GISASSimulation_numberOfSimulationElements" "', argument " "1"" of type '" "GISASSimulation const *""'"); } arg1 = reinterpret_cast< GISASSimulation * >(argp1); - result = (int)((GISASSimulation const *)arg1)->numberOfSimulationElements(); - resultobj = SWIG_From_int(static_cast< int >(result)); + result = ((GISASSimulation const *)arg1)->numberOfSimulationElements(); + resultobj = SWIG_From_size_t(static_cast< size_t >(result)); return resultobj; fail: return NULL; @@ -94975,7 +94975,7 @@ SWIGINTERN PyObject *_wrap_OffSpecSimulation_numberOfSimulationElements(PyObject void *argp1 = 0 ; int res1 = 0 ; PyObject * obj0 = 0 ; - int result; + size_t result; if (!PyArg_ParseTuple(args,(char *)"O:OffSpecSimulation_numberOfSimulationElements",&obj0)) SWIG_fail; res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_OffSpecSimulation, 0 | 0 ); @@ -94983,8 +94983,8 @@ SWIGINTERN PyObject *_wrap_OffSpecSimulation_numberOfSimulationElements(PyObject SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "OffSpecSimulation_numberOfSimulationElements" "', argument " "1"" of type '" "OffSpecSimulation const *""'"); } arg1 = reinterpret_cast< OffSpecSimulation * >(argp1); - result = (int)((OffSpecSimulation const *)arg1)->numberOfSimulationElements(); - resultobj = SWIG_From_int(static_cast< int >(result)); + result = ((OffSpecSimulation const *)arg1)->numberOfSimulationElements(); + resultobj = SWIG_From_size_t(static_cast< size_t >(result)); return resultobj; fail: return NULL; @@ -115902,9 +115902,9 @@ static PyMethodDef SwigMethods[] = { "\n" ""}, { (char *)"Simulation_numberOfSimulationElements", _wrap_Simulation_numberOfSimulationElements, METH_VARARGS, (char *)"\n" - "Simulation_numberOfSimulationElements(Simulation self) -> int\n" + "Simulation_numberOfSimulationElements(Simulation self) -> size_t\n" "\n" - "virtual int Simulation::numberOfSimulationElements() const =0\n" + "virtual size_t Simulation::numberOfSimulationElements() const =0\n" "\n" ""}, { (char *)"Simulation_getDetectorIntensity", _wrap_Simulation_getDetectorIntensity, METH_VARARGS, (char *)"\n" @@ -116103,9 +116103,9 @@ static PyMethodDef SwigMethods[] = { "\n" ""}, { (char *)"GISASSimulation_numberOfSimulationElements", _wrap_GISASSimulation_numberOfSimulationElements, METH_VARARGS, (char *)"\n" - "GISASSimulation_numberOfSimulationElements(GISASSimulation self) -> int\n" + "GISASSimulation_numberOfSimulationElements(GISASSimulation self) -> size_t\n" "\n" - "int GISASSimulation::numberOfSimulationElements() const final\n" + "size_t GISASSimulation::numberOfSimulationElements() const final\n" "\n" "Gets the number of elements this simulation needs to calculate. \n" "\n" @@ -119690,9 +119690,9 @@ static PyMethodDef SwigMethods[] = { "\n" ""}, { (char *)"OffSpecSimulation_numberOfSimulationElements", _wrap_OffSpecSimulation_numberOfSimulationElements, METH_VARARGS, (char *)"\n" - "OffSpecSimulation_numberOfSimulationElements(OffSpecSimulation self) -> int\n" + "OffSpecSimulation_numberOfSimulationElements(OffSpecSimulation self) -> size_t\n" "\n" - "int OffSpecSimulation::numberOfSimulationElements() const final\n" + "size_t OffSpecSimulation::numberOfSimulationElements() const final\n" "\n" "Gets the number of elements this simulation needs to calculate. \n" "\n" -- GitLab