private void createPointer(Address entryAddr, int scaleFactor) {
		DataType ptrDt;
		if (scaleFactor != 1) {
			// compiler spec data organization supports at most one shifted address scaleFactor (see ShiftedAddressDataType)
			DataOrganization dataOrg = program.getDataTypeManager().getDataOrganization();
			int shiftFactor = 1 << dataOrg.getPointerShift();
			if (size == dataOrg.getPointerSize() && scaleFactor == shiftFactor) {
				ptrDt = ShiftedAddressDataType.dataType;
			}
			else {
				// Unknown pointer data type
				return;
			}
		}
		else {
			ptrDt = PointerDataType.getPointer(DataType.DEFAULT, size);
		}
		CreateDataCmd cmd = new CreateDataCmd(entryAddr, ptrDt);
		cmd.applyTo(program);
	}
Returns table entry value as pointer for specified caseIndexValue.
@param caseIndexValue index value for specific case
@return pointer loaded from the table entry in memory which corresponds to the specified caseIndexValue.
@throws MemoryAccessException
@throws AddressOutOfBoundsException
Ghidra/Features/Base/src/main/java/ghidra/util/state/analysis/TableEntry.java