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. with DDS.DataReader; 
  10. with DDS.DataReader_Impl; 
  11. with DDS.ReadCondition; 
  12.  
  13. with DDS; use DDS; 
  14.  
  15. --  <dref>KeyedOctetsDataReader</dref> 
  16. package DDS.Builtin_KeyedOctets_DataReader is 
  17.  
  18.    type Ref is new Standard.DDS.DataReader_Impl.Ref with null record; 
  19.    type Ref_Access is access all Ref'Class; 
  20.    type Ref_Access_Access is access all Ref_Access; 
  21.  
  22.    function Get_FacadeI (C_DataReader : System.Address) 
  23.                          return Ref_Access; 
  24.  
  25.    function Narrow 
  26.      (reader : DDS.DataReader.Ref_Access) 
  27.       return DDS.Builtin_KeyedOctets_DataReader.Ref_Access; 
  28.    --  <dref>KeyedOctetsDataReader_narrow</dref> 
  29.  
  30.    function As_DataReader 
  31.      (writer : DDS.Builtin_KeyedOctets_DataReader.Ref_Access) 
  32.       return DDS.DataReader.Ref_Access; 
  33.    --  <dref>KeyedOctetsDataReader_as_datareader</dref> 
  34.  
  35.    procedure Read 
  36.      (This            : not null access constant Ref; 
  37.       Received_Data   : not null access DDS.KeyedOctets_Seq.Sequence; 
  38.       Info_Seq        : not null access Standard.DDS.SampleInfo_Seq.Sequence; 
  39.       Max_Samples     : in Standard.DDS.Long := Standard.DDS.LENGTH_UNLIMITED; 
  40.       Sample_States   : in Standard.DDS.SampleStateMask := Standard.DDS.ANY_SAMPLE_STATE; 
  41.       View_States     : in Standard.DDS.ViewStateMask := Standard.DDS.ANY_VIEW_STATE; 
  42.       Instance_States : in Standard.DDS.InstanceStateMask := Standard.DDS.ANY_INSTANCE_STATE); 
  43.    --  <dref>KeyedOctetsDataReader_read</dref> 
  44.  
  45.    procedure Take 
  46.      (This            : not null access constant Ref; 
  47.       Received_Data   : not null access DDS.KeyedOctets_Seq.Sequence; 
  48.       Info_Seq        : not null access Standard.DDS.SampleInfo_Seq.Sequence; 
  49.       Max_Samples     : in Standard.DDS.Long := Standard.DDS.LENGTH_UNLIMITED; 
  50.       Sample_States   : in Standard.DDS.SampleStateMask := Standard.DDS.ANY_SAMPLE_STATE; 
  51.       View_States     : in Standard.DDS.ViewStateMask := Standard.DDS.ANY_VIEW_STATE; 
  52.       Instance_States : in Standard.DDS.InstanceStateMask := Standard.DDS.ANY_INSTANCE_STATE); 
  53.    --  <dref>KeyedOctetsDataReader_take</dref> 
  54.  
  55.    procedure Read_W_Condition 
  56.      (This          : not null access constant Ref; 
  57.       Received_Data : not null access DDS.KeyedOctets_Seq.Sequence; 
  58.       Info_Seq      : not null access Standard.DDS.SampleInfo_Seq.Sequence; 
  59.       Max_Samples   : in Standard.DDS.Long := Standard.DDS.LENGTH_UNLIMITED; 
  60.       Condition     : access Standard.DDS.ReadCondition.Ref'Class); 
  61.    --  <dref>KeyedOctetsDataReader_read_w_condition</dref> 
  62.  
  63.    procedure Take_W_Condition 
  64.      (This          : not null access constant Ref; 
  65.       Received_Data : not null access DDS.KeyedOctets_Seq.Sequence; 
  66.       Info_Seq      : not null access Standard.DDS.SampleInfo_Seq.Sequence; 
  67.       Max_Samples   : in Standard.DDS.Long := Standard.DDS.LENGTH_UNLIMITED; 
  68.       Condition     : access Standard.DDS.ReadCondition.Ref'Class); 
  69.    --  <dref>KeyedOctetsDataReader_take_w_condition</dref> 
  70.  
  71.    procedure Read_Next_Sample 
  72.      (This          : not null access constant Ref; 
  73.       received_data : not null access DDS.KeyedOctets; 
  74.       Sample_Info   : not null access Standard.DDS.SampleInfo); 
  75.    --  <dref>KeyedOctetsDataReader_read_next_sample</dref> 
  76.  
  77.  
  78.    procedure Take_Next_Sample 
  79.      (This          : not null access constant Ref; 
  80.       received_data : not null access DDS.KeyedOctets; 
  81.       Sample_Info   : not null access Standard.DDS.SampleInfo); 
  82.    --  <dref>KeyedOctetsDataReader_take_next_sample</dref> 
  83.  
  84.    procedure Read_Instance 
  85.      (This            : not null access constant Ref; 
  86.       Received_Data   : not null access DDS.KeyedOctets_Seq.Sequence; 
  87.       Info_Seq        : not null access Standard.DDS.SampleInfo_Seq.Sequence; 
  88.       Max_Samples     : in Standard.DDS.Long := Standard.DDS.LENGTH_UNLIMITED; 
  89.       A_Handle        : access DDS.InstanceHandle_T; 
  90.       Sample_States   : in Standard.DDS.SampleStateMask := Standard.DDS.ANY_SAMPLE_STATE; 
  91.       View_States     : in Standard.DDS.ViewStateMask := Standard.DDS.ANY_VIEW_STATE; 
  92.       Instance_States : in Standard.DDS.InstanceStateMask := Standard.DDS.ANY_INSTANCE_STATE); 
  93.    --  <dref>KeyedOctetsDataReader_read_instance</dref> 
  94.  
  95.    procedure Take_Instance 
  96.      (This            : not null access constant Ref; 
  97.       Received_Data   : not null access DDS.KeyedOctets_Seq.Sequence; 
  98.       Info_Seq        : not null access Standard.DDS.SampleInfo_Seq.Sequence; 
  99.       Max_Samples     : in Standard.DDS.Long := Standard.DDS.LENGTH_UNLIMITED; 
  100.       A_Handle        : access DDS.InstanceHandle_T; 
  101.       Sample_States   : in Standard.DDS.SampleStateMask := Standard.DDS.ANY_SAMPLE_STATE; 
  102.       View_States     : in Standard.DDS.ViewStateMask := Standard.DDS.ANY_VIEW_STATE; 
  103.       Instance_States : in Standard.DDS.InstanceStateMask := Standard.DDS.ANY_INSTANCE_STATE); 
  104.    --  <dref>KeyedOctetsDataReader_take_instance</dref> 
  105.  
  106.    procedure Read_Instance_W_Condition 
  107.      (This            : not null access constant Ref; 
  108.       Received_Data   : not null access KeyedOctets_Seq.Sequence; 
  109.       Info_Seq        : not null access Standard.DDS.SampleInfo_Seq.Sequence; 
  110.       Max_Samples     : in Standard.DDS.Long := Standard.DDS.LENGTH_UNLIMITED; 
  111.       A_Handle        : access Standard.DDS.InstanceHandle_T; 
  112.       Condition       : Standard.DDS.ReadCondition.Ref_Access); 
  113.    --  <dref>KeyedOctetsDataReader_read_instance_w_condition</dref> 
  114.  
  115.    procedure Take_Instance_W_Condition 
  116.      (This            : not null access constant Ref; 
  117.       Received_Data   : not null access KeyedOctets_Seq.Sequence; 
  118.       Info_Seq        : not null access Standard.DDS.SampleInfo_Seq.Sequence; 
  119.       Max_Samples     : in Standard.DDS.Long := Standard.DDS.LENGTH_UNLIMITED; 
  120.       A_Handle        : access Standard.DDS.InstanceHandle_T; 
  121.       Condition       : Standard.DDS.ReadCondition.Ref_Access); 
  122.    --  <dref>KeyedOctetsDataReader_take_instance_w_condition</dref> 
  123.  
  124.    procedure Read_Next_Instance 
  125.      (This            : not null access constant Ref; 
  126.       Received_Data   : not null access DDS.KeyedOctets_Seq.Sequence; 
  127.       Info_Seq        : not null access Standard.DDS.SampleInfo_Seq.Sequence; 
  128.       Max_Samples     : in Standard.DDS.Long := Standard.DDS.LENGTH_UNLIMITED; 
  129.       Previous_Handle : access Standard.DDS.InstanceHandle_T; 
  130.       Sample_States   : in Standard.DDS.SampleStateMask := Standard.DDS.ANY_SAMPLE_STATE; 
  131.       View_States     : in Standard.DDS.ViewStateMask := Standard.DDS.ANY_VIEW_STATE; 
  132.       Instance_States : in Standard.DDS.InstanceStateMask := Standard.DDS.ANY_INSTANCE_STATE); 
  133.    --  <dref>KeyedOctetsDataReader_read_next_instance</dref> 
  134.  
  135.    procedure Take_Next_Instance 
  136.      (This            : not null access constant Ref; 
  137.       Received_Data   : not null access DDS.KeyedOctets_Seq.Sequence; 
  138.       Info_Seq        : not null access Standard.DDS.SampleInfo_Seq.Sequence; 
  139.       Max_Samples     : in Standard.DDS.Long := Standard.DDS.LENGTH_UNLIMITED; 
  140.       Previous_Handle : access Standard.DDS.InstanceHandle_T; 
  141.       Sample_States   : in Standard.DDS.SampleStateMask := Standard.DDS.ANY_SAMPLE_STATE; 
  142.       View_States     : in Standard.DDS.ViewStateMask := Standard.DDS.ANY_VIEW_STATE; 
  143.       Instance_States : in Standard.DDS.InstanceStateMask := Standard.DDS.ANY_INSTANCE_STATE); 
  144.    --  <dref>KeyedOctetsDataReader_take_next_instance</dref> 
  145.  
  146.    procedure Read_Next_Instance_W_Condition 
  147.      (This            : not null access constant Ref; 
  148.       Received_Data   : not null access DDS.KeyedOctets_Seq.Sequence; 
  149.       Info_Seq        : not null access Standard.DDS.SampleInfo_Seq.Sequence; 
  150.       Max_Samples     : in Standard.DDS.Long := Standard.DDS.LENGTH_UNLIMITED; 
  151.       Previous_Handle : access Standard.DDS.InstanceHandle_T; 
  152.       Condition       : Standard.DDS.ReadCondition.Ref_Access); 
  153.    --  <dref>KeyedOctetsDataReader_read_next_instance_w_condition</dref> 
  154.  
  155.    procedure Take_Next_Instance_W_Condition 
  156.      (This            : not null access constant Ref; 
  157.       Received_Data   : not null access DDS.KeyedOctets_Seq.Sequence; 
  158.       Info_Seq        : not null access Standard.DDS.SampleInfo_Seq.Sequence; 
  159.       Max_Samples     : in Standard.DDS.Long := Standard.DDS.LENGTH_UNLIMITED; 
  160.       Previous_Handle : access Standard.DDS.InstanceHandle_T; 
  161.       Condition       : Standard.DDS.ReadCondition.Ref_Access); 
  162.    --  <dref>KeyedOctetsDataReader_take_next_instance_w_condition</dref> 
  163.  
  164.    procedure Return_Loan 
  165.      (This          : not null access constant Ref; 
  166.       Received_Data : not null access DDS.KeyedOctets_Seq.Sequence; 
  167.       Info_Seq      : not null access Standard.DDS.SampleInfo_Seq.Sequence); 
  168.    --  <dref>KeyedOctetsDataReader_return_loan</dref> 
  169.  
  170.    procedure Get_Key_Value 
  171.      (This       : not null access constant Ref; 
  172.       Key_Holder : access DDS.KeyedOctets; 
  173.       Handle     : access Standard.DDS.InstanceHandle_T); 
  174.    --  <dref>KeyedOctetsDataReader_get_key_value</dref> 
  175.  
  176.    function Lookup_Instance 
  177.      (This       : not null access constant Ref; 
  178.       Key_Holder : DDS.KeyedOctets) 
  179.       return DDS.InstanceHandle_T; 
  180.    --  <dref>KeyedOctetsDataReader_lookup_instance</dref> 
  181.  
  182.    procedure Get_Key_Value_W_Key 
  183.      (This       : not null access constant Ref; 
  184.       key        : DDS.String; 
  185.       handle     : access DDS.InstanceHandle_T); 
  186.    --  <dref>KeyedOctetsDataReader_get_key_value_w_key</dref> 
  187.  
  188.    function Lookup_Instance_W_Key 
  189.      (This       : not null access constant Ref; 
  190.       key        : DDS.String) 
  191.       return DDS.InstanceHandle_T; 
  192.    --  <dref>KeyedOctetsDataReader_lookup_instance_w_key</dref> 
  193.  
  194.    --  <internal> 
  195.    --  ========================================================================= 
  196.    -- 
  197.    --  Internal Routines not to be used by the application 
  198.    -- 
  199.    --  ========================================================================= 
  200.    --  </internal> 
  201.  
  202.    function CreateTypedI return Standard.DDS.DataReader.Ref_Access; 
  203.  
  204.    procedure DestroyTypedI 
  205.      (Reader : in out Standard.DDS.DataReader.Ref_Access); 
  206.  
  207. end DDS.Builtin_KeyedOctets_DataReader;