From: <eg...@us...> - 2006-06-23 09:39:15
|
Revision: 6499 Author: egonw Date: 2006-06-23 02:39:10 -0700 (Fri, 23 Jun 2006) ViewCVS: http://svn.sourceforge.net/cdk/?rev=6499&view=rev Log Message: ----------- More features defined, and example code in JavaDoc. Modified Paths: -------------- trunk/cdk/src/org/openscience/cdk/tools/DataFeatures.java Modified: trunk/cdk/src/org/openscience/cdk/tools/DataFeatures.java =================================================================== --- trunk/cdk/src/org/openscience/cdk/tools/DataFeatures.java 2006-06-23 09:38:31 UTC (rev 6498) +++ trunk/cdk/src/org/openscience/cdk/tools/DataFeatures.java 2006-06-23 09:39:10 UTC (rev 6499) @@ -33,6 +33,13 @@ * a Data Feature Ontology. Actual integers are random * and should <b>not</b> be used directly. * + * <p>To test wether a IChemFormat supports a certain feature, the + * following code can be used: + * <pre> + * int features = new XYZFormat().getSupportedDataFeatures(); + * boolean has3DCoords = (features & HAS_3D_COORDINATES) == HAS_3D_COORDINATES; + * </pre> + * * @author Egon Willighagen <ewi...@un...> * @cdk.module core **/ @@ -40,17 +47,30 @@ public final static int NONE = 0; + // The int allows for up to 750 different properties. Should + // be enough for now. + // COORDINATE SYSTEMS - public final static int HAS_2D_COORDINATES = 1; - public final static int HAS_3D_COORDINATES = 2; + public final static int HAS_2D_COORDINATES = 1<<0; + public final static int HAS_3D_COORDINATES = 1<<1; + public final static int HAS_FRACTIONAL_CRYSTAL_COORDINATES = 1<<2; + // ATOMIC FEATURES + // HAS_ATOMS ?? + // HAS_ATOM_ELEMENT_SYMBOLS ?? + public final static int HAS_ATOM_PARTIAL_CHARGES = 1<<3; + public final static int HAS_ATOM_FORMAL_CHARGES = 1<<4; + public final static int HAS_ATOM_HYBRIDIZATIONS = 1<<5; + public final static int HAS_ATOM_MASS_NUMBERS = 1<<6; + public final static int HAS_ATOM_ISOTOPE_NUMBERS = 1<<7; + // GRAPH FEATURES - public final static int HAS_GRAPH_REPRESENTATION = 4; - public final static int HAS_DIETZ_REPRESENTATION = 8; + public final static int HAS_GRAPH_REPRESENTATION = 1<<8; + public final static int HAS_DIETZ_REPRESENTATION = 1<<9; // MODEL FEATURES - public final static int HAS_CRYSTALS = 16; - public final static int HAS_REACTIONS = 32; + public final static int HAS_UNITCELL_PARAMETERS = 1<<10; + public final static int HAS_REACTIONS = 1<<11; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |