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

import org.etsi.ttcn.tci.FloatValue;
import org.etsi.ttcn.tci.IntegerValue;
import org.etsi.ttcn.tci.OctetstringValue;

/** 
 * This interface is used to provide vendor specific implementations of TCI-CD interface
 * 
 * Note that the TCI Codec Interface (TCI-CD) describes the operations a TTCN-3 Executable is required to implement and the operations a codec implementation for a certain encoding scheme shall provide to the TE
 * 
 * See ETSI ES 201 873-6 V4.2.1 - Clause 7.3.2.1 TCI-CD required
 */
public interface ITciCDWrapper {

	/** 
	 * Constructs and returns a basic TTCN-3 integer type
	 * 
	 * See ETSI ES 201 873-6 V4.2.1 - 7.3.2.1.2 getInteger
	 * @return An instance of Type representing a TTCN-3 integer type
	 */
	public IntegerValue getInteger();

	/** 
	 * Constructs and returns a basic TTCN-3 octet string type
	 * 
	 * See ETSI ES 201 873-6 V4.2.1 - 7.3.2.1.2 getOctetstring
	 * @return An instance of Type representing a TTCN-3 octet string type
	 */
	public OctetstringValue getOctetstring();

	/** 
	 * Constructs and returns a basic TTCN-3 float type
	 * 
	 * See ETSI ES 201 873-6 V4.2.1 - 7.3.2.1.3 getFloat
	 * @return An instance of Type representing a TTCN-3 float type
	 */
	public FloatValue getFloat();
	
	// FIXME To be continued
} // End of interface ITciCDWrapper
