3 #include "../utils/fwd_declares.hpp" 8 #ifndef INDIGOX_CLASSES_ANGLE_HPP 9 #define INDIGOX_CLASSES_ANGLE_HPP 23 template <
typename Archive>
24 void serialise(Archive &archive,
const uint32_t version);
45 constexpr int64_t
NumAtoms()
const {
return 3; }
54 int64_t
GetID()
const;
86 std::shared_ptr<Impl> m_data;
#define INDIGOX_GENERIC_PIMPL_CLASS_DEFAULTS(class_name)
Definition: fwd_declares.hpp:18
bool HasType() const
Check if the angle has associated parameters.
friend class cereal::access
Friendship allows serialisation.
Definition: angle.hpp:16
const FFAngle & GetType() const
Get the assigned type.
const Molecule & GetMolecule() const
Molecule this angle is associated with.
Namespace for all graph related functionality.
Definition: access.hpp:7
constexpr int64_t NumAtoms() const
Number of atoms this angle contains.
Definition: angle.hpp:45
const AngleAtoms & GetAtoms() const
Get the atoms of the angle.
std::array< Atom, 3 > AngleAtoms
Container for storing Atom reference assigned to an Angle.
Definition: angle.hpp:20
int64_t GetIndex() const
Get the index from the molecule.
void SetType(const FFAngle &type)
Assign an FFAngle type.
Definition: molecule.hpp:15
int64_t GetTag() const
Tag of the angle.
#define INDIGOX_GENERIC_PIMPL_CLASS_OPERATORS(class_name, short_name)
Definition: fwd_declares.hpp:26
Definition: forcefield.hpp:151