diff options
Diffstat (limited to 'modules/CIAO/connectors/dds4ccm/idl/dds4ccm_Base.idl')
-rw-r--r-- | modules/CIAO/connectors/dds4ccm/idl/dds4ccm_Base.idl | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/modules/CIAO/connectors/dds4ccm/idl/dds4ccm_Base.idl b/modules/CIAO/connectors/dds4ccm/idl/dds4ccm_Base.idl new file mode 100644 index 00000000000..0d6a40c3bfd --- /dev/null +++ b/modules/CIAO/connectors/dds4ccm/idl/dds4ccm_Base.idl @@ -0,0 +1,69 @@ +// $Id$ +/** + * @file dds4ccm_Base.idl + * + */ + +#ifndef DDS4CCM_BASE_IDL3 +#define DDS4CCM_BASE_IDL3 + +#include "dds_rtf2_dcps.idl" + +#pragma ciao lem "connectors/dds4ccm/idl/dds4ccm_BaseE.idl" + +module CCM_DDS +{ + typedef unsigned long DataNumber_t; // count or index of data + typedef sequence<DataNumber_t> DataNumberSeq; + const DataNumber_t UNLIMITED = 0; + + enum AccessStatus { + FRESH_INFO, + ALREADY_SEEN + }; + + enum InstanceStatus { + INSTANCE_CREATED, + INSTANCE_FILTERED_IN, + INSTANCE_UPDATED, + INSTANCE_FILTERED_OUT, + INSTANCE_DELETED + }; + + struct ReadInfo { + DDS::InstanceHandle_t instance_handle; + DDS::Time_t source_timestamp; + AccessStatus access_status; + InstanceStatus instance_status; + }; + typedef sequence<ReadInfo> ReadInfoSeq; + + struct QueryFilter { + string query; + ::DDS::StringSeq query_parameters; + }; + + enum ListenerMode { + NOT_ENABLED, + ONE_BY_ONE, + MANY_BY_MANY + }; + + exception AlreadyCreated { + DataNumberSeq indexes; // of the erroneous + }; + + exception NonExistent{ + DataNumberSeq indexes; // of the erroneous + }; + + exception InternalError{ + DDS::ReturnCode_t error_code; + DataNumber_t index; // of the erroneaous + }; + + exception NonChangeable { + }; +}; + +#endif |