indigoX
CMGVertex Class Reference

Class for the vertices of an IXCondensedMolecularGraph. More...

#include <indigox/graph/condensed.hpp>

Public Types

enum  ContractedSymmetry
 Enum for the contracted symmetry groups. More...
 

Public Member Functions

 CMGVertex ()=default
 
 CMGVertex (const CMGVertex &)=default
 
 CMGVertex (CMGVertex &&)=default
 
 ~ CMGVertex ()=default
 
const std::vector< CondensedVertex > & GetCondensedVertices () const
 
std::vector< MGVertexGetContractedVertices () const
 
const CondensedMolecularGraphGetGraph () const
 Get the graph this vertex is part of. More...
 
const VertexIsoMaskGetIsomorphismMask () const
 Get the isomorphism testing mask. More...
 
const MGVertexGetSource () const
 Get the MGVertex associated with this vertex. More...
 
bool IsContractedHere (const MGVertex &v) const
 Checks if a given MGVertex is contracted into this vertex. More...
 
size_t NumContracted () const
 Get the number of contracted vertices. More...
 
size_t NumContracted (ContractedSymmetry sym) const
 Get the number of contracted vertices in the symmetry group. More...
 
 operator bool () const
 
bool operator!= (const CMGVertex &v) const
 
bool operator< (const CMGVertex &v) const
 
bool operator<= (const CMGVertex &v) const
 
CMGVertexoperator= (CMGVertex &&)=default
 
CMGVertexoperator= (const CMGVertex &)=default
 
bool operator== (const CMGVertex &v) const
 
bool operator> (const CMGVertex &v) const
 
bool operator>= (const CMGVertex &v) const
 

Friends

class cereal::access
 Friendship allows for serialisation. More...
 
class CondensedMolecularGraph
 Friendship allows IXCondensedMolecularGraph to add vertices. More...
 
std::ostream & operator<< (std::ostream &os, const CMGVertex &v)
 

Detailed Description

Class for the vertices of an IXCondensedMolecularGraph.

Member Enumeration Documentation

◆ ContractedSymmetry

enum ContractedSymmetry
strong

Enum for the contracted symmetry groups.

Enumerator
Hydrogen 

Group for contracted hydrogen atoms.

Fluorine 

Group for contracted fluorine atoms.

Chlorine 

Group for contracted chlorine atoms.

Bromine 

Group for contracted bromine atoms.

Iodine 

Group for contracted iodine atoms.

Constructor & Destructor Documentation

◆ CMGVertex() [1/3]

CMGVertex ( )
default

◆ CMGVertex() [2/3]

CMGVertex ( const CMGVertex )
default

◆ CMGVertex() [3/3]

CMGVertex ( CMGVertex &&  )
default

◆ ~ CMGVertex()

~ CMGVertex ( )
default

Member Function Documentation

◆ GetCondensedVertices()

const std::vector<CondensedVertex>& GetCondensedVertices ( ) const

◆ GetContractedVertices()

std::vector<MGVertex> GetContractedVertices ( ) const

◆ GetGraph()

const CondensedMolecularGraph& GetGraph ( ) const

Get the graph this vertex is part of.

Returns
the owning graph.

◆ GetIsomorphismMask()

const VertexIsoMask& GetIsomorphismMask ( ) const

Get the isomorphism testing mask.

Returns
the isomorphism testing mask.

◆ GetSource()

const MGVertex& GetSource ( ) const

Get the MGVertex associated with this vertex.

Returns
the associated MGVertex, if it is still alive.

◆ IsContractedHere()

bool IsContractedHere ( const MGVertex v) const

Checks if a given MGVertex is contracted into this vertex.

Parameters
vthe vertex to check for. return if the provided vertex is contracted into this one.

◆ NumContracted() [1/2]

size_t NumContracted ( ) const

Get the number of contracted vertices.

Returns
the number of contracted vertices.

◆ NumContracted() [2/2]

size_t NumContracted ( ContractedSymmetry  sym) const

Get the number of contracted vertices in the symmetry group.

Returns
the number of vertices of the given symmetry group contracted.

◆ operator bool()

operator bool ( ) const
inline

◆ operator!=()

bool operator!= ( const CMGVertex v) const
inline

◆ operator<()

bool operator< ( const CMGVertex v) const

◆ operator<=()

bool operator<= ( const CMGVertex v) const
inline

◆ operator=() [1/2]

CMGVertex& operator= ( CMGVertex &&  )
default

◆ operator=() [2/2]

CMGVertex& operator= ( const CMGVertex )
default

◆ operator==()

bool operator== ( const CMGVertex v) const

◆ operator>()

bool operator> ( const CMGVertex v) const

◆ operator>=()

bool operator>= ( const CMGVertex v) const
inline

Friends And Related Function Documentation

◆ cereal::access

friend class cereal::access
friend

Friendship allows for serialisation.

◆ CondensedMolecularGraph

friend class CondensedMolecularGraph
friend

Friendship allows IXCondensedMolecularGraph to add vertices.

◆ operator<<

std::ostream& operator<< ( std::ostream &  os,
const CMGVertex v 
)
friend

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