with Text_io;
use Text_io;
with unbounded_strings;
use unbounded_strings;
with primitive_xml_strings;
use primitive_xml_strings;
with Parameters;
use Parameters;
use parameters.User_Defined_Parameters_Table_Package;
Package Body Tmp_Task is
-- --------= PTask =--------
procedure Initialize(obj : in out PTask) is
begin
initialize(Generic_Task(obj));
obj.period := 0;
obj.jitter := 0;
obj.every := 0;
obj.task_type := Periodic_Type;
end Initialize;
function Copy ( obj : in PTask ) return Generic_Task_Ptr is
New_PTask : PTask_Ptr;
begin
New_PTask := new PTask'(obj);
return Generic_Task_Ptr(New_PTask);
end Copy;
function Copy ( obj : in PTask_Ptr ) return Generic_Task_Ptr is
begin
return copy(obj.all);
end Copy;
procedure Put(obj : in PTask) is
begin
put(Generic_Task(obj));
put("period: "); standards_io.natural_io.put(obj.period); put ( "; " );
put("jitter: "); standards_io.natural_io.put(obj.jitter); put ( "; " );
end Put;
procedure Put(obj : in PTask_Ptr) is
begin
Put(Obj.All);
end Put;
procedure Put_Name ( obj : in PTask_Ptr) is
begin
Put ( To_String ( Obj.Name ) );
end Put_Name;
function Get_Name (obj : in PTask) return Unbounded_String is
begin
return obj.name;
end Get_Name;
function Get_Name (obj : in PTask_ptr) return Unbounded_String is
begin
return obj.name;
end Get_Name;
function type_of ( obj : in PTask ) return unbounded_string_list is
list : unbounded_string_list;
s : unbounded_string_ptr;
begin
Initialize(list);
s := new unbounded_string;
s.all := to_unbounded_string("OBJECTS.GENERIC_OBJECT");
Add (list, s);
s := new unbounded_string;
s.all := to_unbounded_string("OBJECTS.NAMED_OBJECT");
Add (list, s);
s := new unbounded_string;
s.all := to_unbounded_string("TMP_TASK.GENERIC_TASK");
Add (list, s);
s := new unbounded_string;
s.all := to_unbounded_string("TMP_TASK.PTask");
Add (list, s);
return list;
end type_of;
function type_of ( obj : in PTask_Ptr ) return unbounded_string_list is
begin
return type_of(obj.all);
end type_of;
procedure Build_Attributes_XML_String(obj : in PTask; level : in natural := 0; result : in out Unbounded_String) is
begin
Build_Attributes_XML_String(Generic_Task(obj), level, result);
if (XML_String(obj.period, level + 1) /= Empty_String) then
result := result & unbounded_ht(level + 1) & "" & XML_String(obj.period, level + 1) & "" & Unbounded_Lf;
end if;
if (XML_String(obj.jitter, level + 1) /= Empty_String) then
result := result & unbounded_ht(level + 1) & "" & XML_String(obj.jitter, level + 1) & "" & Unbounded_Lf;
end if;
end Build_Attributes_XML_String;
function XML_String(obj : in PTask; level : in natural := 0) return Unbounded_String is
result : Unbounded_String;
begin
result := "" & Unbounded_Lf;
Build_Attributes_XML_String(obj, level, result);
result := result & "" & Unbounded_Lf;
return (result);
end XML_String;
function XML_String(obj : in PTask_Ptr; level : in natural := 0) return Unbounded_String is
begin
return XML_String(obj.all);
end XML_String;
function XML_Ref_String(obj : in PTask; level : in natural := 0) return Unbounded_String is
result : Unbounded_String;
begin
result := "" & Unbounded_Lf;
return (result);
end XML_Ref_String;
function XML_Ref_String(obj : in PTask_Ptr; level : in natural := 0) return Unbounded_String is
begin
return XML_Ref_String(obj.all);
end XML_Ref_String;
End Tmp_Task;