@Override
	public void setMarkerForGroup(String groupName, MarkerSet ms, Program program) {
		if (!(ms instanceof MarkerSetImpl)) {
			throw new IllegalArgumentException("Invalid marker set provided");
		}

		Map<Program, MarkerSetImpl> markersByProgram = programMarkersByGroup.get(groupName);
		MarkerSetImpl previousMarkers = markersByProgram.get(program);
		MarkerSetImpl markers = (MarkerSetImpl) ms;
		if (markers == previousMarkers) {
			return;
		}

		removeMarker(previousMarkers, program);
		markersByProgram.put(program, markers);
		insertMarkers(markers, program);
	}
Call to signal that the markers for a given program have changed in some way, such as being
removed, changing colors or the active state being changed

@param p the program associated with the markers
Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/marker/MarkerManager.java