A class that encapsulates the symmetry operations as used in PDB files, i.e. a rotational number and a translation vector.
The syntax in string format follows the syntax as used in mmCIF files, i.e. rotational number followed by underscore and the three translations where 5 is no movement.
So the string 1_555 means no symmetry movement at all since the rotational number 1 always corresponds to the symmetry operation [x, y, z].
Public Functions
-
inline sym_op(uint8_t nr = 1, uint8_t ta = 5, uint8_t tb = 5, uint8_t tc = 5)
constructor
-
explicit sym_op(std::string_view s)
construct a sym_op based on the contents encoded in string s
-
inline constexpr bool is_identity() const
return true if this sym_op is the identity operator
-
inline explicit constexpr operator bool() const
quick test for unequal to identity
-
std::string string() const
return the content encoded in a string
-
inline constexpr bool operator==(const sym_op &rhs) const
a default equals operator
-
inline constexpr bool operator!=(const sym_op &rhs) const
a default not-equals operator