@Override
	public void deleteAll() {
		lock.acquire();
		try {
			checkDeleted();
			for (DataTypeComponentDB dtc : components) {
				dtc.getDataType().removeParent(this);
				try {
					long compKey = dtc.getKey();
					componentAdapter.removeRecord(compKey);
					dataMgr.getSettingsAdapter().removeAllSettingsRecords(compKey);
				}
				catch (IOException e) {
					dataMgr.dbError(e);
				}
			}
			components.clear();
			structLength = 0;
			numComponents = 0;
			record.setIntValue(CompositeDBAdapter.COMPOSITE_LENGTH_COL, 0);
			record.setIntValue(CompositeDBAdapter.COMPOSITE_NUM_COMPONENTS_COL, 0);
			compositeAdapter.updateRecord(record, true);
			notifySizeChanged(false);
		}
		catch (IOException e) {
			dataMgr.dbError(e);
		}
		finally {
			lock.release();
		}
	}
Gets the number of Undefined bytes beginning at the indicated component ordinal. Undefined
bytes that have a field name or comment specified are also included.

@param ordinal the component ordinal to begin checking at.
@return the number of contiguous undefined bytes
Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/program/database/data/StructureDB.java