code: def get_file_list(self, lstPaths, lstXtn, lstExcluded, VERBOSE = False):
          
          if VERBOSE:
              print("Generating list of Files...")
              print("Paths = ", lstPaths)
              print("Xtns  = ", lstXtn)
              print("exclude = ", lstExcluded)
          numFiles = 0
          self.filelist = []
          self.fl_metadata = []
          for rootPath in lstPaths:
              if VERBOSE:
                  print(rootPath)
              for root, dirs, files in os.walk(rootPath):
                  if VERBOSE:
                      print(dirs)
                  for basename in files:
                      for xtn in lstXtn:
                          if fnmatch.fnmatch(basename, xtn):
                              filename = os.path.join(root, basename)
                              includeThisFile = "Y"
                              if len(lstExcluded) > 0:
                                  for exclude in lstExcluded:
                                      if filename.find(exclude) != -1:
                                          includeThisFile = "N"
                              if includeThisFile == "Y":
                                  numFiles = numFiles + 1
                                  self.filelist.append(filename)
                                  self.add_file_metadata(filename)    # not sure why there is a 2nd list, but there is.
  
          if VERBOSE:
              print("Found ", numFiles, " files")
          return self.filelist
docs: builds a list of files and returns as a list