16 #error no need to expose this header to Swig
20 #ifndef BORNAGAIN_SAMPLE_PROCESSED_PROCESSEDLAYOUT_H
21 #define BORNAGAIN_SAMPLE_PROCESSED_PROCESSEDLAYOUT_H
53 std::map<size_t, std::vector<HomogeneousRegion>>
regionMap()
const;
59 const std::vector<Slice>& slices,
double z_ref);
60 void mergeRegionMap(
const std::map<
size_t, std::vector<HomogeneousRegion>>& region_map);
66 std::unique_ptr<IInterferenceFunction>
m_iff;
Holds the necessary information to calculate the radiation wavefunction in every layer for different ...
Abstract base class of interference functions.
Abstract base class for Particle, ParticleComposition, ParticleCoreShell, MesoCrystal.
Decorator class that adds particles to ISampleNode objects.
Data structure that contains preprocessed data for a single layout.
FormFactorCoherentSum processParticle(const IParticle &particle, const std::vector< Slice > &slices, double z_ref)
ProcessedLayout(const ParticleLayout &layout, const std::vector< Slice > &slices, double z_ref, const IFresnelMap *p_fresnel_map, bool polarized)
void mergeRegionMap(const std::map< size_t, std::vector< HomogeneousRegion >> ®ion_map)
std::map< size_t, std::vector< HomogeneousRegion > > m_region_map
size_t numberOfSlices() const
std::vector< FormFactorCoherentSum > m_formfactors
std::map< size_t, std::vector< HomogeneousRegion > > regionMap() const
std::unique_ptr< IInterferenceFunction > m_iff
const std::vector< FormFactorCoherentSum > & formFactorList() const
void collectFormFactors(const ParticleLayout &layout, const std::vector< Slice > &slices, double z_ref)
const IInterferenceFunction * interferenceFunction() const
double surfaceDensity() const
const IFresnelMap * m_fresnel_map
Data structure containing the data of a single slice, for calculating the Fresnel coefficients.
Struct that contains information on a single homogeneous region of a particle inside a single layer.