private void cppPrintMethodSignature(Method m, boolean isImplementation, boolean isStatic) throws ClassNotFoundException
    {
		out.print("\t" + (isStatic && !isImplementation ? "static " : ""));
		cppPrintType(m.getReturnType(), false);
		
		if (isImplementation)
			out.print(classNameWithUnderscores + "::");

		out.printf("%s%s(", m.getName(), (cppReserved.contains(m.getName()) ? "1" : ""));
		Class<?>[] pType = m.getParameterTypes();

		if (isStatic)
			out.printf("cppToJavaRpc::Connection * conn%s", (pType.length == 0 ? "" : ", "));
		
		for (int i = 0; i < pType.length; i++)
		{
			cppPrintType(pType[i], true);
			out.printf("var%d%s", i, (i == pType.length - 1 ? "" : ", "));
		}
		out.print(")");
    }