#ifndef TCI_TL_C
#define TCI_TL_C

#include <stdlib.h>
#include <string.h>
#include "TciTL.h"

#ifdef _WIN32
#define DLL_EXPORT __declspec(dllexport)
	#ifdef _MSC_VER
		#if _MSC_VER >= 1600
			#include <stdint.h>
		#else
			typedef int int32_t;
			typedef __int64 int64_t;
		#endif
	#else
		#include <stdint.h>
	#endif
#else
#include <stdint.h>
#define DLL_EXPORT __attribute__((visibility("default")))
#endif



BinaryString convertBinaryString(BinaryString32 src)
{
	BinaryString res;
	res.aux = src.aux;
	res.bits = (long int)src.bits;
	res.data = src.data;
	return res;
}

TriComponentId convertComponentId(TriComponentId32 src)
{
	TriComponentId res;
	res.compInst = convertBinaryString(src.compInst);
	res.compName = src.compName;
	res.compType = src.compType;
	return res;
}

TciParameterListType convertTciParameterList(TciParameterListType32 src)
{
	TciParameterListType res;
	res.length = (long int)src.length;
	res.parList = src.parList;
	return res;
}

TriPortId convertPortId(TriPortId32 src)
{
	TriPortId res;
	res.aux = src.aux;
	res.compInst = convertComponentId(src.compInst);
	res.portIndex = (long int)src.portIndex;
	res.portName = src.portName;
	res.portType = src.portType;
	return res;
}

TriPortIdList convertPortList(TriPortIdList32 src)
{
	TriPortIdList res;
	res.length = (long int)src.length;
	res.portIdList = src.portIdList;
	return res;
}

TriAddressList convertAddressList(TriAddressList32 src)
{
	TriAddressList res;
	res.addrList = src.addrList;
	res.length = (long int)src.length;
	return res;
}

TriParameter convertTriParameter(TriParameter32 src)
{
	TriParameter res;
	res.mode = src.mode;
	res.par = convertBinaryString(src.par);
	return res;
}

TriParameterList convertTriParameterList(TriParameterList32 src)
{
	TriParameterList res;
	res.length = (long int)src.length;
	res.parList = src.parList;
	return res;
}

TciValueDifferenceList convertDiffList(TciValueDifferenceList32 src)
{
	TciValueDifferenceList res;
	res.diffList = src.diffList;
	res.length = (long int)src.length;
	return res;
}

DLL_EXPORT void TliTcExecute(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TciTestCaseIdType tcId,
	TciParameterListType32 tciPars, TriTimerDuration dur)
{
	tliTcExecute(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), tcId, 
		convertTciParameterList(tciPars), dur);
}
DLL_EXPORT void TliTcStart(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TciTestCaseIdType tcId,
	TciParameterListType32 tciPars, TriTimerDuration dur)
{
	tliTcStart(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), tcId, convertTciParameterList(tciPars), dur);
}
DLL_EXPORT void TliTcStop(String am, int64_t ts, String src, int32_t line, TriComponentId32 c)
{
	tliTcStop(am, (int)(ts >> 32), src, (int)line, convertComponentId(c));
}
DLL_EXPORT void TliTcStarted(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TciTestCaseIdType tcId,
	TciParameterListType32 tciPars, TriTimerDuration dur)
{
	tliTcStarted(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), tcId, convertTciParameterList(tciPars), dur);
}
DLL_EXPORT void TliTcTerminated(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TciTestCaseIdType tcId,
	TciParameterListType32 tciPars, VerdictValue verdict)
{
	tliTcTerminated(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), tcId, 
		convertTciParameterList(tciPars), verdict);
}
DLL_EXPORT void TliCtrlStart(String am, int64_t ts, String src, int32_t line, TriComponentId32 c)
{
	tliCtrlStart(am, (int)(ts >> 32), src, (int)line, convertComponentId(c));
}
DLL_EXPORT void TliCtrlStop(String am, int64_t ts, String src, int32_t line, TriComponentId32 c)
{
	tliCtrlStop(am, (int)(ts >> 32), src, (int)line, convertComponentId(c));
}
DLL_EXPORT void TliCtrlTerminated(String am, int64_t ts, String src, int32_t line, TriComponentId32 c)
{
	tliCtrlTerminated(am, (int)(ts >> 32), src, (int)line, convertComponentId(c));
}
DLL_EXPORT void TliMSend_m(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at, TriPortId32 to,
	Value msgValue, Value addrValue, int32_t encoderFailure, BinaryString32 msg, BinaryString32 address,
	int32_t transmissionFailure)
{
	tliMSend_m(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), convertPortId(to), 
		msgValue, addrValue, (TciStatus)encoderFailure, convertBinaryString(msg), convertBinaryString(address), 
		(TriStatus)transmissionFailure);
}
DLL_EXPORT void TliMSend_m_BC(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at, TriPortId32 to,
	Value msgValue, int32_t encoderFailure, BinaryString32 msg, int32_t transmissionFailure)
{
	tliMSend_m_BC(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), convertPortId(to), 
		msgValue, (TciStatus)encoderFailure, convertBinaryString(msg), (TriStatus)transmissionFailure);
}
DLL_EXPORT void TliMSend_m_MC(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at, TriPortId32 to,
	Value msgValue, TciValueList addrValues, int32_t encoderFailure, BinaryString32 msg, TriAddressList32 addresses,
	int32_t transmissionFailure)
{
	tliMSend_m_MC(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), convertPortId(to), msgValue, 
		addrValues, (TciStatus)encoderFailure, convertBinaryString(msg), convertAddressList(addresses), 
		(TriStatus)transmissionFailure);
}
DLL_EXPORT void TliMSend_c(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at, TriPortId32 to,
	Value msgValue, int32_t transmissionFailure)
{
	tliMSend_c(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), convertPortId(to), msgValue, 
		(TriStatus)transmissionFailure);
}
DLL_EXPORT void TliMSend_c_BC(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at, TriPortIdList32 to,
	Value msgValue, int32_t transmissionFailure)
{
	tliMSend_c_BC(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), convertPortList(to), 
		msgValue, (TriStatus)transmissionFailure);
}
DLL_EXPORT void TliMSend_c_MC(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at, TriPortIdList32 to,
	Value msgValue, int32_t transmissionFailure)
{
	tliMSend_c_MC(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), convertPortList(to), msgValue, 
		(TriStatus)transmissionFailure);
}
DLL_EXPORT void TliMDetected_m(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at, TriPortId32 from,
	BinaryString32 msg, BinaryString32 address)
{
	tliMDetected_m(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), convertPortId(from), 
		convertBinaryString(msg), convertBinaryString(address));
}
DLL_EXPORT void TliMDetected_c(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at, TriPortId32 from,
	Value msgValue)
{
	tliMDetected_c(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), convertPortId(from), msgValue);
}
DLL_EXPORT void TliMMismatch_m(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at, Value msgValue,
	TciValueTemplate msgTmpl, TciValueDifferenceList32 diffs, Value addrValue, TciValueTemplate addressTmpl)
{
	tliMMismatch_m(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), msgValue, msgTmpl, 
		convertDiffList(diffs), addrValue, addressTmpl);
}
DLL_EXPORT void TliMMismatch_c(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at, Value msgValue,
	TciValueTemplate msgTmpl, TciValueDifferenceList32 diffs, TriComponentId32 from, TciNonValueTemplate fromTmpl)
{
	tliMMismatch_c(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), msgValue, msgTmpl, 
		convertDiffList(diffs), convertComponentId(from), fromTmpl);
}
DLL_EXPORT void TliMReceive_m(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at, Value msgValue,
	TciValueTemplate msgTmpl, Value addrValue, TciValueTemplate addressTmpl)
{
	tliMReceive_m(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), msgValue, msgTmpl, addrValue, addressTmpl);
}
DLL_EXPORT void TliMReceive_c(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at, Value msgValue,
	TciValueTemplate msgTmpl, TriComponentId32 from, TciNonValueTemplate fromTmpl)
{
	tliMReceive_c(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), msgValue, msgTmpl, 
		convertComponentId(from), fromTmpl);
}
DLL_EXPORT void TliPrCall_m(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at,
	TriPortId32 to, TriSignatureId signature, TciParameterListType32 tciPars, Value addrValue, int32_t encoderFailure,
	TriParameterList32 triPars, BinaryString32 address, int32_t transmissionFailure)
{
	tliPrCall_m(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), convertPortId(to), signature, 
		convertTciParameterList(tciPars), addrValue, (TciStatus)encoderFailure, convertTriParameterList(triPars),
		convertBinaryString(address), (TriStatus)transmissionFailure);
}
DLL_EXPORT void TliPrCall_m_BC(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at, TriPortId32 to,
TriSignatureId signature, TciParameterListType32 tciPars, int32_t encoderFailure, TriParameterList32 triPars,
	int32_t transmissionFailure)
{
	tliPrCall_m_BC(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), convertPortId(to), 
		signature, convertTciParameterList(tciPars), (TciStatus)encoderFailure, convertTriParameterList(triPars), 
		(int32_t)transmissionFailure);
}
DLL_EXPORT void TliPrCall_m_MC(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at, TriPortId32 to,
	TriSignatureId signature, TciParameterListType32 tciPars, TciValueList addrValues, int32_t encoderFailure, 
	TriParameterList32 triPars, TriAddressList32 addresses, int32_t transmissionFailure)
{
	tliPrCall_m_MC(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), convertPortId(to), signature, 
		convertTciParameterList(tciPars), addrValues, (TciStatus)encoderFailure, convertTriParameterList(triPars), 
		convertAddressList(addresses), (TriStatus)transmissionFailure);
}
DLL_EXPORT void TliPrCall_c(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at,
	TriPortId32 to, TriSignatureId signature, TciParameterListType32 tciPars, int32_t transmissionFailure)
{
	tliPrCall_c(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), convertPortId(to), signature, 
		convertTciParameterList(tciPars), (TriStatus)transmissionFailure);
}
DLL_EXPORT void TliPrCall_c_BC(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at, TriPortIdList32 to,
	TriSignatureId signature, TciParameterListType32 tciPars, int32_t transmissionFailure)
{
	tliPrCall_c_BC(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), convertPortList(to), signature, 
		convertTciParameterList(tciPars), (TriStatus)transmissionFailure);
}
DLL_EXPORT void TliPrCall_c_MC(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at, TriPortIdList32 to,
	TriSignatureId signature, TciParameterListType32 tciPars, int32_t transmissionFailure)
{
	tliPrCall_c_MC(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), convertPortList(to), signature, 
		convertTciParameterList(tciPars), (TriStatus)transmissionFailure);
}
DLL_EXPORT void TliPrGetCallDetected_m(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at, 
	TriPortId32 from, TriSignatureId signature, TriParameterList32 triPars, BinaryString32 address)
{
	tliPrGetCallDetected_m(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), convertPortId(from), 
		signature, convertTriParameterList(triPars), convertBinaryString(address));
}
DLL_EXPORT void TliPrGetCallDetected_c(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at, 
	TriPortId32 from, TriSignatureId signature, TciParameterListType32 tciPars)
{
	tliPrGetCallDetected_c(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), convertPortId(from), 
		signature, convertTciParameterList(tciPars));
}
DLL_EXPORT void TliPrGetCallMismatch_m(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at,
	TriSignatureId signature, TciParameterListType32 tciPars, TciValueTemplate parsTmpl, TciValueDifferenceList32 diffs,
	Value addrValue, TciValueTemplate addressTmpl)
{
	tliPrGetCallMismatch_m(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), signature, 
		convertTciParameterList(tciPars), parsTmpl, convertDiffList(diffs), addrValue, addressTmpl);
}
DLL_EXPORT void TliPrGetCallMismatch_c(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at,
	TriSignatureId signature, TciParameterListType32 tciPars, TciValueTemplate parsTmpl, TciValueDifferenceList32 diffs,
	TriComponentId32 from, TciNonValueTemplate fromTmpl)
{
	tliPrGetCallMismatch_c(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), signature, 
		convertTciParameterList(tciPars), parsTmpl, convertDiffList(diffs), convertComponentId(from), fromTmpl);
}
DLL_EXPORT void TliPrGetCall_m(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at,
	TriSignatureId signature, TciParameterListType32 tciPars, TciValueTemplate parsTmpl, Value addrValue,
	TciValueTemplate addressTmpl)
{
	tliPrGetCall_m(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), signature, 
		convertTciParameterList(tciPars), parsTmpl, addrValue, addressTmpl);
}
DLL_EXPORT void TliPrGetCall_c(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at,
	TriSignatureId signature, TciParameterListType32 tciPars, TciValueTemplate parsTmpl, TriComponentId32 from,
	TciNonValueTemplate fromTmpl)
{
	tliPrGetCall_c(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), signature, 
		convertTciParameterList(tciPars), parsTmpl, convertComponentId(from), fromTmpl);
}
DLL_EXPORT void TliPrReply_m(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at, TriPortId32 to,
	TriSignatureId signature, TciParameterListType32 tciPars, Value replValue, Value addrValue,
	int32_t encoderFailure, TriParameterList32 triPars, TriParameter32 repl, BinaryString32 address, int32_t transmissionFailure)
{
	tliPrReply_m(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), convertPortId(to), signature, 
		convertTciParameterList(tciPars), replValue, addrValue, (TciStatus)encoderFailure, 
		convertTriParameterList(triPars), convertTriParameter(repl), convertBinaryString(address), (TriStatus)transmissionFailure);
}
DLL_EXPORT void TliPrReply_m_BC(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at, TriPortId32 to,
	TriSignatureId signature, TciParameterListType32 tciPars, Value replValue, int32_t encoderFailure,
	TriParameterList32 triPars, TriParameter32 repl, int32_t transmissionFailure)
{
	tliPrReply_m_BC(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), convertPortId(to), signature, 
		convertTciParameterList(tciPars), replValue, (TciStatus)encoderFailure, convertTriParameterList(triPars),
		convertTriParameter(repl), (TriStatus)transmissionFailure);
}
DLL_EXPORT void TliPrReply_m_MC(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at, TriPortId32 to,
	TriSignatureId signature, TciParameterListType32 tciPars, Value replValue, TciValueList addrValues,
	int32_t encoderFailure, TriParameterList32 triPars, TriParameter32 repl, TriAddressList32 addresses,
	int32_t transmissionFailure)
{
	tliPrReply_m_MC(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), convertPortId(to), signature, 
		convertTciParameterList(tciPars), replValue, addrValues, (TciStatus)encoderFailure,
		convertTriParameterList(triPars), convertTriParameter(repl), convertAddressList(addresses), (TriStatus)transmissionFailure);
}
DLL_EXPORT void TliPrReply_c(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at, TriPortId32 to,
	TriSignatureId signature, TciParameterListType32 tciPars, Value replValue, int32_t transmissionFailure)
{
	tliPrReply_c(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), convertPortId(to), signature, 
		convertTciParameterList(tciPars), replValue, (TriStatus)transmissionFailure);
}
DLL_EXPORT void TliPrReply_c_BC(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at, TriPortIdList32 to,
	TriSignatureId signature, TciParameterListType32 tciPars, Value replValue, int32_t transmissionFailure)
{
	tliPrReply_c_BC(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), convertPortList(to), 
		signature, convertTciParameterList(tciPars), replValue, (TriStatus)transmissionFailure);
}
DLL_EXPORT void TliPrReply_c_MC(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at, TriPortIdList32 to,
	TriSignatureId signature, TciParameterListType32 tciPars, Value replValue, int32_t transmissionFailure)
{
	tliPrReply_c_MC(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), convertPortList(to), signature, 
		convertTciParameterList(tciPars), replValue, (TriStatus)transmissionFailure);
}
DLL_EXPORT void TliPrGetReplyDetected_m(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at,
	TriPortId32 from, TriSignatureId signature, TriParameterList32 triPars, TriParameter32 repl, BinaryString32 address)
{
	tliPrGetReplyDetected_m(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), convertPortId(from), 
		signature, convertTriParameterList(triPars), convertTriParameter(repl), convertBinaryString(address));
}
DLL_EXPORT void TliPrGetReplyDetected_c(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at,
	TriPortId32 from, TriSignatureId signature, TciParameterListType32 tciPars, Value replValue)
{
	tliPrGetReplyDetected_c(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), convertPortId(from), 
		signature, convertTciParameterList(tciPars), replValue);
}
DLL_EXPORT void TliPrGetReplyMismatch_m(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at,
	TriSignatureId signature, TciParameterListType32 tciPars, TciValueTemplate parsTmpl, Value replValue,
	TciValueTemplate replyTmpl, TciValueDifferenceList32 diffs, Value addrValue, TciValueTemplate addressTmpl)
{
	tliPrGetReplyMismatch_m(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), signature, 
		convertTciParameterList(tciPars), parsTmpl, replValue, replyTmpl, convertDiffList(diffs), addrValue, addressTmpl);
}
DLL_EXPORT void TliPrGetReplyMismatch_c(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at,
	TriSignatureId signature, TciParameterListType32 tciPars, TciValueTemplate parsTmpl, Value replValue,
	TciValueTemplate replyTmpl, TciValueDifferenceList32 diffs, TriComponentId32 from, TciNonValueTemplate fromTmpl)
{
	tliPrGetReplyMismatch_c(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), signature, 
		convertTciParameterList(tciPars), parsTmpl, replValue, replyTmpl, convertDiffList(diffs), convertComponentId(from), 
		fromTmpl);
}
DLL_EXPORT void TliPrGetReply_m(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at,
	TriSignatureId signature, TciParameterListType32 tciPars, TciValueTemplate parsTmpl, Value replValue,
	TciValueTemplate replyTmpl, Value addrValue, TciValueTemplate addressTmpl)
{
	tliPrGetReply_m(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), signature, 
		convertTciParameterList(tciPars), parsTmpl, replValue, replyTmpl, addrValue, addressTmpl);
}
DLL_EXPORT void TliPrGetReply_c(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at,
	TriSignatureId signature, TciParameterListType32 tciPars, TciValueTemplate parsTmpl, Value replValue,
	TciValueTemplate replyTmpl, TriComponentId32 from, TciNonValueTemplate fromTmpl)
{
	tliPrGetReply_c(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), signature, 
		convertTciParameterList(tciPars), parsTmpl, replValue, replyTmpl, convertComponentId(from), fromTmpl);
}
DLL_EXPORT void TliPrRaise_m(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at, TriPortId32 to,
	TriSignatureId signature, TciParameterListType32 tciPars, Value excValue, Value addrValue,
	int32_t encoderFailure, BinaryString32 exc, BinaryString32 address, int32_t transmissionFailure)
{
	tliPrRaise_m(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), convertPortId(to), signature, 
		convertTciParameterList(tciPars), excValue, addrValue, (TciStatus)encoderFailure,
		convertBinaryString(exc), convertBinaryString(address), (TriStatus)transmissionFailure);
}
DLL_EXPORT void TliPrRaise_m_BC(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at, TriPortId32 to,
	TriSignatureId signature, TciParameterListType32 tciPars, Value excValue, int32_t encoderFailure,
	BinaryString32 exc, int32_t transmissionFailure)
{
	tliPrRaise_m_BC(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), convertPortId(to), 
		signature, convertTciParameterList(tciPars), excValue, (TciStatus)encoderFailure, convertBinaryString(exc),
		(TriStatus)transmissionFailure);
}
DLL_EXPORT void TliPrRaise_m_MC(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at, TriPortId32 to,
	TriSignatureId signature, TciParameterListType32 tciPars, Value excValue, TciValueList addrValues,
	int32_t encoderFailure, BinaryString32 exc, TriAddressList32 addresses, int32_t transmissionFailure)
{
	tliPrRaise_m_MC(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), convertPortId(to), signature, 
		convertTciParameterList(tciPars), excValue, addrValues, (TciStatus)encoderFailure, convertBinaryString(exc), 
		convertAddressList(addresses), (TriStatus)transmissionFailure);
}
DLL_EXPORT void TliPrRaise_c(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at, TriPortId32 to,
	TriSignatureId signature, TciParameterListType32 tciPars, Value excValue, int32_t transmissionFailure)
{
	tliPrRaise_c(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), convertPortId(to), signature, 
		convertTciParameterList(tciPars), excValue, (TriStatus)transmissionFailure);
}
DLL_EXPORT void TliPrRaise_c_BC(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at, TriPortIdList32 to,
	TriSignatureId signature, TciParameterListType32 tciPars, Value excValue, int32_t transmissionFailure)
{
	tliPrRaise_c_BC(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), convertPortList(to), signature, 
		convertTciParameterList(tciPars), excValue, (TriStatus)transmissionFailure);
}
DLL_EXPORT void TliPrRaise_c_MC(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at, TriPortIdList32 to,
	TriSignatureId signature, TciParameterListType32 tciPars, Value excValue, int32_t transmissionFailure)
{
	tliPrRaise_c_MC(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), convertPortList(to), 
		signature, convertTciParameterList(tciPars), excValue, (TriStatus)transmissionFailure);
}
DLL_EXPORT void TliPrCatchDetected_m(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at,
	TriPortId32 from, TriSignatureId signature, BinaryString32 exc, BinaryString32 address)
{
	tliPrCatchDetected_m(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), convertPortId(from), 
		signature, convertBinaryString(exc), convertBinaryString(address));
}
DLL_EXPORT void TliPrCatchDetected_c (String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at,
	TriPortId32 from, TriSignatureId signature, Value excValue)
{
	tliPrCatchDetected_c(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), convertPortId(from), 
		signature, excValue);
}
DLL_EXPORT void TliPrCatchMismatch_m(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at,
	TriSignatureId signature, Value excValue, TciValueTemplate excTmpl, TciValueDifferenceList32 diffs,
	Value addrValue, TciValueTemplate addressTmpl)
{
	tliPrCatchMismatch_m(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), signature, excValue, 
		excTmpl, convertDiffList(diffs), addrValue, addressTmpl);
}
DLL_EXPORT void TliPrCatchMismatch_c(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at,
	TriSignatureId signature, Value excValue, TciValueTemplate excTmpl, TciValueDifferenceList32 diffs,
	TriComponentId32 from, TciNonValueTemplate fromTmpl)
{
	tliPrCatchMismatch_c(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), signature, excValue, 
		excTmpl, convertDiffList(diffs), convertComponentId(from), fromTmpl);
}
DLL_EXPORT void TliPrCatch_m(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at,
	TriSignatureId signature, Value excValue, TciValueTemplate excTmpl, Value addrValue,
	TciValueTemplate addressTmpl)
{
	tliPrCatch_m(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), signature, excValue, excTmpl, 
		addrValue, addressTmpl);
}
DLL_EXPORT void TliPrCatch_c(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at,
	TriSignatureId signature, Value excValue, TciValueTemplate excTmpl, TriComponentId32 from,
	TciNonValueTemplate fromTmpl)
{
	tliPrCatch_c(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), signature, excValue, excTmpl, 
		convertComponentId(from), fromTmpl);
}
DLL_EXPORT void TliPrCatchTimeoutDetected(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at,
	TriSignatureId signature)
{
	tliPrCatchTimeoutDetected(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), signature);
}
DLL_EXPORT void TliPrCatchTimeout(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 at,
	TriSignatureId signature)
{
	tliPrCatchTimeout(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(at), signature);
}
DLL_EXPORT void TliCCreate(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriComponentId32 comp,
	String name, Boolean alive)
{
	tliCCreate(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertComponentId(comp), name, alive);
}
DLL_EXPORT void TliCStart(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriComponentId32 comp,
	TciBehaviourIdType name, TciParameterListType32 tciPars)
{
	tliCStart(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertComponentId(comp), name, 
		convertTciParameterList(tciPars));
}
DLL_EXPORT void TliCRunning(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriComponentId32 comp,
	int32_t status)
{
	tliCRunning(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertComponentId(comp), (ComponentStatus)status);
}
DLL_EXPORT void TliCAlive(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriComponentId32 comp,
	int32_t status)
{
	tliCAlive(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertComponentId(comp), (ComponentStatus)status);
}
DLL_EXPORT void TliCStop(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriComponentId32 comp)
{
	tliCStop(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertComponentId(comp));
}
DLL_EXPORT void TliCKill(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriComponentId32 comp)
{
	tliCKill(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertComponentId(comp));
}
DLL_EXPORT void TliCDoneMismatch(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriComponentId32 comp,
	TciNonValueTemplate compTmpl)
{
	tliCDoneMismatch(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertComponentId(comp), compTmpl);
}
DLL_EXPORT void TliCDone(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TciNonValueTemplate compTmpl)
{
	tliCDone(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), compTmpl);
}
DLL_EXPORT void TliCTerminated(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, VerdictValue verdict)
{
	tliCTerminated(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), verdict);
}
DLL_EXPORT void TliCKilledMismatch(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriComponentId32 comp,
	TciNonValueTemplate compTmpl)
{
	tliCKilledMismatch(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertComponentId(comp), compTmpl);
}
DLL_EXPORT void TliCKilled(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TciNonValueTemplate compTmpl)
{
	tliCKilled(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), compTmpl);
}
DLL_EXPORT void TliPConnect(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 port1, TriPortId32 port2)
{
	tliPConnect(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(port1), convertPortId(port2));
}
DLL_EXPORT void TliPDisconnect(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 port1,
	TriPortId32 port2)
{
	tliPDisconnect(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(port1), convertPortId(port2));
}
DLL_EXPORT void TliPMap(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 port1, TriPortId32 port2)
{
	tliPMap(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(port1), convertPortId(port2));
}
DLL_EXPORT void TliPUnmap(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 port1, TriPortId32 port2)
{
	tliPUnmap(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(port1), convertPortId(port2));
}
DLL_EXPORT void TliPClear(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 port)
{
	tliPClear(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(port));
}
DLL_EXPORT void TliPStart(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 port)
{
	tliPStart(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(port));
}
DLL_EXPORT void TliPStop(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 port)
{
	tliPStop(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(port));
}
DLL_EXPORT void TliPHalt(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, TriPortId32 port)
{
	tliPHalt(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertPortId(port));
}
DLL_EXPORT void TliEncode(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, Value val, int32_t encoderFailure,
	BinaryString32 msg, String codec)
{
	tliEncode(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), val, (TciStatus)encoderFailure, 
		convertBinaryString(msg), codec);
}
DLL_EXPORT void TliDecode(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, BinaryString32 msg, 
	int32_t decoderFailure, Value val, String codec)
{
	tliDecode(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertBinaryString(msg), (TciStatus)decoderFailure, 
		val, codec);
}
DLL_EXPORT void TliTTimeoutDetected(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, BinaryString32 timer)
{
	tliTTimeoutDetected(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertBinaryString(timer));
}
DLL_EXPORT void TliTTimeoutMismatch(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, BinaryString32 timer,
	TciNonValueTemplate timerTmpl)
{
	tliTTimeoutMismatch(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertBinaryString(timer), timerTmpl);
}
DLL_EXPORT void TliTTimeout(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, BinaryString32 timer,
	TciNonValueTemplate timerTmpl)
{
	tliTTimeout(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertBinaryString(timer), timerTmpl);
}
DLL_EXPORT void TliTStart(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, BinaryString32 timer,
	TriTimerDuration dur)
{
	tliTStart(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertBinaryString(timer), dur);
}
DLL_EXPORT void TliTStop(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, BinaryString32 timer,
	TriTimerDuration dur)
{
	tliTStop(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertBinaryString(timer), dur);
}
DLL_EXPORT void TliTRead(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, BinaryString32 timer,
	TriTimerDuration elapsed)
{
	tliTRead(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertBinaryString(timer), elapsed);
}
DLL_EXPORT void TliTRunning(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, BinaryString32 timer,
	int32_t status)
{
	tliTRunning(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), convertBinaryString(timer), (TimerStatus)status);
}
DLL_EXPORT void TliSEnter(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, QualifiedName name,
	TciParameterListType32 tciPars, String kind)
{
	tliSEnter(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), name, convertTciParameterList(tciPars), kind);
}
DLL_EXPORT void TliSLeave(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, QualifiedName name,
	TciParameterListType32 tciPars, Value returnValue, String kind)
{
	tliSLeave(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), name, convertTciParameterList(tciPars), 
		returnValue, kind);
}
DLL_EXPORT void TliVar(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, QualifiedName name,
	Value varValue)
{
	tliVar(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), name, varValue);
}
DLL_EXPORT void TliModulePar(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, QualifiedName name,
	Value parValue)
{
	tliModulePar(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), name, parValue);
}
DLL_EXPORT void TliGetVerdict(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, VerdictValue verdict)
{
	tliGetVerdict(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), verdict);
}
DLL_EXPORT void TliSetVerdict(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, VerdictValue verdict,
	String reason)
{
	tliSetVerdict(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), verdict, reason);
}
DLL_EXPORT void TliLog(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, String log)
{
	tliLog(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), log);
}
DLL_EXPORT void TliAEnter(String am, int64_t ts, String src, int32_t line, TriComponentId32 c)
{
	tliAEnter(am, (int)(ts >> 32), src, (int)line, convertComponentId(c));
}
DLL_EXPORT void TliALeave(String am, int64_t ts, String src, int32_t line, TriComponentId32 c)
{
	tliALeave(am, (int)(ts >> 32), src, (int)line, convertComponentId(c));
}
DLL_EXPORT void TliADefaults(String am, int64_t ts, String src, int32_t line, TriComponentId32 c)
{
	tliADefaults(am, (int)(ts >> 32), src, (int)line, convertComponentId(c));
}
DLL_EXPORT void TliAActivate (String am, int64_t ts, String src, int32_t line, TriComponentId32 c, QualifiedName name,
	TciParameterListType32 tciPars, Value ref)
{
	tliAActivate(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), name, convertTciParameterList(tciPars), ref);
}
DLL_EXPORT void TliADeactivate(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, Value ref)
{
	tliADeactivate(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), ref);
}
DLL_EXPORT void TliANomatch(String am, int64_t ts, String src, int32_t line, TriComponentId32 c)
{
	tliANomatch(am, (int)(ts >> 32), src, (int)line, convertComponentId(c));
}
DLL_EXPORT void TliARepeat(String am, int64_t ts, String src, int32_t line, TriComponentId32 c)
{
	tliARepeat(am, (int)(ts >> 32), src, (int)line, convertComponentId(c));
}
DLL_EXPORT void TliAWait(String am, int64_t ts, String src, int32_t line, TriComponentId32 c)
{
	tliAWait(am, (int)(ts >> 32), src, (int)line, convertComponentId(c));
}
DLL_EXPORT void TliAction(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, String action)
{
	tliAction(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), action);
}
DLL_EXPORT void TliMatch(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, Value expr, TciValueTemplate tmpl)
{
	tliMatch(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), expr, tmpl);
}
DLL_EXPORT void TliMatchMismatch(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, Value expr,
	TciValueTemplate tmpl, TciValueDifferenceList32 diffs)
{
	tliMatchMismatch(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), expr, tmpl, convertDiffList(diffs));
}
DLL_EXPORT void TliInfo(String am, int64_t ts, String src, int32_t line, TriComponentId32 c, int level, String info)
{
	tliInfo(am, (int)(ts >> 32), src, (int)line, convertComponentId(c), level, info);
}

#endif
