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