15 #ifndef BORNAGAIN_SAMPLE_LATTICE_ISELECTIONRULE_H
16 #define BORNAGAIN_SAMPLE_LATTICE_ISELECTIONRULE_H
18 #include <heinz/Vectors3D.h>
Abstract base class for selection rules.
virtual ISelectionRule * clone() const =0
virtual bool coordinateSelected(const I3 &coordinate) const =0
virtual ~ISelectionRule()=default
Selection rule (v*q)modulus!=0, defined by vector v(a,b,c) and modulus.
SimpleSelectionRule(int a, int b, int c, int modulus)
SimpleSelectionRule * clone() const override
bool coordinateSelected(const I3 &coordinate) const override
~SimpleSelectionRule() override=default