12#ifndef RD_MACCSGEN_H_2022_11
13#define RD_MACCSGEN_H_2022_11
21template <
typename OutputType>
45 const uint32_t torsionAtomCount,
46 const bool countSimulation,
47 const std::vector<std::uint32_t> countBounds,
48 const std::uint32_t fpSize);
51template <
typename OutputType>
54 const OutputType d_bitId;
59 const std::vector<std::uint32_t> *atomInvariants,
60 const std::vector<std::uint32_t> *bondInvariants,
62 const bool hashResults =
false,
63 const std::uint64_t fpSize = 0)
const override;
70 : d_bitId(bitId), d_atomPath(std::move(atomPath)) {}
73template <
typename OutputType>
79 const std::vector<std::uint32_t> *fromAtoms,
80 const std::vector<std::uint32_t> *ignoreAtoms,
const int confId,
82 const std::vector<std::uint32_t> *atomInvariants,
83 const std::vector<std::uint32_t> *bondInvariants,
84 const bool hashResults =
false)
const override;
116template <
typename OutputType>
122 const std::vector<std::uint32_t>
countBounds = {1, 2, 4, 8},
123 const std::uint32_t fpSize = 2048,
const bool ownsAtomInvGen =
false);
abstract base class that generates atom-environments from a molecule
abstract base class that holds atom-environments that will be hashed to generate the fingerprint
abstract base class for atom invariants generators
Abstract base class that holds molecule independent arguments that are common amongst all fingerprint...
class that generates same fingerprint style for different output formats
const uint32_t d_torsionAtomCount
OutputType getResultSize() const override
TopologicalTorsionArguments(const bool includeChirality, const uint32_t torsionAtomCount, const bool countSimulation, const std::vector< std::uint32_t > countBounds, const std::uint32_t fpSize)
Construct a new Topological Torsion Arguments object.
std::string infoString() const override
method that returns information string about the fingerprint specific argument set and the arguments ...
const bool df_includeChirality
OutputType getBitId(FingerprintArguments< OutputType > *arguments, const std::vector< std::uint32_t > *atomInvariants, const std::vector< std::uint32_t > *bondInvariants, const AdditionalOutput *additionalOutput, const bool hashResults=false, const std::uint64_t fpSize=0) const override
TopologicalTorsionAtomEnv(OutputType bitId, INT_VECT atomPath)
Construct a new Topological Torsion Atom Env object.
std::string infoString() const override
method that returns information about this /c AtomEnvironmentGenerator and its arguments if any
std::vector< AtomEnvironment< OutputType > * > getEnvironments(const ROMol &mol, FingerprintArguments< OutputType > *arguments, const std::vector< std::uint32_t > *fromAtoms, const std::vector< std::uint32_t > *ignoreAtoms, const int confId, const AdditionalOutput *additionalOutput, const std::vector< std::uint32_t > *atomInvariants, const std::vector< std::uint32_t > *bondInvariants, const bool hashResults=false) const override
#define RDKIT_FINGERPRINTS_EXPORT
RDKIT_FINGERPRINTS_EXPORT FingerprintGenerator< OutputType > * getTopologicalTorsionGenerator(const bool includeChirality=false, const uint32_t torsionAtomCount=4, AtomInvariantsGenerator *atomInvariantsGenerator=nullptr, const bool countSimulation=true, const std::vector< std::uint32_t > countBounds={1, 2, 4, 8}, const std::uint32_t fpSize=2048, const bool ownsAtomInvGen=false)
Get the Topological Torsion Generator object.
std::vector< int > INT_VECT
bool rdvalue_is(const RDValue_cast_t)