/**
  * Diese Methode schreibt den gegebenen {@link IAMIndex} in die {@link #getTargetData()
  * Ausgabedaten}.
  *
  * @see IAMDataType#encode(IAMCodec, IAMIndex)
  * @param index {@link IAMIndex}.
  * @throws IOException Wenn die Ausgabedaten nicht geschrieben werden können.
  * @throws IllegalStateException Wenn kein Ausgabeformat oder keine Bytereihenfolge eingestellt
  *     ist.
  * @throws IllegalArgumentException Wenn die Ausgabedaten ungültig sind.
  */
 public final synchronized void encodeTarget(final IAMIndex index)
     throws IOException, IllegalStateException, IllegalArgumentException {
   final IAMDataType format = this._targetFormat_;
   if (format == null) throw new IllegalStateException();
   if (this._byteOrder_ == null) throw new IllegalStateException();
   format.encode(this, index);
 }
 /**
  * Diese Methode liest die {@link #getSourceData() Eingabedaten} und gibt den daraus erstellten
  * {@link IAMIndex} zurück.
  *
  * @see IAMDataType#decode(IAMCodec)
  * @return {@link IAMIndex}.
  * @throws IOException Wenn die Eingabedaten nicht gelesen werden können.
  * @throws IllegalStateException Wenn kein Eingabeformat eingestellt ist.
  * @throws IllegalArgumentException Wenn die Eingabedaten ungültig sind.
  */
 public final synchronized IAMIndex decodeSource()
     throws IOException, IllegalStateException, IllegalArgumentException {
   final IAMDataType format = this._sourceFormat_;
   if (format == null) throw new IllegalStateException();
   return format.decode(this);
 }