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.  
  11. ------------------------------------------------- 
  12. --  This file has been generated automatically 
  13. --  by IDLAC (http://libre.adacore.com/polyorb/) 
  14. -- 
  15. --  Do NOT hand-modify this file, as your 
  16. --  changes will be lost when you re-run the 
  17. --  IDL to Ada compiler. 
  18. ------------------------------------------------- 
  19. pragma Style_Checks ("NM32766"); 
  20. with Ada.Unchecked_Conversion; 
  21.  
  22. with DDS.DataWriter; 
  23. with DDS.Domain_Entity_Impl; 
  24. with DDS.Entity_Impl; 
  25. with DDS.Publisher; 
  26. with DDS.Topic; 
  27. with DDS.DataWriterListener; 
  28. with DDS.MetpTypeSupport; 
  29.  
  30. with System; 
  31. with RTIDDS.Low_Level.ndds_reda_reda_worker_impl_h; 
  32. with RTIDDS.Low_Level.ndds_dds_c_dds_c_publication_h; 
  33.  
  34. package DDS.DataWriter_Impl is 
  35.  
  36.    type Ref is limited new DDS.Domain_Entity_Impl.Ref and DDS.DataWriter.Ref with record 
  37.       null; 
  38.    end record; 
  39.    type Ref_Access is access all Ref'Class; 
  40.  
  41.    -- 
  42.    procedure Set_Qos 
  43.      (Self : not null access Ref; 
  44.       Qos  : in DDS.DataWriterQos); 
  45.  
  46.    procedure  Set_Qos_With_Profile (Self : not null access Ref; 
  47.                        Library_Name : String; 
  48.                        Profile_Name : String); 
  49.    procedure  Set_Qos_With_Profile (Self : not null access Ref; 
  50.                        Library_Name : Standard.String; 
  51.                        Profile_Name : Standard.String); 
  52.  
  53.    procedure Get_Qos 
  54.      (Self : not null access Ref; 
  55.       Qos  : in out DDS.DataWriterQos); 
  56.  
  57.    procedure Set_Listener 
  58.      (Self       : not null access Ref; 
  59.       A_Listener : in DDS.DataWriterListener.Ref_Access; 
  60.       Mask       : in DDS.StatusMask); 
  61.  
  62.    function Get_Listener 
  63.      (Self : not null access Ref) 
  64.      return DDS.DataWriterListener.Ref_Access; 
  65.  
  66.    function Get_Topic 
  67.      (Self : not null access Ref) 
  68.      return DDS.Topic.Ref_Access; 
  69.  
  70.    function Get_Publisher 
  71.      (Self : not null access Ref) 
  72.      return access DDS.Publisher.Ref'Class; 
  73.  
  74.    procedure Wait_For_Acknowledgments 
  75.      (Self     : not null access Ref; 
  76.       Max_Wait : in DDS.Duration_T); 
  77.  
  78.    procedure Wait_For_Asynchronous_Publishing 
  79.      (Self     : not null access Ref; 
  80.       Max_Wait : in DDS.Duration_T); 
  81.  
  82.    procedure Get_Liveliness_Lost_Status 
  83.      (Self   : not null access Ref; 
  84.       Status : in out DDS.LivelinessLostStatus); 
  85.  
  86.    procedure Get_Offered_Deadline_Missed_Status 
  87.      (Self : not null access Ref; 
  88.       Status : in out DDS.OfferedDeadlineMissedStatus); 
  89.  
  90.    procedure Get_Offered_Incompatible_Qos_Status 
  91.      (Self : not null access Ref; 
  92.       Status : in out DDS.OfferedIncompatibleQosStatus); 
  93.  
  94.    procedure Get_Publication_Matched_Status 
  95.      (Self : not null access Ref; 
  96.       Status : in out DDS.PublicationMatchedStatus); 
  97.  
  98.    procedure Assert_Liveliness 
  99.      (Self : not null access Ref); 
  100.  
  101.    function Get_Matched_Subscriptions 
  102.      (Self    : not null access Ref) 
  103.      return DDS.InstanceHandle_Seq.Sequence; 
  104.  
  105.    function Get_Matched_Subscription_Data 
  106.      (Self                : not null access Ref; 
  107.       Subscription_Handle : in DDS.InstanceHandle_T) 
  108.      return DDS.SubscriptionBuiltinTopicData; 
  109.  
  110.    function Get_Matched_Subscription_Locators 
  111.      (Self    : not null access Ref) 
  112.      return DDS.Locator_Seq.Sequence; 
  113.  
  114.    procedure Free (This : in out Ref_Access); 
  115.  
  116.  
  117.  
  118.    function CreateI (Publisher    : DDS.Publisher.Ref_Access; 
  119.                      Topic      : access DDS.Topic.Ref'Class; 
  120.                      Qos          : in DDS.DataWriterQos; 
  121.                      Listener   : in DDS.DataWriterListener.Ref_Access; 
  122.                      Mask         : in DDS.StatusMask) 
  123.                      return DDS.DataWriter.Ref_Access; 
  124.  
  125.    function CreateI (Publisher    : DDS.Publisher.Ref_Access; 
  126.                      Topic      : access DDS.Topic.Ref'Class; 
  127.                      Library_Name : in DDS.String; 
  128.                      Profile_name : in DDS.String; 
  129.                      Listener   : in DDS.DataWriterListener.Ref_Access; 
  130.                      Mask         : in DDS.StatusMask) 
  131.                      return DDS.DataWriter.Ref_Access; 
  132.  
  133.  
  134.    function Register_Instance 
  135.      (Self          : not null access Ref; 
  136.       Instance_Data : System.Address) 
  137.       return DDS.InstanceHandle_T; 
  138.  
  139.  
  140.    function Register_Instance_W_Timestamp 
  141.      (Self             : not null access Ref; 
  142.       Instance_Data    : System.Address; 
  143.       Source_Timestamp : in DDS.Time_T) 
  144.       return DDS.InstanceHandle_T; 
  145.  
  146.    function Register_Instance_W_Params 
  147.      (Self             : not null access Ref; 
  148.       Instance_Data    : System.Address; 
  149.       Params           : access DDS.WriteParams_T) 
  150.       return Standard.DDS.InstanceHandle_T; 
  151.  
  152.    procedure Unregister_Instance 
  153.      (Self          : not null access Ref; 
  154.       Instance_Data : System.Address; 
  155.       Handle        : in DDS.InstanceHandle_T; 
  156.       MetpImpl      : not null access DDS.MetpTypeSupport.ref'Class); 
  157.  
  158.    procedure Unregister_Instance_W_Timestamp 
  159.      (Self             : not null access Ref; 
  160.       Instance_Data    : System.Address; 
  161.       Handle           : in DDS.InstanceHandle_T; 
  162.       Source_Timestamp : in DDS.Time_T; 
  163.       MetpImpl         : not null access DDS.MetpTypeSupport.ref'Class); 
  164.  
  165.    procedure Unregister_Instance_W_Params 
  166.      (Self          : not null access Ref; 
  167.       Instance_Data : System.Address; 
  168.       Params        : access DDS.WriteParams_T; 
  169.       MetpImpl      : not null access DDS.MetpTypeSupport.ref'Class); 
  170.  
  171.    procedure WriteI 
  172.      (Self          : not null access Ref; 
  173.       Instance_Data : System.Address; 
  174.       Handle        : in DDS.InstanceHandle_T_Access; 
  175.       MetpImpl      : not null access DDS.MetpTypeSupport.ref'Class); 
  176.  
  177.    procedure Write_W_Timestamp 
  178.      (Self             : not null access Ref; 
  179.       Instance_Data    : System.Address; 
  180.       Handle           : in DDS.InstanceHandle_T_Access; 
  181.       Source_Timestamp : in DDS.Time_T; 
  182.       MetpImpl         : not null access DDS.MetpTypeSupport.ref'Class); 
  183.  
  184.    procedure Write_W_Params 
  185.      (Self          : not null access Ref; 
  186.       Instance_Data : System.Address; 
  187.       Params        : in out DDS.WriteParams_T; 
  188.       MetpImpl      : not null access DDS.MetpTypeSupport.ref'Class); 
  189.  
  190.  
  191.    procedure Dispose 
  192.      (Self            : not null access Ref; 
  193.       Instance_Data   : System.Address; 
  194.       Instance_Handle : in DDS.InstanceHandle_T; 
  195.       MetpImpl        : not null access DDS.MetpTypeSupport.ref'Class); 
  196.  
  197.    procedure Dispose_W_Timestamp 
  198.      (Self             : not null access Ref; 
  199.       Instance_Data    : System.Address; 
  200.       Instance_Handle  : in DDS.InstanceHandle_T; 
  201.       Source_Timestamp : in DDS.Time_T; 
  202.       MetpImpl         : not null access DDS.MetpTypeSupport.ref'Class); 
  203.  
  204.    procedure Dispose_W_Params 
  205.      (Self          : not null access Ref; 
  206.       Instance_Data : System.Address; 
  207.       Params        : in DDS.WriteParams_T; 
  208.       MetpImpl      : not null access DDS.MetpTypeSupport.ref'Class); 
  209.  
  210.  
  211.    procedure Get_Key_Value 
  212.      (Self        : not null access Ref; 
  213.       Key_Holder : System.Address; 
  214.       Handle     : in DDS.InstanceHandle_T); 
  215.  
  216.  
  217.    function Lookup_Instance 
  218.      (Self        : not null access Ref; 
  219.       Key_Holder : System.Address) return DDS.InstanceHandle_T; 
  220.  
  221.    procedure Finalize_Callback 
  222.      (arg1 : System.Address; 
  223.       arg2 : System.Address; 
  224.       arg3 : access RTIDDS.Low_Level.ndds_reda_reda_worker_impl_h.REDAWorker); 
  225.    pragma Convention (C, Finalize_Callback); 
  226.  
  227.    procedure Get_Reliable_Reader_Activity_Changed_Status 
  228.      (Self : not null access Ref; 
  229.       status : in out DDS.ReliableReaderActivityChangedStatus); 
  230.  
  231.    procedure Set_Reliable_Reader_Activity_Changed_Status 
  232.      (Self : not null access Ref; 
  233.       status : in DDS.ReliableReaderActivityChangedStatus); 
  234.  
  235.    procedure Get_Reliable_Writer_Cache_Changed_Status 
  236.      (Self : not null access Ref; 
  237.       status : in out DDS.ReliableWriterCacheChangedStatus); 
  238.  
  239.    procedure Get_DataWriter_Cache_Status 
  240.      (Self : not null access Ref; 
  241.       status : in out DDS.DataWriterCacheStatus); 
  242.  
  243.    procedure Get_DataWriter_Protocol_Status 
  244.      (Self : not null access Ref; 
  245.       status : in out DDS.DataWriterProtocolStatus); 
  246.  
  247.    procedure Get_Matched_Subscription_Datawriter_Protocol_Status 
  248.      (Self                : not null access Ref; 
  249.       status              : in out DDS.DataWriterProtocolStatus; 
  250.       subscription_handle : DDS.InstanceHandle_T); 
  251.  
  252.    procedure Get_Matched_Subscription_Datawriter_Protocol_Status_By_Locator 
  253.      (Self    : not null access Ref; 
  254.       status  : in out DDS.DataWriterProtocolStatus; 
  255.       locator : DDS.Locator_T); 
  256.  
  257.    procedure Flush 
  258.      (Self : not null access Ref); 
  259.  
  260.    function Is_Metp_Writer 
  261.      (Self     : not null access Ref; 
  262.       MetpImpl : not null access DDS.MetpTypeSupport.ref'Class) return Standard.Boolean; 
  263.  
  264.    procedure Delete_Metp_Data 
  265.      (Self          : not null access Ref; 
  266.       Instance_Data : System.Address; 
  267.       MetpImpl      : not null access DDS.MetpTypeSupport.ref'Class); 
  268.  
  269.    --  ========================================================================= 
  270.    --  ========================================================================= 
  271.    --  ==                       Implementation 
  272.    --  ========================================================================= 
  273.    --  ========================================================================= 
  274.  
  275.    procedure  call_listener(Self  : not null access Ref; 
  276.                              mask  : StatusMask); 
  277.  
  278.    procedure  set_reliable_writer_cache_changed_status 
  279.      (Self  : not null access Ref; 
  280.       To    : ReliableWriterCacheChangedStatus); 
  281.  
  282.    procedure  set_datawriter_cache_status 
  283.      (Self  : not null access Ref; 
  284.       To    : DataWriterCacheStatus); 
  285.  
  286.    procedure  set_datawriter_protocol_status 
  287.      (Self  : not null access Ref; 
  288.       To    : DataWriterProtocolStatus); 
  289.  
  290.    procedure set_matched_subscription_datawriter_protocol_status 
  291.      (Self   : not null access Ref; 
  292.       To     : DDS.DataWriterProtocolStatus; 
  293.       handle : DDS.InstanceHandle_T); 
  294.  
  295.    procedure set_matched_subscription_datawriter_protocol_status_by_locator 
  296.      (Self   : not null access Ref; 
  297.       status  : DDS.DataWriterProtocolStatus; 
  298.       locator : DDS.Locator_T); 
  299.  
  300.  
  301.    type DDS_DataWriter_Access is access all RTIDDS.Low_Level.ndds_dds_c_dds_c_publication_h.DDS_DataWriter with Storage_Size => 0; 
  302.    function As_DDS_Entity_access is new Ada.Unchecked_Conversion(DDS_DataWriter_Access,DDS.Entity_Impl.DDS_Entity_Access); 
  303.    function Get_FacadeI (C_DataWriter : DDS_DataWriter_Access) 
  304.                         return Ref_Access; 
  305.  
  306.    procedure Get_LoanI 
  307.      (Self            : not null access Ref; 
  308.       Loan_Ret        : out System.Address; 
  309.       Initialize_Data : out Standard.Boolean; 
  310.       MetpImpl        : not null access DDS.MetpTypeSupport.ref'Class); 
  311.  
  312.    procedure Discard_LoanI 
  313.      (Self     : not null access Ref; 
  314.       Sample   : System.Address; 
  315.       MetpImpl : not null access DDS.MetpTypeSupport.ref'Class); 
  316.  
  317.    function GetInterface (Self : not null access Ref) return DDS_DataWriter_Access; 
  318.    procedure SetInterface (Self : not null access Ref; To : DDS_DataWriter_Access); 
  319.  
  320. private 
  321.  
  322.    procedure Free_Impl is new Ada.Unchecked_Deallocation (Ref'Class, Ref_Access); 
  323.    procedure Free_Mem (This : in out Ref_Access) renames Free_Impl; 
  324.  
  325. end DDS.DataWriter_Impl;