private void generateGetters(ClassNode root, FormattedFileWriter writer)
            throws java.io.IOException {
        HashMap methodNames = new HashMap();
        Iterator it = root.getMethods();
        while (it.hasNext() == true) {
            MethodNode node = (MethodNode) it.next();
            String name = node.getCPPName();
            Iterator params = node.getParameterList();
            if (params.hasNext() == false && name.substring(0, 3).equals("get") == true) {
                methodNames.put(name, name);
            }
        }

        writer.outputLine("// attribute getters");
        it = root.getFields();
        while (it.hasNext() == true) {
            FieldNode node = (FieldNode) it.next();
            if (node.isStatic() == true) {
                writer.output("static ");
            }
            ClassNode current = node.getType();
            String methodName = "get" + Character.toUpperCase(node.getName().charAt(0));
            methodName += node.getName().substring(1);
            if (methodNames.containsKey(methodName) == true) {
                methodName = "_" + methodName;
            }
            if (proxyGenSettings.getUseRichTypes() == true) {
                writer.output(current.getJNITypeName(proxyGenSettings.getProject().getUsePartialSpec()) + " " + methodName);
            } else {
                writer.output(current.getPlainJNITypeName() + " " + methodName);
            }
            writer.outputLine((node.isStatic() == true ? "();" : "() const;"));
        }
        writer.newLine(1);
    }