1. pragma Ada_2012; 
  2. with RTIDDS.Low_Level.ndds_ndds_config_c_h; 
  3. with Ada.Finalization; 
  4.  
  5. package DDS.Logger.LoggerDevice is 
  6.  
  7.  
  8.    type Ref is limited new Ada.Finalization.Limited_Controlled and Logger.LoggerDevice_Interface with private; 
  9.    type Ref_Access is access all Ref'Class; 
  10.    procedure Write (Self : Ref; Text : Standard.String; Level : LogVerbosity) is null; 
  11.    procedure Close (Self : Ref) is null; 
  12.  
  13.  
  14. private 
  15.    procedure LL_Write 
  16.      (Arg1 : access RTIDDS.Low_Level.ndds_ndds_config_c_h.NDDS_Config_LoggerDevice; 
  17.       Arg2 : access constant RTIDDS.Low_Level.ndds_ndds_config_c_h.NDDS_Config_LogMessage) 
  18.         with Convention => C; 
  19.  
  20.    procedure LL_Close (Arg1 : access RTIDDS.Low_Level.ndds_ndds_config_c_h.NDDS_Config_LoggerDevice) with 
  21.       Convention => C; 
  22.  
  23.    type Ref is limited new Ada.Finalization.Limited_Controlled and Logger.LoggerDevice_Interface with record 
  24.       Data   : aliased RTIDDS.Low_Level.ndds_ndds_config_c_h.NDDS_Config_LoggerDevice; 
  25.       Parent : Logger.Ref_Access; 
  26.    end record; 
  27.  
  28.    function GetDevice (Self : access Ref) return access RTIDDS.Low_Level.ndds_ndds_config_c_h.NDDS_Config_LoggerDevice; 
  29.    function GetLogger (Self : access Ref) return Logger.Ref_Access; 
  30.  
  31.    procedure Initialize (Self : in out Ref); 
  32.    procedure Finalize (Self : in out Ref); 
  33.  
  34. end DDS.Logger.LoggerDevice;