@Override
	public boolean isValid(Program program, Address startAddress,
			DataValidationOptions validationOptions) {

		Memory memory = program.getMemory();
		Listing listing = program.getListing();

		if (!memory.contains(startAddress)) {
			return false;
		}

		// Each entry is a 4 byte value.
		long numEntries = (rtti1Count != 0) ? rtti1Count
				: getNumEntries(program, startAddress, validationOptions);
		if (numEntries == 0) {
			return false;
		}
		long length = numEntries * ENTRY_SIZE;
		Address endAddress = startAddress.add(length - 1);
		if (!validRefData(memory, startAddress)) {
			return false;
		}

		if (!validationOptions.shouldIgnoreInstructions() &&
			containsInstruction(listing, startAddress, endAddress)) {
			return false;
		}

		if (!validationOptions.shouldIgnoreDefinedData() &&
			containsDefinedData(listing, startAddress, endAddress)) {
			return false;
		}

		boolean validateReferredToData = validationOptions.shouldValidateReferredToData();

		Address addr = startAddress;
		for (int ordinal = 0; ordinal < numEntries && addr != null &&
			validRefData(memory, addr); ordinal++) {

			// Each component is either a direct reference or an image base offset.
			Address rtti1Address = getReferencedAddress(program, addr);
			if (rtti1Address == null || (validateReferredToData &&
				!rtti1.isValid(program, rtti1Address, validationOptions))) {
				return false;
			}

			try {
				addr = addr.add(ENTRY_SIZE); // Add the data type size.
			}
			catch (AddressOutOfBoundsException e) {
				if (ordinal < (rtti1Count - 1)) {
					return false; // Didn't get all the entries.
				}
				break;
			}
		}

		return true;
	}
Determines if the RTTI 1 pointer in the RTTI2 structure is valid.
@param program the program
@param startAddress the address of the RTTI 2 structure
@param pointerIndex index of the element in the array that makes up the RTTI 2.
@param validationOptions options indicating how to perform the validation
@return true if the indicated RTTI1 pointer is valid.
Ghidra/Features/Base/src/main/java/ghidra/app/util/datatype/microsoft/RTTI2DataType.java