--
generic
type Data_Priority_Type is (<>);
--
-- Ordered: High .. low priority
type Data_Type is tagged private;
with procedure Handler (D : Data_Type'Class; With_P : Data_Priority_Type);
package Generic_Priority_Controller is
pragma Elaborate_Body;
procedure Start;
procedure Get (D : Data_Type'Class; With_P : Data_Priority_Type);
end Generic_Priority_Controller;