-- IDL module extracted from ITU-T Z.165.1 (05/2012)
// *************************************************************************
// Interface definition for the TTCN 3 Runtime Interface
// Extension Package: Extended TRI
// *************************************************************************
module xtriInterface
{
//
// *************************************************************************
// Types
// *************************************************************************
//
// Connection
native TriPortIdType;
typedef sequence<TriPortIdType> TriPortIdListType;
native TriComponentIdType;
typedef sequence<TriComponentIdType> TriComponentIdListType;
// Communication
native TriMessageType;
native TriAddressType;
typedef sequence<TriAddressType> TriAddressListType;
native TriSignatureIdType;
native TriParameterType;
typedef sequence<TriParameterType> TriParameterListType;
native TriExceptionType;
// Timing
native TriTimerIdType;
native TriTimerDurationType;
// Miscellaneous
native TriFunctionIdType;
native TriTestCaseIdType;
native TriStatusType;
//
// *************************************************************************
// Interfaces
// *************************************************************************
//
//
// *************************************************************************
// The communication interface (Ref: TRI Definition: 5.5)
// *************************************************************************
//
interface triCommunication
{
// Reset operation
// Ref: TRI Definition 5.5.1
TriStatusType triSAReset();
// Connection handling operations
// Ref: TRI Definition 5.5.2.1
TriStatusType triExecuteTestCase(in TriTestCaseIdType testCaseId,
in TriPortIdListType tsiPortList);
// Ref: TRI Definition 5.5.2.2
TriStatusType xtriMap(in TriPortIdType compPortId, in TriPortIdType tsiPortId, in TciParameterListType paramList);
// Ref: TRI Definition 5.5.2.3
TriStatusType triMapParam(in TriPortIdType compPortId, in TriPortIdType tsiPortId, in TriParameterListType paramList);
// Ref: TRI Definition 5.5.2.4
TriStatusType xtriUnmap(in TriPortIdType compPortId, in TriPortIdType tsiPortId, in TciParameterListType paramList);
// Ref: TRI Definition 5.5.2.5
TriStatusType triUnmapParam(in TriPortIdType compPortId, in TriPortIdType tsiPortId, in TriParameterListType paramList);
// Ref: TRI Definition 5.5.2.6
TriStatusType triEndTestCase();
// Message based communication operations
// Ref: TRI Definition 5.5.3.1
TriStatusType xtriSend(in TriComponentIdType componentId, in TriPortIdType tsiPortId,
in Value SUTaddress, in Value sendMessage);
// Ref: TRI Definition 5.5.3.2
TriStatusType xtriSendBC(in TriComponentIdType componentId, in TriPortIdType tsiPortId,
in Value sendMessage);
// Ref: TRI Definition 5.5.3.3
TriStatusType xtriSendMC(in TriComponentIdType componentId, in TriPortIdType tsiPortId,
in TciValueList SUTaddresses, in Value sendMessage);
// Ref: TRI Definition 5.5.3.4
void xtriEnqueueMsg(in TriPortIdType tsiPortId , in any SUTaddress,
in TriComponentIdType componentId, in any receivedMessage);
// Ref: TRI definition 5.5.3.5
Value xtriConvert(in any value, in Type typeHypothesis)
// Procedure based communication operations
// Ref: TRI Definition 5.5.4.1
TriStatusType xtriCall(in TriComponentIdType componentId, in TriPortIdType tsiPortId,
in Value SUTaddress, in TriSignatureIdType signatureId,
in TciParameterListType parameterList);
// Ref: TRI Definition 5.5.4.2
TriStatusType xtriCallBC(in TriComponentIdType componentId, in TriPortIdType tsiPortId,
in TriSignatureIdType signatureId,
in TciParameterListType parameterList);
// Ref: TRI Definition 5.5.4.3
TriStatusType xtriCallMC(in TriComponentIdType componentId, in TriPortIdType tsiPortId,
in TciValueList SUTaddresses, in TriSignatureIdType signatureId,
in TciParameterListType parameterList);
// Ref: TRI Definition 5.5.4.4
TriStatusType xtriReply(in TriComponentIdType componentId, in TriPortIdType tsiPortId,
in Value SUTaddress, in TriSignatureIdType signatureId,
in TciParameterListType parameterList, in Value returnValue );
// Ref: TRI Definition 5.5.4.5
TriStatusType xtriReplyBC(in TriComponentIdType componentId, in TriPortIdType tsiPortId,
in TriSignatureIdType signatureId,
in TciParameterListType parameterList, in Value returnValue );
// Ref: TRI Definition 5.5.4.6
TriStatusType xtriReplyMC(in TriComponentIdType componentId, in TriPortIdType tsiPortId,
in TciValueList SUTaddresses, in TriSignatureIdType signatureId,
in TciParameterListType parameterList, in Value returnValue );
// Ref: TRI Definition 5.5.4.7
TriStatusType xtriRaise(in TriComponentIdType componentId, in TriPortIdType tsiPortId,
in Value SUTaddress, in TriSignatureIdType signatureId,
in Value exc);
// Ref: TRI Definition 5.5.4.8
TriStatusType xtriRaiseBC(in TriComponentIdType componentId, in TriPortIdType tsiPortId,
in TriSignatureIdType signatureId,
in Value exc);
// Ref: TRI Definition 5.5.4.9
TriStatusType xtriRaiseMC(in TriComponentIdType componentId, in TriPortIdType tsiPortId,
in TciValueList SUTaddresses, in TriSignatureIdType signatureId,
in Value exc);
// Ref: TRI Definition 5.5.4.10
void xtriEnqueueCall(in TriPortIdType tsiPortId, in any SUTaddress,
in TriComponentIdType componentId, in TriSignatureIdType signatureId,
in TciParameterListType parameterList );
// Ref: TRI Definition 5.5.4.11
void xtriEnqueueReply(in TriPortIdType tsiPortId, in any SUTaddress,
in TriComponentIdType componentId, in TriSignatureIdType signatureId,
in TciParameterListType parameterList, in Value returnValue );
// Ref: TRI Definition 5.5.4.12
void xtriEnqueueException(in TriPortIdType tsiPortId, in any SUTaddress,
in TriComponentIdType componentId, in TriSignatureIdType signatureId,
in any exc);
// Miscellaneous operations
// Ref: TRI Definition 5.5.5.1
TriStatusType triSUTactionInformal(in string description);
};
//
// *************************************************************************
// The platform interface (Ref: TRI Definition: 5.6)
// *************************************************************************
//
interface triPlatform
{
// Reset Operation
// Ref: TRI Definition 5.6.1
TriStatusType triPAReset();
// Timer handling operations
// Ref: TRI Definition 5.6.2.1
TriStatusType triStartTimer(in TriTimerIdType timerId,
in TriTimerDurationType timerDuration);
// Ref: TRI Definition 5.6.2.2
TriStatusType triStopTimer(in TriTimerIdType timerId);
// Ref: TRI Definition 5.6.2.3
TriStatusType triReadTimer(in TriTimerIdType timerId,
out TriTimerDurationType elapsedTime);
// Ref: TRI Definition 5.6.2.4
TriStatusType triTimerRunning(in TriTimerIdType timerId, out boolean running);
// Ref: TRI Definition 5.6.2.5
void triTimeout(in TriTimerIdType timerId);
// Miscellaneous operations
// Ref: TRI Definition 5.6.3.1
TriStatusType xtriExternalFunction(in TriFunctionIdType functionId,
inout TciParameterListType parameterList,
out Value returnValue);
};
};