OpenDDS中IDL文件的处理命令的使用

OpenDDS处理IDL时,分别将用TAO和OpenDDS的IDL编译器进行处理,处理命令包含opendds_idl、tao_idl、idl2jni等,各自的作用如下

  1. tao_idl,将IDL文件生成C++语言的表示;
  2. opendds_idl,将IDL生成DDS类型指定接口的C++语言的表示;
  3. idl2jni,java本地方法的实现;

以HelloMsg.idl为例

1)tao_idl HelloMsg.idl,执行tao_idl的编译HelloMsg.idl的结果文件,
HelloMsgC.cpp
HelloMsgC.h
HelloMsgC.inl
HelloMsgS.cpp
HelloMsgS.h

#if TAO_MAJOR_VERSION != 2 || TAO_MINOR_VERSION != 3 || TAO_BETA_VERSION != 0
#error This file should be regenerated with TAO_IDL
#endif

#if defined (TAO_EXPORT_MACRO)
#undef TAO_EXPORT_MACRO
#endif
#define TAO_EXPORT_MACRO HelloCommon_Export

namespace Hello
{
  struct HelloMsg;

  typedef
    ::TAO_Var_Var_T<
        HelloMsg
      >
    HelloMsg_var;

  typedef
    ::TAO_Out_T<
        HelloMsg
      >
    HelloMsg_out

猜你喜欢

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