RDKit
Open-source cheminformatics and machine learning.
RDKit::RDProps Class Reference

#include <RDProps.h>

Inheritance diagram for RDKit::RDProps:
RDKit::Atom RDKit::Bond RDKit::ChemicalReaction RDKit::Conformer RDKit::MolBundle RDKit::ROMol RDKit::SubstanceGroup RDKit::QueryAtom RDKit::QueryBond RDKit::RWMol

Public Member Functions

 RDProps ()
 
 RDProps (const RDProps &rhs)
 
RDPropsoperator= (const RDProps &rhs)
 
void clear ()
 
const DictgetDict () const
 gets the underlying Dictionary More...
 
DictgetDict ()
 
STR_VECT getPropList (bool includePrivate=true, bool includeComputed=true) const
 returns a list with the names of our properties More...
 
template<typename T >
void setProp (const std::string &key, T val, bool computed=false) const
 sets a property value More...
 
template<typename T >
void getProp (const std::string &key, T &res) const
 allows retrieval of a particular property value More...
 
template<typename T >
getProp (const std::string &key) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...
 
template<typename T >
bool getPropIfPresent (const std::string &key, T &res) const
 
bool hasProp (const std::string &key) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...
 
void clearProp (const std::string &key) const
 clears the value of a property More...
 
void clearComputedProps () const
 clears all of our computed properties More...
 
void updateProps (const RDProps &source, bool preserveExisting=false)
 update the properties from another More...
 

Protected Attributes

Dict d_props
 

Detailed Description

Definition at line 10 of file RDProps.h.

Constructor & Destructor Documentation

◆ RDProps() [1/2]

RDKit::RDProps::RDProps ( )
inline

Definition at line 18 of file RDProps.h.

◆ RDProps() [2/2]

RDKit::RDProps::RDProps ( const RDProps rhs)
inline

Definition at line 19 of file RDProps.h.

Member Function Documentation

◆ clear()

void RDKit::RDProps::clear ( )
inline

Definition at line 25 of file RDProps.h.

References d_props, and RDKit::Dict::reset().

Referenced by RDKit::RWMol::RWMol().

◆ clearComputedProps()

void RDKit::RDProps::clearComputedProps ( ) const
inline

clears all of our computed properties

Definition at line 142 of file RDProps.h.

References RDKit::Dict::clearVal(), RDKit::detail::computedPropName, d_props, getPropIfPresent(), and RDKit::Dict::setVal().

◆ clearProp()

void RDKit::RDProps::clearProp ( const std::string &  key) const
inline

clears the value of a property

Notes:

  • if no property with name key exists, a KeyErrorException will be thrown.
  • if the property is marked as computed, it will also be removed from our list of computedProperties This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 129 of file RDProps.h.

References RDKit::Dict::clearVal(), RDKit::detail::computedPropName, d_props, getPropIfPresent(), and RDKit::Dict::setVal().

◆ getDict() [1/2]

Dict& RDKit::RDProps::getDict ( )
inline

Definition at line 28 of file RDProps.h.

References d_props.

◆ getDict() [2/2]

const Dict& RDKit::RDProps::getDict ( ) const
inline

gets the underlying Dictionary

Definition at line 27 of file RDProps.h.

References d_props.

Referenced by updateProps().

◆ getProp() [1/2]

template<typename T >
T RDKit::RDProps::getProp ( const std::string &  key) const
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 105 of file RDProps.h.

References d_props, and RDKit::Dict::getVal().

◆ getProp() [2/2]

template<typename T >
void RDKit::RDProps::getProp ( const std::string &  key,
T &  res 
) const
inline

allows retrieval of a particular property value

Parameters
keythe name under which the property should be stored. If a property is already stored under this name, it will be replaced.
resa reference to the storage location for the value.

Notes:

  • if no property with name key exists, a KeyErrorException will be thrown.
  • the boost::lexical_cast machinery is used to attempt type conversions. If this fails, a boost::bad_lexical_cast exception will be thrown. This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 99 of file RDProps.h.

References d_props, and RDKit::Dict::getVal().

Referenced by RDKit::FileParserUtils::applyMolListPropToAtoms().

◆ getPropIfPresent()

template<typename T >
bool RDKit::RDProps::getPropIfPresent ( const std::string &  key,
T &  res 
) const
inline

returns whether or not we have a property with name key and assigns the value if we do This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 113 of file RDProps.h.

References d_props, and RDKit::Dict::getValIfPresent().

Referenced by clearComputedProps(), clearProp(), getPropList(), and setProp().

◆ getPropList()

STR_VECT RDKit::RDProps::getPropList ( bool  includePrivate = true,
bool  includeComputed = true 
) const
inline

returns a list with the names of our properties

Definition at line 36 of file RDProps.h.

References RDKit::detail::computedPropName, d_props, getPropIfPresent(), and RDKit::Dict::keys().

Referenced by RDKit::FileParserUtils::applyMolListPropsToAtoms(), and RDKit::FileParserUtils::processMolPropertyLists().

◆ hasProp()

bool RDKit::RDProps::hasProp ( const std::string &  key) const
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 118 of file RDProps.h.

References d_props, and RDKit::Dict::hasVal().

Referenced by RDKit::queryAtomMissingChiralTag().

◆ operator=()

RDProps& RDKit::RDProps::operator= ( const RDProps rhs)
inline

Definition at line 20 of file RDProps.h.

References d_props.

◆ setProp()

template<typename T >
void RDKit::RDProps::setProp ( const std::string &  key,
val,
bool  computed = false 
) const
inline

sets a property value

Parameters
keythe name under which the property should be stored. If a property is already stored under this name, it will be replaced.
valthe value to be stored
computed(optional) allows the property to be flagged computed. This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 68 of file RDProps.h.

References RDKit::detail::computedPropName, d_props, getPropIfPresent(), and RDKit::Dict::setVal().

Referenced by RDKit::FileParserUtils::applyMolListPropToAtoms(), RDKit::FileParserUtils::createAtomBoolPropertyList(), RDKit::FileParserUtils::createAtomDoublePropertyList(), RDKit::FileParserUtils::createAtomIntPropertyList(), and RDKit::FileParserUtils::createAtomStringPropertyList().

◆ updateProps()

void RDKit::RDProps::updateProps ( const RDProps source,
bool  preserveExisting = false 
)
inline

update the properties from another

Definition at line 157 of file RDProps.h.

References d_props, getDict(), and RDKit::Dict::update().

Member Data Documentation

◆ d_props


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