/**
 * @author	STF 424_ITS_Test_Platform
 * @version    $URL:$
 *             $Id:$
 */
package org.etsi.its.codec.uppertester;


/** This interface provides mandatory methods to be used by Vendor to implement specific CAM/DENM message check support
 */
public interface IPduInstance {

	/**
	 * Add a new <code>PduItem</code> value in the list
	 * @param item The  <code>PduItem</code> value to be added
	 */
	public void AddItem(final PduItem item);

	/**
	 * This method returns the name of the method (provided by the IUT's API, e.g. Hitachi or Nec) to be executed to retrieve the physical value of the Cam/denm PDU element 
	 * @param itemType The the Cam/denm PDU element
	 * @return The name of a method
	 */
	public String GetMethodFromItemType(final String itemType);

	/**
	 * This methods provides the first Cam/Denm PDU element from the list <code>_items</code>
	 * @return The first element of the list, null if the list is empty
	 */
	public PduItem GetFirstItem();

	/**
	 * This methods provides the next Cam/Denm PDU element from the list <code>_items</code>
	 * @return The next element of the list, null if the end of the list was reached
	 */
	public PduItem GetNextItem();

	/**
	 * This methods provides the previous Cam/Denm PDU element from the list <code>_items</code>
	 * @return The previous element of the list, null if the beginning of the list was reached
	 */
	public PduItem GetPrevItem();

} // End of interface IPduInstance
