BornAgain
1.19.0
Simulate and fit neutron and x-ray scattering at grazing incidence
|
Performs a single-threaded specular computation with given sample. More...
Public Member Functions | |
SpecularComputation (const MultiLayer &multilayer, const SimulationOptions &options, ProgressHandler &progress, SpecularElementIter begin_it, SpecularElementIter end_it, bool forcePolarized=false) | |
~SpecularComputation () override | |
std::string | errorMessage () const |
bool | isCompleted () const |
void | run () |
Protected Attributes | |
std::unique_ptr< ProcessedSample > | m_processed_sample |
ProgressHandler * | m_progress |
SimulationOptions | m_sim_options |
ComputationStatus | m_status |
Private Types | |
using | SpecularElementIter = std::vector< SpecularSimulationElement >::iterator |
Private Member Functions | |
void | runProtected () override |
Private Attributes | |
const SpecularElementIter | m_begin_it |
these iterators define the span of detector bins this simulation will work on More... | |
std::unique_ptr< SpecularComputationTerm > | m_computation_term |
const SpecularElementIter | m_end_it |
Performs a single-threaded specular computation with given sample.
Controlled by the multi-threading machinery in ISimulation::runSingleSimulation().
Definition at line 35 of file SpecularComputation.h.
|
private |
Definition at line 36 of file SpecularComputation.h.
SpecularComputation::SpecularComputation | ( | const MultiLayer & | multilayer, |
const SimulationOptions & | options, | ||
ProgressHandler & | progress, | ||
SpecularElementIter | begin_it, | ||
SpecularElementIter | end_it, | ||
bool | forcePolarized = false |
||
) |
Definition at line 27 of file SpecularComputation.cpp.
References SpecularStrategyBuilder::build(), m_computation_term, and IComputation::m_processed_sample.
|
overridedefault |
|
inlineinherited |
Definition at line 48 of file IComputation.h.
References ComputationStatus::errorMessage(), and IComputation::m_status.
|
inlineinherited |
Definition at line 47 of file IComputation.h.
References ComputationStatus::isCompleted(), and IComputation::m_status.
|
inherited |
Definition at line 31 of file IComputation.cpp.
References IComputation::m_status, IComputation::runProtected(), ComputationStatus::setCompleted(), ComputationStatus::setFailed(), and ComputationStatus::setRunning().
|
overrideprivatevirtual |
Implements IComputation.
Definition at line 46 of file SpecularComputation.cpp.
References ProgressHandler::alive(), m_begin_it, m_computation_term, m_end_it, IComputation::m_processed_sample, and IComputation::m_progress.
|
private |
these iterators define the span of detector bins this simulation will work on
Definition at line 48 of file SpecularComputation.h.
Referenced by runProtected().
|
mutableprivate |
Definition at line 49 of file SpecularComputation.h.
Referenced by SpecularComputation(), and runProtected().
|
private |
Definition at line 48 of file SpecularComputation.h.
Referenced by runProtected().
|
protectedinherited |
Definition at line 54 of file IComputation.h.
Referenced by DWBAComputation::DWBAComputation(), SpecularComputation(), and runProtected().
|
protectedinherited |
Definition at line 52 of file IComputation.h.
Referenced by DepthProbeComputation::runProtected(), DWBAComputation::runProtected(), and runProtected().
|
protectedinherited |
Definition at line 51 of file IComputation.h.
Referenced by DWBAComputation::DWBAComputation().
|
protectedinherited |
Definition at line 53 of file IComputation.h.
Referenced by IComputation::errorMessage(), IComputation::isCompleted(), and IComputation::run().