private TreeMap<Long, ClassPdbMember> processVirtualBaseClasses(MsVxtManager vxtManager,
			ObjectOrientedClassLayout layoutOptions)
			throws PdbException {
		if (mainVbt instanceof PlaceholderVirtualBaseTable pvbt &&
			layoutOptions == ObjectOrientedClassLayout.CLASS_HIERARCHY &&
			virtualLayoutBaseClasses.size() > 0) {
			TreeMap<Long, ClassPdbMember> virtualBasePdbMembers = provideVirtualBaseFillerBytes();
			return virtualBasePdbMembers;
		}
		// Below processes CLASS_HIERARCHY with ProgramVirtualBaseTable and also processes
		//  CLASS_HIERARCHY_SPECULATIVE
		assignVirtualBaseOffsets();
		String baseComment = (mainVbt instanceof ProgramVirtualBaseTable) ? VIRTUAL_BASE_COMMENT
				: VIRTUAL_BASE_SPECULATIVE_COMMENT;
		TreeMap<Long, ClassPdbMember> virtualBasePdbMembers =
			getVirtualBaseClassMembers(baseComment);
		findVirtualBaseVxtPtrs(vxtManager);
		return virtualBasePdbMembers;
	}
Converts VxtPtrInfo from virtual-based-owned direct or indirect virtual base for this class
@param baseInfo the vxt info from the base
@return the new VxtPtrInfo for this class
@throws PdbException upon issue getting base offset
Ghidra/Features/PDB/src/main/java/ghidra/app/util/pdb/pdbapplicator/CppCompositeType.java