private void validateRtti1ReferenceEntry(Program program, boolean validateReferredToData,
			Address addr) throws InvalidDataTypeException {

		// Each component is either a direct reference or an image base offset.
		Address rtti1Address = getReferencedAddress(program, addr);
		if (rtti1Address == null) {
			invalid();
		}
		Rtti1Model rtti1Model = new Rtti1Model(program, rtti1Address, validationOptions);
		rtti1Models.add(rtti1Model);
		if (validateReferredToData) {
			rtti1Model.validate();
		}
		else if (!rtti1Model.isLoadedAndInitializedAddress()) {
			rtti1Models.clear();
			invalid("Data referencing " + Rtti1Model.DATA_TYPE_NAME +
				" data type isn't a loaded and initialized address " + rtti1Address + ".");
		}
	}
Creates the model for the RTTI2 data type.
@param program the program
@param rtti1Count the number of RTTI1 data type references expected at the RTTI2 address.
@param rtti2Address the address in the program for the RTTI Base Class Array.
@param validationOptions options indicating how to validate the data type at the indicated 
address.
Ghidra/Features/MicrosoftCodeAnalyzer/src/main/java/ghidra/app/cmd/data/rtti/Rtti2Model.java