protected void startExtract(GFileSystem fs, GFile srcDir, TaskMonitor monitor)
			throws CancelledException, IOException {
		this.fs = fs;

		if (srcDir == null) {
			srcDir = fs.lookup(null);
		}
		processDirectory(srcDir, rootOutputDirectory, monitor);
	}
Starts the file extraction process.

@param fs the {@link GFileSystem} that holds the files
@param srcDir the starting directory to extract, if {@code null}, start at root of file system
@param monitor {@link TaskMonitor} that will be updated with progress and checked for cancel
@throws CancelledException if the extraction is cancelled.
@throws IOException if an exception occurs extracting the files.
Ghidra/Features/Base/src/main/java/ghidra/formats/gfilesystem/AbstractFileExtractorTask.java