10 #ifndef __CHEMICALFEATUREDEF_H_02122004_1750__ 11 #define __CHEMICALFEATUREDEF_H_02122004_1750__ 19 #include <boost/shared_ptr.hpp> 22 class MolChemicalFeatureDef;
26 typedef std::list< boost::shared_ptr<MolChemicalFeatureDef> >
CollectionType;
30 const std::string &type);
33 std::vector<double>::iterator
beginWeights() {
return d_weights.begin();};
34 std::vector<double>::iterator
endWeights() {
return d_weights.end();};
36 std::vector<double>::const_iterator
beginWeights()
const {
return d_weights.begin();};
37 std::vector<double>::const_iterator
endWeights()
const {
return d_weights.end();};
40 d_weights.insert(d_weights.begin(),weights.begin(),weights.end());
46 const std::string &
getFamily()
const {
return d_family;};
47 const std::string &
getType()
const {
return d_type;};
48 const std::string &
getSmarts()
const {
return d_smarts;};
57 boost::shared_ptr<ROMol> dp_pattern;
58 std::vector<double> d_weights;
const ROMol * getPattern() const
unsigned int getNumWeights() const
const std::string & getType() const
std::vector< double >::const_iterator beginWeights() const
Defines the primary molecule class ROMol as well as associated typedefs.
unsigned int getNumAtoms(bool onlyExplicit=1) const
returns our number of atoms
std::vector< double >::iterator beginWeights()
std::vector< double >::iterator endWeights()
std::list< boost::shared_ptr< MolChemicalFeatureDef > > CollectionType
ROMol is a molecule class that is intended to have a fixed topology.
const std::string & getSmarts() const
Includes a bunch of functionality for handling Atom and Bond queries.
const std::string & getFamily() const
std::vector< double >::const_iterator endWeights() const
Class to allow us to throw a ValueError from C++ and have it make it back to Python.
void setWeights(const std::vector< double > &weights)