def METHOD_NAME(argv):
    btstackfolder   = os.path.abspath(os.path.dirname(sys.argv[0]) + '/../../')
    inputfolder     = btstackfolder + "/src/ble/gatt-service/"
    markdownfolder = "docs-markdown/"
    templatefolder    = "docs-intro/"
    cmd = 'markdown_create_gatt_services_and_clients.py [-r <root_btstackfolder>] [-t <templatefolder>] [-o <output_markdownfolder>]'
    try:
        opts, args = getopt.getopt(argv,"r:t:o:",["rfolder=","tfolder=","ofolder="])
    except getopt.GetoptError:
        print (cmd)
        sys.exit(2)
    for opt, arg in opts:
        if opt == '-h':
            print (cmd)
            sys.exit()
        elif opt in ("-r", "--rfolder"):
            btstackfolder = arg
        elif opt in ("-t", "--tfolder"):
            templatefolder = arg
        elif opt in ("-o", "--ofolder"):
            markdownfolder = arg
    for source_filename_sufix, [outputfile, white_list] in mdfiles.items():
        outputfile_path = markdownfolder + outputfile 
        introfile_path = templatefolder + outputfile[:-3] + "_intro.md"
        with open(outputfile_path, 'w') as fout:
            with open(introfile_path, 'r') as fin:
                for line in fin:
                    fout.write(line)
        fin.close()   
        fout.close()
        files_to_process = []
        for root, dirs, files in os.walk(inputfolder, topdown=True):
            for f in files:
                if not f.endswith(source_filename_sufix): 
                    if f not in white_list:
                        continue
                files_to_process.append(root + "/"+ f)
        files_to_process.sort()
        for inputfile_path in files_to_process:
            basename = os.path.basename(inputfile_path)[:-2]
            process_file(basename, inputfile_path, outputfile_path)