test_class.file: legacy/src/test/java/org/openscience/cdk/smsd/algorithm/vflib/VFlibMCSHandlerTest.java
test_class.identifier: VFlibMCSHandlerTest
test_class.superclass: extends AbstractMCSAlgorithmTest
test_case.body: @Test
      @Override
      public void testSearchMCS() {
          SmilesParser sp = new SmilesParser(DefaultChemObjectBuilder.getInstance());
          IAtomContainer target = null;
          try {
              target = sp.parseSmiles("C\\C=C/Nc1cccc(c1)N(O)\\C=C\\C\\C=C\\C=C/C");
          } catch (InvalidSmilesException ex) {
              Logger.getLogger(VFlibMCSHandlerTest.class.getName()).log(Level.SEVERE, null, ex);
          }
          IAtomContainer queryac = null;
          try {
              queryac = sp.parseSmiles("Nc1ccccc1");
          } catch (InvalidSmilesException ex) {
              Logger.getLogger(VFlibMCSHandlerTest.class.getName()).log(Level.SEVERE, null, ex);
          }
  
          VFlibMCSHandler smsd1 = new VFlibMCSHandler();
          MolHandler mol1 = new MolHandler(queryac, true, true);
          MolHandler mol2 = new MolHandler(target, true, true);
          smsd1.set(mol1, mol2);
          smsd1.searchMCS(true);
          assertNotNull(smsd1.getFirstMapping());
      }
test_case.class_method_signature: VFlibMCSHandlerTest.testSearchMCS()
test_case.full_signature: @Test @Override public void testSearchMCS()
test_case.identifier: testSearchMCS
test_case.invocations: getInstance parseSmiles log getLogger getName parseSmiles log getLogger getName set searchMCS assertNotNull getFirstMapping
test_case.modifiers: @Test @Override public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testSearchMCS()
focal_class.declarator: allAtomMCS     = null
focal_class.modifier: private static
focal_class.original_string: private static       List<Map<IAtom, IAtom>>     allAtomMCS     = null;
focal_class.type: List<Map<IAtom, IAtom>>
focal_class.var_name: allAtomMCS
focal_class.declarator: atomsMCS       = null
focal_class.modifier: private static
focal_class.original_string: private static       Map<IAtom, IAtom>           atomsMCS       = null;
focal_class.type: Map<IAtom, IAtom>
focal_class.var_name: atomsMCS
focal_class.declarator: allAtomMCSCopy = null
focal_class.modifier: private static
focal_class.original_string: private static       List<Map<IAtom, IAtom>>     allAtomMCSCopy = null;
focal_class.type: List<Map<IAtom, IAtom>>
focal_class.var_name: allAtomMCSCopy
focal_class.declarator: firstMCS       = null
focal_class.modifier: private static
focal_class.original_string: private static       Map<Integer, Integer>       firstMCS       = null;
focal_class.type: Map<Integer, Integer>
focal_class.var_name: firstMCS
focal_class.declarator: allMCS         = null
focal_class.modifier: private static
focal_class.original_string: private static       List<Map<Integer, Integer>> allMCS         = null;
focal_class.type: List<Map<Integer, Integer>>
focal_class.var_name: allMCS
focal_class.declarator: allMCSCopy     = null
focal_class.modifier: private static
focal_class.original_string: private static       List<Map<Integer, Integer>> allMCSCopy     = null;
focal_class.type: List<Map<Integer, Integer>>
focal_class.var_name: allMCSCopy
focal_class.declarator: vfLibSolutions = null
focal_class.modifier: private
focal_class.original_string: private              List<Map<INode, IAtom>>     vfLibSolutions = null;
focal_class.type: List<Map<INode, IAtom>>
focal_class.var_name: vfLibSolutions
focal_class.declarator: queryMol       = null
focal_class.modifier: private
focal_class.original_string: private              IQueryAtomContainer         queryMol       = null;
focal_class.type: IQueryAtomContainer
focal_class.var_name: queryMol
focal_class.declarator: mol1           = null
focal_class.modifier: private
focal_class.original_string: private              IAtomContainer              mol1           = null;
focal_class.type: IAtomContainer
focal_class.var_name: mol1
focal_class.declarator: mol2           = null
focal_class.modifier: private
focal_class.original_string: private              IAtomContainer              mol2           = null;
focal_class.type: IAtomContainer
focal_class.var_name: mol2
focal_class.declarator: vfMCSSize      = -1
focal_class.modifier: private
focal_class.original_string: private              int                         vfMCSSize      = -1;
focal_class.type: int
focal_class.var_name: vfMCSSize
focal_class.declarator: bondMatchFlag  = false
focal_class.modifier: private
focal_class.original_string: private              boolean                     bondMatchFlag  = false;
focal_class.type: boolean
focal_class.var_name: bondMatchFlag
focal_class.declarator: countR         = 0
focal_class.modifier: private
focal_class.original_string: private              int                         countR         = 0;
focal_class.type: int
focal_class.var_name: countR
focal_class.declarator: countP         = 0
focal_class.modifier: private
focal_class.original_string: private              int                         countP         = 0;
focal_class.type: int
focal_class.var_name: countP
focal_class.declarator: LOGGER         = LoggingToolFactory
              .createLoggingTool(VFlibMCSHandler.class)
focal_class.modifier: private final static
focal_class.original_string: private final static ILoggingTool                LOGGER         = LoggingToolFactory
              .createLoggingTool(VFlibMCSHandler.class);
focal_class.type: ILoggingTool
focal_class.var_name: LOGGER
focal_class.file: legacy/src/main/java/org/openscience/cdk/smsd/algorithm/vflib/VFlibMCSHandler.java
focal_class.identifier: VFlibMCSHandler
focal_class.interfaces: implements IMCSBase
focal_class.class_method_signature: VFlibMCSHandler.VFlibMCSHandler()
focal_class.full_signature: public  VFlibMCSHandler()
focal_class.identifier: VFlibMCSHandler
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.signature:  VFlibMCSHandler()
focal_class.class_method_signature: VFlibMCSHandler.searchMCS(boolean bondTypeMatch)
focal_class.full_signature: @Override public void searchMCS(boolean bondTypeMatch)
focal_class.identifier: searchMCS
focal_class.modifiers: @Override public
focal_class.parameters: (boolean bondTypeMatch)
focal_class.return: void
focal_class.signature: void searchMCS(boolean bondTypeMatch)
focal_class.class_method_signature: VFlibMCSHandler.setFirstMappings()
focal_class.full_signature: private void setFirstMappings()
focal_class.identifier: setFirstMappings
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void setFirstMappings()
focal_class.class_method_signature: VFlibMCSHandler.mcgregorFlag()
focal_class.full_signature: private boolean mcgregorFlag()
focal_class.identifier: mcgregorFlag
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: boolean
focal_class.signature: boolean mcgregorFlag()
focal_class.class_method_signature: VFlibMCSHandler.set(MolHandler reactant, MolHandler product)
focal_class.full_signature: @Override public void set(MolHandler reactant, MolHandler product)
focal_class.identifier: set
focal_class.modifiers: @Override public
focal_class.parameters: (MolHandler reactant, MolHandler product)
focal_class.return: void
focal_class.signature: void set(MolHandler reactant, MolHandler product)
focal_class.class_method_signature: VFlibMCSHandler.set(IQueryAtomContainer source, IAtomContainer target)
focal_class.full_signature: @Override public void set(IQueryAtomContainer source, IAtomContainer target)
focal_class.identifier: set
focal_class.modifiers: @Override public
focal_class.parameters: (IQueryAtomContainer source, IAtomContainer target)
focal_class.return: void
focal_class.signature: void set(IQueryAtomContainer source, IAtomContainer target)
focal_class.class_method_signature: VFlibMCSHandler.hasMap(Map<Integer, Integer> maps, List<Map<Integer, Integer>> mapGlobal)
focal_class.full_signature: private boolean hasMap(Map<Integer, Integer> maps, List<Map<Integer, Integer>> mapGlobal)
focal_class.identifier: hasMap
focal_class.modifiers: private
focal_class.parameters: (Map<Integer, Integer> maps, List<Map<Integer, Integer>> mapGlobal)
focal_class.return: boolean
focal_class.signature: boolean hasMap(Map<Integer, Integer> maps, List<Map<Integer, Integer>> mapGlobal)
focal_class.class_method_signature: VFlibMCSHandler.getAllAtomMapping()
focal_class.full_signature: @Override public List<Map<IAtom, IAtom>> getAllAtomMapping()
focal_class.identifier: getAllAtomMapping
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: List<Map<IAtom, IAtom>>
focal_class.signature: List<Map<IAtom, IAtom>> getAllAtomMapping()
focal_class.class_method_signature: VFlibMCSHandler.getAllMapping()
focal_class.full_signature: @Override public List<Map<Integer, Integer>> getAllMapping()
focal_class.identifier: getAllMapping
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: List<Map<Integer, Integer>>
focal_class.signature: List<Map<Integer, Integer>> getAllMapping()
focal_class.class_method_signature: VFlibMCSHandler.getFirstAtomMapping()
focal_class.full_signature: @Override public Map<IAtom, IAtom> getFirstAtomMapping()
focal_class.identifier: getFirstAtomMapping
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: Map<IAtom, IAtom>
focal_class.signature: Map<IAtom, IAtom> getFirstAtomMapping()
focal_class.class_method_signature: VFlibMCSHandler.getFirstMapping()
focal_class.full_signature: @Override public Map<Integer, Integer> getFirstMapping()
focal_class.identifier: getFirstMapping
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: Map<Integer, Integer>
focal_class.signature: Map<Integer, Integer> getFirstMapping()
focal_class.class_method_signature: VFlibMCSHandler.checkCommonAtomCount(IAtomContainer reactantMolecule, IAtomContainer productMolecule)
focal_class.full_signature: private int checkCommonAtomCount(IAtomContainer reactantMolecule, IAtomContainer productMolecule)
focal_class.identifier: checkCommonAtomCount
focal_class.modifiers: private
focal_class.parameters: (IAtomContainer reactantMolecule, IAtomContainer productMolecule)
focal_class.return: int
focal_class.signature: int checkCommonAtomCount(IAtomContainer reactantMolecule, IAtomContainer productMolecule)
focal_class.class_method_signature: VFlibMCSHandler.searchVFMCSMappings()
focal_class.full_signature: private void searchVFMCSMappings()
focal_class.identifier: searchVFMCSMappings
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void searchVFMCSMappings()
focal_class.class_method_signature: VFlibMCSHandler.searchMcGregorMapping()
focal_class.full_signature: private void searchMcGregorMapping()
focal_class.identifier: searchMcGregorMapping
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void searchMcGregorMapping()
focal_class.class_method_signature: VFlibMCSHandler.setVFMappings(boolean rONP, IQuery query)
focal_class.full_signature: private void setVFMappings(boolean rONP, IQuery query)
focal_class.identifier: setVFMappings
focal_class.modifiers: private
focal_class.parameters: (boolean rONP, IQuery query)
focal_class.return: void
focal_class.signature: void setVFMappings(boolean rONP, IQuery query)
focal_class.class_method_signature: VFlibMCSHandler.setMcGregorMappings(boolean ronp, List<List<Integer>> mappings)
focal_class.full_signature: private void setMcGregorMappings(boolean ronp, List<List<Integer>> mappings)
focal_class.identifier: setMcGregorMappings
focal_class.modifiers: private
focal_class.parameters: (boolean ronp, List<List<Integer>> mappings)
focal_class.return: void
focal_class.signature: void setMcGregorMappings(boolean ronp, List<List<Integer>> mappings)
focal_class.class_method_signature: VFlibMCSHandler.isBondMatchFlag()
focal_class.full_signature: public boolean isBondMatchFlag()
focal_class.identifier: isBondMatchFlag
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: boolean
focal_class.signature: boolean isBondMatchFlag()
focal_class.class_method_signature: VFlibMCSHandler.setBondMatchFlag(boolean shouldMatchBonds)
focal_class.full_signature: public void setBondMatchFlag(boolean shouldMatchBonds)
focal_class.identifier: setBondMatchFlag
focal_class.modifiers: public
focal_class.parameters: (boolean shouldMatchBonds)
focal_class.return: void
focal_class.signature: void setBondMatchFlag(boolean shouldMatchBonds)
focal_class.class_method_signature: VFlibMCSHandler.getReactantMol()
focal_class.full_signature: private IAtomContainer getReactantMol()
focal_class.identifier: getReactantMol
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: IAtomContainer
focal_class.signature: IAtomContainer getReactantMol()
focal_class.class_method_signature: VFlibMCSHandler.getProductMol()
focal_class.full_signature: private IAtomContainer getProductMol()
focal_class.identifier: getProductMol
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: IAtomContainer
focal_class.signature: IAtomContainer getProductMol()
focal_class.superclass: extends AbstractMCSAlgorithm
focal_method.body: @Override
      public void searchMCS(boolean bondTypeMatch) {
          setBondMatchFlag(bondTypeMatch);
          searchVFMCSMappings();
          boolean flag = mcgregorFlag();
          if (flag && !vfLibSolutions.isEmpty()) {
              try {
                  searchMcGregorMapping();
              } catch (CDKException ex) {
                  LOGGER.error(Level.SEVERE, null, ex);
              } catch (IOException ex) {
                  LOGGER.error(Level.SEVERE, null, ex);
              }
          }
          else if (!allAtomMCSCopy.isEmpty()) {
              allAtomMCS.addAll(allAtomMCSCopy);
              allMCS.addAll(allMCSCopy);
          }
          setFirstMappings();
      }
focal_method.class_method_signature: VFlibMCSHandler.searchMCS(boolean bondTypeMatch)
focal_method.full_signature: @Override public void searchMCS(boolean bondTypeMatch)
focal_method.identifier: searchMCS
focal_method.invocations: setBondMatchFlag searchVFMCSMappings mcgregorFlag isEmpty searchMcGregorMapping error error isEmpty addAll addAll setFirstMappings
focal_method.modifiers: @Override public
focal_method.parameters: (boolean bondTypeMatch)
focal_method.return: void
focal_method.signature: void searchMCS(boolean bondTypeMatch)