summaryrefslogtreecommitdiff
path: root/modules/CIAO/connectors/dds4ccm/examples/Quoter/Connector/Quoter_Connector.idl3
blob: 33a63f2a711a4abc3c89af48d314ebe456868b38 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
// $Id$

/**
 * @file Quoter_Connector.idl3
 * @author William R. Otte <wotte@dre.vanderbilt.edu>
 *
 * by-hand translation of the idl3p.
 */

#ifndef QUOTER_CONNECTOR_IDL3_
#define QUOTER_CONNECTOR_IDL3_

#include  <Components.idl>
#include "dds4ccm/idl/dds4ccm_ListenerControl.idl3"
#include "dds4ccm/idl/dds4ccm_ListenerControlE.idl"
#include "dds4ccm/idl/dds4ccm_PortStatusListener.idl3"
#include "dds4ccm/idl/dds4ccm_PortStatusListenerE.idl"
#include "dds4ccm/idl/dds4ccm_ConnectorStatusListener.idl3"
#include "dds4ccm/idl/dds4ccm_ListenerControl.idl3"
#include "dds4ccm/idl/dds_rtf2_dcpsE.idl"
#include "Base/Quoter_Base.idl"

module CCM_DDS
{
  // @from DDS_Write for Quoter::Stock_Info
  interface Stock_Info_Writer
  {
    void write (in Quoter::Stock_Info an_instance)
      raises (InternalError);
  };

  // @from Reader<T> from DDS_RawListen for Quoter::Stock_Info
  interface Stock_Info_Reader
  {
    void read_all (out Quoter::Stock_Info_Seq instances, out ReadInfoSeq infos)
      raises (InternalError);

    void read_all_history (out Quoter::Stock_Info_Seq instances, out ReadInfoSeq infos)
      raises (InternalError);

    void read_one (inout Quoter::Stock_Info an_instance, out ReadInfo info)
      raises (NonExistent,
              InternalError);

    void read_one_history (in Quoter::Stock_Info an_instance,
                           out Quoter::Stock_Info_Seq instances, out ReadInfoSeq infos)
      raises (NonExistent,
              InternalError);

    attribute QueryFilter filter
      setraises (BadParameter);
  };

  // @from RawListener for Quoter::Stock_Info
  interface Stock_Info_RawListener
  {
    void on_data (in Quoter::Stock_Info an_instance, in ReadInfo info);
  };
};

module Quoter
{
  component Quoter_Connector //: CCM_DDS::DDS_TopicBase
  {
    // @from DDS_TopicBase
    attribute string topic_name;
    attribute DDS::StringSeq key_fields;

    // @from DDS_TopicBase : DDS_Base
    uses CCM_DDS::ConnectorStatusListener error_listener;
    attribute DDS::DomainId_t domain_id;
    attribute string qos_profile;

    // @from DDS_Write for Stock_Info
    provides CCM_DDS::Stock_Info_Writer info_in_data;
    provides DDS::DataWriter info_in_dds_entity;

    // @from DDS_RawListen for Stock_Info
    provides CCM_DDS::Stock_Info_Reader info_out_data;
    provides CCM_DDS::ListenerControl info_out_control;
    uses CCM_DDS::Stock_Info_RawListener info_out_listener;
    provides DDS::DataReader info_out_dds_entity;
    uses CCM_DDS::PortStatusListener info_out_status;
  };
};

#endif /* QUOTER_CONNECTOR_IDL3_ */