1. --  (c) Copyright, Real-Time Innovations, $Date:: 2012-10-23 #$ 
  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 System; 
  12. with RTIDDS.Low_Level.dds_c.domain_h; 
  13. with RTIDDS.Low_Level.dds_c.topic_h; 
  14. with RTIDDS.Low_Level.dds_c.publication_h; 
  15. with RTIDDS.Low_Level.pres.participant_h; 
  16. with RTIDDS.Low_Level.dds_c.subscription_h; 
  17.  
  18. package DDS.DomainParticipantListener.Low_Level is 
  19.    use RTIDDS.Low_Level.dds_c.domain_h; 
  20.    use RTIDDS.Low_Level.dds_c.topic_h; 
  21.    use RTIDDS.Low_Level.dds_c.publication_h; 
  22.    use RTIDDS.Low_Level.dds_c.subscription_h; 
  23.  
  24.    procedure On_Inconsistent_Topic 
  25.      (Listener : System.Address; 
  26.       C_Topic  : access DDS_Topic; 
  27.       Status   : access constant DDS_InconsistentTopicStatus); 
  28.    pragma Convention (C, On_Inconsistent_Topic); 
  29.  
  30.    procedure On_Offered_Deadline_Missed 
  31.      (Listener : System.Address; 
  32.       C_Writer : System.Address; 
  33.       Status   : access constant DDS_OfferedDeadlineMissedStatus); 
  34.    pragma Convention (C, On_Offered_Deadline_Missed); 
  35.  
  36.    procedure On_Offered_Incompatible_Qos 
  37.      (Listener : System.Address; 
  38.       C_Writer : System.Address; 
  39.       Status   : access constant DDS_OfferedIncompatibleQosStatus); 
  40.    pragma Convention (C, On_Offered_Incompatible_Qos); 
  41.  
  42.    procedure On_Liveliness_Lost 
  43.      (Listener : System.Address; 
  44.       C_Writer : System.Address; 
  45.       Status   : access constant DDS_LivelinessLostStatus); 
  46.    pragma Convention (C, On_Liveliness_Lost); 
  47.  
  48.    procedure On_Publication_Matched 
  49.      (Listener : System.Address; 
  50.       C_Writer : System.Address; 
  51.       Status   : access constant DDS_PublicationMatchedStatus); 
  52.    pragma Convention (C, On_Publication_Matched); 
  53.  
  54.    procedure On_Reliable_Writer_Cache_Changed 
  55.      (Listener : System.Address; 
  56.       C_Writer : System.Address; 
  57.       Status   : access constant DDS_ReliableWriterCacheChangedStatus); 
  58.    pragma Convention (C, On_Reliable_Writer_Cache_Changed); 
  59.  
  60.    procedure On_Reliable_Reader_Activity_Changed 
  61.      (Listener : System.Address; 
  62.       C_Writer : System.Address; 
  63.       Status   : access constant DDS_ReliableReaderActivityChangedStatus); 
  64.    pragma Convention (C, On_Reliable_Reader_Activity_Changed); 
  65.  
  66.    procedure On_Destination_Unreachable 
  67.      (Listener : System.Address; 
  68.       C_Writer : System.Address; 
  69.       Instance : access constant RTIDDS.Low_Level.pres.participant_h.PRESInstanceHandle; 
  70.       Locator  : access constant RTIDDS.Low_Level.dds_c.infrastructure_h.DDS_Locator_t); 
  71.    pragma Convention (C, On_Destination_Unreachable); 
  72.  
  73.    function On_Data_Request 
  74.      (Listener : System.Address; 
  75.       C_Writer : System.Address; 
  76.       Cookie   : access constant RTIDDS.Low_Level.dds_c.infrastructure_h.DDS_Cookie_t) 
  77.       return System.Address; 
  78.    pragma Convention (C, On_Data_Request); 
  79.  
  80.    procedure On_Data_Return 
  81.      (Listener : System.Address; 
  82.       C_Writer : System.Address; 
  83.       arg      : System.Address; 
  84.       Cookie   : access constant RTIDDS.Low_Level.dds_c.infrastructure_h.DDS_Cookie_t); 
  85.    pragma Convention (C, On_Data_Return); 
  86.  
  87.    procedure On_Sample_Removed 
  88.      (Listener : System.Address; 
  89.       C_Writer : System.Address; 
  90.       Cookie   : access constant RTIDDS.Low_Level.dds_c.infrastructure_h.DDS_Cookie_t); 
  91.    pragma Convention (C, On_Sample_Removed); 
  92.  
  93.    procedure On_Instance_Replaced 
  94.      (Listener : System.Address; 
  95.       C_Writer : System.Address; 
  96.       Instance : access constant RTIDDS.Low_Level.pres.participant_h.PRESInstanceHandle); 
  97.    pragma Convention (C, On_Instance_Replaced); 
  98.  
  99.    procedure On_Application_Acknowledgment 
  100.      (Listener : System.Address; 
  101.       C_Writer : System.Address; 
  102.       Info : access constant DDS_AcknowledgmentInfo); 
  103.    pragma Convention (C, On_Application_Acknowledgment); 
  104.  
  105.    procedure On_Requested_Deadline_Missed 
  106.      (Listener : System.Address; 
  107.       C_Reader : System.Address; 
  108.       Status   : access constant DDS_RequestedDeadlineMissedStatus); 
  109.    pragma Convention (C, On_Requested_Deadline_Missed); 
  110.  
  111.    procedure On_Requested_Incompatible_Qos 
  112.      (Listener : System.Address; 
  113.       C_Reader : System.Address; 
  114.       Status   : access constant DDS_RequestedIncompatibleQosStatus); 
  115.    pragma Convention (C, On_Requested_Incompatible_Qos); 
  116.  
  117.    procedure On_Sample_Rejected 
  118.      (Listener : System.Address; 
  119.       C_Reader : System.Address; 
  120.       Status   : access constant DDS_SampleRejectedStatus); 
  121.    pragma Convention (C, On_Sample_Rejected); 
  122.  
  123.    procedure On_Liveliness_Changed 
  124.      (Listener : System.Address; 
  125.       C_Reader : System.Address; 
  126.       Status   : access constant DDS_LivelinessChangedStatus); 
  127.    pragma Convention (C, On_Liveliness_Changed); 
  128.  
  129.    procedure On_Data_Available 
  130.      (Listener : System.Address; 
  131.       C_Reader : System.Address); 
  132.    pragma Convention (C, On_Data_Available); 
  133.  
  134.    procedure On_Subscription_Matched 
  135.      (Listener : System.Address; 
  136.       C_Reader : System.Address; 
  137.       Status   : access constant DDS_SubscriptionMatchedStatus); 
  138.    pragma Convention (C, On_Subscription_Matched); 
  139.  
  140.    procedure On_Sample_Lost 
  141.      (Listener : System.Address; 
  142.       C_Reader : System.Address; 
  143.       Status   : access constant DDS_SampleLostStatus); 
  144.    pragma Convention (C, On_Sample_Lost); 
  145.  
  146.    procedure On_Data_On_Readers 
  147.      (Listener     : System.Address; 
  148.       C_Subscriber : System.Address); 
  149.    pragma Convention (C, On_Data_On_Readers); 
  150.  
  151.    DomainParticipantTopicListener_DEFAULT : constant RTIDDS.Low_Level.dds_c.topic_h.DDS_TopicListener := 
  152.      (as_listener            => (listener_data => System.Null_Address), 
  153.       On_Inconsistent_Topic  => On_Inconsistent_Topic'Access); 
  154.  
  155.    DomainParticipantDataWriterListener_DEFAULT : constant DDS_DataWriterListener := 
  156.                                   (as_listener                         => (listener_data => System.Null_Address), 
  157.                                    on_offered_deadline_missed          => On_Offered_Deadline_Missed'Access, 
  158.                                    On_Offered_Incompatible_Qos         => On_Offered_Incompatible_Qos'Access, 
  159.                                    On_Liveliness_Lost                  => On_Liveliness_Lost'Access, 
  160.                                    On_Publication_Matched              => On_Publication_Matched'Access, 
  161.                                    On_Reliable_Writer_Cache_Changed    => On_Reliable_Writer_Cache_Changed'Access, 
  162.                                    On_Reliable_Reader_Activity_Changed => On_Reliable_Reader_Activity_Changed'Access, 
  163.                                    on_destination_unreachable          => On_Destination_Unreachable'Access, 
  164.                                    on_data_request                     => On_Data_Request'Access, 
  165.                                    on_data_return                      => On_Data_Return'Access, 
  166.                                    on_sample_removed                   => On_Sample_Removed'Access, 
  167.                                    on_instance_replaced                => On_Instance_Replaced'Access, 
  168.                                    on_application_acknowledgment       => On_Application_Acknowledgment'Access); 
  169.  
  170.    DomainParticipantPublisherListener_DEFAULT : constant DDS_PublisherListener := 
  171.                                  (As_DataWriterListener => DomainParticipantDataWriterListener_DEFAULT); 
  172.  
  173.    DomainParticipantDataReaderListener_DEFAULT : constant DDS_DataReaderListener := 
  174.                                     (as_listener                   => (Listener_Data => System.Null_Address), 
  175.                                      on_requested_deadline_missed  => On_Requested_Deadline_Missed'Access, 
  176.                                      on_requested_incompatible_qos => On_Requested_Incompatible_Qos'Access, 
  177.                                      on_sample_rejected            => On_Sample_Rejected'Access, 
  178.                                      on_liveliness_changed         => On_Liveliness_Changed'Access, 
  179.                                      on_data_available             => On_Data_Available'Access, 
  180.                                      on_subscription_matched       => On_Subscription_Matched'Access, 
  181.                                      on_sample_lost                => On_Sample_Lost'Access); 
  182.  
  183.    DomainParticipantSubscriberListener_DEFAULT : constant DDS_SubscriberListener := 
  184.                                   (as_datareaderlistener      => DomainParticipantDataReaderListener_DEFAULT, 
  185.                                    on_data_on_readers         => On_Data_On_Readers'Access); 
  186.  
  187.    DomainParticipantListener_DEFAULT : constant DDS_DomainParticipantListener := 
  188.                                            (as_topiclistener      => DomainParticipantTopicListener_DEFAULT, 
  189.                                             as_publisherlistener  => DomainParticipantPublisherListener_DEFAULT, 
  190.                                             as_subscriberlistener => DomainParticipantSubscriberListener_DEFAULT); 
  191.  
  192. end DDS.DomainParticipantListener.Low_Level;