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