1. pragma Ada_2012; 
  2. --  (c) Copyright, Real-Time Innovations, $Date:: 2012-02-16 #$ 
  3. --  All rights reserved. 
  4. -- 
  5. --  No duplications, whole or partial, manual or electronic, may be made 
  6. --  without express written permission.  Any such copies, or 
  7. --  revisions thereof, must display this notice unaltered. 
  8. --  This code contains trade secrets of Real-Time Innovations, Inc. 
  9.  
  10. pragma Ada_2012; 
  11.  
  12. with DDS.StatusCondition; 
  13. with DDS.DomainParticipantListener; 
  14. with DDS.TopicListener; 
  15. with DDS.SubscriberListener; 
  16. with DDS.PublisherListener; 
  17. with DDS.PublisherSeq; 
  18. with DDS.Publisher; 
  19. with DDS.Topic; 
  20. with DDS.Entity; 
  21. with DDS.TopicDescription; 
  22. with DDS.Subscriber; 
  23. with DDS.SubscriberSeq; 
  24. with DDS.ContentFilteredTopic; 
  25. with DDS.MultiTopic; 
  26. limited with DDS.DomainParticipantFactory; 
  27. --  limited with DDS.FlowController; 
  28. with DDS.DataWriter; 
  29. with DDS.DataWriterListener; 
  30. with DDS.DataReader; 
  31. with DDS.DataReaderListener; 
  32. with RTIDDS.Low_Level.ndds_dds_c_dds_c_infrastructure_h; 
  33. --  <dref>DomainParticipant</dref> 
  34. package DDS.DomainParticipant is 
  35.    pragma Elaborate_Body; 
  36.    TOPIC_QOS_DEFAULT : aliased  constant TopicQos with 
  37.      Convention => Ada, 
  38.      Import, 
  39.      Link_Name => "DDS__DomainParticipant__TOPIC_QOS_DEFAULT"; 
  40.    --  <dref>TOPIC_QOS_DEFAULT</dref> 
  41.  
  42.    PUBLISHER_QOS_DEFAULT : aliased  constant PublisherQos with 
  43.      Convention => Ada, 
  44.      Import, 
  45.      Link_Name => "DDS__DomainParticipant__PUBLISHER_QOS_DEFAULT"; 
  46.    --  <dref>PUBLISHER_QOS_DEFAULT</dref> 
  47.  
  48.    SUBSCRIBER_QOS_DEFAULT : aliased  constant SubscriberQos with 
  49.      Convention => Ada, 
  50.      Import, 
  51.      Link_Name => "DDS__DomainParticipant__SUBSCRIBER_QOS_DEFAULT"; 
  52.    --  <dref>SUBSCRIBER_QOS_DEFAULT</dref> 
  53.  
  54.    FLOW_CONTROLLER_PROPERTY_DEFAULT : aliased  constant FlowControllerProperty_T with 
  55.      Convention => Ada, 
  56.      Import, 
  57.      Link_Name => "DDS__DomainParticipant__FLOW_CONTROLLER_PROPERTY_DEFAULT"; 
  58.    --  <dref>FLOW_CONTROLLER_PROPERTY_DEFAULT</dref> 
  59.  
  60.    type Ref is limited interface and DDS.Entity.Ref; 
  61.    type Ref_Access is access all Ref'Class; 
  62.  
  63.    --  Re-Implement From DDS.DomainEntity 
  64.  
  65.    procedure Enable (Self : not null access Ref) is abstract; 
  66.  
  67.    function Get_StatusCondition (Self : not null access Ref) return 
  68.      DDS.StatusCondition.Ref_Access is abstract; 
  69.  
  70.    function Get_Status_Changes (Self : not null access Ref) return 
  71.      DDS.StatusMask is abstract; 
  72.  
  73.    function Get_Instance_Handle (Self : not null access Ref) return 
  74.      DDS.InstanceHandle_T is abstract; 
  75.  
  76.    function Get_Entity_Kind (Self : not null access Ref) return 
  77.      DDS.EntityKind_T is abstract; 
  78.  
  79.    -- 
  80.  
  81.    function Create_Publisher 
  82.      (Self       : not null access Ref; 
  83.       Qos        : in DDS.PublisherQos := PUBLISHER_QOS_DEFAULT; 
  84.       A_Listener : in DDS.PublisherListener.Ref_Access := null; 
  85.       Mask       : in DDS.StatusMask := STATUS_MASK_NONE) 
  86.      return DDS.Publisher.Ref_Access is abstract; 
  87.    --  <dref>DomainParticipant_create_publisher</dref> 
  88.  
  89.    function Create_Publisher_With_Profile 
  90.      (Self         : not null access Ref; 
  91.       Library_Name : in DDS.String; 
  92.       profile_name : in DDS.String; 
  93.       A_Listener : in DDS.PublisherListener.Ref_Access := null; 
  94.       Mask       : in DDS.StatusMask := STATUS_MASK_NONE) 
  95.      return DDS.Publisher.Ref_Access is abstract; 
  96.    function Create_Publisher_With_Profile 
  97.      (Self         : not null access Ref; 
  98.       Library_Name : in Standard.String; 
  99.       profile_name : in Standard.String; 
  100.       A_Listener : in DDS.PublisherListener.Ref_Access := null; 
  101.       Mask       : in DDS.StatusMask := STATUS_MASK_NONE) 
  102.      return DDS.Publisher.Ref_Access is abstract; 
  103.    --  <dref>DomainParticipant_create_publisher_with_profile</dref> 
  104.  
  105.  
  106.    procedure Delete_Publisher 
  107.      (Self      : not null access Ref; 
  108.       Publisher : in out DDS.Publisher.Ref_Access) is abstract; 
  109.    --  <dref>DomainParticipant_delete_publisher</dref> 
  110.  
  111.  
  112.    function Create_Subscriber 
  113.      (Self       : not null access Ref; 
  114.       Qos        : in DDS.SubscriberQos := SUBSCRIBER_QOS_DEFAULT; 
  115.       A_Listener : in DDS.SubscriberListener.Ref_Access  := null; 
  116.       Mask       : in DDS.StatusMask := STATUS_MASK_NONE) 
  117.      return DDS.Subscriber.Ref_Access is abstract; 
  118.    --  <dref>DomainParticipant_create_subscriber</dref> 
  119.  
  120.    function Create_Subscriber_With_Profile 
  121.      (Self         : not null access Ref; 
  122.       Library_Name : in DDS.String; 
  123.       profile_name : in DDS.String; 
  124.       A_Listener   : in DDS.SubscriberListener.Ref_Access  := null; 
  125.       Mask         : in DDS.StatusMask := STATUS_MASK_NONE) 
  126.      return DDS.Subscriber.Ref_Access is abstract; 
  127.    function Create_Subscriber_With_Profile 
  128.      (Self         : not null access Ref; 
  129.       Library_Name : in Standard.String; 
  130.       profile_name : in Standard.String; 
  131.       A_Listener   : in DDS.SubscriberListener.Ref_Access  := null; 
  132.       Mask         : in DDS.StatusMask := STATUS_MASK_NONE) 
  133.      return DDS.Subscriber.Ref_Access is abstract; 
  134.    --  <dref>DomainParticipant_create_subscriber_with_profile</dref> 
  135.  
  136.  
  137.    procedure Delete_Subscriber 
  138.      (Self :  not null access Ref; 
  139.       S    :  in out DDS.Subscriber.Ref_Access) is abstract; 
  140.    --  <dref>DomainParticipant_delete_subscriber</dref> 
  141.  
  142.  
  143.    function Create_DataWriter 
  144.      (Self       : not null access Ref; 
  145.       A_Topic    : in DDS.Topic.Ref_Access; 
  146.       Qos        : in DDS.DataWriterQos := DDS.Publisher.DATAWRITER_QOS_DEFAULT; 
  147.       A_Listener : in DDS.DataWriterListener.Ref_Access := null; 
  148.       Mask       : in DDS.StatusMask := STATUS_MASK_NONE) 
  149.       return DDS.DataWriter.Ref_Access is abstract; 
  150.    --  <dref>DomainParticipant_create_datawriter</dref> 
  151.  
  152.    function Create_DataWriter_With_Profile 
  153.      (Self         : not null access Ref; 
  154.       A_Topic      : in DDS.Topic.Ref_Access; 
  155.       Library_Name : in DDS.String; 
  156.       profile_name : in DDS.String; 
  157.       A_Listener   : in DDS.DataWriterListener.Ref_Access := null; 
  158.       Mask         : in DDS.StatusMask := STATUS_MASK_NONE) 
  159.       return DDS.DataWriter.Ref_Access is abstract; 
  160.    function Create_DataWriter_With_Profile 
  161.      (Self         : not null access Ref; 
  162.       A_Topic      : in DDS.Topic.Ref_Access; 
  163.       Library_Name : in Standard.String; 
  164.       profile_name : in Standard.String; 
  165.       A_Listener   : in DDS.DataWriterListener.Ref_Access := null; 
  166.       Mask         : in DDS.StatusMask := STATUS_MASK_NONE) 
  167.       return DDS.DataWriter.Ref_Access is abstract; 
  168.    --  <dref>DomainParticipant_create_datawriter_with_profile</dref> 
  169.  
  170.  
  171.    procedure Delete_DataWriter 
  172.      (Self         : not null access Ref; 
  173.       A_DataWriter : in out DDS.DataWriter.Ref_Access) is abstract; 
  174.    --  <dref>DomainParticipant_delete_datawriter</dref> 
  175.  
  176.  
  177.    function Create_DataReader 
  178.      (Self       : not null access Ref; 
  179.       Topic      : not null access DDS.TopicDescription.Ref'Class; 
  180.       Qos        : in DDS.DataReaderQoS := DDS.Subscriber.DATAREADER_QOS_DEFAULT; 
  181.       A_Listener : in DDS.DataReaderListener.Ref_Access := null; 
  182.       Mask       : in DDS.StatusMask := STATUS_MASK_NONE) 
  183.       return DDS.DataReader.Ref_Access is abstract; 
  184.    --  <dref>DomainParticipant_create_datareader</dref> 
  185.  
  186.    function Create_DataReader_With_Profile 
  187.      (Self         : not null access Ref; 
  188.       Topic        : not null access DDS.TopicDescription.Ref'Class; 
  189.       Library_Name : in DDS.String; 
  190.       profile_name : in DDS.String; 
  191.       A_Listener   : in DDS.DataReaderListener.Ref_Access := null; 
  192.       Mask         : in DDS.StatusMask := STATUS_MASK_NONE) 
  193.       return DDS.DataReader.Ref_Access is abstract; 
  194.    --  <dref>DomainParticipant_create_datareader_with_profile</dref> 
  195.  
  196.  
  197.    procedure Delete_DataReader 
  198.      (Self         : not null access Ref; 
  199.       A_DataReader : in out DDS.DataReader.Ref_Access) is abstract; 
  200.    --  <dref>DomainParticipant_delete_datareader</dref> 
  201.  
  202.  
  203.    function Get_Builtin_Subscriber 
  204.      (Self :  not null access Ref) 
  205.       return DDS.Subscriber.Ref_Access is abstract; 
  206.    --  <dref>DomainParticipant_get_builtin_subscriber</dref> 
  207.  
  208.    function Get_Implicit_Publisher 
  209.      (Self :  not null access Ref) 
  210.       return DDS.Publisher.Ref_Access is abstract; 
  211.    --  <dref>DomainParticipant_get_implicit_publisher</dref> 
  212.  
  213.    function Get_Implicit_Subscriber 
  214.      (Self :  not null access Ref) 
  215.       return DDS.Subscriber.Ref_Access is abstract; 
  216.    --  <dref>DomainParticipant_get_implicit_subscriber</dref> 
  217.    --  <dref>Shared_implicit_subscriber_mt_safety</dref> 
  218.  
  219.  
  220.    function Create_Topic 
  221.      (Self       : not null access Ref; 
  222.       Topic_Name : in DDS.String; 
  223.       Type_Name  : in DDS.String; 
  224.       Qos        : in DDS.TopicQos := TOPIC_QOS_DEFAULT; 
  225.       A_Listener : in DDS.TopicListener.Ref_Access := null; 
  226.       Mask       : in DDS.StatusMask := STATUS_MASK_NONE) 
  227.      return DDS.Topic.Ref_Access is abstract; 
  228.    --  <dref>DomainParticipant_create_topic</dref> 
  229.  
  230.    function Create_Topic_With_Profile 
  231.      (Self         : not null access Ref; 
  232.       Topic_Name   : in DDS.String; 
  233.       Type_Name    : in DDS.String; 
  234.       Library_Name : in DDS.String; 
  235.       profile_name : in DDS.String; 
  236.       A_Listener   : in DDS.TopicListener.Ref_Access := null; 
  237.       Mask         : in DDS.StatusMask := STATUS_MASK_NONE) 
  238.       return DDS.Topic.Ref_Access is abstract; 
  239.    function Create_Topic_With_Profile 
  240.      (Self         : not null access Ref; 
  241.       Topic_Name   : in DDS.String; 
  242.       Type_Name    : in DDS.String; 
  243.       Library_Name : in Standard.String; 
  244.       profile_name : in Standard.String; 
  245.       A_Listener   : in DDS.TopicListener.Ref_Access := null; 
  246.       Mask         : in DDS.StatusMask := STATUS_MASK_NONE) 
  247.       return DDS.Topic.Ref_Access is abstract; 
  248.    --  <dref>DomainParticipant_create_topic_with_profile</dref> 
  249.  
  250.    function  Get_Or_Create_Topic 
  251.      (Self       : not null access Ref; 
  252.       Topic_Name : in DDS.String; 
  253.       Type_Name  : in DDS.String; 
  254.       Qos        : in DDS.TopicQos := DDS.DomainParticipant.TOPIC_QOS_DEFAULT; 
  255.       A_Listener : in DDS.TopicListener.Ref_Access := null; 
  256.       Mask       : in DDS.StatusMask := STATUS_MASK_NONE) return  DDS.Topic.Ref_Access is abstract; 
  257.  
  258.    function  Get_Or_Create_Topic_With_Profile 
  259.      (Self         : not null access Ref; 
  260.       Topic_Name   : in DDS.String; 
  261.       Type_Name    : in DDS.String; 
  262.       Library_Name : in DDS.String; 
  263.       Profile_Name : in DDS.String; 
  264.       A_Listener   : in DDS.TopicListener.Ref_Access := null; 
  265.       Mask         : in DDS.StatusMask := STATUS_MASK_NONE) return DDS.Topic.Ref_Access  is abstract; 
  266. --     function Create_FlowController 
  267. --       (Self         : not null access Ref; 
  268. --        name         : DDS.String; 
  269. --        prop         : access DDS.FlowControllerProperty_T) 
  270. --        return access DDS.FlowController.Ref'Class is abstract; 
  271.  
  272.    procedure Delete_Topic 
  273.      (Self    : not null access Ref; 
  274.       A_Topic : in out DDS.Topic.Ref_Access) is abstract; 
  275.    --  <dref>DomainParticipant_delete_topic</dref> 
  276.  
  277.  
  278.    function Find_Topic 
  279.      (Self       : not null access Ref; 
  280.       Topic_Name : in DDS.String; 
  281.       Timeout    : in DDS.Duration_T) 
  282.      return DDS.Topic.Ref_Access is abstract; 
  283.    --  <dref>DomainParticipant_find_topic</dref> 
  284.  
  285.  
  286.    function Lookup_Topicdescription 
  287.      (Self : not null access Ref; 
  288.       Name : in DDS.String) 
  289.      return DDS.TopicDescription.Ref_Access is abstract; 
  290.    --  <dref>DomainParticipant_lookup_topicdescription</dref> 
  291.  
  292.  
  293.    function Create_Contentfilteredtopic 
  294.      (Self                  : not null access Ref; 
  295.       Name                  : in DDS.String; 
  296.       Related_Topic         : in DDS.Topic.Ref_Access; 
  297.       Filter_Expression     : in DDS.String; 
  298.       Expression_Parameters : access DDS.String_Seq.Sequence) 
  299.      return DDS.ContentFilteredTopic.Ref_Access is abstract; 
  300.    --  <dref>DomainParticipant_create_contentfilteredtopic</dref> 
  301.  
  302.    procedure Delete_Contentfilteredtopic 
  303.      (Self                   : not null access Ref; 
  304.       A_Contentfilteredtopic : in out DDS.ContentFilteredTopic.Ref_Access) is abstract; 
  305.    --  <dref>DomainParticipant_delete_contentfilteredtopic</dref> 
  306.  
  307.    function Create_MultiTopic 
  308.      (Self                    : not null access Ref; 
  309.       Name                    : in DDS.String; 
  310.       Type_Name               : in DDS.String; 
  311.       Subscription_Expression : in DDS.String; 
  312.       Expression_Parameters   : access DDS.String_Seq.Sequence) 
  313.       return DDS.MultiTopic.Ref_Access is abstract; 
  314.    --  <dref>DomainParticipant_create_multitopic</dref> 
  315.  
  316.    procedure Delete_MultiTopic 
  317.      (Self     : not null access Ref; 
  318.       MTopic  : in out DDS.MultiTopic.Ref_Access) is abstract; 
  319.    --  <dref>DomainParticipant_delete_multitopic</dref> 
  320.  
  321.    procedure Delete_Contained_Entities 
  322.      (Self :  not null access Ref) is abstract; 
  323.    --  <dref>DomainParticipant_delete_contained_entities</dref> 
  324.  
  325.  
  326.    procedure Set_Qos 
  327.      (Self : not null access Ref; 
  328.       Qos  : in DDS.DomainParticipantQos) is abstract; 
  329.    --  <dref>DomainParticipant_set_qos</dref> 
  330.  
  331.  
  332.    procedure Set_Qos_With_Profile 
  333.      (Self          : not null access Ref; 
  334.       library_name  : in String; 
  335.       profile_name  : in String) is abstract; 
  336.    procedure Set_Qos_With_Profile 
  337.      (Self          : not null access Ref; 
  338.       library_name  : in Standard.String; 
  339.       profile_name  : in Standard.String) is abstract; 
  340.    --  <dref>DomainParticipant_set_qos_with_profile</dref> 
  341.  
  342.    procedure Get_Qos 
  343.      (Self : not null access Ref; 
  344.       Qos  : in out DDS.DomainParticipantQos) is abstract; 
  345.    --  <dref>DomainParticipant_get_qos</dref> 
  346.  
  347.    procedure Set_Listener 
  348.      (Self       : not null access Ref; 
  349.       A_Listener : DDS.DomainParticipantListener.Ref_Access; 
  350.       Mask       : in DDS.StatusMask) is abstract; 
  351.    --  <dref>DomainParticipant_set_listener</dref> 
  352.  
  353.    function Get_Listener 
  354.      (Self :  not null access Ref) 
  355.      return DDS.DomainParticipantListener.Ref_Access is abstract; 
  356.    --  <dref>DomainParticipant_get_listener</dref> 
  357.  
  358.    procedure Ignore_Participant 
  359.      (Self   : not null access Ref; 
  360.       Handle : in DDS.InstanceHandle_T) is abstract; 
  361.    --  <dref>DomainParticipant_ignore_participant</dref> 
  362.    --  <dref>Shared_ignore_participant</dref> 
  363.  
  364.    procedure Ignore_Topic 
  365.      (Self   : not null access Ref; 
  366.       Handle : in DDS.InstanceHandle_T) is abstract; 
  367.    --  <dref>DomainParticipant_ignore_topic</dref> 
  368.  
  369.    procedure Ignore_Publication 
  370.      (Self   : not null access Ref; 
  371.       Handle : in DDS.InstanceHandle_T) is abstract; 
  372.    --  <dref>DomainParticipant_ignore_publication</dref> 
  373.  
  374.    procedure Ignore_Subscription 
  375.      (Self   : not null access Ref; 
  376.       Handle : in DDS.InstanceHandle_T) is abstract; 
  377.    --  <dref>DomainParticipant_ignore_subscription</dref> 
  378.  
  379.    function Get_Domain_Id 
  380.      (Self : not null access Ref) 
  381.      return DDS.DomainId_T is abstract; 
  382.    --  <dref>DomainParticipant_get_domain_id</dref> 
  383.    --  <dref>Shared_domain_id_description</dref> 
  384.  
  385.    function Get_Factory 
  386.      (Self :  not null access Ref) 
  387.       return not null access DDS.DomainParticipantFactory.Ref is abstract; 
  388.  
  389.    procedure Assert_Liveliness 
  390.      (Self : not null access Ref) is abstract; 
  391.    --  <dref>DomainParticipant_assert_liveliness</dref> 
  392.    --  <dref>Shared_liveliness</dref> 
  393.  
  394.    procedure Set_Default_DataReader_Qos 
  395.      (Self : not null access Ref; 
  396.       Qos  : in DDS.DataReaderQoS) is abstract; 
  397.    --  <dref>DomainParticipant_set_default_datareader_qos</dref> 
  398.    --  <dref>Shared_set_default_datareader_qos</dref> 
  399.  
  400.    procedure Set_Default_DataReader_Qos_With_Profile 
  401.      (Self     : not null access Ref; 
  402.       libName  : DDS.String; 
  403.       profName : DDS.String) is abstract; 
  404.    procedure Set_Default_DataReader_Qos_With_Profile 
  405.      (Self     : not null access Ref; 
  406.       libName  : Standard.String; 
  407.       profName : Standard.String) is abstract; 
  408.    --  <dref>DomainParticipant_set_default_datareader_qos_with_profile</dref> 
  409.  
  410.    procedure Set_Default_DataWriter_Qos 
  411.      (Self : not null access Ref; 
  412.       Qos  : in DDS.DataWriterQoS) is abstract; 
  413.    --  <dref>DomainParticipant_set_default_datawriter_qos</dref> 
  414.    --  <dref>Shared_set_default_datawriter_qos</dref> 
  415.  
  416.    procedure Set_Default_DataWriter_Qos_With_Profile 
  417.      (Self     : not null access Ref; 
  418.       libName  : DDS.String; 
  419.       profName : DDS.String) is abstract; 
  420.    procedure Set_Default_DataWriter_Qos_With_Profile 
  421.      (Self     : not null access Ref; 
  422.       libName  : Standard.String; 
  423.       profName : Standard.String) is abstract; 
  424.    --  <dref>DomainParticipant_set_default_datawriter_qos_with_profile</dref> 
  425.  
  426.    procedure Set_Default_Publisher_Qos 
  427.      (Self : not null access Ref; 
  428.       Qos  : in DDS.PublisherQos) is abstract; 
  429.    --  <dref>DomainParticipant_set_default_publisher_qos</dref> 
  430.    --  <dref>Shared_set_default_publisher_qos</dref> 
  431.  
  432.    procedure Set_Default_Publisher_Qos_With_Profile 
  433.      (Self     : not null access Ref; 
  434.       libName  : DDS.String; 
  435.       profName : DDS.String) is abstract; 
  436.    procedure Set_Default_Publisher_Qos_With_Profile 
  437.      (Self     : not null access Ref; 
  438.       libName  : Standard.String; 
  439.       profName : Standard.String) is abstract; 
  440.    --  <dref>DomainParticipant_set_default_publisher_qos_with_profile</dref> 
  441.  
  442.    procedure Get_Default_Publisher_Qos 
  443.      (Self : not null access Ref; 
  444.       Qos  : in out DDS.PublisherQos) is abstract; 
  445.    --  <dref>DomainParticipant_get_default_publisher_qos</dref> 
  446.    --  <dref>Shared_get_default_publisher_qos_mtsafety</dref> 
  447.  
  448.    procedure Set_Default_Subscriber_Qos 
  449.      (Self : not null access Ref; 
  450.       Qos  : in DDS.SubscriberQos) is abstract; 
  451.    --  <dref>DomainParticipant_set_default_subscriber_qos</dref> 
  452.  
  453.    procedure Set_Default_Subscriber_Qos_With_Profile 
  454.      (Self : not null access Ref; 
  455.       libraryName : DDS.String; 
  456.       profileName : DDS.String) is abstract; 
  457.    procedure Set_Default_Subscriber_Qos_With_Profile 
  458.      (Self : not null access Ref; 
  459.       libraryName : Standard.String; 
  460.       profileName : Standard.String) is abstract; 
  461.    --  <dref>DomainParticipant_set_default_subscriber_qos_with_profile</dref> 
  462.  
  463.    procedure Get_Default_Subscriber_Qos 
  464.      (Self : not null access Ref; 
  465.       Qos  : in out DDS.SubscriberQos) is abstract; 
  466.    --  <dref>DomainParticipant_get_default_subscriber_qos</dref> 
  467.  
  468.    procedure Get_Default_DataReader_Qos 
  469.      (Self : not null access Ref; 
  470.       Qos  : in out DDS.DataReaderQoS) is abstract; 
  471.    --  <dref>DomainParticipant_get_default_datareader_qos</dref> 
  472.    --  <dref>Shared_get_default_datareader_qos_mtsafety</dref> 
  473.  
  474.    procedure Get_Default_DataWriter_Qos 
  475.      (Self : not null access Ref; 
  476.       Qos  : in out DDS.DataWriterQos) is abstract; 
  477.    --  <dref>DomainParticipant_get_default_datawriter_qos</dref> 
  478.    --  <dref>Shared_get_default_datawriter_qos_mtsafety</dref> 
  479.  
  480.    procedure Set_Default_Topic_Qos 
  481.      (Self : not null access Ref; 
  482.       Qos  : in DDS.TopicQos) is abstract; 
  483.    --  <dref>DomainParticipant_set_default_topic_qos</dref> 
  484.    --  <dref>Shared_set_default_topic_qos</dref> 
  485.  
  486.    procedure Set_Default_Topic_Qos_With_Profile 
  487.      (Self        : not null access Ref; 
  488.       libraryName : DDS.String; 
  489.       profileName : DDS.String) is abstract; 
  490.    procedure Set_Default_Topic_Qos_With_Profile 
  491.      (Self        : not null access Ref; 
  492.       libraryName : Standard.String; 
  493.       profileName : Standard.String) is abstract; 
  494.    --  <dref>DomainParticipant_set_default_topic_qos_with_profile</dref> 
  495.  
  496.    procedure Get_Default_Topic_Qos 
  497.      (Self : not null access Ref; 
  498.       Qos  : in out DDS.TopicQos) is abstract; 
  499.    --  <dref>DomainParticipant_get_default_topic_qos</dref> 
  500.    --  <dref>Shared_get_default_topic_qos_mtsafety</dref> 
  501.  
  502.    procedure Set_Default_Profile 
  503.      (Self          : not null access Ref; 
  504.       library_name  : DDS.String; 
  505.       profile_name  : DDS.String) is abstract; 
  506.    --  <dref>DomainParticipant_set_default_profile</dref> 
  507.  
  508.    procedure Set_Default_Library 
  509.      (Self          : not null access Ref; 
  510.       library_name   : DDS.String) is abstract; 
  511.    --  <dref>DomainParticipant_set_default_library</dref> 
  512.  
  513.    function Get_Default_Library 
  514.      (Self : not null access Ref) 
  515.       return DDS.String is abstract; 
  516.    --  <dref>DomainParticipant_get_default_library</dref> 
  517.  
  518.    function Get_Default_Profile 
  519.      (Self : not null access Ref) 
  520.       return DDS.String is abstract; 
  521.    --  <dref>DomainParticipant_get_default_profile</dref> 
  522.  
  523.    function Get_Default_Profile_Library 
  524.      (Self : not null access Ref) 
  525.       return DDS.String is abstract; 
  526.    --  <dref>DomainParticipant_get_default_profile_library</dref> 
  527.  
  528.    procedure Get_Default_Flowcontroller_Property 
  529.      (Self : not null access Ref; 
  530.       Property : in out DDS.FlowControllerProperty_T) is abstract; 
  531.    --  <dref>DomainParticipant_get_default_flowcontroller_property</dref> 
  532.  
  533.    procedure Set_Default_Flowcontroller_Property 
  534.      (Self : not null access Ref; 
  535.       Property : in DDS.FlowControllerProperty_T) is abstract; 
  536.    --  <dref>DomainParticipant_set_default_flowcontroller_property</dref> 
  537.  
  538.    function Get_Discovered_Participants 
  539.      (Self                :  access Ref) 
  540.      return DDS.InstanceHandle_Seq.Sequence is abstract; 
  541.    --  <dref>DomainParticipant_get_discovered_participants</dref> 
  542.  
  543.    function Get_Discovered_Participant_Data 
  544.      (Self : not null access Ref; 
  545.       Participant_Handle : in DDS.InstanceHandle_T) 
  546.      return DDS.ParticipantBuiltinTopicData is abstract; 
  547.    --  <dref>DomainParticipant_get_discovered_participant_data</dref> 
  548.  
  549.    function Get_Discovered_Topics 
  550.      (Self :  access Ref) 
  551.      return DDS.InstanceHandle_Seq.Sequence is abstract; 
  552.    --  <dref>DomainParticipant_get_discovered_topics</dref> 
  553.  
  554.    function Get_Discovered_Topic_Data 
  555.      (Self : not null access Ref; 
  556.       Topic_Handle : in DDS.InstanceHandle_T) 
  557.       return DDS.TopicBuiltinTopicData is abstract; 
  558.    --  <dref>DomainParticipant_get_discovered_topic_data</dref> 
  559.  
  560.    function Contains_Entity 
  561.      (Self : not null access Ref; 
  562.       A_Handle : in DDS.InstanceHandle_T) 
  563.      return Boolean is abstract; 
  564.    --  <dref>DomainParticipant_contains_entity</dref> 
  565.  
  566.    function Get_Current_Time 
  567.      (Self : not null access Ref) 
  568.       return DDS.Time_T is abstract; 
  569.    --  <dref>DomainParticipant_get_current_time</dref> 
  570.  
  571.    procedure Add_Peer 
  572.      (Self             : not null access Ref; 
  573.       peer_desc_string : DDS.String) is abstract; 
  574.    --  <dref>DomainParticipant_add_peer</dref> 
  575.    --  <dref>Shared_add_peer</dref> 
  576.  
  577.    procedure Get_Publishers 
  578.      (Self : not null access Ref; 
  579.       publishers : access DDS.PublisherSeq.Sequence) is abstract; 
  580.    --  <dref>DomainParticipant_get_publishers</dref> 
  581.  
  582.    procedure Get_Subscribers 
  583.      (Self        : not null access Ref; 
  584.       subscribers : access DDS.SubscriberSeq.Sequence) is abstract; 
  585.    --  <dref>DomainParticipant_get_publishers</dref> 
  586.  
  587.  
  588.    --  Implementation 
  589.  
  590. end DDS.DomainParticipant;