OpenDDS典型idl举例(自定义)

        使用idl文件,定义数据帧、文件帧、数据和文件一体帧(支持多个消息+多个文件)。在实际业务开发时,可以根据需要进行扩展。

1、数据帧idl

完整数据帧(不分帧,最大不超过2G)

module DataFrame
{
    typedef sequence<octet> OctetSeq;
    #pragma DCPS_DATA_TYPE "DataFrame::BigData"
    struct BigData
    {
        string srcNode;                        //源节点
        string msgId;                            //消息唯一Id
        unsigned long length;
        OctetSeq content;

        unsigned long seq;						//序列号<99999999,到达后从心开始
        
        unsigned long beginTime;			    //消息的发送时间
    };
};

2、文件idl

完整文件帧()

module FileFrame
{
	typedef sequence<octet> OctetSeq;

	typedef struct struct_file{
		string name; 			//文件名
		string desc; 			//文件描述
		string ext; 			//文件扩展名
		OctetSeq content; 		//文件内容,二进制方式
        string createTime;
	}FILE;

	typedef sequen

猜你喜欢

转载自blog.csdn.net/pony12/article/details/120387682