test_class.file: descriptor/qsarmolecular/src/test/java/org/openscience/cdk/qsar/descriptors/molecular/AcidicGroupCountDescriptorTest.java
test_class.identifier: AcidicGroupCountDescriptorTest
test_class.superclass: extends MolecularDescriptorTest
test_case.body: @Test
      public void testNitroRing() throws Exception {
          SmilesParser sp = new SmilesParser(SilentChemObjectBuilder.getInstance());
          IAtomContainer mol = sp.parseSmiles("[nH]1nnnc1");
          IntegerResult result = (IntegerResult) descriptor.calculate(mol).getValue();
          Assert.assertEquals(2, result.intValue());
      }
test_case.class_method_signature: AcidicGroupCountDescriptorTest.testNitroRing()
test_case.full_signature: @Test public void testNitroRing()
test_case.identifier: testNitroRing
test_case.invocations: getInstance parseSmiles getValue calculate assertEquals intValue
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testNitroRing()
focal_class.declarator: SMARTS_STRINGS = {"[$([O;H1]-[C,S,P]=O)]", "[$([*;-;!$(*~[*;+])])]",
              "[$([NH](S(=O)=O)C(F)(F)F)]", "[$(n1nnnc1)]"}
focal_class.modifier: private final static
focal_class.original_string: private final static String[] SMARTS_STRINGS = {"[$([O;H1]-[C,S,P]=O)]", "[$([*;-;!$(*~[*;+])])]",
              "[$([NH](S(=O)=O)C(F)(F)F)]", "[$(n1nnnc1)]"};
focal_class.type: String[]
focal_class.var_name: SMARTS_STRINGS
focal_class.declarator: NAMES          = {"nAcid"}
focal_class.modifier: private final static
focal_class.original_string: private final static String[] NAMES          = {"nAcid"};
focal_class.type: String[]
focal_class.var_name: NAMES
focal_class.declarator: tools  = new ArrayList<SmartsPattern>()
focal_class.modifier: private
focal_class.original_string: private List<SmartsPattern> tools  = new ArrayList<SmartsPattern>();
focal_class.type: List<SmartsPattern>
focal_class.var_name: tools
focal_class.declarator: checkAromaticity
focal_class.modifier: private
focal_class.original_string: private boolean               checkAromaticity;
focal_class.type: boolean
focal_class.var_name: checkAromaticity
focal_class.file: descriptor/qsarmolecular/src/main/java/org/openscience/cdk/qsar/descriptors/molecular/AcidicGroupCountDescriptor.java
focal_class.identifier: AcidicGroupCountDescriptor
focal_class.interfaces: implements IMolecularDescriptor
focal_class.class_method_signature: AcidicGroupCountDescriptor.AcidicGroupCountDescriptor()
focal_class.full_signature: public  AcidicGroupCountDescriptor()
focal_class.identifier: AcidicGroupCountDescriptor
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.signature:  AcidicGroupCountDescriptor()
focal_class.class_method_signature: AcidicGroupCountDescriptor.initialise(IChemObjectBuilder builder)
focal_class.full_signature: @Override public void initialise(IChemObjectBuilder builder)
focal_class.identifier: initialise
focal_class.modifiers: @Override public
focal_class.parameters: (IChemObjectBuilder builder)
focal_class.return: void
focal_class.signature: void initialise(IChemObjectBuilder builder)
focal_class.class_method_signature: AcidicGroupCountDescriptor.getSpecification()
focal_class.full_signature: @Override public DescriptorSpecification getSpecification()
focal_class.identifier: getSpecification
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: DescriptorSpecification
focal_class.signature: DescriptorSpecification getSpecification()
focal_class.class_method_signature: AcidicGroupCountDescriptor.setParameters(Object[] params)
focal_class.full_signature: @Override public void setParameters(Object[] params)
focal_class.identifier: setParameters
focal_class.modifiers: @Override public
focal_class.parameters: (Object[] params)
focal_class.return: void
focal_class.signature: void setParameters(Object[] params)
focal_class.class_method_signature: AcidicGroupCountDescriptor.getParameters()
focal_class.full_signature: @Override public Object[] getParameters()
focal_class.identifier: getParameters
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: Object[]
focal_class.signature: Object[] getParameters()
focal_class.class_method_signature: AcidicGroupCountDescriptor.getDescriptorNames()
focal_class.full_signature: @Override public String[] getDescriptorNames()
focal_class.identifier: getDescriptorNames
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: String[]
focal_class.signature: String[] getDescriptorNames()
focal_class.class_method_signature: AcidicGroupCountDescriptor.calculate(IAtomContainer atomContainer)
focal_class.full_signature: @Override public DescriptorValue calculate(IAtomContainer atomContainer)
focal_class.identifier: calculate
focal_class.modifiers: @Override public
focal_class.parameters: (IAtomContainer atomContainer)
focal_class.return: DescriptorValue
focal_class.signature: DescriptorValue calculate(IAtomContainer atomContainer)
focal_class.class_method_signature: AcidicGroupCountDescriptor.getDescriptorResultType()
focal_class.full_signature: @Override public IDescriptorResult getDescriptorResultType()
focal_class.identifier: getDescriptorResultType
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: IDescriptorResult
focal_class.signature: IDescriptorResult getDescriptorResultType()
focal_class.class_method_signature: AcidicGroupCountDescriptor.getParameterNames()
focal_class.full_signature: @Override public String[] getParameterNames()
focal_class.identifier: getParameterNames
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: String[]
focal_class.signature: String[] getParameterNames()
focal_class.class_method_signature: AcidicGroupCountDescriptor.getParameterType(String name)
focal_class.full_signature: @Override public Object getParameterType(String name)
focal_class.identifier: getParameterType
focal_class.modifiers: @Override public
focal_class.parameters: (String name)
focal_class.return: Object
focal_class.signature: Object getParameterType(String name)
focal_class.class_method_signature: AcidicGroupCountDescriptor.getDummyDescriptorValue(Exception exception)
focal_class.full_signature: private DescriptorValue getDummyDescriptorValue(Exception exception)
focal_class.identifier: getDummyDescriptorValue
focal_class.modifiers: private
focal_class.parameters: (Exception exception)
focal_class.return: DescriptorValue
focal_class.signature: DescriptorValue getDummyDescriptorValue(Exception exception)
focal_class.superclass: extends AbstractMolecularDescriptor
focal_method.body: @Override
      public DescriptorValue calculate(IAtomContainer atomContainer) {
  
          if (tools.isEmpty()) {
              throw new IllegalStateException("descriptor is not initalised, invoke 'initalise' first");
          }
  
          atomContainer = clone(atomContainer); // don't mod original
          for (IAtom atom : atomContainer.atoms()) {
              if (atom.getImplicitHydrogenCount() == null)
                  atom.setImplicitHydrogenCount(0);
          }
  
          // do aromaticity detection
          if (this.checkAromaticity) {
              try {
                  AtomContainerManipulator.percieveAtomTypesAndConfigureAtoms(atomContainer);
                  Aromaticity.cdkLegacy().apply(atomContainer);
              } catch (CDKException exception) {
                  return getDummyDescriptorValue(exception);
              }
          }
  
          int count = 0;
          for (SmartsPattern tool : tools)
              count += tool.matchAll(atomContainer).count();
          return new DescriptorValue(getSpecification(), getParameterNames(),
                                     getParameters(), new IntegerResult(count),
                                     getDescriptorNames());
      }
focal_method.class_method_signature: AcidicGroupCountDescriptor.calculate(IAtomContainer atomContainer)
focal_method.full_signature: @Override public DescriptorValue calculate(IAtomContainer atomContainer)
focal_method.identifier: calculate
focal_method.invocations: isEmpty clone atoms getImplicitHydrogenCount setImplicitHydrogenCount percieveAtomTypesAndConfigureAtoms apply cdkLegacy getDummyDescriptorValue count matchAll getSpecification getParameterNames getParameters getDescriptorNames
focal_method.modifiers: @Override public
focal_method.parameters: (IAtomContainer atomContainer)
focal_method.return: DescriptorValue
focal_method.signature: DescriptorValue calculate(IAtomContainer atomContainer)