Chemical Data Processing Library C++ API - Version 1.4.0
Public Member Functions | Friends | List of all members
CDPL::Chem::BondOrderCalculator Class Reference

Perceives bond orders of a molecular graph from its 3D structure and atom connectivity. More...

#include <BondOrderCalculator.hpp>

Public Member Functions

 BondOrderCalculator ()
 Constructs the BondOrderCalculator instance. More...
 
 BondOrderCalculator (const MolecularGraph &molgraph, Util::STArray &orders, bool undef_only=true)
 Constructs the BondOrderCalculator instance and perceives the order of the bonds in the molecular graph molgraph. More...
 
void undefinedOnly (bool undef_only)
 Allows to specify whether already defined bond orders should be left unchanged. More...
 
bool undefinedOnly () const
 Tells whether or not only undefined bond orders have to be perceived. More...
 
void calculate (const MolecularGraph &molgraph, Util::STArray &orders)
 Perceives the order of the bonds in the molecular graph molgraph from its 3D structure and atom connectivity. More...
 

Friends

class BondMatchExpression
 

Detailed Description

Perceives bond orders of a molecular graph from its 3D structure and atom connectivity.

The calculator combines per-atom geometry analysis (linear, trigonal-planar, tetrahedral, ...), functional group substructure matching, conjugated π-system detection, and free valence accounting to assign single, double, or triple bonds.

Constructor & Destructor Documentation

◆ BondOrderCalculator() [1/2]

CDPL::Chem::BondOrderCalculator::BondOrderCalculator ( )

Constructs the BondOrderCalculator instance.

◆ BondOrderCalculator() [2/2]

CDPL::Chem::BondOrderCalculator::BondOrderCalculator ( const MolecularGraph molgraph,
Util::STArray orders,
bool  undef_only = true 
)

Constructs the BondOrderCalculator instance and perceives the order of the bonds in the molecular graph molgraph.

The perceived orders are stored in the same sequence as the bonds appear in the bond list of the molecular graph so that the order of a particular bond is accessible via its index.

Parameters
molgraphThe molecular graph for which to perceive the bond orders.
ordersAn array containing the perceived bond orders.
undef_onlySpecifies whether or not to perceive only undefined (= unset) bond orders.

Member Function Documentation

◆ undefinedOnly() [1/2]

void CDPL::Chem::BondOrderCalculator::undefinedOnly ( bool  undef_only)

Allows to specify whether already defined bond orders should be left unchanged.

Parameters
undef_onlyIf true only undefined (= unset) bond orders are perceived.
Note
The default setting is to perceive only the order of undefined bonds.

◆ undefinedOnly() [2/2]

bool CDPL::Chem::BondOrderCalculator::undefinedOnly ( ) const

Tells whether or not only undefined bond orders have to be perceived.

Returns
true if only undefined (= unset) bond orders are perceived, and false otherwise.

◆ calculate()

void CDPL::Chem::BondOrderCalculator::calculate ( const MolecularGraph molgraph,
Util::STArray orders 
)

Perceives the order of the bonds in the molecular graph molgraph from its 3D structure and atom connectivity.

The perceived orders are stored in the same sequence as the bonds appear in the bond list of the molecular graph so that the order of a particular bond is accessible via its index.

Parameters
molgraphThe molecular graph for which to perceive the bond orders.
ordersAn array containing the perceived bond orders.

Friends And Related Function Documentation

◆ BondMatchExpression

friend class BondMatchExpression
friend

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