1. --  (c) Copyright, Real-Time Innovations, $Date:: 2012-02-16 #$ 
  2. --  All rights reserved. 
  3. -- 
  4. --  No duplications, whole or partial, manual or electronic, may be made 
  5. --  without express written permission.  Any such copies, or 
  6. --  revisions thereof, must display this notice unaltered. 
  7. --  This code contains trade secrets of Real-Time Innovations, Inc. 
  8.  
  9. pragma Ada_05; 
  10.  
  11. with DDS.Entity; 
  12. with DDS.Domain_Entity; 
  13. with DDS.TopicListener; 
  14. with DDS.TopicDescription; 
  15. limited with DDS.DomainParticipant; 
  16.  
  17. --  <module name="DDSBuiltInTypesModule" actualName="Built-in Types">builtintypes</module> 
  18. --  <dref>Topic</dref> 
  19. package DDS.Topic is 
  20.  
  21.    type Ref is limited interface and DDS.Domain_Entity.Ref; 
  22.    type Ref_Access is access all Ref'Class; 
  23.  
  24.    procedure Set_Qos 
  25.      (Self : not null access Ref; 
  26.       Qos  : in DDS.TopicQos) is abstract; 
  27.    --  <dref>Topic_set_qos</dref> 
  28.  
  29.    procedure Set_Qos_With_Profile 
  30.      (Self : not null access Ref; 
  31.       library_name  : in String; 
  32.       profile_name  : in String) is abstract; 
  33.    procedure Set_Qos_With_Profile 
  34.      (Self : not null access Ref; 
  35.       library_name  : in Standard.String; 
  36.       profile_name  : in Standard.String) is abstract; 
  37.    --  <dref>Topic_set_qos_with_profile</dref> 
  38.  
  39.    procedure Get_Qos 
  40.      (Self : not null access Ref; 
  41.       Qos  : in out DDS.TopicQos) is abstract; 
  42.    --  <dref>Topic_get_qos</dref> 
  43.  
  44.    procedure Set_Listener 
  45.      (Self       : not null access Ref; 
  46.       A_Listener : in DDS.TopicListener.Ref_Access; 
  47.       Mask       : in DDS.StatusMask) is abstract; 
  48.    --  <dref>Topic_set_listener</dref> 
  49.  
  50.    function Get_Listener 
  51.      (Self : not null access Ref) 
  52.       return DDS.TopicListener.Ref_Access is abstract; 
  53.    --  <dref>Topic_get_listener</dref> 
  54.  
  55.    procedure Get_Inconsistent_Topic_Status 
  56.      (Self   : not null access Ref; 
  57.       Status : in out DDS.InconsistentTopicStatus) is abstract; 
  58.    --  <dref>Topic_get_inconsistent_topic_status</dref> 
  59.  
  60.    --  --------------------- 
  61.    --  from TopicDescription 
  62.    --  --------------------- 
  63.  
  64.    function Get_Type_Name 
  65.      (Self : not null access Ref) 
  66.       return DDS.String is abstract; 
  67.  
  68.    function Get_Name 
  69.      (Self : not null access Ref) 
  70.       return DDS.String is abstract; 
  71.  
  72.    function Get_Participant 
  73.      (Self : not null access Ref) 
  74.      return access DDS.DomainParticipant.Ref'Class is abstract; 
  75.  
  76.    function As_TopicDescription 
  77.      (Self : not null access Ref) 
  78.       return DDS.TopicDescription.Ref_Access is abstract; 
  79.    --  <dref>Topic_as_topicdescription</dref> 
  80.  
  81.    function Narrow (Self : not null access DDS.TopicDescription.Ref'Class) 
  82.                     return Ref_Access; 
  83.    --  <dref>Topic_narrow</dref> 
  84.  
  85.    function To_Topic (Self : not null access DDS.TopicDescription.Ref'Class) 
  86.                     return Ref_Access; 
  87.    --  <dref>Topic_narrow</dref> 
  88.  
  89.    function Narrow_From_Entity (Self : not null access DDS.Entity.Ref'Class) 
  90.                                 return Ref_Access; 
  91.    --  <dref>Topic_narrow_from_entity</dref> 
  92.  
  93. end DDS.Topic;