Example #1
0
        void Main()
        {
            IQueryAtomContainer query = null;
            IAtomContainer      mol   = null;

            #region
            var state = new DfState(query);
            state.SetMol(mol);
            int count = 0;
            foreach (int[] amap in state)
            {
                // amap is permutation of query to molecule
                ++count;
            }
            #endregion
        }
Example #2
0
        /// <inheritdoc/>
        public override Mappings MatchAll(IAtomContainer mol)
        {
            if (mol.Atoms.Count < query.Atoms.Count)
            {
                return(new Mappings(query, mol, Array.Empty <int[]>()));
            }
            if (mol.Atoms.Count > 0)
            {
                CheckCompatibleAPI(mol.Atoms[0]);
            }
            var local = new DfState(state);

            local.SetMol(mol);
            var mappings = new Mappings(query, mol, local);

            return(Filter(mappings, query, mol));
        }