00001 /* 00002 * 00003 * 00004 * Distributed under the OpenDDS License. 00005 * See: http://www.opendds.org/license.html 00006 */ 00007 00008 #ifndef OPENDDS_DCPS_TYPE_SUPPORT_IDL 00009 #define OPENDDS_DCPS_TYPE_SUPPORT_IDL 00010 00011 #include "dds/DdsDcpsTopic.idl" 00012 //x #include "dds/DdsDcpsDataWriterRemote.idl" 00013 #include "dds/DdsDcpsPublication.idl" 00014 //x #include "dds/DdsDcpsDataReaderRemote.idl" 00015 #include "dds/DdsDcpsSubscription.idl" 00016 00017 00018 module OpenDDS { 00019 module DCPS { 00020 00021 local interface TypeSupport : ::DDS::TypeSupport { 00022 00023 /** 00024 * create and activate a FooDataWriter. 00025 * Implemented by FooTypeSupportImpl. 00026 * Publisher::create_datawriter() will set the topic, listener, qos and 00027 * other initialization so the implementation of this method 00028 * is as small and simple as possible. 00029 */ 00030 ::DDS::DataWriter create_datawriter(); 00031 00032 /** 00033 * create and activate a FooDataReader. 00034 * Implemented by FooTypeSupportImpl. 00035 * Subscriber::create_datareader() will set the topic, listener, qos and 00036 * other initialization so the implementation of this method 00037 * is as small and simple as possible. 00038 */ 00039 ::DDS::DataReader create_datareader(); 00040 00041 #ifndef OPENDDS_NO_MULTI_TOPIC 00042 ::DDS::DataReader create_multitopic_datareader(); 00043 #endif 00044 00045 boolean has_dcps_key(); 00046 }; 00047 }; 00048 }; 00049 00050 #endif /* OPENDDS_DCPS_TYPE_SUPPORT_IDL */