dataexample.aadl.out 1.42 KB
Newer Older
1 2


3 4 5 6 7
data Person
end Person;

data Personnel_record
features
8
  update_address : subprogram update_address;
9 10 11 12 13

end Personnel_record;

data implementation Personnel_record.others
subcomponents
14 15
  Name : data basic::string;
  Home_address : data sei::aadl::relief::Address;
16 17 18 19 20

end Personnel_record.others;

subprogram update_address
features
21 22 23
  Personnel_record : in out parameter person;
  street : in parameter basic::string;
  city : in parameter basic::string;
24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41

end update_address;

package basic
public
  data string
  end string;

  data int
  properties
    Source_Data_Size => 64 b;

  end int;

end basic;

thread SEI_Personnel_addition
features
42 43
  new_person : in event data port Personnel_record;
  SEI_personnel : requires data access Personnel_database.oracle;
44 45 46 47 48 49 50 51 52 53

properties
  Dispatch_Protocol => aperiodic;

end SEI_Personnel_addition;

package sei::aadl::relief
public
  data Address
  features
54 55
    getStreet : subprogram;
    getCity : subprogram;
56 57 58 59 60 61 62

  end Address;


private
  data implementation Address.others
  subcomponents
63 64 65 66
    street : data basic::string;
    streetnumber : data basic::int;
    city : data basic::string;
    zipcode : data basic::int;
67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91

  end Address.others;

end sei::aadl::relief;

data Personnel_database
end Personnel_database;

data implementation Personnel_database.oracle
end Personnel_database.oracle;

package sei::aadl
public
  data dummy
  end dummy;

end sei::aadl;

package sei
public
  data dummy
  end dummy;

end sei;