class AtomSignature extends AbstractVertexSignature {

    @Override
    /** {@inheritDoc} */
    protected String getEdgeLabel(int vertexIndex, int otherVertexIndex) {
        IAtom atomA = this.molecule.getAtom(vertexIndex);
        IAtom atomB = this.molecule.getAtom(otherVertexIndex);
        IBond bond = this.molecule.getBond(atomA, atomB);
        if (bond != null) {
            if (bond.getFlag(CDKConstants.ISAROMATIC)) {
                return "p";
            }
            switch (bond.getOrder()) {
            //                case SINGLE: return "-";
                case SINGLE:
                    return "";
                case DOUBLE:
                    return "=";
                case TRIPLE:
                    return "#";
                case QUADRUPLE:
                    return "$";
                default:
                    return "";
            }
        } else {
            return "";
        }
    }

    public  AtomSignature(int atomIndex, IAtomContainer molecule);
    public  AtomSignature(IAtom atom, IAtomContainer molecule);
    public  AtomSignature(int atomIndex, int height, IAtomContainer molecule);
    public  AtomSignature(IAtom atom, int height, IAtomContainer molecule);
    public  AtomSignature(int atomIndex, int height, InvariantType invariantType, IAtomContainer molecule);
    public  AtomSignature(IAtom atom, int height, InvariantType invariantType, IAtomContainer molecule);

}