protected static StructureDataType createNoteStructure(CategoryPath cp, String structName,
			boolean templatedName, int noteNameLen, int noteDescLen, DataTypeManager dtm) {
		if (templatedName) {
			structName = "%s_%d_%d".formatted(structName, noteNameLen, noteDescLen);
		}
		if (cp == null) {
			cp = StandardElfInfoProducer.ELF_CATEGORYPATH;
		}
		StructureDataType result = new StructureDataType(cp, structName, 0, dtm);
		result.add(DWORD, "namesz", "Length of name field");
		result.add(DWORD, "descsz", "Length of description field");
		result.add(DWORD, "type", "Vendor specific type");
		if (noteNameLen > 0) {
			result.add(StringDataType.dataType, noteNameLen, "name", "Vendor name");
		}
		if (noteDescLen > 0) {
			result.add(new ArrayDataType(BYTE, noteDescLen, BYTE.getLength(), dtm), "description",
				"Blob value");
		}

		return result;
	}
Returns a Structure datatype that matches the format of this ElfNote, or null if this
ElfNote shouldn't be represented/marked up.

@param dtm {@link DataTypeManager} that will receive the structure 
@return StructureDataType that specifies the layout of the ElfNote, or null
Ghidra/Features/Base/src/main/java/ghidra/app/util/bin/format/elf/info/ElfNote.java