BornAgain
1.18.0
Simulate and fit neutron and x-ray scattering at grazing incidence
|
Public Member Functions | |
SlicedFormFactorList ()=default | |
SlicedFormFactorList (SlicedFormFactorList &&other)=default | |
SlicedFormFactorList & | operator= (SlicedFormFactorList &&other)=default |
~SlicedFormFactorList ()=default | |
size_t | size () const |
std::pair< const IFormFactor *, size_t > | operator[] (size_t index) const |
std::map< size_t, std::vector< HomogeneousRegion > > | regionMap () const |
Static Public Member Functions | |
static SlicedFormFactorList | createSlicedFormFactors (const IParticle &particle, const std::vector< Slice > &slices, double z_ref) |
Private Member Functions | |
void | addParticle (IParticle &particle, const std::vector< Slice > &slices, double z_ref) |
Private Attributes | |
std::vector< std::pair< std::unique_ptr< IFormFactor >, size_t > > | m_ff_list |
std::map< size_t, std::vector< HomogeneousRegion > > | m_region_map |
Class that contains and owns a list of form factors and the index of their containing layer.
This class also handles the slicing of form factors if they cross layer interfaces.
Definition at line 31 of file SlicedFormFactorList.h.
|
default |
|
default |
|
default |
|
default |
|
static |
Definition at line 33 of file SlicedFormFactorList.cpp.
References addParticle(), and IParticle::decompose().
Referenced by ProcessedLayout::ProcessParticle().
size_t SlicedFormFactorList::size | ( | ) | const |
Definition at line 67 of file SlicedFormFactorList.cpp.
References m_ff_list.
Referenced by operator[]().
std::pair< const IFormFactor *, size_t > SlicedFormFactorList::operator[] | ( | size_t | index | ) | const |
Definition at line 72 of file SlicedFormFactorList.cpp.
References m_ff_list, and size().
std::map< size_t, std::vector< HomogeneousRegion > > SlicedFormFactorList::regionMap | ( | ) | const |
Definition at line 80 of file SlicedFormFactorList.cpp.
References m_region_map.
|
private |
Definition at line 45 of file SlicedFormFactorList.cpp.
References IParticle::createSlicedParticle(), m_ff_list, m_region_map, anonymous_namespace{SlicedFormFactorList.cpp}::ScaleRegions(), anonymous_namespace{SlicedFormFactorList.cpp}::SliceIndexSpan(), anonymous_namespace{SlicedFormFactorList.cpp}::SlicesZLimits(), anonymous_namespace{SlicedFormFactorList.cpp}::SliceTopZ(), and IParticle::translate().
Referenced by createSlicedFormFactors().
|
private |
Definition at line 51 of file SlicedFormFactorList.h.
Referenced by addParticle(), operator[](), and size().
|
private |
Definition at line 52 of file SlicedFormFactorList.h.
Referenced by addParticle(), and regionMap().