[aadl]: AADL - Connection missing a classifier
Boydston, Alex K CIV (US)
alex.k.boydston.civ at mail.mil
Thu Jun 19 23:24:33 EDT 2014
Julien,
Where is the best reference to learn the rules? I presume that the AADL spec would be the spec for aadl
Alex,
From: Julien Delange [mailto:jdelange at sei.cmu.edu]
Sent: Thursday, June 19, 2014 09:34 AM
To: André Passos <andrebritopassos at gmail.com>; sae-aadl-users at lists.sei.cmu.edu <sae-aadl-users at lists.sei.cmu.edu>
Subject: Re: [aadl]: AADL - Connection missing a classifier
Dear Andre,
In your model, the data component has subprogram as features. Subprogram cannot be specified as features, you can use [provides|requires] subprogram access but not subprogram components directly. Please look at the data component ErrorLog. Once your problem is solved, the model would be correct from a syntax perspective.
Julien.
From: sae-aadl-users-bounces+jdelange=sei.cmu.edu at lists.sei.cmu.edu [mailto:sae-aadl-users-bounces+jdelange=sei.cmu.edu at lists.sei.cmu.edu] On Behalf Of André Passos
Sent: Thursday, June 19, 2014 8:11 AM
To: sae-aadl-users at lists.sei.cmu.edu
Subject: Re: [aadl]: AADL - Connection missing a classifier
Thanks for your feedback.
I'm quite new for AADL so as deeper I go more questions I get.
I am following the document "The Architecture Analysis & Design Language (AADL): An Introduction" from Peter H. Feiler, David P. Gluch, and John J. Hudak from February 2006. In section 8.5.3, table 8-15 in page 84, there is an example on how to call methods in objects. I am trying to reproduce the example but I get a lot of problems. I think this is due to the fact that the document is outdated regarding the language.
Can someone explain me what I need to do to make it work? The example is attached.
I would also like to ask, if there is any other more recent document that I can follow using OSATE2?
Thanks in advance. Best regards, Andre Passos.
2014-06-19 3:10 GMT+02:00 Peter Feiler <phf at sei.cmu.edu<blockedmailto:phf at sei.cmu.edu>>:
The warning message gives you the answer. One of the two ends of your connection does not have a data type i.e., a data classifier reference. It is either the port of the thread or the parameter of the subprogram – in your case it is the thread port as Jerome mentioned.
Peter
From: sae-aadl-users-bounces+phf=sei.cmu.edu at lists.sei.cmu.edu<blockedmailto:sei.cmu.edu at lists.sei.cmu.edu> [mailto:sae-aadl-users-bounces+phf<blockedmailto:sae-aadl-users-bounces%2Bphf>=sei.cmu.edu at lists.sei.cmu.edu<blockedmailto:sei.cmu.edu at lists.sei.cmu.edu>] On Behalf Of André Passos
Sent: Wednesday, June 18, 2014 3:26 AM
To: sae-aadl-users at lists.sei.cmu.edu<blockedmailto:sae-aadl-users at lists.sei.cmu.edu>
Subject: [aadl]: AADL - Connection missing a classifier
Hi all,
I am trying to model some Metrology related system in AADL and I am getting a warning while trying to connect a thread port with a subprogram parameter. The problem is in connection R1 of thread implementation t_capture_scan_executor.imp.
Can someone explain me what am I doing wrong?
Thanks in advance.
subprogram capture_position_calculator
features
servoSpotTable: in parameter servo_spot_table;
strokeDefinition: in parameter stroke_definition;
capturePosition: out parameter capture_position;
properties
Source_Language => (C);
Source_Name => "capture_position_calculator";
Source_Text => ("Capture.c");
end capture_position_calculator;
thread t_capture_scan_executor
features
servoSpotTable: in event data port;
strokeDefinition: in event data port;
hardwareConfig: in event data port;
receipe: in event data port;
spotSelection: out event data port;
end t_capture_scan_executor;
thread implementation t_capture_scan_executor.imp
calls callModel : {
perform_capture_scan_call: subprogram perform_capture_scan;
capture_scan_request_builder_call: subprogram capture_scan_request_builder;
capture_spot_selection_calculator_call: subprogram capture_spot_selection_calculator;
capture_position_calculator_call: subprogram capture_position_calculator;
};
connections
R1: parameter capture_position_calculator_call.servoSpotTable -> servoSpotTable;
R2: parameter strokeDefinition -> capture_position_calculator_call.strokeDefinition;
Best regards, André Passos.
--
Cumprimentos, André Passos.
-------------- next part --------------
HTML attachment scrubbed and removed
More information about the Sae-aadl-users
mailing list