public boolean test(ByteProvider byteProvider, FileSystemService fsService,
			TaskMonitor monitor) throws IOException, CancelledException {

		int pboByteCount = Math.min(
			(int) Math.min(byteProvider.length(), GFileSystemProbeBytesOnly.MAX_BYTESREQUIRED),
			largestBytesRequired);

		FSRL containerFSRL = byteProvider.getFSRL();
		byte[] startBytes = byteProvider.readBytes(0, pboByteCount);
		for (FileSystemInfoRec fsir : sortedFactories) {
			try {
				if (fsir.getFactory() instanceof GFileSystemProbeBytesOnly factoryProbe) {
					if (factoryProbe.getBytesRequired() <= startBytes.length &&
						factoryProbe.probeStartBytes(containerFSRL, startBytes)) {
						return true;
					}
				}
				if (fsir.getFactory() instanceof GFileSystemProbeByteProvider factoryProbe) {
					if (factoryProbe.probe(byteProvider, fsService, monitor)) {
						return true;
					}
				}
			}
			catch (IOException e) {
				Msg.trace(this, "File system probe error for " + fsir.getDescription() +
					" with " + containerFSRL, e);
			}
		}
		return false;
	}
Returns true if the specified file contains a supported {@link GFileSystem}.

@param byteProvider 
@param fsService reference to the {@link FileSystemService} instance.
@param monitor {@link TaskMonitor} to use for canceling and updating progress.
@return {@code true} if the file seems to contain a filesystem, {@code false} if it does not.
@throws IOException if error when accessing the containing file
@throws CancelledException if the user canceled the operation
Ghidra/Features/Base/src/main/java/ghidra/formats/gfilesystem/factory/FileSystemFactoryMgr.java