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