BornAgain
1.19.79
Simulate and fit neutron and x-ray scattering at grazing incidence
|
Definition at line 26 of file ParticleItem.h.
Public Member Functions | |
ParticleItem (const MaterialItems *materials) | |
DoubleDescriptor | abundance () const |
QVector< ItemWithParticles * > | containedItemsWithParticles () const override |
Return full hierarchical contained items with particles. More... | |
std::unique_ptr< Particle > | createParticle () const |
std::unique_ptr< IRotation > | createRotation () const |
nullptr only if "no rotation". Can contain identity! More... | |
FormFactorItem * | formfactor_at_bottom () const |
QColor | materialColor () const |
QString | materialIdentifier () const |
MaterialItem * | materialItem () const |
Returns the material item this item links to. More... | |
QString | materialName () const |
R3 | position () const |
VectorDescriptor | positionVector () const |
SelectionDescriptor< RotationItem * > | rotation () |
Returns selection descriptor for rotation methods. More... | |
void | serialize (Streamer &s) override |
void | setAbundance (double abundance) |
void | setFormFactor (FormFactorItem *p) |
template<typename T > | |
T * | setFormFactorType () |
void | setMaterial (const MaterialItem *materialItem) |
Set the material this item shall use. Stores the identifier, not the pointer! More... | |
void | setMaterial (const QString &materialIdentifier) |
Set the material this item shall use. Stores the given identifier, not a pointer to the material! More... | |
void | setMaterialUndefined () |
Set "no material defined". More... | |
void | setPosition (const R3 &position) |
void | setRotation (RotationItem *p) |
nullptr is allowed and sets to "no rotation" More... | |
Protected Attributes | |
DoubleProperty | m_abundance |
QString | m_materialIdentifier |
const MaterialItems * | m_materialItems |
VectorProperty | m_position |
SelectionProperty< RotationItem * > | m_rotation |
Private Attributes | |
SelectionProperty< FormFactorItem * > | m_formFactor |
ParticleItem::ParticleItem | ( | const MaterialItems * | materials | ) |
Definition at line 35 of file ParticleItem.cpp.
References SelectionProperty< T >::init(), m_formFactor, and SelectionProperty< T >::set().
|
inherited |
Definition at line 32 of file ItemWithParticles.cpp.
References ItemWithParticles::m_abundance.
Referenced by MesoCrystalForm::MesoCrystalForm(), ParticleCompositionForm::ParticleCompositionForm(), ParticleCoreShellForm::ParticleCoreShellForm(), ParticleForm::ParticleForm(), ParameterTreeBuilder::addParticle(), createParticle(), ParticleCompositionItem::createParticleComposition(), ParticleCoreShellItem::createParticleCoreShell(), and ItemWithParticles::setAbundance().
|
overridevirtual |
Return full hierarchical contained items with particles.
For example ParticleCompositionItem contains other items, ParticleItem doesn't.
Implements ItemWithParticles.
Definition at line 76 of file ParticleItem.cpp.
Referenced by ParticleCoreShellItem::containedItemsWithParticles().
std::unique_ptr< Particle > ParticleItem::createParticle | ( | ) | const |
Definition at line 53 of file ParticleItem.cpp.
References ItemWithParticles::abundance(), FormFactorItem::createFormFactor(), MaterialItem::createMaterial(), ItemWithParticles::createRotation(), m_formFactor, ItemWithMaterial::materialItem(), and ItemWithParticles::position().
|
inherited |
nullptr only if "no rotation". Can contain identity!
Definition at line 67 of file ItemWithParticles.cpp.
References SelectionProperty< T >::get(), ItemWithParticles::m_rotation, and RotationItem::rotation().
Referenced by MesoCrystalItem::createMesoCrystal(), createParticle(), ParticleCompositionItem::createParticleComposition(), and ParticleCoreShellItem::createParticleCoreShell().
FormFactorItem * ParticleItem::formfactor_at_bottom | ( | ) | const |
Definition at line 71 of file ParticleItem.cpp.
References SelectionProperty< T >::get(), and m_formFactor.
Referenced by ParticleCoreShellForm::ParticleCoreShellForm(), and ParticleForm::ParticleForm().
|
inherited |
Definition at line 42 of file ItemWithMaterial.cpp.
References MaterialItem::color(), and ItemWithMaterial::materialItem().
Referenced by GUI::View::TransformTo3D::createLayer().
|
inherited |
Definition at line 54 of file ItemWithMaterial.cpp.
References ItemWithMaterial::m_materialIdentifier.
Referenced by ItemWithMaterial::materialItem(), MaterialInplaceForm::selectMaterial(), ItemWithMaterial::setMaterial(), and SampleEditorController::setMaterialValue().
|
inherited |
Returns the material item this item links to.
Definition at line 59 of file ItemWithMaterial.cpp.
References ItemWithMaterial::m_materialItems, MaterialItems::materialFromIdentifier(), and ItemWithMaterial::materialIdentifier().
Referenced by createParticle(), MaterialInplaceForm::createWidgets(), ItemWithMaterial::materialColor(), ItemWithMaterial::materialName(), MaterialInplaceForm::selectMaterial(), and ItemWithMaterial::setMaterial().
|
inherited |
Definition at line 48 of file ItemWithMaterial.cpp.
References ItemWithMaterial::materialItem(), and MaterialItem::matItemName().
Referenced by LayerForm::updateTitle().
|
inherited |
Definition at line 42 of file ItemWithParticles.cpp.
References ItemWithParticles::m_position.
Referenced by MesoCrystalItem::createMesoCrystal(), createParticle(), ParticleCompositionItem::createParticleComposition(), ParticleCoreShellItem::createParticleCoreShell(), and ItemWithParticles::setPosition().
|
inherited |
Definition at line 52 of file ItemWithParticles.cpp.
References ItemWithParticles::m_position.
Referenced by MesoCrystalForm::MesoCrystalForm(), ParticleCompositionForm::ParticleCompositionForm(), ParticleCoreShellForm::ParticleCoreShellForm(), ParticleForm::ParticleForm(), and ParameterTreeBuilder::addParticle().
|
inherited |
Returns selection descriptor for rotation methods.
Definition at line 57 of file ItemWithParticles.cpp.
References ItemWithParticles::m_rotation.
Referenced by MesoCrystalForm::MesoCrystalForm(), ParticleCompositionForm::ParticleCompositionForm(), ParticleCoreShellForm::ParticleCoreShellForm(), ParticleForm::ParticleForm(), and ParameterTreeBuilder::addRotation().
|
overridevirtual |
Implements ItemWithParticles.
Definition at line 43 of file ParticleItem.cpp.
References Streamer::assertVersion(), ItemWithParticles::m_abundance, m_formFactor, ItemWithMaterial::m_materialIdentifier, ItemWithParticles::m_position, ItemWithParticles::m_rotation, Serialize::rwProperty(), and Serialize::rwValue().
|
inherited |
Definition at line 37 of file ItemWithParticles.cpp.
References ItemWithParticles::abundance(), ItemWithParticles::m_abundance, and DoubleProperty::set().
void ParticleItem::setFormFactor | ( | FormFactorItem * | p | ) |
Definition at line 66 of file ParticleItem.cpp.
References m_formFactor, and SelectionProperty< T >::set().
Referenced by SampleEditorController::setCoreFormFactor(), setFormFactorType(), and SampleEditorController::setShellFormFactor().
T * ParticleItem::setFormFactorType |
Definition at line 44 of file ParticleItem.h.
References setFormFactor().
|
inherited |
Set the material this item shall use. Stores the identifier, not the pointer!
Definition at line 20 of file ItemWithMaterial.cpp.
References MaterialItem::identifier(), ItemWithMaterial::m_materialIdentifier, and ItemWithMaterial::materialItem().
Referenced by SampleEditorController::addLayerFromUndo(), GUI::Transform::FromCore::itemizeSample(), and SampleEditorController::selectMaterial().
|
inherited |
Set the material this item shall use. Stores the given identifier, not a pointer to the material!
Definition at line 25 of file ItemWithMaterial.cpp.
References ItemWithMaterial::m_materialIdentifier, and ItemWithMaterial::materialIdentifier().
|
inherited |
Set "no material defined".
Definition at line 37 of file ItemWithMaterial.cpp.
References ItemWithMaterial::m_materialIdentifier.
|
inherited |
Definition at line 47 of file ItemWithParticles.cpp.
References ItemWithParticles::m_position, ItemWithParticles::position(), and VectorProperty::set().
|
inherited |
nullptr is allowed and sets to "no rotation"
Definition at line 62 of file ItemWithParticles.cpp.
References ItemWithParticles::m_rotation, and SelectionProperty< T >::set().
|
protectedinherited |
Definition at line 56 of file ItemWithParticles.h.
Referenced by ItemWithParticles::ItemWithParticles(), ItemWithParticles::abundance(), MesoCrystalItem::serialize(), ParticleCompositionItem::serialize(), ParticleCoreShellItem::serialize(), serialize(), and ItemWithParticles::setAbundance().
|
private |
Definition at line 40 of file ParticleItem.h.
Referenced by ParticleItem(), createParticle(), formfactor_at_bottom(), serialize(), and setFormFactor().
|
protectedinherited |
Definition at line 51 of file ItemWithMaterial.h.
Referenced by ItemWithMaterial::materialIdentifier(), LayerItem::serialize(), serialize(), ItemWithMaterial::setMaterial(), and ItemWithMaterial::setMaterialUndefined().
|
protectedinherited |
Definition at line 50 of file ItemWithMaterial.h.
Referenced by ItemWithMaterial::ItemWithMaterial(), LayerItem::addLayout(), ItemWithMaterial::materialItem(), and LayerItem::serialize().
|
protectedinherited |
Definition at line 57 of file ItemWithParticles.h.
Referenced by ItemWithParticles::ItemWithParticles(), ItemWithParticles::position(), ItemWithParticles::positionVector(), MesoCrystalItem::serialize(), ParticleCompositionItem::serialize(), ParticleCoreShellItem::serialize(), serialize(), and ItemWithParticles::setPosition().
|
protectedinherited |
Definition at line 58 of file ItemWithParticles.h.
Referenced by ItemWithParticles::ItemWithParticles(), ItemWithParticles::createRotation(), ItemWithParticles::rotation(), MesoCrystalItem::serialize(), ParticleCompositionItem::serialize(), serialize(), and ItemWithParticles::setRotation().