15 m_symbol = centeringSymbol.substr(0, 1);
34 throw std::invalid_argument(
"Centering does not exist: " + centeringSymbol);
42std::vector<SymmetryOperation>
44 switch (centeringType) {
62 throw std::invalid_argument(
"Unknown centering type.");
std::vector< SymmetryOperation > getCCentered() const
Returns symmetry operations for C-centering.
std::vector< SymmetryOperation > getFCentered() const
Returns symmetry operations for F-centering.
std::vector< SymmetryOperation > getSymmetryOperations(CenteringGroup::CenteringType centeringType) const
Returns a vector of symmetry operations for the given centering type or throws std::invalid_argument ...
std::vector< SymmetryOperation > getBCentered() const
Returns symmetry operations for B-centering.
std::vector< SymmetryOperation > getPrimitive() const
Returns symmetry operations for P-centering.
std::map< std::string, CenteringGroup::CenteringType > m_centeringSymbolMap
std::vector< SymmetryOperation > getRobvCentered() const
Returns symmetry operations for R-centering, obverse setting.
std::vector< SymmetryOperation > getBodyCentered() const
Returns symmetry operations for I-centering.
CenteringGroup::CenteringType getCenteringType(const std::string ¢eringSymbol) const
Returns centering type enum value if centering symbol exists, throws std::invalid_argument exception ...
std::vector< SymmetryOperation > getACentered() const
Returns symmetry operations for A-centering.
CenteringGroupCreatorImpl()
std::vector< SymmetryOperation > getRrevCentered() const
Returns symmetry operations for R-centering, reverse setting.
CenteringGroup(const std::string ¢eringSymbol)
String-based constructor which accepts centering symbols such as P, I or F.
std::string getSymbol() const
Returns the centering symbol, does not distinguish between Rhombohedral obverse and reverse.
CenteringType getType() const
Returns the centering type of the group (distinguishes between Rhombohedral obverse and reverse).
The class Group represents a set of symmetry operations (or symmetry group).
std::vector< SymmetryOperation > getSymmetryOperations() const
Returns a vector with all symmetry operations.
void setSymmetryOperations(const std::vector< SymmetryOperation > &symmetryOperations)
Assigns symmetry operations, throws std::invalid_argument if vector is empty.
static T & Instance()
Return a reference to the Singleton instance, creating it if it does not already exist Creation is do...