private void doFindReferences(Program program, DataType dataType,
			DecompilerDataTypeFinderQCallback qCallback, Consumer<DataTypeReference> consumer,
			TaskMonitor monitor) throws CancelledException {

		Set<Function> functions = filterFunctions(program, dataType, monitor);

		try {
			ParallelDecompiler.decompileFunctions(qCallback, functions, monitor);
		}
		catch (InterruptedException e) {
			Thread.currentThread().interrupt(); // reset the flag
			if (!monitor.isCancelled()) {
				Msg.debug(this, "Interrupted while decompiling functions");
			}
		}
		catch (Exception e) {
			Msg.error(this, "Encountered an exception decompiling functions", e);
		}
		finally {
			qCallback.dispose();
		}
	}
Implementation of {@link DataTypeReferenceFinder} that uses the Decompiler's output
to find data type and composite field usage.
Ghidra/Features/DecompilerDependent/src/main/java/ghidra/app/extension/datatype/finder/DecompilerDataTypeReferenceFinder.java