public final void addProgramHeaderTypes(
			Map<Integer, ElfProgramHeaderType> programHeaderTypeMap) {

		for (Field field : getClass().getDeclaredFields()) {
			String name = null;
			try {
				if (Modifier.isStatic(field.getModifiers()) &&
					field.getType().equals(ElfProgramHeaderType.class)) {
					ElfProgramHeaderType type = (ElfProgramHeaderType) field.get(this);
					name = type.name;
					ElfProgramHeaderType.addProgramHeaderType(type, programHeaderTypeMap);
				}
			}
			catch (DuplicateNameException e) {
				Msg.error(this,
					"Invalid ElfProgramHeaderType(" + name + ") defined by " + getClass().getName(),
					e);
			}
			catch (IllegalArgumentException | IllegalAccessException e) {
				throw new AssertException(e);
			}
		}
	}
Add all extension specific Program Header types (e.g., PT_ prefix).
This method will add all those statically defined ElfProgramHeaderType fields
within this class.
@param programHeaderTypeMap map to which ElfProgramHeaderType definitions should be added
Ghidra/Features/Base/src/main/java/ghidra/app/util/bin/format/elf/extend/ElfLoadAdapter.java