indigoX
Angle Class Reference

#include <indigox/classes/angle.hpp>

Classes

struct  Impl
 

Public Types

using AngleAtoms = std::array< Atom, 3 >
 Container for storing Atom reference assigned to an Angle. More...
 

Public Member Functions

 Angle ()=default
 
 Angle (const Angle &)=default
 
 Angle (Angle &&)=default
 
 ~ Angle ()=default
 
const AngleAtomsGetAtoms () const
 Get the atoms of the angle. More...
 
int64_t GetID () const
 
int64_t GetIndex () const
 Get the index from the molecule. More...
 
const MoleculeGetMolecule () const
 Molecule this angle is associated with. More...
 
int64_t GetTag () const
 Tag of the angle. More...
 
const FFAngleGetType () const
 Get the assigned type. More...
 
bool HasType () const
 Check if the angle has associated parameters. More...
 
constexpr int64_t NumAtoms () const
 Number of atoms this angle contains. More...
 
 operator bool () const
 
bool operator!= (const Angle &ang) const
 
bool operator< (const Angle &ang) const
 
bool operator<= (const Angle &ang) const
 
Angleoperator= (const Angle &)=default
 
Angleoperator= (Angle &&)=default
 
bool operator== (const Angle &ang) const
 
bool operator> (const Angle &ang) const
 
bool operator>= (const Angle &ang) const
 
void SetType (const FFAngle &type)
 Assign an FFAngle type. More...
 

Friends

class cereal::access
 Friendship allows serialisation. More...
 
class indigox::Molecule
 Friendship allows Molecule to create new angles. More...
 
std::ostream & operator<< (std::ostream &os, const Angle &ang)
 

Member Typedef Documentation

◆ AngleAtoms

using AngleAtoms = std::array<Atom, 3>

Container for storing Atom reference assigned to an Angle.

Constructor & Destructor Documentation

◆ Angle() [1/3]

Angle ( )
default

◆ Angle() [2/3]

Angle ( const Angle )
default

◆ Angle() [3/3]

Angle ( Angle &&  )
default

◆ ~ Angle()

~ Angle ( )
default

Member Function Documentation

◆ GetAtoms()

const AngleAtoms& GetAtoms ( ) const

Get the atoms of the angle.

Returns
the atoms of the angle.

◆ GetID()

int64_t GetID ( ) const

◆ GetIndex()

int64_t GetIndex ( ) const

Get the index from the molecule.

Calculates the index of the angle in the container of angles of the molecule it is a part of. If the angle is not a real angle, eg empty data variable, the returned value is -1.

Returns
the index of the angle.

◆ GetMolecule()

const Molecule& GetMolecule ( ) const

Molecule this angle is associated with.

The returned shared_ptr is empty if the angle is not assigned to a valid molecule.

Returns
the molecule associated with this angle.

◆ GetTag()

int64_t GetTag ( ) const

Tag of the angle.

This value may be modified without warning. Use with caution. For a constant identifier to the angle, use the Angle::GetUniqueID() method.

Returns
the tag assigned to the angle.

◆ GetType()

const FFAngle& GetType ( ) const

Get the assigned type.

Returns
the assigned ff type for the angle.

◆ HasType()

bool HasType ( ) const

Check if the angle has associated parameters.

Returns
if there is a valid parameter.

◆ NumAtoms()

constexpr int64_t NumAtoms ( ) const
inline

Number of atoms this angle contains.

Returns
3.

◆ operator bool()

operator bool ( ) const
inline

◆ operator!=()

bool operator!= ( const Angle ang) const
inline

◆ operator<()

bool operator< ( const Angle ang) const

◆ operator<=()

bool operator<= ( const Angle ang) const
inline

◆ operator=() [1/2]

Angle& operator= ( const Angle )
default

◆ operator=() [2/2]

Angle& operator= ( Angle &&  )
default

◆ operator==()

bool operator== ( const Angle ang) const

◆ operator>()

bool operator> ( const Angle ang) const

◆ operator>=()

bool operator>= ( const Angle ang) const
inline

◆ SetType()

void SetType ( const FFAngle type)

Assign an FFAngle type.

Parameters
typethe FFAngle type to assign.

Friends And Related Function Documentation

◆ cereal::access

friend class cereal::access
friend

Friendship allows serialisation.

◆ indigox::Molecule

friend class indigox::Molecule
friend

Friendship allows Molecule to create new angles.

◆ operator<<

std::ostream& operator<< ( std::ostream &  os,
const Angle ang 
)
friend

The documentation for this class was generated from the following file: