/**
 * <copyright>
 * </copyright>
 *
 * $Id$
 */
package brn.gui.graph.model;


/**
 * <!-- begin-user-doc -->
 * A representation of the model object '<em><b>Fwd Link</b></em>'.
 * <!-- end-user-doc -->
 *
 * <p>
 * The following features are supported:
 * <ul>
 *   <li>{@link brn.gui.graph.model.FwdLink#getSourceChannel <em>Source Channel</em>}</li>
 *   <li>{@link brn.gui.graph.model.FwdLink#getTargetChannel <em>Target Channel</em>}</li>
 *   <li>{@link brn.gui.graph.model.FwdLink#getFlowId <em>Flow Id</em>}</li>
 *   <li>{@link brn.gui.graph.model.FwdLink#isDuplicate <em>Duplicate</em>}</li>
 *   <li>{@link brn.gui.graph.model.FwdLink#getNoPackets <em>No Packets</em>}</li>
 * </ul>
 * </p>
 *
 * @see brn.gui.graph.model.ModelPackage#getFwdLink()
 * @model
 * @generated
 */
public interface FwdLink extends Link {
  /**
   * Returns the value of the '<em><b>Source Channel</b></em>' attribute.
   * <!-- begin-user-doc -->
   * <p>
   * If the meaning of the '<em>Source Channel</em>' attribute isn't clear,
   * there really should be more of a description here...
   * </p>
   * <!-- end-user-doc -->
   * @return the value of the '<em>Source Channel</em>' attribute.
   * @see #setSourceChannel(int)
   * @see brn.gui.graph.model.ModelPackage#getFwdLink_SourceChannel()
   * @model
   * @generated
   */
  int getSourceChannel();

  /**
   * Sets the value of the '{@link brn.gui.graph.model.FwdLink#getSourceChannel <em>Source Channel</em>}' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @param value the new value of the '<em>Source Channel</em>' attribute.
   * @see #getSourceChannel()
   * @generated
   */
  void setSourceChannel(int value);

  /**
   * Returns the value of the '<em><b>Target Channel</b></em>' attribute.
   * <!-- begin-user-doc -->
   * <p>
   * If the meaning of the '<em>Target Channel</em>' attribute isn't clear,
   * there really should be more of a description here...
   * </p>
   * <!-- end-user-doc -->
   * @return the value of the '<em>Target Channel</em>' attribute.
   * @see #setTargetChannel(int)
   * @see brn.gui.graph.model.ModelPackage#getFwdLink_TargetChannel()
   * @model
   * @generated
   */
  int getTargetChannel();

  /**
   * Sets the value of the '{@link brn.gui.graph.model.FwdLink#getTargetChannel <em>Target Channel</em>}' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @param value the new value of the '<em>Target Channel</em>' attribute.
   * @see #getTargetChannel()
   * @generated
   */
  void setTargetChannel(int value);

  /**
   * Returns the value of the '<em><b>Flow Id</b></em>' attribute.
   * <!-- begin-user-doc -->
   * <p>
   * If the meaning of the '<em>Flow Id</em>' attribute isn't clear,
   * there really should be more of a description here...
   * </p>
   * <!-- end-user-doc -->
   * @return the value of the '<em>Flow Id</em>' attribute.
   * @see #setFlowId(int)
   * @see brn.gui.graph.model.ModelPackage#getFwdLink_FlowId()
   * @model
   * @generated
   */
  int getFlowId();

  /**
   * Sets the value of the '{@link brn.gui.graph.model.FwdLink#getFlowId <em>Flow Id</em>}' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @param value the new value of the '<em>Flow Id</em>' attribute.
   * @see #getFlowId()
   * @generated
   */
  void setFlowId(int value);

  /**
   * Returns the value of the '<em><b>Duplicate</b></em>' attribute.
   * <!-- begin-user-doc -->
   * <p>
   * If the meaning of the '<em>Duplicate</em>' attribute isn't clear,
   * there really should be more of a description here...
   * </p>
   * <!-- end-user-doc -->
   * @return the value of the '<em>Duplicate</em>' attribute.
   * @see #setDuplicate(boolean)
   * @see brn.gui.graph.model.ModelPackage#getFwdLink_Duplicate()
   * @model
   * @generated
   */
  boolean isDuplicate();

  /**
   * Sets the value of the '{@link brn.gui.graph.model.FwdLink#isDuplicate <em>Duplicate</em>}' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @param value the new value of the '<em>Duplicate</em>' attribute.
   * @see #isDuplicate()
   * @generated
   */
  void setDuplicate(boolean value);

  /**
   * Returns the value of the '<em><b>No Packets</b></em>' attribute.
   * <!-- begin-user-doc -->
   * <p>
   * If the meaning of the '<em>No Packets</em>' attribute isn't clear,
   * there really should be more of a description here...
   * </p>
   * <!-- end-user-doc -->
   * @return the value of the '<em>No Packets</em>' attribute.
   * @see #setNoPackets(int)
   * @see brn.gui.graph.model.ModelPackage#getFwdLink_NoPackets()
   * @model
   * @generated
   */
  int getNoPackets();

  /**
   * Sets the value of the '{@link brn.gui.graph.model.FwdLink#getNoPackets <em>No Packets</em>}' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @param value the new value of the '<em>No Packets</em>' attribute.
   * @see #getNoPackets()
   * @generated
   */
  void setNoPackets(int value);

} // FwdLink