SComplex sComplex; ///< Complex data in the exception
};
/**
* @brief Interface to test the marshalling of variables.
*/
interface IVarTest
{
/**
* @{
* @brief Test signed fixed integral.
*/
void SetFixedInt(in int8 i8Val, in int16 i16Val, in int32 i32Val, in int64 i64Val);
void GetFixedInt(out int8 i8Val, out int16 i16Val, out int32 i32Val, out int64 i64Val) const;
/**
* @}
*/
/**
* @{
* @brief Test unsigned fixed integral.
*/
void SetFixedUInt(in boolean bVal, in native nVal, in uint8 ui8Val, in uint16 ui16Val, in uint32 ui32Val, in uint64 ui64Val);
void GetFixedUInt(out boolean bVal, out native nVal, out uint8 ui8Val, out uint16 ui16Val, out uint32 ui32Val, out uint64 ui64Val) const;
/**
* @}
*/
/**
* @{
* @brief Test character integral.
*/
void SetFixedChar(in char cVal, in wchar cwVal, in char16 c16Val, in char32 c32Val);
void GetFixedChar(out char cVal, out wchar cwVal, out char16 c16Val, out char32 c32Val) const;
/**
* @}
*/
/**
* @{
* @brief Test floating point.
*/
// GCC issue with generated initialization in the consructor for the "long double" type: BUG #3982727
void SetFloatingPoint(in float fVal, in double dVal/*, in long double ldVal*/);
void GetFloatingPoint(out float fVal, out double dVal/*, out long double ldVal*/) const;
/**
* @}
*/
/**
* @{
* @brief Test fixed point.
*/
void SetFixedPoint(in fixed<10, 3> fixVal10, in fixed<8, 2> fixVal8, in fixed<5, 0> fixVal5);
void GetFixedPoint(out fixed<10, 3> fixVal10, out fixed<8, 2> fixVal8, out fixed<5, 0> fixVal5) const;
/**
* @}
*/
/**
* @{
* @brief Test string.
*/
void SetString(in string ssText, in u8string ss8Text, in u16string ss16Text, in u32string ss32Text, in wstring sswText);
void GetString(out string ssText, out u8string ss8Text, out u16string ss16Text, out u32string ss32Text, out wstring sswText) const;
/**
* @}
*/
/**
* @{
* @brief Test fixed size string.
*/
void SetFixedString(in string<10> ssText, in u8string<10> ss8Text, in u16string<10> ss16Text, in u32string<10> ss32Text, in wstring<10> sswText);
void GetFixedString(out string<15> ssText, out u8string<15> ss8Text, out u16string<15> ss16Text, out u32string<15> ss32Text, out wstring<15> sswText) const;
/**
* @}
*/
/**
* @{
* @brief Test sequence.
*/
void SetSequence(in sequence<uint32> seqUInts, in sequence<string> seqTexts, in sequence<sequence<uint32>> seqSequences);
void GetSequence(out sequence<uint32> seqUInts, out sequence<string> seqTexts, out sequence<sequence<uint32>> seqSequences);
/**
* @}
*/
/**
* @{
* @brief Test fixed size sequence.
*/
void SetFixedSequence(in sequence<uint32, 10> seqUInts, in sequence<string, 10> seqTexts, in sequence<sequence<uint32, 10>, 2> seqSequences);
void GetFixedSequence(out sequence<uint32, 7> seqUInts, out sequence<string, 15> seqTexts, out sequence<sequence<uint32, 5>, 3> seqSequences);
/**
* @}
*/
/**
* @{
* @brief Test map.
*/
void SetMap(in map<uint32, uint32> mapUInts, in map<string, string> mapTexts, in map<string, sequence<uint32>> mapSequences);
void GetMap(out map<uint32, uint32> mapUInts, out map<string, string> mapTexts, out map<string, sequence<uint32>> mapSequences);
/**
* @}
*/
/**
* @{
* @brief Test fixed size map.
*/
void SetFixedMap(in map<uint32, uint32, 10> mapUInts, in map<string, string, 10> mapTexts, in map<string, sequence<uint32, 10>, 2> mapSequences);
void GetFixedMap(out map<uint32, uint32, 7> mapUInts, out map<string, string, 15> mapTexts, out map<string, sequence<uint32, 5>, 3> mapSequences);
/**
* @}
*/
/**
* @{
* @brief Test pointer.
*/
void SetPointer(in pointer<uint32> ptrUInts, in pointer<string> ptrTexts, in pointer<sequence<uint32>> ptrSequences);
void GetPointer(out pointer<uint32> ptrUInts, out pointer<string> ptrTexts, out pointer<sequence<uint32>> ptrSequences);
/**
* @}
*/
/**
* @{
* @brief Test fixed size pointer.
*/
void SetFixedPointer(in pointer<uint32, 10> ptrUInts, in pointer<string, 10> ptrTexts, in pointer<sequence<uint32, 10>, 2> ptrSequences);
void GetFixedPointer(out pointer<uint32, 7> ptrUInts, out pointer<string, 15> ptrTexts, out pointer<sequence<uint32, 5>, 3> ptrSequences);
/**
* @}
*/
/**
* @{
* @brief Test any data type.
*/
void SetAny(in any anyMyValue);
void GetAny(out any anyMyValue);
/**
* @}
*/
/**
* @{
* @brief Test complex data type.
*/
void SetComplex(in SComplex rsComplex);
SComplex GetComplex() const;
void UpdateComplex(inout SComplex rsComplex);
/**
* @}
*/
/**
* @{
* @brief Test attributes
*/
attribute boolean bVal;
attribute native nVal;
attribute int8 i8Val;
attribute int16 i16Val;
attribute int32 i32Val;
attribute int64 i64Val;
attribute uint8 ui8Val;
attribute uint16 ui16Val;
attribute uint32 ui32Val;
attribute uint64 ui64Val;
attribute char cVal;
attribute wchar cwVal;
attribute char16 c16Val;
attribute char32 c32Val;
attribute float fVal;
attribute double dVal;
// GCC issue with generated initialization in the consructor for the "long double" type: BUG #3982727