File: MorganFingerprints.h

package info (click to toggle)
rdkit 202503.6-2
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 222,024 kB
  • sloc: cpp: 411,111; python: 78,482; ansic: 26,181; java: 8,285; javascript: 4,404; sql: 2,393; yacc: 1,626; lex: 1,267; cs: 1,090; makefile: 580; xml: 229; fortran: 183; sh: 121
file content (21 lines) | stat: -rw-r--r-- 809 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21

#include <RDGeneral/export.h>
#include <GraphMol/Atom.h>
#include <GraphMol/GraphMol.h>
#include <GraphMol/Fingerprints/MorganFingerprints.h>
#include <DataStructs/BitVects.h>
#include <vector>

RDKit::SparseIntVect<std::uint32_t> *getFeatureFingerprint(
    const RDKit::ROMol &mol, unsigned int radius, bool useChirality = false,
    bool useBondTypes = true, bool useCounts = true) {
  std::vector<std::uint32_t> *invars =
      new std::vector<std::uint32_t>(mol.getNumAtoms());
  RDKit::MorganFingerprints::getFeatureInvariants(mol, *invars);
  RDKit::SparseIntVect<std::uint32_t> *res =
      RDKit::MorganFingerprints::getFingerprint(
          mol, static_cast<unsigned int>(radius), invars, nullptr, useChirality,
          useBondTypes, useCounts, false, nullptr);
  delete invars;
  return res;
}