11using namespace Kernel;
15 :
PropertyManager(), m_propagatingGroupName(
"PropagatingProperty"), m_isInitialized(false) {}
32 return modulusF * modulusF;
47 throw std::invalid_argument(
"Cannot determine propagation behavior of null-property.");
bool isPropertyExposedToComposite(const std::string &propertyName) const
Checks whether a property with the given name is exposed to BraggScattererComposite.
std::string m_propagatingGroupName
double calculateFSquared(const Kernel::V3D &hkl) const
Returns |F(hkl)|^2.
virtual StructureFactor calculateStructureFactor(const Kernel::V3D &hkl) const =0
void initialize()
Initialization method that calls declareProperties() and sets initialized state to true.
void unexposePropertyFromComposite(const std::string &propertyName)
Removes exposure to composite for specified property.
BraggScatterer()
Default constructor.
const std::string & getPropagatingGroupName() const
Returns the group name that is used to mark properties that are propagated.
void exposePropertyToComposite(const std::string &propertyName)
Exposes the property with the supplied name to BraggScattererComposite.
virtual void declareProperties()
Base implementation does nothing - for implementing classes only.
bool isInitialized()
Returns whether the instance has been initialized.
void setPropertyGroup(const std::string &name, const std::string &group)
Set the group for a given property.
Property manager helper class.
TypedValue getProperty(const std::string &name) const override
Get the value of a property.
Base class for properties.