BornAgain  1.19.0
Simulate and fit neutron and x-ray scattering at grazing incidence
GUIDomainSampleVisitor Class Reference

Visits domain sample tree to build GUI presentation. More...

Inheritance diagram for GUIDomainSampleVisitor:
[legend]
Collaboration diagram for GUIDomainSampleVisitor:
[legend]

Public Member Functions

 GUIDomainSampleVisitor ()
 
 ~GUIDomainSampleVisitor ()
 
int depth () const
 Returns depth of the visitor in the composite hierarchy. More...
 
SessionItempopulateSampleModel (SampleModel *sampleModel, MaterialModel *materialModel, const MultiLayer &sample, const QString &sample_name="")
 
void setDepth (int depth)
 Sets depth of the visitor in the composite hierarchy. More...
 
virtual void visit (const BasicLattice2D *)
 
virtual void visit (const BasicLattice2D *)
 
virtual void visit (const Beam *)
 
virtual void visit (const Beam *)
 
virtual void visit (const ConstantBackground *)
 
virtual void visit (const ConstantBackground *)
 
virtual void visit (const ConvolutionDetectorResolution *)
 
virtual void visit (const ConvolutionDetectorResolution *)
 
virtual void visit (const Crystal *)
 
void visit (const Crystal *)
 
virtual void visit (const DistributionCosine *)
 
virtual void visit (const DistributionCosine *)
 
virtual void visit (const DistributionGate *)
 
virtual void visit (const DistributionGate *)
 
virtual void visit (const DistributionGaussian *)
 
virtual void visit (const DistributionGaussian *)
 
virtual void visit (const DistributionLogNormal *)
 
virtual void visit (const DistributionLogNormal *)
 
virtual void visit (const DistributionLorentz *)
 
virtual void visit (const DistributionLorentz *)
 
virtual void visit (const DistributionTrapezoid *)
 
virtual void visit (const DistributionTrapezoid *)
 
virtual void visit (const FootprintGauss *)
 
virtual void visit (const FootprintGauss *)
 
virtual void visit (const FootprintSquare *)
 
virtual void visit (const FootprintSquare *)
 
virtual void visit (const FormFactorAnisoPyramid *)
 
void visit (const FormFactorAnisoPyramid *)
 
virtual void visit (const FormFactorBarGauss *)
 
void visit (const FormFactorBarGauss *)
 
virtual void visit (const FormFactorBarLorentz *)
 
void visit (const FormFactorBarLorentz *)
 
virtual void visit (const FormFactorBox *)
 
void visit (const FormFactorBox *)
 
virtual void visit (const FormFactorCantellatedCube *)
 
virtual void visit (const FormFactorCantellatedCube *)
 
virtual void visit (const FormFactorCone *)
 
void visit (const FormFactorCone *)
 
virtual void visit (const FormFactorCone6 *)
 
void visit (const FormFactorCone6 *)
 
virtual void visit (const FormFactorCoreShell *)
 
virtual void visit (const FormFactorCoreShell *)
 
virtual void visit (const FormFactorCosineRippleBox *)
 
void visit (const FormFactorCosineRippleBox *)
 
virtual void visit (const FormFactorCosineRippleGauss *)
 
void visit (const FormFactorCosineRippleGauss *)
 
virtual void visit (const FormFactorCosineRippleLorentz *)
 
void visit (const FormFactorCosineRippleLorentz *)
 
virtual void visit (const FormFactorCrystal *)
 
virtual void visit (const FormFactorCrystal *)
 
virtual void visit (const FormFactorCuboctahedron *)
 
void visit (const FormFactorCuboctahedron *)
 
virtual void visit (const FormFactorCylinder *)
 
void visit (const FormFactorCylinder *)
 
virtual void visit (const FormFactorDecoratorMaterial *)
 
virtual void visit (const FormFactorDecoratorMaterial *)
 
virtual void visit (const FormFactorDecoratorPositionFactor *)
 
virtual void visit (const FormFactorDecoratorPositionFactor *)
 
virtual void visit (const FormFactorDecoratorRotation *)
 
virtual void visit (const FormFactorDecoratorRotation *)
 
virtual void visit (const FormFactorDodecahedron *)
 
void visit (const FormFactorDodecahedron *)
 
virtual void visit (const FormFactorDot *)
 
void visit (const FormFactorDot *)
 
virtual void visit (const FormFactorEllipsoidalCylinder *)
 
void visit (const FormFactorEllipsoidalCylinder *)
 
virtual void visit (const FormFactorFullSphere *)
 
void visit (const FormFactorFullSphere *)
 
virtual void visit (const FormFactorFullSpheroid *)
 
void visit (const FormFactorFullSpheroid *)
 
virtual void visit (const FormFactorGaussSphere *)
 
virtual void visit (const FormFactorGaussSphere *)
 
virtual void visit (const FormFactorHemiEllipsoid *)
 
void visit (const FormFactorHemiEllipsoid *)
 
virtual void visit (const FormFactorHollowSphere *)
 
virtual void visit (const FormFactorHollowSphere *)
 
virtual void visit (const FormFactorIcosahedron *)
 
void visit (const FormFactorIcosahedron *)
 
virtual void visit (const FormFactorLongBoxGauss *)
 
virtual void visit (const FormFactorLongBoxGauss *)
 
virtual void visit (const FormFactorLongBoxLorentz *)
 
virtual void visit (const FormFactorLongBoxLorentz *)
 
virtual void visit (const FormFactorPrism3 *)
 
void visit (const FormFactorPrism3 *)
 
virtual void visit (const FormFactorPrism6 *)
 
void visit (const FormFactorPrism6 *)
 
virtual void visit (const FormFactorPyramid *)
 
void visit (const FormFactorPyramid *)
 
virtual void visit (const FormFactorSawtoothRippleBox *)
 
void visit (const FormFactorSawtoothRippleBox *)
 
virtual void visit (const FormFactorSawtoothRippleGauss *)
 
void visit (const FormFactorSawtoothRippleGauss *)
 
virtual void visit (const FormFactorSawtoothRippleLorentz *)
 
void visit (const FormFactorSawtoothRippleLorentz *)
 
virtual void visit (const FormFactorSphereGaussianRadius *)
 
virtual void visit (const FormFactorSphereGaussianRadius *)
 
virtual void visit (const FormFactorSphereLogNormalRadius *)
 
virtual void visit (const FormFactorSphereLogNormalRadius *)
 
virtual void visit (const FormFactorTetrahedron *)
 
void visit (const FormFactorTetrahedron *)
 
virtual void visit (const FormFactorTruncatedCube *)
 
void visit (const FormFactorTruncatedCube *)
 
virtual void visit (const FormFactorTruncatedSphere *)
 
void visit (const FormFactorTruncatedSphere *)
 
virtual void visit (const FormFactorTruncatedSpheroid *)
 
void visit (const FormFactorTruncatedSpheroid *)
 
virtual void visit (const FormFactorWeighted *)
 
virtual void visit (const FormFactorWeighted *)
 
virtual void visit (const FTDecayFunction1DCauchy *)
 
virtual void visit (const FTDecayFunction1DCauchy *)
 
virtual void visit (const FTDecayFunction1DGauss *)
 
virtual void visit (const FTDecayFunction1DGauss *)
 
virtual void visit (const FTDecayFunction1DTriangle *)
 
virtual void visit (const FTDecayFunction1DTriangle *)
 
virtual void visit (const FTDecayFunction1DVoigt *)
 
virtual void visit (const FTDecayFunction1DVoigt *)
 
virtual void visit (const FTDecayFunction2DCauchy *)
 
virtual void visit (const FTDecayFunction2DCauchy *)
 
virtual void visit (const FTDecayFunction2DGauss *)
 
virtual void visit (const FTDecayFunction2DGauss *)
 
virtual void visit (const FTDecayFunction2DVoigt *)
 
virtual void visit (const FTDecayFunction2DVoigt *)
 
virtual void visit (const FTDistribution1DCauchy *)
 
virtual void visit (const FTDistribution1DCauchy *)
 
virtual void visit (const FTDistribution1DCosine *)
 
virtual void visit (const FTDistribution1DCosine *)
 
virtual void visit (const FTDistribution1DGate *)
 
virtual void visit (const FTDistribution1DGate *)
 
virtual void visit (const FTDistribution1DGauss *)
 
virtual void visit (const FTDistribution1DGauss *)
 
virtual void visit (const FTDistribution1DTriangle *)
 
virtual void visit (const FTDistribution1DTriangle *)
 
virtual void visit (const FTDistribution1DVoigt *)
 
virtual void visit (const FTDistribution1DVoigt *)
 
virtual void visit (const FTDistribution2DCauchy *)
 
virtual void visit (const FTDistribution2DCauchy *)
 
virtual void visit (const FTDistribution2DCone *)
 
virtual void visit (const FTDistribution2DCone *)
 
virtual void visit (const FTDistribution2DGate *)
 
virtual void visit (const FTDistribution2DGate *)
 
virtual void visit (const FTDistribution2DGauss *)
 
virtual void visit (const FTDistribution2DGauss *)
 
virtual void visit (const FTDistribution2DVoigt *)
 
virtual void visit (const FTDistribution2DVoigt *)
 
virtual void visit (const GISASSimulation *)
 
virtual void visit (const GISASSimulation *)
 
virtual void visit (const HexagonalLattice2D *)
 
virtual void visit (const HexagonalLattice2D *)
 
virtual void visit (const IAbstractParticle *)
 
virtual void visit (const IAbstractParticle *)
 
virtual void visit (const IBornFF *)
 
virtual void visit (const IBornFF *)
 
virtual void visit (const IClusteredParticles *)
 
virtual void visit (const IClusteredParticles *)
 
virtual void visit (const IdentityRotation *)
 
virtual void visit (const IdentityRotation *)
 
virtual void visit (const IFormFactor *)
 
virtual void visit (const IFormFactor *)
 
virtual void visit (const IFormFactorDecorator *)
 
virtual void visit (const IFormFactorDecorator *)
 
virtual void visit (const IInterferenceFunction *)
 
virtual void visit (const IInterferenceFunction *)
 
virtual void visit (const INode *)
 
virtual void visit (const INode *)
 
virtual void visit (const Instrument *)
 
virtual void visit (const Instrument *)
 
virtual void visit (const InterferenceFunction1DLattice *)
 
void visit (const InterferenceFunction1DLattice *)
 
virtual void visit (const InterferenceFunction2DLattice *)
 
void visit (const InterferenceFunction2DLattice *)
 
virtual void visit (const InterferenceFunction2DParaCrystal *)
 
void visit (const InterferenceFunction2DParaCrystal *)
 
virtual void visit (const InterferenceFunction2DSuperLattice *)
 
virtual void visit (const InterferenceFunction2DSuperLattice *)
 
virtual void visit (const InterferenceFunction3DLattice *)
 
virtual void visit (const InterferenceFunction3DLattice *)
 
virtual void visit (const InterferenceFunctionFinite2DLattice *)
 
void visit (const InterferenceFunctionFinite2DLattice *)
 
virtual void visit (const InterferenceFunctionFinite3DLattice *)
 
virtual void visit (const InterferenceFunctionFinite3DLattice *)
 
virtual void visit (const InterferenceFunctionHardDisk *)
 
void visit (const InterferenceFunctionHardDisk *)
 
virtual void visit (const InterferenceFunctionNone *)
 
virtual void visit (const InterferenceFunctionNone *)
 
virtual void visit (const InterferenceFunctionRadialParaCrystal *)
 
void visit (const InterferenceFunctionRadialParaCrystal *)
 
virtual void visit (const InterferenceFunctionTwin *)
 
virtual void visit (const InterferenceFunctionTwin *)
 
virtual void visit (const IParticle *)
 
virtual void visit (const IParticle *)
 
virtual void visit (const IPeakShape *)
 
virtual void visit (const IPeakShape *)
 
virtual void visit (const IRotation *)
 
virtual void visit (const IRotation *)
 
virtual void visit (const ISampleNode *)
 
virtual void visit (const ISampleNode *)
 
virtual void visit (const IsGISAXSDetector *)
 
virtual void visit (const IsGISAXSDetector *)
 
virtual void visit (const Layer *)
 
void visit (const Layer *)
 
virtual void visit (const LayerInterface *)
 
virtual void visit (const LayerInterface *)
 
virtual void visit (const LayerRoughness *)
 
virtual void visit (const LayerRoughness *)
 
virtual void visit (const MesoCrystal *)
 
void visit (const MesoCrystal *)
 
virtual void visit (const MultiLayer *)
 
void visit (const MultiLayer *)
 
virtual void visit (const OffSpecularSimulation *)
 
virtual void visit (const OffSpecularSimulation *)
 
virtual void visit (const Particle *)
 
void visit (const Particle *)
 
virtual void visit (const ParticleComposition *)
 
void visit (const ParticleComposition *)
 
virtual void visit (const ParticleCoreShell *)
 
void visit (const ParticleCoreShell *)
 
virtual void visit (const ParticleDistribution *)
 
void visit (const ParticleDistribution *)
 
virtual void visit (const ParticleLayout *)
 
void visit (const ParticleLayout *)
 
virtual void visit (const PoissonNoiseBackground *)
 
virtual void visit (const PoissonNoiseBackground *)
 
virtual void visit (const RectangularDetector *)
 
virtual void visit (const RectangularDetector *)
 
virtual void visit (const ResolutionFunction2DGaussian *)
 
virtual void visit (const ResolutionFunction2DGaussian *)
 
virtual void visit (const RotationEuler *)
 
void visit (const RotationEuler *)
 
virtual void visit (const RotationX *)
 
void visit (const RotationX *)
 
virtual void visit (const RotationY *)
 
void visit (const RotationY *)
 
virtual void visit (const RotationZ *)
 
void visit (const RotationZ *)
 
virtual void visit (const SpecularDetector1D *)
 
virtual void visit (const SpecularDetector1D *)
 
virtual void visit (const SpecularSimulation *)
 
virtual void visit (const SpecularSimulation *)
 
virtual void visit (const SphericalDetector *)
 
virtual void visit (const SphericalDetector *)
 
virtual void visit (const SquareLattice2D *)
 
virtual void visit (const SquareLattice2D *)
 

Private Member Functions

void buildAbundanceInfo (SessionItem *particleItem)
 
void buildPositionInfo (SessionItem *particleItem, const IParticle *sample)
 
ExternalProperty createMaterialFromDomain (const Material *)
 
SessionItemInsertIParticle (const IParticle *p_particle, QString model_type)
 

Private Attributes

int m_depth
 
QMap< SessionItem *, const ISampleNode * > m_itemToSample
 
QMap< int, SessionItem * > m_levelToParentItem
 
MaterialModelm_materialModel
 
QMap< QString, double > m_propertyToValue
 
QMap< QString, bool > m_sample_encountered
 
SampleModelm_sampleModel
 
QString m_topSampleName
 

Detailed Description

Visits domain sample tree to build GUI presentation.

Definition at line 30 of file GUIDomainSampleVisitor.h.

Constructor & Destructor Documentation

◆ GUIDomainSampleVisitor()

GUIDomainSampleVisitor::GUIDomainSampleVisitor ( )

Definition at line 65 of file GUIDomainSampleVisitor.cpp.

65  : m_sampleModel(nullptr), m_materialModel(nullptr)
66 {
67 }

◆ ~GUIDomainSampleVisitor()

GUIDomainSampleVisitor::~GUIDomainSampleVisitor ( )
default

Member Function Documentation

◆ buildAbundanceInfo()

void GUIDomainSampleVisitor::buildAbundanceInfo ( SessionItem particleItem)
private

◆ buildPositionInfo()

void GUIDomainSampleVisitor::buildPositionInfo ( SessionItem particleItem,
const IParticle sample 
)
private

Definition at line 578 of file GUIDomainSampleVisitor.cpp.

579 {
580  particle_item->item<VectorItem>(ParticleItem::P_POSITION)->setVector(sample->position());
581 }
kvector_t position() const
Returns particle position.
Definition: IParticle.h:45
static const QString P_POSITION
Definition: ParticleItem.h:28

References SessionItem::item(), ParticleItem::P_POSITION, and IParticle::position().

Referenced by InsertIParticle().

Here is the call graph for this function:

◆ createMaterialFromDomain()

ExternalProperty GUIDomainSampleVisitor::createMaterialFromDomain ( const Material material)
private

Definition at line 583 of file GUIDomainSampleVisitor.cpp.

584 {
585  QString materialName = m_topSampleName + QString("_") + QString(material->getName().c_str());
586 
587  if (auto material = m_materialModel->materialFromName(materialName))
588  return MaterialItemUtils::materialProperty(*material);
589 
590  complex_t material_data = material->materialData();
591  MaterialItem* materialItem(nullptr);
592  if (material->typeID() == MATERIAL_TYPES::RefractiveMaterial) {
593  materialItem = m_materialModel->addRefractiveMaterial(materialName, material_data.real(),
594  material_data.imag());
595  } else if (material->typeID() == MATERIAL_TYPES::MaterialBySLD) {
596  materialItem = m_materialModel->addSLDMaterial(materialName, material_data.real(),
597  material_data.imag());
598  } else {
599  throw GUIHelpers::Error("GUIObjectBuilder::createMaterialFromDomain() -> Error. "
600  "Unsupported material");
601  }
602 
603  materialItem->item<VectorItem>(MaterialItem::P_MAGNETIZATION)
604  ->setVector(material->magnetization());
605  return MaterialItemUtils::materialProperty(*materialItem);
606 }
std::complex< double > complex_t
Definition: Complex.h:20
static const QString P_MAGNETIZATION
Definition: MaterialItem.h:26
MaterialItem * addSLDMaterial(const QString &name, double sld, double abs_term)
MaterialItem * materialFromName(const QString &name)
MaterialItem * addRefractiveMaterial(const QString &name, double delta, double beta)
kvector_t magnetization() const
Get the magnetization (in A/m)
Definition: Material.cpp:76
std::string getName() const
Returns the name of material.
Definition: Material.cpp:66
MATERIAL_TYPES typeID() const
Returns the type of underlying material implementation.
Definition: Material.cpp:71
complex_t materialData() const
Returns underlying material data.
Definition: Material.cpp:81
ExternalProperty materialProperty(const SessionItem &materialItem)
Constructs material property corresponding to given material.

References MaterialModel::addRefractiveMaterial(), MaterialModel::addSLDMaterial(), Material::getName(), SessionItem::item(), m_materialModel, m_topSampleName, Material::magnetization(), MaterialBySLD, Material::materialData(), MaterialModel::materialFromName(), MaterialItemUtils::materialProperty(), MaterialItem::P_MAGNETIZATION, RefractiveMaterial, and Material::typeID().

Referenced by visit().

Here is the call graph for this function:

◆ depth()

int INodeVisitor::depth ( ) const
inlineinherited

Returns depth of the visitor in the composite hierarchy.

Definition at line 274 of file INodeVisitor.h.

274 { return m_depth; }

References INodeVisitor::m_depth.

Referenced by InsertIParticle(), populateSampleModel(), INodeVisitor::setDepth(), and visit().

◆ InsertIParticle()

SessionItem * GUIDomainSampleVisitor::InsertIParticle ( const IParticle p_particle,
QString  model_type 
)
private

Definition at line 608 of file GUIDomainSampleVisitor.cpp.

609 {
610  auto parent = m_levelToParentItem[depth() - 1];
611  ASSERT(parent);
612 
613  QString tag;
614  auto parent_type = parent->modelType();
615  if (model_type == "Particle") {
616  if (parent_type == "ParticleCoreShell") {
617  const ParticleCoreShell* coreshell =
618  dynamic_cast<const ParticleCoreShell*>(m_itemToSample[parent]);
619  ASSERT(coreshell);
620  if (particle == coreshell->coreParticle()) {
622  } else if (particle == coreshell->shellParticle()) {
624  } else {
625  throw GUIHelpers::Error("GUIObjectBuilder::InsertIParticle:"
626  "Particle not found in parent ParticleCoreShell");
627  }
628  }
629  }
630  SessionItem* particle_item = m_sampleModel->insertNewItem(model_type, parent, -1, tag);
631 
632  ASSERT(particle_item);
633  particle_item->setItemValue(ParticleItem::P_ABUNDANCE, particle->abundance());
634  buildPositionInfo(particle_item, particle);
635 
636  m_levelToParentItem[depth()] = particle_item;
637  m_itemToSample[particle_item] = particle;
638 
639  return particle_item;
640 }
#define ASSERT(condition)
Definition: Assert.h:31
QMap< SessionItem *, const ISampleNode * > m_itemToSample
void buildPositionInfo(SessionItem *particleItem, const IParticle *sample)
QMap< int, SessionItem * > m_levelToParentItem
int depth() const
Returns depth of the visitor in the composite hierarchy.
Definition: INodeVisitor.h:274
static const QString T_CORE
static const QString T_SHELL
A particle with a core/shell geometry.
const Particle * shellParticle() const
const Particle * coreParticle() const
static const QString P_ABUNDANCE
Definition: ParticleItem.h:26
void setItemValue(const QString &tag, const QVariant &variant)
Directly set value of item under given tag.
SessionItem * insertNewItem(QString model_type, SessionItem *parent_item=nullptr, int row=-1, QString tag="")
std::string model_type
Definition: types.h:23

References IAbstractParticle::abundance(), ASSERT, buildPositionInfo(), ParticleCoreShell::coreParticle(), INodeVisitor::depth(), SessionModel::insertNewItem(), m_itemToSample, m_levelToParentItem, m_sampleModel, SessionItem::modelType(), ParticleItem::P_ABUNDANCE, SessionItem::setItemValue(), ParticleCoreShell::shellParticle(), ParticleCoreShellItem::T_CORE, and ParticleCoreShellItem::T_SHELL.

Referenced by visit().

Here is the call graph for this function:

◆ populateSampleModel()

SessionItem * GUIDomainSampleVisitor::populateSampleModel ( SampleModel sampleModel,
MaterialModel materialModel,
const MultiLayer sample,
const QString &  sample_name = "" 
)

Definition at line 71 of file GUIDomainSampleVisitor.cpp.

75 {
76  m_sampleModel = sampleModel;
77  m_materialModel = materialModel;
78  m_levelToParentItem.clear();
79 
80  m_topSampleName = sample_name;
81  if (m_topSampleName.isEmpty())
82  m_topSampleName = sample.getName().c_str();
83 
84  for (const auto& [child, depth, parent] : NodeUtils::progenyPlus(&sample)) {
85  setDepth(depth + 1);
86  child->accept(this);
87  }
88  SessionItem* result = m_levelToParentItem[1];
89 
91  return result;
92 }
void setDepth(int depth)
Sets depth of the visitor in the composite hierarchy.
Definition: INodeVisitor.h:277
const std::string & getName() const
void setItemName(const QString &name)
Set item name, add property if necessary.
std::vector< std::tuple< const INode *, int, const INode * > > progenyPlus(const INode *node, int level=0)
Returns a vector of triples (descendant, depth, parent)
Definition: NodeUtils.cpp:69

References INodeVisitor::depth(), IParametricComponent::getName(), m_levelToParentItem, m_materialModel, m_sampleModel, m_topSampleName, NodeUtils::progenyPlus(), INodeVisitor::setDepth(), and SessionItem::setItemName().

Referenced by GUIObjectBuilder::populateSampleModel().

Here is the call graph for this function:

◆ setDepth()

void INodeVisitor::setDepth ( int  depth)
inlineinherited

Sets depth of the visitor in the composite hierarchy.

Definition at line 277 of file INodeVisitor.h.

277 { m_depth = depth; }

References INodeVisitor::depth(), and INodeVisitor::m_depth.

Referenced by populateSampleModel().

Here is the call graph for this function:

◆ visit() [1/242]

virtual void INodeVisitor::visit
inline

Definition at line 151 of file INodeVisitor.h.

151 {}

◆ visit() [2/242]

virtual void INodeVisitor::visit ( const BasicLattice2D )
inlinevirtualinherited

Definition at line 151 of file INodeVisitor.h.

151 {}

Referenced by IAbstractParticle::accept(), IdentityRotation::accept(), RotationX::accept(), RotationY::accept(), RotationZ::accept(), RotationEuler::accept(), LayerInterface::accept(), LayerRoughness::accept(), FormFactorBarGauss::accept(), FormFactorBarLorentz::accept(), FormFactorCosineRippleBox::accept(), FormFactorCosineRippleGauss::accept(), FormFactorCosineRippleLorentz::accept(), FormFactorSawtoothRippleBox::accept(), FormFactorSawtoothRippleGauss::accept(), FormFactorSawtoothRippleLorentz::accept(), MesoCrystal::accept(), ConstantBackground::accept(), PoissonNoiseBackground::accept(), GISASSimulation::accept(), OffSpecularSimulation::accept(), Beam::accept(), FootprintGauss::accept(), FootprintSquare::accept(), SpecularDetector1D::accept(), SphericalDetector::accept(), InterferenceFunction1DLattice::accept(), InterferenceFunction2DLattice::accept(), InterferenceFunction2DParaCrystal::accept(), InterferenceFunction2DSuperLattice::accept(), InterferenceFunction3DLattice::accept(), InterferenceFunctionFinite2DLattice::accept(), InterferenceFunctionFinite3DLattice::accept(), InterferenceFunctionHardDisk::accept(), ParticleLayout::accept(), IsotropicGaussPeakShape::accept(), IsotropicLorentzPeakShape::accept(), GaussFisherPeakShape::accept(), LorentzFisherPeakShape::accept(), MisesFisherGaussPeakShape::accept(), MisesGaussPeakShape::accept(), Lattice3D::accept(), FormFactorCoreShell::accept(), FormFactorCrystal::accept(), FormFactorWeighted::accept(), and FormFactorDecoratorMaterial::accept().

◆ visit() [3/242]

virtual void INodeVisitor::visit
inline

Definition at line 152 of file INodeVisitor.h.

152 {}

◆ visit() [4/242]

virtual void INodeVisitor::visit ( const Beam )
inlinevirtualinherited

Definition at line 152 of file INodeVisitor.h.

152 {}

◆ visit() [5/242]

virtual void INodeVisitor::visit
inline

Definition at line 153 of file INodeVisitor.h.

153 {}

◆ visit() [6/242]

virtual void INodeVisitor::visit ( const ConstantBackground )
inlinevirtualinherited

Definition at line 153 of file INodeVisitor.h.

153 {}

◆ visit() [7/242]

virtual void INodeVisitor::visit
inline

Definition at line 154 of file INodeVisitor.h.

154 {}

◆ visit() [8/242]

virtual void INodeVisitor::visit ( const ConvolutionDetectorResolution )
inlinevirtualinherited

Definition at line 154 of file INodeVisitor.h.

154 {}

◆ visit() [9/242]

virtual void INodeVisitor::visit
inline

Definition at line 155 of file INodeVisitor.h.

155 {}

◆ visit() [10/242]

void GUIDomainSampleVisitor::visit ( const Crystal sample)
virtual

Reimplemented from INodeVisitor.

Definition at line 170 of file GUIDomainSampleVisitor.cpp.

171 {
172  SessionItem* mesocrystal_item = m_levelToParentItem[depth() - 1];
173  ASSERT(mesocrystal_item);
174  if (mesocrystal_item->modelType() != "MesoCrystal") {
175  throw GUIHelpers::Error("GUIObjectBuilder::visit(const Crystal*) "
176  "-> Error. Parent is not a MesoCrystal");
177  }
178  auto lattice = sample->transformedLattice();
179  auto vector_a = lattice.getBasisVectorA();
180  auto vector_b = lattice.getBasisVectorB();
181  auto vector_c = lattice.getBasisVectorC();
182 
183  mesocrystal_item->item<VectorItem>(MesoCrystalItem::P_VECTOR_A)->setVector(vector_a);
184  mesocrystal_item->item<VectorItem>(MesoCrystalItem::P_VECTOR_B)->setVector(vector_b);
185  mesocrystal_item->item<VectorItem>(MesoCrystalItem::P_VECTOR_C)->setVector(vector_c);
186 
187  // Since there is no CrystalItem, set the parent map to the MesoCrystalItem
188  m_levelToParentItem[depth()] = mesocrystal_item;
189 }
Lattice3D transformedLattice(const IRotation *p_rotation=nullptr) const
Definition: Crystal.cpp:81
kvector_t getBasisVectorA() const
Returns basis vector a.
Definition: Lattice3D.h:46
static const QString P_VECTOR_C
static const QString P_VECTOR_B
static const QString P_VECTOR_A
T * item(const QString &tag) const
Definition: SessionItem.h:151
QString modelType() const
Get model type.

References ASSERT, INodeVisitor::depth(), Lattice3D::getBasisVectorA(), SessionItem::item(), m_levelToParentItem, SessionItem::modelType(), MesoCrystalItem::P_VECTOR_A, MesoCrystalItem::P_VECTOR_B, MesoCrystalItem::P_VECTOR_C, and Crystal::transformedLattice().

Here is the call graph for this function:

◆ visit() [11/242]

virtual void INodeVisitor::visit
inline

Definition at line 156 of file INodeVisitor.h.

156 {}

◆ visit() [12/242]

virtual void INodeVisitor::visit ( const DistributionCosine )
inlinevirtualinherited

Definition at line 156 of file INodeVisitor.h.

156 {}

◆ visit() [13/242]

virtual void INodeVisitor::visit
inline

Definition at line 157 of file INodeVisitor.h.

157 {}

◆ visit() [14/242]

virtual void INodeVisitor::visit ( const DistributionGate )
inlinevirtualinherited

Definition at line 157 of file INodeVisitor.h.

157 {}

◆ visit() [15/242]

virtual void INodeVisitor::visit
inline

Definition at line 158 of file INodeVisitor.h.

158 {}

◆ visit() [16/242]

virtual void INodeVisitor::visit ( const DistributionGaussian )
inlinevirtualinherited

Definition at line 158 of file INodeVisitor.h.

158 {}

◆ visit() [17/242]

virtual void INodeVisitor::visit
inline

Definition at line 159 of file INodeVisitor.h.

159 {}

◆ visit() [18/242]

virtual void INodeVisitor::visit ( const DistributionLogNormal )
inlinevirtualinherited

Definition at line 159 of file INodeVisitor.h.

159 {}

◆ visit() [19/242]

virtual void INodeVisitor::visit
inline

Definition at line 160 of file INodeVisitor.h.

160 {}

◆ visit() [20/242]

virtual void INodeVisitor::visit ( const DistributionLorentz )
inlinevirtualinherited

Definition at line 160 of file INodeVisitor.h.

160 {}

◆ visit() [21/242]

virtual void INodeVisitor::visit
inline

Definition at line 161 of file INodeVisitor.h.

161 {}

◆ visit() [22/242]

virtual void INodeVisitor::visit ( const DistributionTrapezoid )
inlinevirtualinherited

Definition at line 161 of file INodeVisitor.h.

161 {}

◆ visit() [23/242]

virtual void INodeVisitor::visit
inline

Definition at line 162 of file INodeVisitor.h.

162 {}

◆ visit() [24/242]

virtual void INodeVisitor::visit ( const FootprintGauss )
inlinevirtualinherited

Definition at line 162 of file INodeVisitor.h.

162 {}

◆ visit() [25/242]

virtual void INodeVisitor::visit
inline

Definition at line 163 of file INodeVisitor.h.

163 {}

◆ visit() [26/242]

virtual void INodeVisitor::visit ( const FootprintSquare )
inlinevirtualinherited

Definition at line 163 of file INodeVisitor.h.

163 {}

◆ visit() [27/242]

virtual void INodeVisitor::visit
inline

Definition at line 164 of file INodeVisitor.h.

164 {}

◆ visit() [28/242]

void GUIDomainSampleVisitor::visit ( const FormFactorAnisoPyramid sample)
virtual

Reimplemented from INodeVisitor.

Definition at line 191 of file GUIDomainSampleVisitor.cpp.

192 {
193  SessionItem* particle_item = m_levelToParentItem[depth() - 1];
194  SessionItem* ff_item = AddFormFactorItem(particle_item, "AnisoPyramid");
196  ff_item->setItemValue(AnisoPyramidItem::P_WIDTH, sample->getWidth());
199  m_levelToParentItem[depth()] = particle_item;
200 }
static const QString P_ALPHA
static const QString P_WIDTH
static const QString P_LENGTH
static const QString P_HEIGHT
double rad2deg(double angle)
Definition: Units.h:55

References INodeVisitor::depth(), FormFactorAnisoPyramid::getAlpha(), FormFactorAnisoPyramid::getHeight(), FormFactorAnisoPyramid::getLength(), FormFactorAnisoPyramid::getWidth(), m_levelToParentItem, AnisoPyramidItem::P_ALPHA, AnisoPyramidItem::P_HEIGHT, AnisoPyramidItem::P_LENGTH, AnisoPyramidItem::P_WIDTH, Units::rad2deg(), and SessionItem::setItemValue().

Here is the call graph for this function:

◆ visit() [29/242]

virtual void INodeVisitor::visit
inline

Definition at line 165 of file INodeVisitor.h.

165 {}

◆ visit() [30/242]

void GUIDomainSampleVisitor::visit ( const FormFactorBarGauss sample)
virtual

Reimplemented from INodeVisitor.

Definition at line 202 of file GUIDomainSampleVisitor.cpp.

203 {
204  SessionItem* particle_item = m_levelToParentItem[depth() - 1];
205  SessionItem* ff_item = AddFormFactorItem(particle_item, "BarGauss");
206  ff_item->setItemValue(BarGaussItem::P_LENGTH, sample->getLength());
207  ff_item->setItemValue(BarGaussItem::P_WIDTH, sample->getWidth());
208  ff_item->setItemValue(BarGaussItem::P_HEIGHT, sample->getHeight());
209  m_levelToParentItem[depth()] = particle_item;
210 }
static const QString P_LENGTH
static const QString P_HEIGHT
static const QString P_WIDTH
double getHeight() const
double getLength() const
double getWidth() const

References INodeVisitor::depth(), IProfileRipple::getHeight(), IProfileRipple::getLength(), IProfileRipple::getWidth(), m_levelToParentItem, BarGaussItem::P_HEIGHT, BarGaussItem::P_LENGTH, BarGaussItem::P_WIDTH, and SessionItem::setItemValue().

Here is the call graph for this function:

◆ visit() [31/242]

virtual void INodeVisitor::visit
inline

Definition at line 166 of file INodeVisitor.h.

166 {}

◆ visit() [32/242]

void GUIDomainSampleVisitor::visit ( const FormFactorBarLorentz sample)
virtual

Reimplemented from INodeVisitor.

Definition at line 212 of file GUIDomainSampleVisitor.cpp.

213 {
214  SessionItem* particle_item = m_levelToParentItem[depth() - 1];
215  SessionItem* ff_item = AddFormFactorItem(particle_item, "BarLorentz");
216  ff_item->setItemValue(BarLorentzItem::P_LENGTH, sample->getLength());
217  ff_item->setItemValue(BarLorentzItem::P_WIDTH, sample->getWidth());
218  ff_item->setItemValue(BarLorentzItem::P_HEIGHT, sample->getHeight());
219  m_levelToParentItem[depth()] = particle_item;
220 }
static const QString P_LENGTH
static const QString P_WIDTH
static const QString P_HEIGHT

References INodeVisitor::depth(), IProfileRipple::getHeight(), IProfileRipple::getLength(), IProfileRipple::getWidth(), m_levelToParentItem, BarLorentzItem::P_HEIGHT, BarLorentzItem::P_LENGTH, BarLorentzItem::P_WIDTH, and SessionItem::setItemValue().

Here is the call graph for this function:

◆ visit() [33/242]

virtual void INodeVisitor::visit
inline

Definition at line 167 of file INodeVisitor.h.

167 {}

◆ visit() [34/242]

void GUIDomainSampleVisitor::visit ( const FormFactorBox sample)
virtual

Reimplemented from INodeVisitor.

Definition at line 222 of file GUIDomainSampleVisitor.cpp.

223 {
224  SessionItem* particle_item = m_levelToParentItem[depth() - 1];
225  SessionItem* ff_item = AddFormFactorItem(particle_item, "Box");
226  ff_item->setItemValue(BoxItem::P_LENGTH, sample->getLength());
227  ff_item->setItemValue(BoxItem::P_WIDTH, sample->getWidth());
228  ff_item->setItemValue(BoxItem::P_HEIGHT, sample->getHeight());
229  m_levelToParentItem[depth()] = particle_item;
230 }
static const QString P_LENGTH
static const QString P_HEIGHT
static const QString P_WIDTH
double getWidth() const
Definition: FormFactorBox.h:33
double getLength() const
Definition: FormFactorBox.h:32
double getHeight() const

References INodeVisitor::depth(), IFormFactorPrism::getHeight(), FormFactorBox::getLength(), FormFactorBox::getWidth(), m_levelToParentItem, BoxItem::P_HEIGHT, BoxItem::P_LENGTH, BoxItem::P_WIDTH, and SessionItem::setItemValue().

Here is the call graph for this function:

◆ visit() [35/242]

virtual void INodeVisitor::visit
inline

Definition at line 168 of file INodeVisitor.h.

168 {}

◆ visit() [36/242]

virtual void INodeVisitor::visit ( const FormFactorCantellatedCube )
inlinevirtualinherited

Definition at line 168 of file INodeVisitor.h.

168 {}

◆ visit() [37/242]

virtual void INodeVisitor::visit
inline

Definition at line 169 of file INodeVisitor.h.

169 {}

◆ visit() [38/242]

void GUIDomainSampleVisitor::visit ( const FormFactorCone sample)
virtual

Reimplemented from INodeVisitor.

Definition at line 232 of file GUIDomainSampleVisitor.cpp.

233 {
234  SessionItem* particle_item = m_levelToParentItem[depth() - 1];
235  SessionItem* ff_item = AddFormFactorItem(particle_item, "Cone");
236  ff_item->setItemValue(ConeItem::P_RADIUS, sample->getRadius());
237  ff_item->setItemValue(ConeItem::P_HEIGHT, sample->getHeight());
239  m_levelToParentItem[depth()] = particle_item;
240 }
static const QString P_ALPHA
static const QString P_HEIGHT
static const QString P_RADIUS
double getHeight() const
double getRadius() const
double getAlpha() const

References INodeVisitor::depth(), FormFactorCone::getAlpha(), FormFactorCone::getHeight(), FormFactorCone::getRadius(), m_levelToParentItem, ConeItem::P_ALPHA, ConeItem::P_HEIGHT, ConeItem::P_RADIUS, Units::rad2deg(), and SessionItem::setItemValue().

Here is the call graph for this function:

◆ visit() [39/242]

virtual void INodeVisitor::visit
inline

Definition at line 170 of file INodeVisitor.h.

170 {}

◆ visit() [40/242]

void GUIDomainSampleVisitor::visit ( const FormFactorCone6 sample)
virtual

Reimplemented from INodeVisitor.

Definition at line 242 of file GUIDomainSampleVisitor.cpp.

243 {
244  SessionItem* particle_item = m_levelToParentItem[depth() - 1];
245  SessionItem* ff_item = AddFormFactorItem(particle_item, "Cone6");
246  ff_item->setItemValue(Cone6Item::P_BASEEDGE, sample->getBaseEdge());
247  ff_item->setItemValue(Cone6Item::P_HEIGHT, sample->getHeight());
249  m_levelToParentItem[depth()] = particle_item;
250 }
static const QString P_HEIGHT
static const QString P_BASEEDGE
static const QString P_ALPHA
double getBaseEdge() const
double getAlpha() const
double getHeight() const

References INodeVisitor::depth(), FormFactorCone6::getAlpha(), FormFactorCone6::getBaseEdge(), FormFactorCone6::getHeight(), m_levelToParentItem, Cone6Item::P_ALPHA, Cone6Item::P_BASEEDGE, Cone6Item::P_HEIGHT, Units::rad2deg(), and SessionItem::setItemValue().

Here is the call graph for this function:

◆ visit() [41/242]

virtual void INodeVisitor::visit
inline

Definition at line 171 of file INodeVisitor.h.

171 {}

◆ visit() [42/242]

virtual void INodeVisitor::visit ( const FormFactorCoreShell )
inlinevirtualinherited

Definition at line 171 of file INodeVisitor.h.

171 {}

◆ visit() [43/242]

virtual void INodeVisitor::visit
inline

Definition at line 192 of file INodeVisitor.h.

192 {}

◆ visit() [44/242]

void GUIDomainSampleVisitor::visit ( const FormFactorCosineRippleBox sample)
virtual

Reimplemented from INodeVisitor.

Definition at line 361 of file GUIDomainSampleVisitor.cpp.

362 {
363  SessionItem* particle_item = m_levelToParentItem[depth() - 1];
364  SessionItem* ff_item = AddFormFactorItem(particle_item, "CosineRippleBox");
368  m_levelToParentItem[depth()] = particle_item;
369 }
static const QString P_WIDTH
static const QString P_HEIGHT
static const QString P_LENGTH

References INodeVisitor::depth(), IProfileRipple::getHeight(), IProfileRipple::getLength(), IProfileRipple::getWidth(), m_levelToParentItem, CosineRippleBoxItem::P_HEIGHT, CosineRippleBoxItem::P_LENGTH, CosineRippleBoxItem::P_WIDTH, and SessionItem::setItemValue().

Here is the call graph for this function:

◆ visit() [45/242]

virtual void INodeVisitor::visit
inline

Definition at line 193 of file INodeVisitor.h.

193 {}

◆ visit() [46/242]

void GUIDomainSampleVisitor::visit ( const FormFactorCosineRippleGauss sample)
virtual

Reimplemented from INodeVisitor.

Definition at line 371 of file GUIDomainSampleVisitor.cpp.

372 {
373  SessionItem* particle_item = m_levelToParentItem[depth() - 1];
374  SessionItem* ff_item = AddFormFactorItem(particle_item, "CosineRippleGauss");
378  m_levelToParentItem[depth()] = particle_item;
379 }
static const QString P_LENGTH
static const QString P_WIDTH
static const QString P_HEIGHT

References INodeVisitor::depth(), IProfileRipple::getHeight(), IProfileRipple::getLength(), IProfileRipple::getWidth(), m_levelToParentItem, CosineRippleGaussItem::P_HEIGHT, CosineRippleGaussItem::P_LENGTH, CosineRippleGaussItem::P_WIDTH, and SessionItem::setItemValue().

Here is the call graph for this function:

◆ visit() [47/242]

virtual void INodeVisitor::visit
inline

Definition at line 194 of file INodeVisitor.h.

194 {}

◆ visit() [48/242]

void GUIDomainSampleVisitor::visit ( const FormFactorCosineRippleLorentz sample)
virtual

Reimplemented from INodeVisitor.

Definition at line 381 of file GUIDomainSampleVisitor.cpp.

382 {
383  SessionItem* particle_item = m_levelToParentItem[depth() - 1];
384  SessionItem* ff_item = AddFormFactorItem(particle_item, "CosineRippleLorentz");
388  m_levelToParentItem[depth()] = particle_item;
389 }
static const QString P_LENGTH
static const QString P_WIDTH
static const QString P_HEIGHT

References INodeVisitor::depth(), IProfileRipple::getHeight(), IProfileRipple::getLength(), IProfileRipple::getWidth(), m_levelToParentItem, CosineRippleLorentzItem::P_HEIGHT, CosineRippleLorentzItem::P_LENGTH, CosineRippleLorentzItem::P_WIDTH, and SessionItem::setItemValue().

Here is the call graph for this function:

◆ visit() [49/242]

virtual void INodeVisitor::visit
inline

Definition at line 172 of file INodeVisitor.h.

172 {}

◆ visit() [50/242]

virtual void INodeVisitor::visit ( const FormFactorCrystal )
inlinevirtualinherited

Definition at line 172 of file INodeVisitor.h.

172 {}

◆ visit() [51/242]

virtual void INodeVisitor::visit
inline

Definition at line 173 of file INodeVisitor.h.

173 {}

◆ visit() [52/242]

void GUIDomainSampleVisitor::visit ( const FormFactorCuboctahedron sample)
virtual

Reimplemented from INodeVisitor.

Definition at line 252 of file GUIDomainSampleVisitor.cpp.

253 {
254  SessionItem* particle_item = m_levelToParentItem[depth() - 1];
255  SessionItem* ff_item = AddFormFactorItem(particle_item, "Cuboctahedron");
260  m_levelToParentItem[depth()] = particle_item;
261 }
static const QString P_HEIGHT
static const QString P_LENGTH
static const QString P_HEIGHT_RATIO
static const QString P_ALPHA

References INodeVisitor::depth(), FormFactorCuboctahedron::getAlpha(), FormFactorCuboctahedron::getHeight(), FormFactorCuboctahedron::getHeightRatio(), FormFactorCuboctahedron::getLength(), m_levelToParentItem, CuboctahedronItem::P_ALPHA, CuboctahedronItem::P_HEIGHT, CuboctahedronItem::P_HEIGHT_RATIO, CuboctahedronItem::P_LENGTH, Units::rad2deg(), and SessionItem::setItemValue().

Here is the call graph for this function:

◆ visit() [53/242]

virtual void INodeVisitor::visit
inline

Definition at line 174 of file INodeVisitor.h.

174 {}

◆ visit() [54/242]

void GUIDomainSampleVisitor::visit ( const FormFactorCylinder sample)
virtual

Reimplemented from INodeVisitor.

Definition at line 263 of file GUIDomainSampleVisitor.cpp.

264 {
265  SessionItem* particle_item = m_levelToParentItem[depth() - 1];
266  SessionItem* ff_item = AddFormFactorItem(particle_item, "Cylinder");
267  ff_item->setItemValue(CylinderItem::P_RADIUS, sample->getRadius());
268  ff_item->setItemValue(CylinderItem::P_HEIGHT, sample->getHeight());
269  m_levelToParentItem[depth()] = particle_item;
270 }
static const QString P_RADIUS
static const QString P_HEIGHT
double getHeight() const
double getRadius() const

References INodeVisitor::depth(), FormFactorCylinder::getHeight(), FormFactorCylinder::getRadius(), m_levelToParentItem, CylinderItem::P_HEIGHT, CylinderItem::P_RADIUS, and SessionItem::setItemValue().

Here is the call graph for this function:

◆ visit() [55/242]

virtual void INodeVisitor::visit
inline

Definition at line 175 of file INodeVisitor.h.

175 {}

◆ visit() [56/242]

virtual void INodeVisitor::visit ( const FormFactorDecoratorMaterial )
inlinevirtualinherited

Definition at line 175 of file INodeVisitor.h.

175 {}

◆ visit() [57/242]

virtual void INodeVisitor::visit
inline

Definition at line 176 of file INodeVisitor.h.

176 {}

◆ visit() [58/242]

virtual void INodeVisitor::visit ( const FormFactorDecoratorPositionFactor )
inlinevirtualinherited

Definition at line 176 of file INodeVisitor.h.

176 {}

◆ visit() [59/242]

virtual void INodeVisitor::visit
inline

Definition at line 177 of file INodeVisitor.h.

177 {}

◆ visit() [60/242]

virtual void INodeVisitor::visit ( const FormFactorDecoratorRotation )
inlinevirtualinherited

Definition at line 177 of file INodeVisitor.h.

177 {}

◆ visit() [61/242]

virtual void INodeVisitor::visit
inline

Definition at line 178 of file INodeVisitor.h.

178 {}

◆ visit() [62/242]

void GUIDomainSampleVisitor::visit ( const FormFactorDodecahedron sample)
virtual

Reimplemented from INodeVisitor.

Definition at line 272 of file GUIDomainSampleVisitor.cpp.

273 {
274  SessionItem* particle_item = m_levelToParentItem[depth() - 1];
275  SessionItem* ff_item = AddFormFactorItem(particle_item, "Dodecahedron");
276  ff_item->setItemValue(DodecahedronItem::P_EDGE, sample->getEdge());
277  m_levelToParentItem[depth()] = particle_item;
278 }
static const QString P_EDGE

References INodeVisitor::depth(), FormFactorDodecahedron::getEdge(), m_levelToParentItem, DodecahedronItem::P_EDGE, and SessionItem::setItemValue().

Here is the call graph for this function:

◆ visit() [63/242]

virtual void INodeVisitor::visit
inline

Definition at line 179 of file INodeVisitor.h.

179 {}

◆ visit() [64/242]

void GUIDomainSampleVisitor::visit ( const FormFactorDot sample)
virtual

Reimplemented from INodeVisitor.

Definition at line 280 of file GUIDomainSampleVisitor.cpp.

281 {
282  SessionItem* particle_item = m_levelToParentItem[depth() - 1];
283  SessionItem* ff_item = AddFormFactorItem(particle_item, "Dot");
284  ff_item->setItemValue(FullSphereItem::P_RADIUS, sample->getRadius());
285  m_levelToParentItem[depth()] = particle_item;
286 }
double getRadius() const
Definition: FormFactorDot.h:31
static const QString P_RADIUS

References INodeVisitor::depth(), FormFactorDot::getRadius(), m_levelToParentItem, FullSphereItem::P_RADIUS, and SessionItem::setItemValue().

Here is the call graph for this function:

◆ visit() [65/242]

virtual void INodeVisitor::visit
inline

Definition at line 180 of file INodeVisitor.h.

180 {}

◆ visit() [66/242]

void GUIDomainSampleVisitor::visit ( const FormFactorEllipsoidalCylinder sample)
virtual

Reimplemented from INodeVisitor.

Definition at line 288 of file GUIDomainSampleVisitor.cpp.

289 {
290  SessionItem* particle_item = m_levelToParentItem[depth() - 1];
291  SessionItem* ff_item = AddFormFactorItem(particle_item, "EllipsoidalCylinder");
295  m_levelToParentItem[depth()] = particle_item;
296 }
static const QString P_RADIUS_X
static const QString P_HEIGHT
static const QString P_RADIUS_Y

References INodeVisitor::depth(), FormFactorEllipsoidalCylinder::getHeight(), FormFactorEllipsoidalCylinder::getRadiusX(), FormFactorEllipsoidalCylinder::getRadiusY(), m_levelToParentItem, EllipsoidalCylinderItem::P_HEIGHT, EllipsoidalCylinderItem::P_RADIUS_X, EllipsoidalCylinderItem::P_RADIUS_Y, and SessionItem::setItemValue().

Here is the call graph for this function:

◆ visit() [67/242]

virtual void INodeVisitor::visit
inline

Definition at line 181 of file INodeVisitor.h.

181 {}

◆ visit() [68/242]

void GUIDomainSampleVisitor::visit ( const FormFactorFullSphere sample)
virtual

Reimplemented from INodeVisitor.

Definition at line 298 of file GUIDomainSampleVisitor.cpp.

299 {
300  SessionItem* particle_item = m_levelToParentItem[depth() - 1];
301  SessionItem* ff_item = AddFormFactorItem(particle_item, "FullSphere");
302  ff_item->setItemValue(FullSphereItem::P_RADIUS, sample->getRadius());
303  m_levelToParentItem[depth()] = particle_item;
304 }

References INodeVisitor::depth(), FormFactorFullSphere::getRadius(), m_levelToParentItem, FullSphereItem::P_RADIUS, and SessionItem::setItemValue().

Here is the call graph for this function:

◆ visit() [69/242]

virtual void INodeVisitor::visit
inline

Definition at line 182 of file INodeVisitor.h.

182 {}

◆ visit() [70/242]

void GUIDomainSampleVisitor::visit ( const FormFactorFullSpheroid sample)
virtual

Reimplemented from INodeVisitor.

Definition at line 306 of file GUIDomainSampleVisitor.cpp.

307 {
308  SessionItem* particle_item = m_levelToParentItem[depth() - 1];
309  SessionItem* ff_item = AddFormFactorItem(particle_item, "FullSpheroid");
312  m_levelToParentItem[depth()] = particle_item;
313 }
static const QString P_HEIGHT
static const QString P_RADIUS

References INodeVisitor::depth(), FormFactorFullSpheroid::getHeight(), FormFactorFullSpheroid::getRadius(), m_levelToParentItem, FullSpheroidItem::P_HEIGHT, FullSpheroidItem::P_RADIUS, and SessionItem::setItemValue().

Here is the call graph for this function:

◆ visit() [71/242]

virtual void INodeVisitor::visit
inline

Definition at line 183 of file INodeVisitor.h.

183 {}

◆ visit() [72/242]

virtual void INodeVisitor::visit ( const FormFactorGaussSphere )
inlinevirtualinherited

Definition at line 183 of file INodeVisitor.h.

183 {}

◆ visit() [73/242]

virtual void INodeVisitor::visit
inline

Definition at line 184 of file INodeVisitor.h.

184 {}

◆ visit() [74/242]

void GUIDomainSampleVisitor::visit ( const FormFactorHemiEllipsoid sample)
virtual

Reimplemented from INodeVisitor.

Definition at line 323 of file GUIDomainSampleVisitor.cpp.

324 {
325  SessionItem* particle_item = m_levelToParentItem[depth() - 1];
326  SessionItem* ff_item = AddFormFactorItem(particle_item, "HemiEllipsoid");
330  m_levelToParentItem[depth()] = particle_item;
331 }
static const QString P_RADIUS_Y
static const QString P_RADIUS_X
static const QString P_HEIGHT

References INodeVisitor::depth(), FormFactorHemiEllipsoid::getHeight(), FormFactorHemiEllipsoid::getRadiusX(), FormFactorHemiEllipsoid::getRadiusY(), m_levelToParentItem, HemiEllipsoidItem::P_HEIGHT, HemiEllipsoidItem::P_RADIUS_X, HemiEllipsoidItem::P_RADIUS_Y, and SessionItem::setItemValue().

Here is the call graph for this function:

◆ visit() [75/242]

virtual void INodeVisitor::visit
inline

Definition at line 185 of file INodeVisitor.h.

185 {}

◆ visit() [76/242]

virtual void INodeVisitor::visit ( const FormFactorHollowSphere )
inlinevirtualinherited

Definition at line 185 of file INodeVisitor.h.

185 {}

◆ visit() [77/242]

virtual void INodeVisitor::visit
inline

Definition at line 186 of file INodeVisitor.h.

186 {}

◆ visit() [78/242]

void GUIDomainSampleVisitor::visit ( const FormFactorIcosahedron sample)
virtual

Reimplemented from INodeVisitor.

Definition at line 315 of file GUIDomainSampleVisitor.cpp.

316 {
317  SessionItem* particle_item = m_levelToParentItem[depth() - 1];
318  SessionItem* ff_item = AddFormFactorItem(particle_item, "Icosahedron");
319  ff_item->setItemValue(IcosahedronItem::P_EDGE, sample->getEdge());
320  m_levelToParentItem[depth()] = particle_item;
321 }
static const QString P_EDGE

References INodeVisitor::depth(), FormFactorIcosahedron::getEdge(), m_levelToParentItem, IcosahedronItem::P_EDGE, and SessionItem::setItemValue().

Here is the call graph for this function:

◆ visit() [79/242]

virtual void INodeVisitor::visit
inline

Definition at line 187 of file INodeVisitor.h.

187 {}

◆ visit() [80/242]

virtual void INodeVisitor::visit ( const FormFactorLongBoxGauss )
inlinevirtualinherited

Definition at line 187 of file INodeVisitor.h.

187 {}

◆ visit() [81/242]

virtual void INodeVisitor::visit
inline

Definition at line 188 of file INodeVisitor.h.

188 {}

◆ visit() [82/242]

virtual void INodeVisitor::visit ( const FormFactorLongBoxLorentz )
inlinevirtualinherited

Definition at line 188 of file INodeVisitor.h.

188 {}

◆ visit() [83/242]

virtual void INodeVisitor::visit
inline

Definition at line 189 of file INodeVisitor.h.

189 {}

◆ visit() [84/242]

void GUIDomainSampleVisitor::visit ( const FormFactorPrism3 sample)
virtual

Reimplemented from INodeVisitor.

Definition at line 333 of file GUIDomainSampleVisitor.cpp.

334 {
335  SessionItem* particle_item = m_levelToParentItem[depth() - 1];
336  SessionItem* ff_item = AddFormFactorItem(particle_item, "Prism3");
337  ff_item->setItemValue(Prism3Item::P_BASEEDGE, sample->getBaseEdge());
338  ff_item->setItemValue(Prism3Item::P_HEIGHT, sample->getHeight());
339  m_levelToParentItem[depth()] = particle_item;
340 }
double getBaseEdge() const
static const QString P_HEIGHT
static const QString P_BASEEDGE

References INodeVisitor::depth(), FormFactorPrism3::getBaseEdge(), IFormFactorPrism::getHeight(), m_levelToParentItem, Prism3Item::P_BASEEDGE, Prism3Item::P_HEIGHT, and SessionItem::setItemValue().

Here is the call graph for this function:

◆ visit() [85/242]

virtual void INodeVisitor::visit
inline

Definition at line 190 of file INodeVisitor.h.

190 {}

◆ visit() [86/242]

void GUIDomainSampleVisitor::visit ( const FormFactorPrism6 sample)
virtual

Reimplemented from INodeVisitor.

Definition at line 342 of file GUIDomainSampleVisitor.cpp.

343 {
344  SessionItem* particle_item = m_levelToParentItem[depth() - 1];
345  SessionItem* ff_item = AddFormFactorItem(particle_item, "Prism6");
346  ff_item->setItemValue(Prism6Item::P_BASEEDGE, sample->getBaseEdge());
347  ff_item->setItemValue(Prism6Item::P_HEIGHT, sample->getHeight());
348  m_levelToParentItem[depth()] = particle_item;
349 }
double getBaseEdge() const
static const QString P_HEIGHT
static const QString P_BASEEDGE

References INodeVisitor::depth(), FormFactorPrism6::getBaseEdge(), IFormFactorPrism::getHeight(), m_levelToParentItem, Prism6Item::P_BASEEDGE, Prism6Item::P_HEIGHT, and SessionItem::setItemValue().

Here is the call graph for this function:

◆ visit() [87/242]

virtual void INodeVisitor::visit
inline

Definition at line 191 of file INodeVisitor.h.

191 {}

◆ visit() [88/242]

void GUIDomainSampleVisitor::visit ( const FormFactorPyramid sample)
virtual

Reimplemented from INodeVisitor.

Definition at line 351 of file GUIDomainSampleVisitor.cpp.

352 {
353  SessionItem* particle_item = m_levelToParentItem[depth() - 1];
354  SessionItem* ff_item = AddFormFactorItem(particle_item, "Pyramid");
355  ff_item->setItemValue(PyramidItem::P_BASEEDGE, sample->getBaseEdge());
356  ff_item->setItemValue(PyramidItem::P_HEIGHT, sample->getHeight());
358  m_levelToParentItem[depth()] = particle_item;
359 }
double getHeight() const
double getBaseEdge() const
double getAlpha() const
static const QString P_HEIGHT
static const QString P_ALPHA
static const QString P_BASEEDGE

References INodeVisitor::depth(), FormFactorPyramid::getAlpha(), FormFactorPyramid::getBaseEdge(), FormFactorPyramid::getHeight(), m_levelToParentItem, PyramidItem::P_ALPHA, PyramidItem::P_BASEEDGE, PyramidItem::P_HEIGHT, Units::rad2deg(), and SessionItem::setItemValue().

Here is the call graph for this function:

◆ visit() [89/242]

virtual void INodeVisitor::visit
inline

Definition at line 195 of file INodeVisitor.h.

195 {}

◆ visit() [90/242]

void GUIDomainSampleVisitor::visit ( const FormFactorSawtoothRippleBox sample)
virtual

Reimplemented from INodeVisitor.

Definition at line 391 of file GUIDomainSampleVisitor.cpp.

392 {
393  SessionItem* particle_item = m_levelToParentItem[depth() - 1];
394  SessionItem* ff_item = AddFormFactorItem(particle_item, "SawtoothRippleBox");
399  m_levelToParentItem[depth()] = particle_item;
400 }
double getAsymmetry() const
static const QString P_HEIGHT
static const QString P_WIDTH
static const QString P_ASYMMETRY
static const QString P_LENGTH

References INodeVisitor::depth(), ISawtoothRipple::getAsymmetry(), IProfileRipple::getHeight(), IProfileRipple::getLength(), IProfileRipple::getWidth(), m_levelToParentItem, SawtoothRippleBoxItem::P_ASYMMETRY, SawtoothRippleBoxItem::P_HEIGHT, SawtoothRippleBoxItem::P_LENGTH, SawtoothRippleBoxItem::P_WIDTH, and SessionItem::setItemValue().

Here is the call graph for this function:

◆ visit() [91/242]

virtual void INodeVisitor::visit
inline

Definition at line 196 of file INodeVisitor.h.

196 {}

◆ visit() [92/242]

void GUIDomainSampleVisitor::visit ( const FormFactorSawtoothRippleGauss sample)
virtual

Reimplemented from INodeVisitor.

Definition at line 402 of file GUIDomainSampleVisitor.cpp.

403 {
404  SessionItem* particle_item = m_levelToParentItem[depth() - 1];
405  SessionItem* ff_item = AddFormFactorItem(particle_item, "SawtoothRippleGauss");
410  m_levelToParentItem[depth()] = particle_item;
411 }
static const QString P_WIDTH
static const QString P_ASYMMETRY
static const QString P_LENGTH
static const QString P_HEIGHT

References INodeVisitor::depth(), ISawtoothRipple::getAsymmetry(), IProfileRipple::getHeight(), IProfileRipple::getLength(), IProfileRipple::getWidth(), m_levelToParentItem, SawtoothRippleGaussItem::P_ASYMMETRY, SawtoothRippleGaussItem::P_HEIGHT, SawtoothRippleGaussItem::P_LENGTH, SawtoothRippleGaussItem::P_WIDTH, and SessionItem::setItemValue().

Here is the call graph for this function:

◆ visit() [93/242]

virtual void INodeVisitor::visit
inline

Definition at line 197 of file INodeVisitor.h.

197 {}

◆ visit() [94/242]

void GUIDomainSampleVisitor::visit ( const FormFactorSawtoothRippleLorentz sample)
virtual

Reimplemented from INodeVisitor.

Definition at line 413 of file GUIDomainSampleVisitor.cpp.

414 {
415  SessionItem* particle_item = m_levelToParentItem[depth() - 1];
416  SessionItem* ff_item = AddFormFactorItem(particle_item, "SawtoothRippleLorentz");
421  m_levelToParentItem[depth()] = particle_item;
422 }
static const QString P_HEIGHT
static const QString P_LENGTH
static const QString P_WIDTH
static const QString P_ASYMMETRY

References INodeVisitor::depth(), ISawtoothRipple::getAsymmetry(), IProfileRipple::getHeight(), IProfileRipple::getLength(), IProfileRipple::getWidth(), m_levelToParentItem, SawtoothRippleLorentzItem::P_ASYMMETRY, SawtoothRippleLorentzItem::P_HEIGHT, SawtoothRippleLorentzItem::P_LENGTH, SawtoothRippleLorentzItem::P_WIDTH, and SessionItem::setItemValue().

Here is the call graph for this function:

◆ visit() [95/242]

virtual void INodeVisitor::visit
inline

Definition at line 198 of file INodeVisitor.h.

198 {}

◆ visit() [96/242]

virtual void INodeVisitor::visit ( const FormFactorSphereGaussianRadius )
inlinevirtualinherited

Definition at line 198 of file INodeVisitor.h.

198 {}

◆ visit() [97/242]

virtual void INodeVisitor::visit
inline

Definition at line 199 of file INodeVisitor.h.

199 {}

◆ visit() [98/242]

virtual void INodeVisitor::visit ( const FormFactorSphereLogNormalRadius )
inlinevirtualinherited

Definition at line 199 of file INodeVisitor.h.

199 {}

◆ visit() [99/242]

virtual void INodeVisitor::visit
inline

Definition at line 200 of file INodeVisitor.h.

200 {}

◆ visit() [100/242]

void GUIDomainSampleVisitor::visit ( const FormFactorTetrahedron sample)
virtual

Reimplemented from INodeVisitor.

Definition at line 424 of file GUIDomainSampleVisitor.cpp.

425 {
426  SessionItem* particle_item = m_levelToParentItem[depth() - 1];
427  SessionItem* ff_item = AddFormFactorItem(particle_item, "Tetrahedron");
429  ff_item->setItemValue(TetrahedronItem::P_HEIGHT, sample->getHeight());
431  m_levelToParentItem[depth()] = particle_item;
432 }
static const QString P_ALPHA
static const QString P_BASEEDGE
static const QString P_HEIGHT

References INodeVisitor::depth(), FormFactorTetrahedron::getAlpha(), FormFactorTetrahedron::getBaseEdge(), FormFactorTetrahedron::getHeight(), m_levelToParentItem, TetrahedronItem::P_ALPHA, TetrahedronItem::P_BASEEDGE, TetrahedronItem::P_HEIGHT, Units::rad2deg(), and SessionItem::setItemValue().

Here is the call graph for this function:

◆ visit() [101/242]

virtual void INodeVisitor::visit
inline

Definition at line 201 of file INodeVisitor.h.

201 {}

◆ visit() [102/242]

void GUIDomainSampleVisitor::visit ( const FormFactorTruncatedCube sample)
virtual

Reimplemented from INodeVisitor.

Definition at line 434 of file GUIDomainSampleVisitor.cpp.

435 {
436  SessionItem* particle_item = m_levelToParentItem[depth() - 1];
437  SessionItem* ff_item = AddFormFactorItem(particle_item, "TruncatedCube");
440  m_levelToParentItem[depth()] = particle_item;
441 }
static const QString P_REMOVED_LENGTH
static const QString P_LENGTH

References INodeVisitor::depth(), FormFactorTruncatedCube::getLength(), FormFactorTruncatedCube::getRemovedLength(), m_levelToParentItem, TruncatedCubeItem::P_LENGTH, TruncatedCubeItem::P_REMOVED_LENGTH, and SessionItem::setItemValue().

Here is the call graph for this function:

◆ visit() [103/242]

virtual void INodeVisitor::visit
inline

Definition at line 202 of file INodeVisitor.h.

202 {}

◆ visit() [104/242]

void GUIDomainSampleVisitor::visit ( const FormFactorTruncatedSphere sample)
virtual

Reimplemented from INodeVisitor.

Definition at line 443 of file GUIDomainSampleVisitor.cpp.

444 {
445  SessionItem* particle_item = m_levelToParentItem[depth() - 1];
446  SessionItem* ff_item = AddFormFactorItem(particle_item, "TruncatedSphere");
450  m_levelToParentItem[depth()] = particle_item;
451 }
static const QString P_REMOVED_TOP
static const QString P_RADIUS
static const QString P_HEIGHT

References INodeVisitor::depth(), FormFactorTruncatedSphere::getHeight(), FormFactorTruncatedSphere::getRadius(), FormFactorTruncatedSphere::getRemovedTop(), m_levelToParentItem, TruncatedSphereItem::P_HEIGHT, TruncatedSphereItem::P_RADIUS, TruncatedSphereItem::P_REMOVED_TOP, and SessionItem::setItemValue().

Here is the call graph for this function:

◆ visit() [105/242]

virtual void INodeVisitor::visit
inline

Definition at line 203 of file INodeVisitor.h.

203 {}

◆ visit() [106/242]

void GUIDomainSampleVisitor::visit ( const FormFactorTruncatedSpheroid sample)
virtual

Reimplemented from INodeVisitor.

Definition at line 453 of file GUIDomainSampleVisitor.cpp.

454 {
455  SessionItem* particle_item = m_levelToParentItem[depth() - 1];
456  SessionItem* ff_item = AddFormFactorItem(particle_item, "TruncatedSpheroid");
461  m_levelToParentItem[depth()] = particle_item;
462 }
static const QString P_HEIGHT
static const QString P_HFC
static const QString P_RADIUS
static const QString P_REMOVED_TOP

References INodeVisitor::depth(), FormFactorTruncatedSpheroid::getHeight(), FormFactorTruncatedSpheroid::getHeightFlattening(), FormFactorTruncatedSpheroid::getRadius(), FormFactorTruncatedSpheroid::getRemovedTop(), m_levelToParentItem, TruncatedSpheroidItem::P_HEIGHT, TruncatedSpheroidItem::P_HFC, TruncatedSpheroidItem::P_RADIUS, TruncatedSpheroidItem::P_REMOVED_TOP, and SessionItem::setItemValue().

Here is the call graph for this function:

◆ visit() [107/242]

virtual void INodeVisitor::visit
inline

Definition at line 204 of file INodeVisitor.h.

204 {}

◆ visit() [108/242]

virtual void INodeVisitor::visit ( const FormFactorWeighted )
inlinevirtualinherited

Definition at line 204 of file INodeVisitor.h.

204 {}

◆ visit() [109/242]

virtual void INodeVisitor::visit
inline

Definition at line 205 of file INodeVisitor.h.

205 {}

◆ visit() [110/242]

virtual void INodeVisitor::visit ( const FTDecayFunction1DCauchy )
inlinevirtualinherited

Definition at line 205 of file INodeVisitor.h.

205 {}

◆ visit() [111/242]

virtual void INodeVisitor::visit
inline

Definition at line 206 of file INodeVisitor.h.

206 {}

◆ visit() [112/242]

virtual void INodeVisitor::visit ( const FTDecayFunction1DGauss )
inlinevirtualinherited

Definition at line 206 of file INodeVisitor.h.

206 {}

◆ visit() [113/242]

virtual void INodeVisitor::visit
inline

Definition at line 207 of file INodeVisitor.h.

207 {}

◆ visit() [114/242]

virtual void INodeVisitor::visit ( const FTDecayFunction1DTriangle )
inlinevirtualinherited

Definition at line 207 of file INodeVisitor.h.

207 {}

◆ visit() [115/242]

virtual void INodeVisitor::visit
inline

Definition at line 208 of file INodeVisitor.h.

208 {}

◆ visit() [116/242]

virtual void INodeVisitor::visit ( const FTDecayFunction1DVoigt )
inlinevirtualinherited

Definition at line 208 of file INodeVisitor.h.

208 {}

◆ visit() [117/242]

virtual void INodeVisitor::visit
inline

Definition at line 209 of file INodeVisitor.h.

209 {}

◆ visit() [118/242]

virtual void INodeVisitor::visit ( const FTDecayFunction2DCauchy )
inlinevirtualinherited

Definition at line 209 of file INodeVisitor.h.

209 {}

◆ visit() [119/242]

virtual void INodeVisitor::visit
inline

Definition at line 210 of file INodeVisitor.h.

210 {}

◆ visit() [120/242]

virtual void INodeVisitor::visit ( const FTDecayFunction2DGauss )
inlinevirtualinherited

Definition at line 210 of file INodeVisitor.h.

210 {}

◆ visit() [121/242]

virtual void INodeVisitor::visit
inline

Definition at line 211 of file INodeVisitor.h.

211 {}

◆ visit() [122/242]

virtual void INodeVisitor::visit ( const FTDecayFunction2DVoigt )
inlinevirtualinherited

Definition at line 211 of file INodeVisitor.h.

211 {}

◆ visit() [123/242]

virtual void INodeVisitor::visit
inline

Definition at line 212 of file INodeVisitor.h.

212 {}

◆ visit() [124/242]

virtual void INodeVisitor::visit ( const FTDistribution1DCauchy )
inlinevirtualinherited

Definition at line 212 of file INodeVisitor.h.

212 {}

◆ visit() [125/242]

virtual void INodeVisitor::visit
inline

Definition at line 213 of file INodeVisitor.h.

213 {}

◆ visit() [126/242]

virtual void INodeVisitor::visit ( const FTDistribution1DCosine )
inlinevirtualinherited

Definition at line 213 of file INodeVisitor.h.

213 {}

◆ visit() [127/242]

virtual void INodeVisitor::visit
inline

Definition at line 214 of file INodeVisitor.h.

214 {}

◆ visit() [128/242]

virtual void INodeVisitor::visit ( const FTDistribution1DGate )
inlinevirtualinherited

Definition at line 214 of file INodeVisitor.h.

214 {}

◆ visit() [129/242]

virtual void INodeVisitor::visit
inline

Definition at line 215 of file INodeVisitor.h.

215 {}

◆ visit() [130/242]

virtual void INodeVisitor::visit ( const FTDistribution1DGauss )
inlinevirtualinherited

Definition at line 215 of file INodeVisitor.h.

215 {}

◆ visit() [131/242]

virtual void INodeVisitor::visit
inline

Definition at line 216 of file INodeVisitor.h.

216 {}

◆ visit() [132/242]

virtual void INodeVisitor::visit ( const FTDistribution1DTriangle )
inlinevirtualinherited

Definition at line 216 of file INodeVisitor.h.

216 {}

◆ visit() [133/242]

virtual void INodeVisitor::visit
inline

Definition at line 217 of file INodeVisitor.h.

217 {}

◆ visit() [134/242]

virtual void INodeVisitor::visit ( const FTDistribution1DVoigt )
inlinevirtualinherited

Definition at line 217 of file INodeVisitor.h.

217 {}

◆ visit() [135/242]

virtual void INodeVisitor::visit
inline

Definition at line 218 of file INodeVisitor.h.

218 {}

◆ visit() [136/242]

virtual void INodeVisitor::visit ( const FTDistribution2DCauchy )
inlinevirtualinherited

Definition at line 218 of file INodeVisitor.h.

218 {}

◆ visit() [137/242]

virtual void INodeVisitor::visit
inline

Definition at line 219 of file INodeVisitor.h.

219 {}

◆ visit() [138/242]

virtual void INodeVisitor::visit ( const FTDistribution2DCone )
inlinevirtualinherited

Definition at line 219 of file INodeVisitor.h.

219 {}

◆ visit() [139/242]

virtual void INodeVisitor::visit
inline

Definition at line 220 of file INodeVisitor.h.

220 {}

◆ visit() [140/242]

virtual void INodeVisitor::visit ( const FTDistribution2DGate )
inlinevirtualinherited

Definition at line 220 of file INodeVisitor.h.

220 {}

◆ visit() [141/242]

virtual void INodeVisitor::visit
inline

Definition at line 221 of file INodeVisitor.h.

221 {}

◆ visit() [142/242]

virtual void INodeVisitor::visit ( const FTDistribution2DGauss )
inlinevirtualinherited

Definition at line 221 of file INodeVisitor.h.

221 {}

◆ visit() [143/242]

virtual void INodeVisitor::visit
inline

Definition at line 222 of file INodeVisitor.h.

222 {}

◆ visit() [144/242]

virtual void INodeVisitor::visit ( const FTDistribution2DVoigt )
inlinevirtualinherited

Definition at line 222 of file INodeVisitor.h.

222 {}

◆ visit() [145/242]

virtual void INodeVisitor::visit
inline

Definition at line 223 of file INodeVisitor.h.

223 {}

◆ visit() [146/242]

virtual void INodeVisitor::visit ( const GISASSimulation )
inlinevirtualinherited

Definition at line 223 of file INodeVisitor.h.

223 {}

◆ visit() [147/242]

virtual void INodeVisitor::visit
inline

Definition at line 224 of file INodeVisitor.h.

224 {}

◆ visit() [148/242]

virtual void INodeVisitor::visit ( const HexagonalLattice2D )
inlinevirtualinherited

Definition at line 224 of file INodeVisitor.h.

224 {}

◆ visit() [149/242]

virtual void INodeVisitor::visit
inline

Definition at line 225 of file INodeVisitor.h.

225 {}

◆ visit() [150/242]

virtual void INodeVisitor::visit ( const IAbstractParticle )
inlinevirtualinherited

Definition at line 225 of file INodeVisitor.h.

225 {}

◆ visit() [151/242]

virtual void INodeVisitor::visit
inline

Definition at line 229 of file INodeVisitor.h.

229 {}

◆ visit() [152/242]

virtual void INodeVisitor::visit ( const IBornFF )
inlinevirtualinherited

Definition at line 229 of file INodeVisitor.h.

229 {}

◆ visit() [153/242]

virtual void INodeVisitor::visit
inline

Definition at line 226 of file INodeVisitor.h.

226 {}

◆ visit() [154/242]

virtual void INodeVisitor::visit ( const IClusteredParticles *  )
inlinevirtualinherited

Definition at line 226 of file INodeVisitor.h.

226 {}

◆ visit() [155/242]

virtual void INodeVisitor::visit
inline

Definition at line 227 of file INodeVisitor.h.

227 {}

◆ visit() [156/242]

virtual void INodeVisitor::visit ( const IdentityRotation )
inlinevirtualinherited

Definition at line 227 of file INodeVisitor.h.

227 {}

◆ visit() [157/242]

virtual void INodeVisitor::visit
inline

Definition at line 228 of file INodeVisitor.h.

228 {}

◆ visit() [158/242]

virtual void INodeVisitor::visit ( const IFormFactor )
inlinevirtualinherited

Definition at line 228 of file INodeVisitor.h.

228 {}

◆ visit() [159/242]

virtual void INodeVisitor::visit
inline

Definition at line 230 of file INodeVisitor.h.

230 {}

◆ visit() [160/242]

virtual void INodeVisitor::visit ( const IFormFactorDecorator )
inlinevirtualinherited

Definition at line 230 of file INodeVisitor.h.

230 {}

◆ visit() [161/242]

virtual void INodeVisitor::visit
inline

Definition at line 231 of file INodeVisitor.h.

231 {}

◆ visit() [162/242]

virtual void INodeVisitor::visit ( const IInterferenceFunction )
inlinevirtualinherited

Definition at line 231 of file INodeVisitor.h.

231 {}

◆ visit() [163/242]

virtual void INodeVisitor::visit
inline

Definition at line 233 of file INodeVisitor.h.

233 {}

◆ visit() [164/242]

virtual void INodeVisitor::visit ( const INode )
inlinevirtualinherited

Definition at line 233 of file INodeVisitor.h.

233 {}

◆ visit() [165/242]

virtual void INodeVisitor::visit
inline

Definition at line 234 of file INodeVisitor.h.

234 {}

◆ visit() [166/242]

virtual void INodeVisitor::visit ( const Instrument )
inlinevirtualinherited

Definition at line 234 of file INodeVisitor.h.

234 {}

◆ visit() [167/242]

virtual void INodeVisitor::visit
inline

Definition at line 235 of file INodeVisitor.h.

235 {}

◆ visit() [168/242]

void GUIDomainSampleVisitor::visit ( const InterferenceFunction1DLattice sample)
virtual

Reimplemented from INodeVisitor.

Definition at line 464 of file GUIDomainSampleVisitor.cpp.

465 {
466  SessionItem* parent = m_levelToParentItem[depth() - 1];
467  ASSERT(parent);
471  m_levelToParentItem[depth()] = item;
472 }
static const QString T_INTERFERENCE
T * insertItem(SessionItem *parent=nullptr, int row=-1, QString tag="")
Definition: SessionModel.h:125
void set1DLatticeItem(SessionItem *item, const InterferenceFunction1DLattice &sample)

References ASSERT, INodeVisitor::depth(), SessionModel::insertItem(), m_levelToParentItem, m_sampleModel, TransformFromDomain::set1DLatticeItem(), and ParticleLayoutItem::T_INTERFERENCE.

Here is the call graph for this function:

◆ visit() [169/242]

virtual void INodeVisitor::visit
inline

Definition at line 236 of file INodeVisitor.h.

236 {}

◆ visit() [170/242]

void GUIDomainSampleVisitor::visit ( const InterferenceFunction2DLattice sample)
virtual

Reimplemented from INodeVisitor.

Definition at line 474 of file GUIDomainSampleVisitor.cpp.

475 {
476  SessionItem* parent = m_levelToParentItem[depth() - 1];
477  ASSERT(parent);
481  m_levelToParentItem[depth()] = item;
482 }
void set2DLatticeItem(SessionItem *item, const InterferenceFunction2DLattice &sample)

References ASSERT, INodeVisitor::depth(), SessionModel::insertItem(), m_levelToParentItem, m_sampleModel, TransformFromDomain::set2DLatticeItem(), and ParticleLayoutItem::T_INTERFERENCE.

Here is the call graph for this function:

◆ visit() [171/242]

virtual void INodeVisitor::visit
inline

Definition at line 237 of file INodeVisitor.h.

237 {}

◆ visit() [172/242]

void GUIDomainSampleVisitor::visit ( const InterferenceFunction2DParaCrystal sample)
virtual

Reimplemented from INodeVisitor.

Definition at line 484 of file GUIDomainSampleVisitor.cpp.

485 {
486  SessionItem* parent = m_levelToParentItem[depth() - 1];
487  ASSERT(parent);
491  m_levelToParentItem[depth()] = item;
492 }
void set2DParaCrystalItem(SessionItem *item, const InterferenceFunction2DParaCrystal &sample)

References ASSERT, INodeVisitor::depth(), SessionModel::insertItem(), m_levelToParentItem, m_sampleModel, TransformFromDomain::set2DParaCrystalItem(), and ParticleLayoutItem::T_INTERFERENCE.

Here is the call graph for this function:

◆ visit() [173/242]

virtual void INodeVisitor::visit
inline

Definition at line 238 of file INodeVisitor.h.

238 {}

◆ visit() [174/242]

virtual void INodeVisitor::visit ( const InterferenceFunction2DSuperLattice )
inlinevirtualinherited

Definition at line 238 of file INodeVisitor.h.

238 {}

◆ visit() [175/242]

virtual void INodeVisitor::visit
inline

Definition at line 239 of file INodeVisitor.h.

239 {}

◆ visit() [176/242]

virtual void INodeVisitor::visit ( const InterferenceFunction3DLattice )
inlinevirtualinherited

Definition at line 239 of file INodeVisitor.h.

239 {}

◆ visit() [177/242]

virtual void INodeVisitor::visit
inline

Definition at line 240 of file INodeVisitor.h.

240 {}

◆ visit() [178/242]

void GUIDomainSampleVisitor::visit ( const InterferenceFunctionFinite2DLattice sample)
virtual

Reimplemented from INodeVisitor.

Definition at line 494 of file GUIDomainSampleVisitor.cpp.

495 {
496  SessionItem* parent = m_levelToParentItem[depth() - 1];
497  ASSERT(parent);
501  m_levelToParentItem[depth()] = item;
502 }
void setFinite2DLatticeItem(SessionItem *item, const InterferenceFunctionFinite2DLattice &sample)

References ASSERT, INodeVisitor::depth(), SessionModel::insertItem(), m_levelToParentItem, m_sampleModel, TransformFromDomain::setFinite2DLatticeItem(), and ParticleLayoutItem::T_INTERFERENCE.

Here is the call graph for this function:

◆ visit() [179/242]

virtual void INodeVisitor::visit
inline

Definition at line 241 of file INodeVisitor.h.

241 {}

◆ visit() [180/242]

virtual void INodeVisitor::visit ( const InterferenceFunctionFinite3DLattice )
inlinevirtualinherited

Definition at line 241 of file INodeVisitor.h.

241 {}

◆ visit() [181/242]

virtual void INodeVisitor::visit
inline

Definition at line 242 of file INodeVisitor.h.

242 {}

◆ visit() [182/242]

void GUIDomainSampleVisitor::visit ( const InterferenceFunctionHardDisk sample)
virtual

Reimplemented from INodeVisitor.

Definition at line 504 of file GUIDomainSampleVisitor.cpp.

505 {
506  SessionItem* parent = m_levelToParentItem[depth() - 1];
507  ASSERT(parent);
511  m_levelToParentItem[depth()] = item;
512 }
void setHardDiskItem(SessionItem *item, const InterferenceFunctionHardDisk &sample)

References ASSERT, INodeVisitor::depth(), SessionModel::insertItem(), m_levelToParentItem, m_sampleModel, TransformFromDomain::setHardDiskItem(), and ParticleLayoutItem::T_INTERFERENCE.

Here is the call graph for this function:

◆ visit() [183/242]

virtual void INodeVisitor::visit
inline

Definition at line 245 of file INodeVisitor.h.

245 {}

◆ visit() [184/242]

virtual void INodeVisitor::visit ( const InterferenceFunctionNone )
inlinevirtualinherited

Reimplemented in RealSpacePositionBuilder.

Definition at line 245 of file INodeVisitor.h.

245 {}

◆ visit() [185/242]

virtual void INodeVisitor::visit
inline

Definition at line 243 of file INodeVisitor.h.

243 {}

◆ visit() [186/242]

void GUIDomainSampleVisitor::visit ( const InterferenceFunctionRadialParaCrystal sample)
virtual

Reimplemented from INodeVisitor.

Definition at line 514 of file GUIDomainSampleVisitor.cpp.

515 {
516  SessionItem* parent = m_levelToParentItem[depth() - 1];
517  ASSERT(parent);
521  m_levelToParentItem[depth()] = item;
522 }
void setRadialParaCrystalItem(SessionItem *item, const InterferenceFunctionRadialParaCrystal &sample)

References ASSERT, INodeVisitor::depth(), SessionModel::insertItem(), m_levelToParentItem, m_sampleModel, TransformFromDomain::setRadialParaCrystalItem(), and ParticleLayoutItem::T_INTERFERENCE.

Here is the call graph for this function:

◆ visit() [187/242]

virtual void INodeVisitor::visit
inline

Definition at line 244 of file INodeVisitor.h.

244 {}

◆ visit() [188/242]

virtual void INodeVisitor::visit ( const InterferenceFunctionTwin )
inlinevirtualinherited

Definition at line 244 of file INodeVisitor.h.

244 {}

◆ visit() [189/242]

virtual void INodeVisitor::visit
inline

Definition at line 246 of file INodeVisitor.h.

246 {}

◆ visit() [190/242]

virtual void INodeVisitor::visit ( const IParticle )
inlinevirtualinherited

Definition at line 246 of file INodeVisitor.h.

246 {}

◆ visit() [191/242]

virtual void INodeVisitor::visit
inline

Definition at line 247 of file INodeVisitor.h.

247 {}

◆ visit() [192/242]

virtual void INodeVisitor::visit ( const IPeakShape )
inlinevirtualinherited

Definition at line 247 of file INodeVisitor.h.

247 {}

◆ visit() [193/242]

virtual void INodeVisitor::visit
inline

Definition at line 248 of file INodeVisitor.h.

248 {}

◆ visit() [194/242]

virtual void INodeVisitor::visit ( const IRotation )
inlinevirtualinherited

Definition at line 248 of file INodeVisitor.h.

248 {}

◆ visit() [195/242]

virtual void INodeVisitor::visit
inline

Definition at line 249 of file INodeVisitor.h.

249 {}

◆ visit() [196/242]

virtual void INodeVisitor::visit ( const ISampleNode )
inlinevirtualinherited

Definition at line 249 of file INodeVisitor.h.

249 {}

◆ visit() [197/242]

virtual void INodeVisitor::visit
inline

Definition at line 250 of file INodeVisitor.h.

250 {}

◆ visit() [198/242]

virtual void INodeVisitor::visit ( const IsGISAXSDetector )
inlinevirtualinherited

Definition at line 250 of file INodeVisitor.h.

250 {}

◆ visit() [199/242]

virtual void INodeVisitor::visit
inline

Definition at line 251 of file INodeVisitor.h.

251 {}

◆ visit() [200/242]

void GUIDomainSampleVisitor::visit ( const Layer sample)
virtual

Reimplemented from INodeVisitor.

Definition at line 104 of file GUIDomainSampleVisitor.cpp.

105 {
106  SessionItem* parent = m_levelToParentItem[depth() - 1];
107  ASSERT(parent);
108 
109  const auto* multilayer = dynamic_cast<const MultiLayer*>(m_itemToSample[parent]);
110  ASSERT(multilayer);
111  size_t layer_index = MultiLayerUtils::IndexOfLayer(*multilayer, sample);
112  const LayerInterface* top_interface =
113  layer_index == 0 ? nullptr : multilayer->layerInterface(layer_index - 1);
114 
115  SessionItem* layer_item = m_sampleModel->insertItem<LayerItem>(parent);
118 
119  TransformFromDomain::setLayerItem(layer_item, sample, top_interface);
120 
121  m_levelToParentItem[depth()] = layer_item;
122 }
QVariant variant() const
ExternalProperty createMaterialFromDomain(const Material *)
Interface between two layers, possibly with roughness.
static const QString P_MATERIAL
Definition: LayerItem.h:24
const Material * material() const final
Returns nullptr, unless overwritten to return a specific material.
Definition: Layer.h:40
Our sample model: a stack of layers one below the other.
Definition: MultiLayer.h:41
size_t IndexOfLayer(const MultiLayer &multilayer, const Layer *p_layer)
Returns the index of the given layer.
void setLayerItem(SessionItem *layer_item, const Layer *layer, const LayerInterface *top_interface)

References ASSERT, createMaterialFromDomain(), INodeVisitor::depth(), MultiLayerUtils::IndexOfLayer(), SessionModel::insertItem(), m_itemToSample, m_levelToParentItem, m_sampleModel, Layer::material(), LayerItem::P_MATERIAL, SessionItem::setItemValue(), TransformFromDomain::setLayerItem(), and ExternalProperty::variant().

Here is the call graph for this function:

◆ visit() [201/242]

virtual void INodeVisitor::visit
inline

Definition at line 252 of file INodeVisitor.h.

252 {}

◆ visit() [202/242]

virtual void INodeVisitor::visit ( const LayerInterface )
inlinevirtualinherited

Definition at line 252 of file INodeVisitor.h.

252 {}

◆ visit() [203/242]

virtual void INodeVisitor::visit
inline

Definition at line 253 of file INodeVisitor.h.

253 {}

◆ visit() [204/242]

virtual void INodeVisitor::visit ( const LayerRoughness )
inlinevirtualinherited

Definition at line 253 of file INodeVisitor.h.

253 {}

◆ visit() [205/242]

virtual void INodeVisitor::visit
inline

Definition at line 254 of file INodeVisitor.h.

254 {}

◆ visit() [206/242]

void GUIDomainSampleVisitor::visit ( const MesoCrystal sample)
virtual

Reimplemented from INodeVisitor.

Definition at line 165 of file GUIDomainSampleVisitor.cpp.

166 {
167  InsertIParticle(sample, "MesoCrystal");
168 }
SessionItem * InsertIParticle(const IParticle *p_particle, QString model_type)

References InsertIParticle().

Here is the call graph for this function:

◆ visit() [207/242]

virtual void INodeVisitor::visit
inline

Definition at line 255 of file INodeVisitor.h.

255 {}

◆ visit() [208/242]

void GUIDomainSampleVisitor::visit ( const MultiLayer sample)
virtual

Reimplemented from INodeVisitor.

Definition at line 124 of file GUIDomainSampleVisitor.cpp.

125 {
126  auto multilayer_item = m_sampleModel->insertItem<MultiLayerItem>();
127  multilayer_item->setItemName(sample->getName().c_str());
128  multilayer_item->setItemValue(MultiLayerItem::P_CROSS_CORR_LENGTH, sample->crossCorrLength());
129  multilayer_item->item<VectorItem>(MultiLayerItem::P_EXTERNAL_FIELD)
130  ->setVector(sample->externalField());
131  m_levelToParentItem[depth()] = multilayer_item;
132  m_itemToSample[multilayer_item] = sample;
133 }
static const QString P_CROSS_CORR_LENGTH
static const QString P_EXTERNAL_FIELD
kvector_t externalField() const
Returns the external field applied to the multilayer (units: A/m)
Definition: MultiLayer.h:70
double crossCorrLength() const
Returns cross correlation length of roughnesses between interfaces.
Definition: MultiLayer.h:68

References MultiLayer::crossCorrLength(), INodeVisitor::depth(), MultiLayer::externalField(), IParametricComponent::getName(), SessionModel::insertItem(), m_itemToSample, m_levelToParentItem, m_sampleModel, MultiLayerItem::P_CROSS_CORR_LENGTH, MultiLayerItem::P_EXTERNAL_FIELD, and SessionItem::setItemName().

Here is the call graph for this function:

◆ visit() [209/242]

virtual void INodeVisitor::visit
inline

Definition at line 256 of file INodeVisitor.h.

256 {}

◆ visit() [210/242]

virtual void INodeVisitor::visit ( const OffSpecularSimulation )
inlinevirtualinherited

Definition at line 256 of file INodeVisitor.h.

256 {}

◆ visit() [211/242]

virtual void INodeVisitor::visit
inline

Definition at line 257 of file INodeVisitor.h.

257 {}

◆ visit() [212/242]

void GUIDomainSampleVisitor::visit ( const Particle sample)
virtual

Reimplemented from INodeVisitor.

Definition at line 135 of file GUIDomainSampleVisitor.cpp.

136 {
137  auto particle_item = InsertIParticle(sample, "Particle");
138  particle_item->setItemValue(ParticleItem::P_MATERIAL,
140 }
static const QString P_MATERIAL
Definition: ParticleItem.h:27
const Material * material() const final
Returns nullptr, unless overwritten to return a specific material.
Definition: Particle.h:39

References createMaterialFromDomain(), InsertIParticle(), Particle::material(), ParticleItem::P_MATERIAL, and ExternalProperty::variant().

Here is the call graph for this function:

◆ visit() [213/242]

virtual void INodeVisitor::visit
inline

Definition at line 258 of file INodeVisitor.h.

258 {}

◆ visit() [214/242]

void GUIDomainSampleVisitor::visit ( const ParticleComposition sample)
virtual

Reimplemented from INodeVisitor.

Definition at line 160 of file GUIDomainSampleVisitor.cpp.

161 {
162  InsertIParticle(sample, "ParticleComposition");
163 }

References InsertIParticle().

Here is the call graph for this function:

◆ visit() [215/242]

virtual void INodeVisitor::visit
inline

Definition at line 259 of file INodeVisitor.h.

259 {}

◆ visit() [216/242]

void GUIDomainSampleVisitor::visit ( const ParticleCoreShell sample)
virtual

Reimplemented from INodeVisitor.

Definition at line 155 of file GUIDomainSampleVisitor.cpp.

156 {
157  InsertIParticle(sample, "ParticleCoreShell");
158 }

References InsertIParticle().

Here is the call graph for this function:

◆ visit() [217/242]

virtual void INodeVisitor::visit
inline

Definition at line 260 of file INodeVisitor.h.

260 {}

◆ visit() [218/242]

void GUIDomainSampleVisitor::visit ( const ParticleDistribution sample)
virtual

Reimplemented from INodeVisitor.

Definition at line 142 of file GUIDomainSampleVisitor.cpp.

143 {
144  SessionItem* layout_item = m_levelToParentItem[depth() - 1];
145  ASSERT(layout_item);
146  auto particle_distribution_item =
148 
149  TransformFromDomain::setParticleDistributionItem(particle_distribution_item, *sample);
150 
151  m_levelToParentItem[depth()] = particle_distribution_item;
152  m_itemToSample[particle_distribution_item] = sample;
153 }
void setParticleDistributionItem(SessionItem *item, const ParticleDistribution &sample)
Initialization of ParticleDistributionItem.

References ASSERT, INodeVisitor::depth(), SessionModel::insertItem(), m_itemToSample, m_levelToParentItem, m_sampleModel, and TransformFromDomain::setParticleDistributionItem().

Here is the call graph for this function:

◆ visit() [219/242]

virtual void INodeVisitor::visit
inline

Definition at line 232 of file INodeVisitor.h.

232 {}

◆ visit() [220/242]

void GUIDomainSampleVisitor::visit ( const ParticleLayout sample)
virtual

Reimplemented from INodeVisitor.

Definition at line 94 of file GUIDomainSampleVisitor.cpp.

95 {
96  SessionItem* parent = m_levelToParentItem[depth() - 1];
97  auto layout_item = m_sampleModel->insertItem<ParticleLayoutItem>(parent);
99  sample->totalParticleSurfaceDensity());
100  layout_item->setItemValue(ParticleLayoutItem::P_WEIGHT, sample->weight());
101  m_levelToParentItem[depth()] = layout_item;
102 }
static const QString P_TOTAL_DENSITY
static const QString P_WEIGHT
double weight() const
Returns the relative weight of this layout.
double totalParticleSurfaceDensity() const

References INodeVisitor::depth(), SessionModel::insertItem(), m_levelToParentItem, m_sampleModel, ParticleLayoutItem::P_TOTAL_DENSITY, ParticleLayoutItem::P_WEIGHT, SessionItem::setItemValue(), ParticleLayout::totalParticleSurfaceDensity(), and ParticleLayout::weight().

Here is the call graph for this function:

◆ visit() [221/242]

virtual void INodeVisitor::visit
inline

Definition at line 261 of file INodeVisitor.h.

261 {}

◆ visit() [222/242]

virtual void INodeVisitor::visit ( const PoissonNoiseBackground )
inlinevirtualinherited

Definition at line 261 of file INodeVisitor.h.

261 {}

◆ visit() [223/242]

virtual void INodeVisitor::visit
inline

Definition at line 262 of file INodeVisitor.h.

262 {}

◆ visit() [224/242]

virtual void INodeVisitor::visit ( const RectangularDetector )
inlinevirtualinherited

Definition at line 262 of file INodeVisitor.h.

262 {}

◆ visit() [225/242]

virtual void INodeVisitor::visit
inline

Definition at line 263 of file INodeVisitor.h.

263 {}

◆ visit() [226/242]

virtual void INodeVisitor::visit ( const ResolutionFunction2DGaussian )
inlinevirtualinherited

Definition at line 263 of file INodeVisitor.h.

263 {}

◆ visit() [227/242]

virtual void INodeVisitor::visit
inline

Definition at line 264 of file INodeVisitor.h.

264 {}

◆ visit() [228/242]

void GUIDomainSampleVisitor::visit ( const RotationEuler sample)
virtual

Reimplemented from INodeVisitor.

Definition at line 563 of file GUIDomainSampleVisitor.cpp.

564 {
565  SessionItem* parent = m_levelToParentItem[depth() - 1];
566  ASSERT(parent);
567 
568  auto transformation_item =
570  SessionItem* rotationItem =
571  transformation_item->setGroupProperty(TransformationItem::P_ROT, "EulerRotation");
573  rotationItem->setItemValue(EulerRotationItem::P_BETA, Units::rad2deg(sample->getBeta()));
574  rotationItem->setItemValue(EulerRotationItem::P_GAMMA, Units::rad2deg(sample->getGamma()));
575  m_levelToParentItem[depth()] = transformation_item;
576 }
static const QString P_BETA
Definition: RotationItems.h:52
static const QString P_ALPHA
Definition: RotationItems.h:51
static const QString P_GAMMA
Definition: RotationItems.h:53
static const QString T_TRANSFORMATION
Definition: ParticleItem.h:29
double getGamma() const
Definition: Rotations.h:145
double getBeta() const
Definition: Rotations.h:144
double getAlpha() const
Definition: Rotations.h:143
SessionItem * setGroupProperty(const QString &groupTag, const QString &modelType) const
Set the current type of group item.
static const QString P_ROT

References ASSERT, INodeVisitor::depth(), RotationEuler::getAlpha(), RotationEuler::getBeta(), RotationEuler::getGamma(), SessionModel::insertItem(), m_levelToParentItem, m_sampleModel, EulerRotationItem::P_ALPHA, EulerRotationItem::P_BETA, EulerRotationItem::P_GAMMA, TransformationItem::P_ROT, Units::rad2deg(), SessionItem::setGroupProperty(), SessionItem::setItemValue(), and ParticleItem::T_TRANSFORMATION.

Here is the call graph for this function:

◆ visit() [229/242]

virtual void INodeVisitor::visit
inline

Definition at line 265 of file INodeVisitor.h.

265 {}

◆ visit() [230/242]

void GUIDomainSampleVisitor::visit ( const RotationX sample)
virtual

Reimplemented from INodeVisitor.

Definition at line 524 of file GUIDomainSampleVisitor.cpp.

525 {
526  SessionItem* parent = m_levelToParentItem[depth() - 1];
527  ASSERT(parent);
528 
529  auto transformation_item =
531  SessionItem* rotationItem =
532  transformation_item->setGroupProperty(TransformationItem::P_ROT, "XRotation");
533  rotationItem->setItemValue(XRotationItem::P_ANGLE, Units::rad2deg(sample->getAngle()));
534  m_levelToParentItem[depth()] = transformation_item;
535 }
double getAngle() const
Definition: Rotations.h:83
static const QString P_ANGLE
Definition: RotationItems.h:30

References ASSERT, INodeVisitor::depth(), RotationX::getAngle(), SessionModel::insertItem(), m_levelToParentItem, m_sampleModel, XRotationItem::P_ANGLE, TransformationItem::P_ROT, Units::rad2deg(), SessionItem::setGroupProperty(), SessionItem::setItemValue(), and ParticleItem::T_TRANSFORMATION.

Here is the call graph for this function:

◆ visit() [231/242]

virtual void INodeVisitor::visit
inline

Definition at line 266 of file INodeVisitor.h.

266 {}

◆ visit() [232/242]

void GUIDomainSampleVisitor::visit ( const RotationY sample)
virtual

Reimplemented from INodeVisitor.

Definition at line 537 of file GUIDomainSampleVisitor.cpp.

538 {
539  SessionItem* parent = m_levelToParentItem[depth() - 1];
540  ASSERT(parent);
541 
542  auto transformation_item =
544  SessionItem* rotationItem =
545  transformation_item->setGroupProperty(TransformationItem::P_ROT, "YRotation");
546  rotationItem->setItemValue(YRotationItem::P_ANGLE, Units::rad2deg(sample->getAngle()));
547  m_levelToParentItem[depth()] = transformation_item;
548 }
double getAngle() const
Definition: Rotations.h:103
static const QString P_ANGLE
Definition: RotationItems.h:37

References ASSERT, INodeVisitor::depth(), RotationY::getAngle(), SessionModel::insertItem(), m_levelToParentItem, m_sampleModel, YRotationItem::P_ANGLE, TransformationItem::P_ROT, Units::rad2deg(), SessionItem::setGroupProperty(), SessionItem::setItemValue(), and ParticleItem::T_TRANSFORMATION.

Here is the call graph for this function:

◆ visit() [233/242]

virtual void INodeVisitor::visit
inline

Definition at line 267 of file INodeVisitor.h.

267 {}

◆ visit() [234/242]

void GUIDomainSampleVisitor::visit ( const RotationZ sample)
virtual

Reimplemented from INodeVisitor.

Definition at line 550 of file GUIDomainSampleVisitor.cpp.

551 {
552  SessionItem* parent = m_levelToParentItem[depth() - 1];
553  ASSERT(parent);
554 
555  auto transformation_item =
557  SessionItem* rotationItem =
558  transformation_item->setGroupProperty(TransformationItem::P_ROT, "ZRotation");
559  rotationItem->setItemValue(ZRotationItem::P_ANGLE, Units::rad2deg(sample->getAngle()));
560  m_levelToParentItem[depth()] = transformation_item;
561 }
double getAngle() const
Definition: Rotations.h:123
static const QString P_ANGLE
Definition: RotationItems.h:44

References ASSERT, INodeVisitor::depth(), RotationZ::getAngle(), SessionModel::insertItem(), m_levelToParentItem, m_sampleModel, ZRotationItem::P_ANGLE, TransformationItem::P_ROT, Units::rad2deg(), SessionItem::setGroupProperty(), SessionItem::setItemValue(), and ParticleItem::T_TRANSFORMATION.

Here is the call graph for this function:

◆ visit() [235/242]

virtual void INodeVisitor::visit
inline

Definition at line 268 of file INodeVisitor.h.

268 {}

◆ visit() [236/242]

virtual void INodeVisitor::visit ( const SpecularDetector1D )
inlinevirtualinherited

Definition at line 268 of file INodeVisitor.h.

268 {}

◆ visit() [237/242]

virtual void INodeVisitor::visit
inline

Definition at line 269 of file INodeVisitor.h.

269 {}

◆ visit() [238/242]

virtual void INodeVisitor::visit ( const SpecularSimulation )
inlinevirtualinherited

Definition at line 269 of file INodeVisitor.h.

269 {}

◆ visit() [239/242]

virtual void INodeVisitor::visit
inline

Definition at line 270 of file INodeVisitor.h.

270 {}

◆ visit() [240/242]

virtual void INodeVisitor::visit ( const SphericalDetector )
inlinevirtualinherited

Definition at line 270 of file INodeVisitor.h.

270 {}

◆ visit() [241/242]

virtual void INodeVisitor::visit
inline

Definition at line 271 of file INodeVisitor.h.

271 {}

◆ visit() [242/242]

virtual void INodeVisitor::visit ( const SquareLattice2D )
inlinevirtualinherited

Definition at line 271 of file INodeVisitor.h.

271 {}

Member Data Documentation

◆ m_depth

int INodeVisitor::m_depth
privateinherited

Definition at line 280 of file INodeVisitor.h.

Referenced by INodeVisitor::depth(), and INodeVisitor::setDepth().

◆ m_itemToSample

QMap<SessionItem*, const ISampleNode*> GUIDomainSampleVisitor::m_itemToSample
private

Definition at line 103 of file GUIDomainSampleVisitor.h.

Referenced by InsertIParticle(), and visit().

◆ m_levelToParentItem

QMap<int, SessionItem*> GUIDomainSampleVisitor::m_levelToParentItem
private

Definition at line 100 of file GUIDomainSampleVisitor.h.

Referenced by InsertIParticle(), populateSampleModel(), and visit().

◆ m_materialModel

MaterialModel* GUIDomainSampleVisitor::m_materialModel
private

Definition at line 107 of file GUIDomainSampleVisitor.h.

Referenced by createMaterialFromDomain(), and populateSampleModel().

◆ m_propertyToValue

QMap<QString, double> GUIDomainSampleVisitor::m_propertyToValue
private

Definition at line 101 of file GUIDomainSampleVisitor.h.

◆ m_sample_encountered

QMap<QString, bool> GUIDomainSampleVisitor::m_sample_encountered
private

Definition at line 102 of file GUIDomainSampleVisitor.h.

◆ m_sampleModel

SampleModel* GUIDomainSampleVisitor::m_sampleModel
private

Definition at line 106 of file GUIDomainSampleVisitor.h.

Referenced by InsertIParticle(), populateSampleModel(), and visit().

◆ m_topSampleName

QString GUIDomainSampleVisitor::m_topSampleName
private

Definition at line 104 of file GUIDomainSampleVisitor.h.

Referenced by createMaterialFromDomain(), and populateSampleModel().


The documentation for this class was generated from the following files: