Improved UX + Cleanup.
Added names in ItemProviders that allow easy viewing of elements in Loss. Cleaned up the mm2loss project.
This commit is contained in:
parent
368c791d13
commit
39b349b5b1
|
|
@ -1 +0,0 @@
|
||||||
*.class
|
|
||||||
|
|
@ -121,13 +121,20 @@ public class ComplexItemProvider extends NamedObjectItemProvider {
|
||||||
* This returns the label text for the adapted class.
|
* This returns the label text for the adapted class.
|
||||||
* <!-- begin-user-doc -->
|
* <!-- begin-user-doc -->
|
||||||
* <!-- end-user-doc -->
|
* <!-- end-user-doc -->
|
||||||
* @generated
|
* @generated NOT
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public String getText(Object object) {
|
public String getText(Object object) {
|
||||||
String label = ((Complex) object).getName();
|
Complex complex = (Complex)object;
|
||||||
return label == null || label.length() == 0 ? getString("_UI_Complex_type")
|
String label = complex.getName();
|
||||||
: getString("_UI_Complex_type") + " " + label;
|
String typeName = complex.getClassName();
|
||||||
|
if (label == null) {
|
||||||
|
label = "";
|
||||||
|
}
|
||||||
|
if (typeName == null) {
|
||||||
|
typeName = "";
|
||||||
|
}
|
||||||
|
return getString("_UI_Complex_type") + " | " + label + " : " + typeName;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,7 @@
|
||||||
*/
|
*/
|
||||||
package fr.tpt.mem4csd.loss.provider;
|
package fr.tpt.mem4csd.loss.provider;
|
||||||
|
|
||||||
|
import fr.tpt.mem4csd.loss.Complex;
|
||||||
import fr.tpt.mem4csd.loss.Link;
|
import fr.tpt.mem4csd.loss.Link;
|
||||||
import fr.tpt.mem4csd.loss.LossPackage;
|
import fr.tpt.mem4csd.loss.LossPackage;
|
||||||
|
|
||||||
|
|
@ -91,9 +92,20 @@ public class LinkItemProvider extends PrimitiveItemProvider {
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public String getText(Object object) {
|
public String getText(Object object) {
|
||||||
String label = ((Link) object).getName();
|
Link link = (Link) object;
|
||||||
return label == null || label.length() == 0 ? getString("_UI_Link_type")
|
String label = link.getName();
|
||||||
: getString("_UI_Link_type") + " " + label;
|
Complex complex = (Complex)link.getReferenceTo();
|
||||||
|
String ref = null;
|
||||||
|
if (complex != null) {
|
||||||
|
ref = complex.getName();
|
||||||
|
}
|
||||||
|
if (label == null) {
|
||||||
|
label = "";
|
||||||
|
}
|
||||||
|
if (ref == null) {
|
||||||
|
ref = "";
|
||||||
|
}
|
||||||
|
return getString("_UI_Link_type") + " | " + label + " : " + ref;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
||||||
|
|
@ -1 +0,0 @@
|
||||||
*.class
|
|
||||||
|
|
@ -1,2 +1,2 @@
|
||||||
/face2loss.asm
|
**/*.asm
|
||||||
/mm2loss.asm
|
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
library faceConfig;
|
||||||
|
|
||||||
|
helper def : inname : String = 'aaxl';
|
||||||
|
helper def : packageNames : Set(String) = Set{ 'IN', 'AADL' };
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
library faceConfig;
|
||||||
|
|
||||||
|
helper def : inname : String = 'face';
|
||||||
|
helper def : packageNames : Set(String) = Set{ 'IN', 'ECORE' };
|
||||||
File diff suppressed because it is too large
Load Diff
|
|
@ -0,0 +1,53 @@
|
||||||
|
<?xml version="1.0" encoding="ASCII"?>
|
||||||
|
<instance:SystemInstance xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:instance="http://aadl.info/AADL/2.0/instance" name="FACE_IntegrationModel">
|
||||||
|
<componentInstance name="Speed_Transporter">
|
||||||
|
<featureInstance name="output" direction="out"/>
|
||||||
|
<featureInstance name="input"/>
|
||||||
|
</componentInstance>
|
||||||
|
<componentInstance name="Heading_Transporter">
|
||||||
|
<featureInstance name="output" direction="out"/>
|
||||||
|
<featureInstance name="input"/>
|
||||||
|
</componentInstance>
|
||||||
|
<componentInstance name="Position_Transporter">
|
||||||
|
<featureInstance name="output" direction="out"/>
|
||||||
|
<featureInstance name="input"/>
|
||||||
|
</componentInstance>
|
||||||
|
<componentInstance name="FACE_UoPModel" category="process">
|
||||||
|
<featureInstance name="Position" direction="out"/>
|
||||||
|
<featureInstance name="Heading"/>
|
||||||
|
<featureInstance name="Position"/>
|
||||||
|
<featureInstance name="Heading" direction="out"/>
|
||||||
|
<componentInstance name="Doppler_Log" category="threadgroup">
|
||||||
|
<componentInstance name="uopThread" category="thread"/>
|
||||||
|
</componentInstance>
|
||||||
|
<componentInstance name="GNSS_Receiver" category="threadgroup">
|
||||||
|
<featureInstance name="Position" direction="out"/>
|
||||||
|
<componentInstance name="uopThread" category="thread"/>
|
||||||
|
</componentInstance>
|
||||||
|
<componentInstance name="Display" category="threadgroup">
|
||||||
|
<featureInstance name="Heading"/>
|
||||||
|
<featureInstance name="Position"/>
|
||||||
|
<componentInstance name="uopThread" category="thread"/>
|
||||||
|
</componentInstance>
|
||||||
|
<componentInstance name="Magnetic_Compass" category="threadgroup">
|
||||||
|
<featureInstance name="Heading" direction="out"/>
|
||||||
|
<componentInstance name="uopThread" category="thread"/>
|
||||||
|
</componentInstance>
|
||||||
|
</componentInstance>
|
||||||
|
<connectionInstance name="CompassHeading_Transporter" kind="portConnection" destination="//@componentInstance.1/@featureInstance.1">
|
||||||
|
<connectionReference destination="//@componentInstance.1/@featureInstance.1"/>
|
||||||
|
<connectionReference/>
|
||||||
|
</connectionInstance>
|
||||||
|
<connectionInstance name="GPSPosition_Transporter" kind="portConnection" destination="//@componentInstance.2/@featureInstance.1" source="//@componentInstance.3/@featureInstance.0">
|
||||||
|
<connectionReference source="//@componentInstance.3/@componentInstance.1/@featureInstance.0" destination="//@componentInstance.3/@featureInstance.0"/>
|
||||||
|
<connectionReference source="//@componentInstance.3/@featureInstance.0" destination="//@componentInstance.2/@featureInstance.1"/>
|
||||||
|
</connectionInstance>
|
||||||
|
<connectionInstance name="DisplayHeading_Transporter" kind="portConnection" destination="//@componentInstance.3/@featureInstance.1" source="//@componentInstance.1/@featureInstance.0">
|
||||||
|
<connectionReference context="//@componentInstance.3" source="//@componentInstance.3/@featureInstance.1" destination="//@componentInstance.3/@componentInstance.2/@featureInstance.0"/>
|
||||||
|
<connectionReference context="/" source="//@componentInstance.1/@featureInstance.0" destination="//@componentInstance.3/@featureInstance.1"/>
|
||||||
|
</connectionInstance>
|
||||||
|
<connectionInstance name="DisplayPosition_Transporter" kind="portConnection" destination="//@componentInstance.3/@featureInstance.2" source="//@componentInstance.2/@featureInstance.0">
|
||||||
|
<connectionReference context="//@componentInstance.3" source="//@componentInstance.3/@featureInstance.2" destination="//@componentInstance.3/@componentInstance.2/@featureInstance.1"/>
|
||||||
|
<connectionReference context="/" source="//@componentInstance.2/@featureInstance.0" destination="//@componentInstance.3/@featureInstance.2"/>
|
||||||
|
</connectionInstance>
|
||||||
|
</instance:SystemInstance>
|
||||||
|
|
@ -0,0 +1,100 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<face:ArchitectureModel xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:conceptual="http://www.opengroup.us/face/datamodel/conceptual/3.0" xmlns:face="http://www.opengroup.us/face/3.0" xmlns:integration="http://www.opengroup.us/face/integration/3.0" xmlns:logical="http://www.opengroup.us/face/datamodel/logical/3.0" xmlns:plateform="http://www.opengroup.us/face/datamodel/platform/3.0" xmlns:uop="http://www.opengroup.us/face/uop/3.0" xmi:id="uid0" name="FACE_Architecture">
|
||||||
|
<dm xmi:id="uid1" name="FACE_DataModel">
|
||||||
|
<cdm xmi:id="uid10" name="FACE_ConceptualDataModel">
|
||||||
|
<element xsi:type="conceptual:Query" xmi:id="uid100" name="Speed" description="Distance covered by unit of time" specification=""/>
|
||||||
|
<element xsi:type="conceptual:Query" xmi:id="uid101" name="Angle" description="Two straight lines sharing a common point" specification=""/>
|
||||||
|
<element xsi:type="conceptual:Query" xmi:id="uid102" name="Longitude" description="East-West position along a parallel" specification=""/>
|
||||||
|
<element xsi:type="conceptual:Query" xmi:id="uid103" name="Latitude" description="North-South position along a meridian" specification=""/>
|
||||||
|
<element xsi:type="conceptual:CompositeQuery" xmi:id="uid104" name="Position" description="Point defined by a longitude and a latitude">
|
||||||
|
<composition xmi:id="uid1040" rolename="Longitude" type="uid102"/>
|
||||||
|
<composition xmi:id="uid1041" rolename="Latitude" type="uid103"/>
|
||||||
|
</element>
|
||||||
|
</cdm>
|
||||||
|
<ldm xmi:id="uid11" name="FACE_LogicalDataModel">
|
||||||
|
<element xsi:type="logical:Query" xmi:id="uid110" name="Speed_In_Knots" description="Speed in nautical miles per hour" realizes="uid100" specification=""/>
|
||||||
|
<element xsi:type="logical:Query" xmi:id="uid111" name="Heading" description="Angle between 0 and 360" realizes="uid101" specification=""/>
|
||||||
|
<element xsi:type="logical:Query" xmi:id="uid112" name="Longitude" description="Longitude in degrees" realizes="uid102" specification=""/>
|
||||||
|
<element xsi:type="logical:Query" xmi:id="uid113" name="Latitude" description="Latitude in degrees" realizes="uid103" specification=""/>
|
||||||
|
<element xsi:type="logical:CompositeQuery" xmi:id="uid114" name="Position" description="Point defined by a longitude and a latitude in degrees" realizes="uid104">
|
||||||
|
<composition xmi:id="uid1140" rolename="Longitude" type="uid112"/>
|
||||||
|
<composition xmi:id="uid1141" rolename="Latitude" type="uid113"/>
|
||||||
|
</element>
|
||||||
|
</ldm>
|
||||||
|
<pdm xmi:id="uid12" name="FACE_PlatformDataModel">
|
||||||
|
<element xsi:type="plateform:Query" xmi:id="uid120" name="Speed_pq" realizes="uid110" specification=""/>
|
||||||
|
<element xsi:type="plateform:Template" xmi:id="uid121" name="Speed_In_Knots_Int" description="Integer representation of the speed in knots" specification="" boundQuery="uid120"/>
|
||||||
|
<element xsi:type="plateform:Query" xmi:id="uid122" name="Heading_pq" realizes="uid111" specification=""/>
|
||||||
|
<element xsi:type="plateform:Template" xmi:id="uid123" name="Heading_Int" description="Integer representation of the heading: 0..360" specification="" boundQuery="uid122"/>
|
||||||
|
<element xsi:type="plateform:Query" xmi:id="uid124" name="Longitude_pd" realizes="uid112" specification=""/>
|
||||||
|
<element xsi:type="plateform:Template" xmi:id="uid125" name="Longitude_Int" description="Integer representation of the longitude: -180..+180" specification="" boundQuery="uid124"/>
|
||||||
|
<element xsi:type="plateform:Query" xmi:id="uid126" name="Latitude_pq" realizes="uid113" specification=""/>
|
||||||
|
<element xsi:type="plateform:Template" xmi:id="uid127" name="Latitude_Int" description="Integer representation of the latitude: -180..+180" specification="" boundQuery="uid126"/>
|
||||||
|
<element xsi:type="plateform:CompositeTemplate" xmi:id="uid128" name="Position_Int" description="Point defined by a Longitude_Int and a Latitude_Int" realizes="uid114">
|
||||||
|
<composition xmi:id="uid1280" rolename="Longitude" realizes="uid1140" type="uid125"/>
|
||||||
|
<composition xmi:id="uid1281" rolename="Latitude" realizes="uid1141" type="uid127"/>
|
||||||
|
</element>
|
||||||
|
</pdm>
|
||||||
|
</dm>
|
||||||
|
<um xmi:id="uid2" name="FACE_UoPModel">
|
||||||
|
<element xsi:type="uop:PortableComponent" xmi:id="uid20" name="Doppler_Log" description="A doppler log is an instrument to measure ship's relative speed with water">
|
||||||
|
<thread xmi:id="uid200" period="0.02" timeCapacity="0.005"/>
|
||||||
|
<memoryRequirements xmi:id="uid201"/>
|
||||||
|
<connection xsi:type="uop:QueuingConnection" xmi:id="uid202" name="Speed" period="1.0" messageType="uid121" messageExchangeType="OutboundMessage" depth="5"/>
|
||||||
|
</element>
|
||||||
|
<element xsi:type="uop:PortableComponent" xmi:id="uid21" name="Magnetic_Compass" description="A magnetic compass is an instrument to measure ship's heading">
|
||||||
|
<thread xmi:id="uid210" period="0.05" timeCapacity="0.01"/>
|
||||||
|
<memoryRequirements xmi:id="uid211"/>
|
||||||
|
<connection xsi:type="uop:SingleInstanceMessageConnection" xmi:id="uid212" name="Heading" period="1.0" messageType="uid123" messageExchangeType="OutboundMessage"/>
|
||||||
|
</element>
|
||||||
|
<element xsi:type="uop:PortableComponent" xmi:id="uid22" name="GNSS_Receiver" description="A GNSS receiver is an instrument to measure geographical position">
|
||||||
|
<thread xmi:id="uid220" period="0.05" timeCapacity="0.02"/>
|
||||||
|
<memoryRequirements xmi:id="uid221"/>
|
||||||
|
<connection xsi:type="uop:SingleInstanceMessageConnection" xmi:id="uid222" name="Position" period="1.0" messageType="uid128" messageExchangeType="OutboundMessage"/>
|
||||||
|
</element>
|
||||||
|
<element xsi:type="uop:PortableComponent" xmi:id="uid23" name="Display">
|
||||||
|
<thread xmi:id="uid230" period="0.02" timeCapacity="0.01"/>
|
||||||
|
<memoryRequirements xmi:id="uid231"/>
|
||||||
|
<connection xsi:type="uop:QueuingConnection" xmi:id="uid232" name="Speed" period="0.1" messageType="uid121" depth="5"/>
|
||||||
|
<connection xsi:type="uop:SingleInstanceMessageConnection" xmi:id="uid233" name="Heading" period="0.1" messageType="uid123"/>
|
||||||
|
<connection xsi:type="uop:SingleInstanceMessageConnection" xmi:id="uid234" name="Position" period="0.1" messageType="uid128"/>
|
||||||
|
</element>
|
||||||
|
</um>
|
||||||
|
<im xmi:id="uid3" name="FACE_IntegrationModel">
|
||||||
|
<element xsi:type="integration:UoPInstance" xmi:id="uid30" name="Log" realizes="uid20">
|
||||||
|
<output xmi:id="uid300" connection="uid202"/>
|
||||||
|
</element>
|
||||||
|
<element xsi:type="integration:UoPInstance" xmi:id="uid31" name="Compass" realizes="uid21">
|
||||||
|
<output xmi:id="uid310" connection="uid212"/>
|
||||||
|
</element>
|
||||||
|
<element xsi:type="integration:UoPInstance" xmi:id="uid32" name="GPS" realizes="uid22">
|
||||||
|
<output xmi:id="uid320" connection="uid222"/>
|
||||||
|
</element>
|
||||||
|
<element xsi:type="integration:UoPInstance" xmi:id="uid33" name="Display" realizes="uid23">
|
||||||
|
<input xmi:id="uid330" connection="uid232"/>
|
||||||
|
<input xmi:id="uid331" connection="uid233"/>
|
||||||
|
<input xmi:id="uid332" connection="uid234"/>
|
||||||
|
</element>
|
||||||
|
<element xsi:type="integration:IntegrationContext" xmi:id="uid34" name="FACE_IntegrationContext">
|
||||||
|
<connection xmi:id="uid340" source="uid300" destination="uid3460"/>
|
||||||
|
<connection xmi:id="uid341" source="uid3461" destination="uid330"/>
|
||||||
|
<connection xmi:id="uid342" source="uid310" destination="uid3470"/>
|
||||||
|
<connection xmi:id="uid343" source="uid3471" destination="uid331"/>
|
||||||
|
<connection xmi:id="uid344" source="uid320" destination="uid3480"/>
|
||||||
|
<connection xmi:id="uid345" source="uid3481" destination="uid332"/>
|
||||||
|
<node xsi:type="integration:ViewTransporter" xmi:id="uid346" name="Speed_Transporter" channel="uid35">
|
||||||
|
<outPort xmi:id="uid3461" view="uid121"/>
|
||||||
|
<inPort xmi:id="uid3460" view="uid121"/>
|
||||||
|
</node>
|
||||||
|
<node xsi:type="integration:ViewTransporter" xmi:id="uid347" name="Heading_Transporter" channel="uid35">
|
||||||
|
<outPort xmi:id="uid3471" view="uid123"/>
|
||||||
|
<inPort xmi:id="uid3470" view="uid123"/>
|
||||||
|
</node>
|
||||||
|
<node xsi:type="integration:ViewTransporter" xmi:id="uid348" name="Position_Transporter" channel="uid35">
|
||||||
|
<outPort xmi:id="uid3481" view="uid128"/>
|
||||||
|
<inPort xmi:id="uid3480" view="uid128"/>
|
||||||
|
</node>
|
||||||
|
</element>
|
||||||
|
<element xsi:type="integration:TransportChannel" xmi:id="uid35" name="NMEA" description="NMEA is a plug-and-play communications standard used for connecting marine sensors and display units within ships"/>
|
||||||
|
</im>
|
||||||
|
</face:ArchitectureModel>
|
||||||
|
|
@ -0,0 +1,2 @@
|
||||||
|
/loss_demo.aaxl2.loss
|
||||||
|
/loss_demo.face.loss
|
||||||
|
|
@ -1,515 +0,0 @@
|
||||||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
|
||||||
<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:loss="http://mem4csd.telecom-paris.fr/loss">
|
|
||||||
<loss:Complex name="NMEA" className="face::integration::TransportChannel" reference="/0">
|
|
||||||
<primitives name="name" className="ecore::EString"/>
|
|
||||||
<primitives name="description" className="ecore::EString"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="Position_Int" className="face::datamodel::platform::CompositeTemplate" reference="/1">
|
|
||||||
<primitives name="description" className="ecore::EString"/>
|
|
||||||
<primitives name="name" className="ecore::EString"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="composition" referenceTo="/50"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="composition" referenceTo="/49"/>
|
|
||||||
<primitives name="isUnion" className="ecore::EBoolean"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="realizes" referenceTo="/70"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="FACE_IntegrationContext" className="face::integration::IntegrationContext" reference="/2">
|
|
||||||
<primitives xsi:type="loss:Link" name="connection" referenceTo="/71"/>
|
|
||||||
<primitives name="name" className="ecore::EString"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="node" referenceTo="/3"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="node" referenceTo="/4"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="node" referenceTo="/5"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="connection" referenceTo="/74"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="connection" referenceTo="/73"/>
|
|
||||||
<primitives name="description" className="ecore::EString"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="connection" referenceTo="/75"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="connection" referenceTo="/72"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="connection" referenceTo="/76"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="Speed_Transporter" className="face::integration::ViewTransporter" reference="/3">
|
|
||||||
<primitives xsi:type="loss:Link" name="inPort" referenceTo="/29"/>
|
|
||||||
<primitives name="name" className="ecore::EString"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="channel" referenceTo="/0"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="outPort" referenceTo="/17"/>
|
|
||||||
<primitives name="description" className="ecore::EString"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="Heading_Transporter" className="face::integration::ViewTransporter" reference="/4">
|
|
||||||
<primitives name="name" className="ecore::EString"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="channel" referenceTo="/0"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="inPort" referenceTo="/30"/>
|
|
||||||
<primitives name="description" className="ecore::EString"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="outPort" referenceTo="/18"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="Position_Transporter" className="face::integration::ViewTransporter" reference="/5">
|
|
||||||
<primitives xsi:type="loss:Link" name="inPort" referenceTo="/31"/>
|
|
||||||
<primitives name="name" className="ecore::EString"/>
|
|
||||||
<primitives name="description" className="ecore::EString"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="outPort" referenceTo="/19"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="channel" referenceTo="/0"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="Heading" className="face::uop::SingleInstanceMessageConnection" reference="/6">
|
|
||||||
<primitives xsi:type="loss:Link" name="realizes"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="messageType" referenceTo="/52"/>
|
|
||||||
<primitives name="synchronizationStyle" className="face::uop::SynchronizationStyle"/>
|
|
||||||
<primitives name="period" className="ecore::EFloat"/>
|
|
||||||
<primitives name="name" className="ecore::EString"/>
|
|
||||||
<primitives name="description" className="ecore::EString"/>
|
|
||||||
<primitives name="messageExchangeType" className="face::uop::MessageExchangeType"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="Position" className="face::uop::SingleInstanceMessageConnection" reference="/7">
|
|
||||||
<primitives xsi:type="loss:Link" name="messageType" referenceTo="/1"/>
|
|
||||||
<primitives name="description" className="ecore::EString"/>
|
|
||||||
<primitives name="synchronizationStyle" className="face::uop::SynchronizationStyle"/>
|
|
||||||
<primitives name="period" className="ecore::EFloat"/>
|
|
||||||
<primitives name="messageExchangeType" className="face::uop::MessageExchangeType"/>
|
|
||||||
<primitives name="name" className="ecore::EString"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="realizes"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="Heading" className="face::uop::SingleInstanceMessageConnection" reference="/8">
|
|
||||||
<primitives name="name" className="ecore::EString"/>
|
|
||||||
<primitives name="description" className="ecore::EString"/>
|
|
||||||
<primitives name="synchronizationStyle" className="face::uop::SynchronizationStyle"/>
|
|
||||||
<primitives name="messageExchangeType" className="face::uop::MessageExchangeType"/>
|
|
||||||
<primitives name="period" className="ecore::EFloat"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="realizes"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="messageType" referenceTo="/52"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="Position" className="face::uop::SingleInstanceMessageConnection" reference="/9">
|
|
||||||
<primitives name="name" className="ecore::EString"/>
|
|
||||||
<primitives name="synchronizationStyle" className="face::uop::SynchronizationStyle"/>
|
|
||||||
<primitives name="messageExchangeType" className="face::uop::MessageExchangeType"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="realizes"/>
|
|
||||||
<primitives name="description" className="ecore::EString"/>
|
|
||||||
<primitives name="period" className="ecore::EFloat"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="messageType" referenceTo="/1"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="NoName" className="face::integration::UoPOutputEndPoint" reference="/10">
|
|
||||||
<primitives xsi:type="loss:Link" name="connection" referenceTo="/32"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="NoName" className="face::integration::UoPOutputEndPoint" reference="/11">
|
|
||||||
<primitives xsi:type="loss:Link" name="connection" referenceTo="/6"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="NoName" className="face::integration::UoPOutputEndPoint" reference="/12">
|
|
||||||
<primitives xsi:type="loss:Link" name="connection" referenceTo="/7"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="Speed_In_Knots" className="face::datamodel::logical::Query" reference="/13">
|
|
||||||
<primitives name="description" className="ecore::EString"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="realizes" referenceTo="/56"/>
|
|
||||||
<primitives name="specification" className="ecore::EString"/>
|
|
||||||
<primitives name="name" className="ecore::EString"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="Heading" className="face::datamodel::logical::Query" reference="/14">
|
|
||||||
<primitives name="description" className="ecore::EString"/>
|
|
||||||
<primitives name="name" className="ecore::EString"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="realizes" referenceTo="/57"/>
|
|
||||||
<primitives name="specification" className="ecore::EString"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="Longitude" className="face::datamodel::logical::Query" reference="/15">
|
|
||||||
<primitives name="name" className="ecore::EString"/>
|
|
||||||
<primitives name="specification" className="ecore::EString"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="realizes" referenceTo="/58"/>
|
|
||||||
<primitives name="description" className="ecore::EString"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="Latitude" className="face::datamodel::logical::Query" reference="/16">
|
|
||||||
<primitives xsi:type="loss:Link" name="realizes" referenceTo="/59"/>
|
|
||||||
<primitives name="name" className="ecore::EString"/>
|
|
||||||
<primitives name="description" className="ecore::EString"/>
|
|
||||||
<primitives name="specification" className="ecore::EString"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="NoName" className="face::integration::TSNodeOutputPort" reference="/17">
|
|
||||||
<primitives xsi:type="loss:Link" name="view" referenceTo="/51"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="NoName" className="face::integration::TSNodeOutputPort" reference="/18">
|
|
||||||
<primitives xsi:type="loss:Link" name="view" referenceTo="/52"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="NoName" className="face::integration::TSNodeOutputPort" reference="/19">
|
|
||||||
<primitives xsi:type="loss:Link" name="view" referenceTo="/1"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="NoName" className="face::datamodel::conceptual::QueryComposition" reference="/20">
|
|
||||||
<primitives xsi:type="loss:Link" name="type" referenceTo="/58"/>
|
|
||||||
<primitives name="rolename" className="ecore::EString"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="NoName" className="face::datamodel::conceptual::QueryComposition" reference="/21">
|
|
||||||
<primitives xsi:type="loss:Link" name="type" referenceTo="/59"/>
|
|
||||||
<primitives name="rolename" className="ecore::EString"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="FACE_UoPModel" className="face::uop::UoPModel" reference="/22">
|
|
||||||
<primitives xsi:type="loss:Link" name="element" referenceTo="/43"/>
|
|
||||||
<primitives name="description" className="ecore::EString"/>
|
|
||||||
<primitives name="name" className="ecore::EString"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="element" referenceTo="/41"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="element" referenceTo="/44"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="element" referenceTo="/42"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="Speed_pq" className="face::datamodel::platform::Query" reference="/23">
|
|
||||||
<primitives name="description" className="ecore::EString"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="realizes" referenceTo="/13"/>
|
|
||||||
<primitives name="specification" className="ecore::EString"/>
|
|
||||||
<primitives name="name" className="ecore::EString"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="Heading_pq" className="face::datamodel::platform::Query" reference="/24">
|
|
||||||
<primitives name="specification" className="ecore::EString"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="realizes" referenceTo="/14"/>
|
|
||||||
<primitives name="description" className="ecore::EString"/>
|
|
||||||
<primitives name="name" className="ecore::EString"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="Longitude_pd" className="face::datamodel::platform::Query" reference="/25">
|
|
||||||
<primitives xsi:type="loss:Link" name="realizes" referenceTo="/15"/>
|
|
||||||
<primitives name="description" className="ecore::EString"/>
|
|
||||||
<primitives name="name" className="ecore::EString"/>
|
|
||||||
<primitives name="specification" className="ecore::EString"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="Latitude_pq" className="face::datamodel::platform::Query" reference="/26">
|
|
||||||
<primitives name="name" className="ecore::EString"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="realizes" referenceTo="/16"/>
|
|
||||||
<primitives name="specification" className="ecore::EString"/>
|
|
||||||
<primitives name="description" className="ecore::EString"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="NoName" className="face::datamodel::logical::QueryComposition" reference="/27">
|
|
||||||
<primitives xsi:type="loss:Link" name="realizes"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="type" referenceTo="/15"/>
|
|
||||||
<primitives name="rolename" className="ecore::EString"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="NoName" className="face::datamodel::logical::QueryComposition" reference="/28">
|
|
||||||
<primitives xsi:type="loss:Link" name="type" referenceTo="/16"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="realizes"/>
|
|
||||||
<primitives name="rolename" className="ecore::EString"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="NoName" className="face::integration::TSNodeInputPort" reference="/29">
|
|
||||||
<primitives xsi:type="loss:Link" name="view" referenceTo="/51"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="NoName" className="face::integration::TSNodeInputPort" reference="/30">
|
|
||||||
<primitives xsi:type="loss:Link" name="view" referenceTo="/52"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="NoName" className="face::integration::TSNodeInputPort" reference="/31">
|
|
||||||
<primitives xsi:type="loss:Link" name="view" referenceTo="/1"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="Speed" className="face::uop::QueuingConnection" reference="/32">
|
|
||||||
<primitives name="period" className="ecore::EFloat"/>
|
|
||||||
<primitives name="depth" className="ecore::EInt"/>
|
|
||||||
<primitives name="name" className="ecore::EString"/>
|
|
||||||
<primitives name="description" className="ecore::EString"/>
|
|
||||||
<primitives name="messageExchangeType" className="face::uop::MessageExchangeType"/>
|
|
||||||
<primitives name="synchronizationStyle" className="face::uop::SynchronizationStyle"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="realizes"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="messageType" referenceTo="/51"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="Speed" className="face::uop::QueuingConnection" reference="/33">
|
|
||||||
<primitives name="name" className="ecore::EString"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="messageType" referenceTo="/51"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="realizes"/>
|
|
||||||
<primitives name="depth" className="ecore::EInt"/>
|
|
||||||
<primitives name="messageExchangeType" className="face::uop::MessageExchangeType"/>
|
|
||||||
<primitives name="description" className="ecore::EString"/>
|
|
||||||
<primitives name="synchronizationStyle" className="face::uop::SynchronizationStyle"/>
|
|
||||||
<primitives name="period" className="ecore::EFloat"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="FACE_PlatformDataModel" className="face::datamodel::PlatformDataModel" reference="/34">
|
|
||||||
<primitives name="description" className="ecore::EString"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="element" referenceTo="/24"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="element" referenceTo="/25"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="element" referenceTo="/54"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="element" referenceTo="/1"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="element" referenceTo="/53"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="element" referenceTo="/26"/>
|
|
||||||
<primitives name="name" className="ecore::EString"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="element" referenceTo="/23"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="element" referenceTo="/52"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="element" referenceTo="/51"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="NoName" className="face::uop::RAMMemoryRequirements" reference="/35">
|
|
||||||
<primitives name="roDataMax" className="ecore::EInt"/>
|
|
||||||
<primitives name="heapStackMin" className="ecore::EInt"/>
|
|
||||||
<primitives name="heapStackTypical" className="ecore::EInt"/>
|
|
||||||
<primitives name="heapStackMax" className="ecore::EInt"/>
|
|
||||||
<primitives name="textMax" className="ecore::EInt"/>
|
|
||||||
<primitives name="bssMax" className="ecore::EInt"/>
|
|
||||||
<primitives name="dataMax" className="ecore::EInt"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="NoName" className="face::uop::RAMMemoryRequirements" reference="/36">
|
|
||||||
<primitives name="dataMax" className="ecore::EInt"/>
|
|
||||||
<primitives name="textMax" className="ecore::EInt"/>
|
|
||||||
<primitives name="heapStackMax" className="ecore::EInt"/>
|
|
||||||
<primitives name="bssMax" className="ecore::EInt"/>
|
|
||||||
<primitives name="roDataMax" className="ecore::EInt"/>
|
|
||||||
<primitives name="heapStackMin" className="ecore::EInt"/>
|
|
||||||
<primitives name="heapStackTypical" className="ecore::EInt"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="NoName" className="face::uop::RAMMemoryRequirements" reference="/37">
|
|
||||||
<primitives name="bssMax" className="ecore::EInt"/>
|
|
||||||
<primitives name="heapStackMax" className="ecore::EInt"/>
|
|
||||||
<primitives name="roDataMax" className="ecore::EInt"/>
|
|
||||||
<primitives name="dataMax" className="ecore::EInt"/>
|
|
||||||
<primitives name="heapStackTypical" className="ecore::EInt"/>
|
|
||||||
<primitives name="textMax" className="ecore::EInt"/>
|
|
||||||
<primitives name="heapStackMin" className="ecore::EInt"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="NoName" className="face::uop::RAMMemoryRequirements" reference="/38">
|
|
||||||
<primitives name="textMax" className="ecore::EInt"/>
|
|
||||||
<primitives name="dataMax" className="ecore::EInt"/>
|
|
||||||
<primitives name="roDataMax" className="ecore::EInt"/>
|
|
||||||
<primitives name="bssMax" className="ecore::EInt"/>
|
|
||||||
<primitives name="heapStackMax" className="ecore::EInt"/>
|
|
||||||
<primitives name="heapStackTypical" className="ecore::EInt"/>
|
|
||||||
<primitives name="heapStackMin" className="ecore::EInt"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="FACE_LogicalDataModel" className="face::datamodel::LogicalDataModel" reference="/39">
|
|
||||||
<primitives xsi:type="loss:Link" name="element" referenceTo="/15"/>
|
|
||||||
<primitives name="description" className="ecore::EString"/>
|
|
||||||
<primitives name="name" className="ecore::EString"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="element" referenceTo="/70"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="element" referenceTo="/13"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="element" referenceTo="/16"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="element" referenceTo="/14"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="FACE_Architecture" className="face::ArchitectureModel" reference="/40">
|
|
||||||
<primitives xsi:type="loss:Link" name="dm" referenceTo="/64"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="um" referenceTo="/22"/>
|
|
||||||
<primitives name="description" className="ecore::EString"/>
|
|
||||||
<primitives name="name" className="ecore::EString"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="im" referenceTo="/65"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="Doppler_Log" className="face::uop::PortableComponent" reference="/41">
|
|
||||||
<primitives xsi:type="loss:Link" name="thread" referenceTo="/45"/>
|
|
||||||
<primitives name="name" className="ecore::EString"/>
|
|
||||||
<primitives name="description" className="ecore::EString"/>
|
|
||||||
<primitives name="partitionType" className="face::uop::PartitionType"/>
|
|
||||||
<primitives name="designAssuranceStandard" className="face::uop::DesignAssuranceStandard"/>
|
|
||||||
<primitives name="faceProfile" className="face::uop::FaceProfile"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="realizes"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="connection" referenceTo="/32"/>
|
|
||||||
<primitives name="transportAPILanguage" className="face::uop::ProgrammingLanguage"/>
|
|
||||||
<primitives name="designAssuranceLevel" className="face::uop::DesignAssuranceLevel"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="memoryRequirements" referenceTo="/35"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="Magnetic_Compass" className="face::uop::PortableComponent" reference="/42">
|
|
||||||
<primitives name="transportAPILanguage" className="face::uop::ProgrammingLanguage"/>
|
|
||||||
<primitives name="faceProfile" className="face::uop::FaceProfile"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="memoryRequirements" referenceTo="/36"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="realizes"/>
|
|
||||||
<primitives name="designAssuranceLevel" className="face::uop::DesignAssuranceLevel"/>
|
|
||||||
<primitives name="description" className="ecore::EString"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="thread" referenceTo="/46"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="connection" referenceTo="/6"/>
|
|
||||||
<primitives name="partitionType" className="face::uop::PartitionType"/>
|
|
||||||
<primitives name="name" className="ecore::EString"/>
|
|
||||||
<primitives name="designAssuranceStandard" className="face::uop::DesignAssuranceStandard"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="GNSS_Receiver" className="face::uop::PortableComponent" reference="/43">
|
|
||||||
<primitives xsi:type="loss:Link" name="thread" referenceTo="/47"/>
|
|
||||||
<primitives name="faceProfile" className="face::uop::FaceProfile"/>
|
|
||||||
<primitives name="designAssuranceLevel" className="face::uop::DesignAssuranceLevel"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="memoryRequirements" referenceTo="/37"/>
|
|
||||||
<primitives name="designAssuranceStandard" className="face::uop::DesignAssuranceStandard"/>
|
|
||||||
<primitives name="partitionType" className="face::uop::PartitionType"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="connection" referenceTo="/7"/>
|
|
||||||
<primitives name="name" className="ecore::EString"/>
|
|
||||||
<primitives name="transportAPILanguage" className="face::uop::ProgrammingLanguage"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="realizes"/>
|
|
||||||
<primitives name="description" className="ecore::EString"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="Display" className="face::uop::PortableComponent" reference="/44">
|
|
||||||
<primitives name="faceProfile" className="face::uop::FaceProfile"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="thread" referenceTo="/48"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="connection" referenceTo="/33"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="connection" referenceTo="/9"/>
|
|
||||||
<primitives name="partitionType" className="face::uop::PartitionType"/>
|
|
||||||
<primitives name="designAssuranceStandard" className="face::uop::DesignAssuranceStandard"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="memoryRequirements" referenceTo="/38"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="connection" referenceTo="/8"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="realizes"/>
|
|
||||||
<primitives name="name" className="ecore::EString"/>
|
|
||||||
<primitives name="description" className="ecore::EString"/>
|
|
||||||
<primitives name="transportAPILanguage" className="face::uop::ProgrammingLanguage"/>
|
|
||||||
<primitives name="designAssuranceLevel" className="face::uop::DesignAssuranceLevel"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="NoName" className="face::uop::Thread" reference="/45">
|
|
||||||
<primitives name="relativeCoreAffinity" className="ecore::EInt"/>
|
|
||||||
<primitives name="threadType" className="face::uop::ThreadType"/>
|
|
||||||
<primitives name="relativePriority" className="ecore::EInt"/>
|
|
||||||
<primitives name="period" className="ecore::EFloat"/>
|
|
||||||
<primitives name="timeCapacity" className="ecore::EFloat"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="NoName" className="face::uop::Thread" reference="/46">
|
|
||||||
<primitives name="timeCapacity" className="ecore::EFloat"/>
|
|
||||||
<primitives name="relativePriority" className="ecore::EInt"/>
|
|
||||||
<primitives name="relativeCoreAffinity" className="ecore::EInt"/>
|
|
||||||
<primitives name="period" className="ecore::EFloat"/>
|
|
||||||
<primitives name="threadType" className="face::uop::ThreadType"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="NoName" className="face::uop::Thread" reference="/47">
|
|
||||||
<primitives name="timeCapacity" className="ecore::EFloat"/>
|
|
||||||
<primitives name="relativePriority" className="ecore::EInt"/>
|
|
||||||
<primitives name="relativeCoreAffinity" className="ecore::EInt"/>
|
|
||||||
<primitives name="period" className="ecore::EFloat"/>
|
|
||||||
<primitives name="threadType" className="face::uop::ThreadType"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="NoName" className="face::uop::Thread" reference="/48">
|
|
||||||
<primitives name="relativeCoreAffinity" className="ecore::EInt"/>
|
|
||||||
<primitives name="timeCapacity" className="ecore::EFloat"/>
|
|
||||||
<primitives name="period" className="ecore::EFloat"/>
|
|
||||||
<primitives name="threadType" className="face::uop::ThreadType"/>
|
|
||||||
<primitives name="relativePriority" className="ecore::EInt"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="NoName" className="face::datamodel::platform::TemplateComposition" reference="/49">
|
|
||||||
<primitives xsi:type="loss:Link" name="type" referenceTo="/53"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="realizes" referenceTo="/27"/>
|
|
||||||
<primitives name="rolename" className="ecore::EString"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="NoName" className="face::datamodel::platform::TemplateComposition" reference="/50">
|
|
||||||
<primitives xsi:type="loss:Link" name="realizes" referenceTo="/28"/>
|
|
||||||
<primitives name="rolename" className="ecore::EString"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="type" referenceTo="/54"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="Speed_In_Knots_Int" className="face::datamodel::platform::Template" reference="/51">
|
|
||||||
<primitives name="description" className="ecore::EString"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="boundQuery" referenceTo="/23"/>
|
|
||||||
<primitives name="name" className="ecore::EString"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="effectiveQuery"/>
|
|
||||||
<primitives name="specification" className="ecore::EString"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="Heading_Int" className="face::datamodel::platform::Template" reference="/52">
|
|
||||||
<primitives xsi:type="loss:Link" name="boundQuery" referenceTo="/24"/>
|
|
||||||
<primitives name="name" className="ecore::EString"/>
|
|
||||||
<primitives name="description" className="ecore::EString"/>
|
|
||||||
<primitives name="specification" className="ecore::EString"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="effectiveQuery"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="Longitude_Int" className="face::datamodel::platform::Template" reference="/53">
|
|
||||||
<primitives xsi:type="loss:Link" name="effectiveQuery"/>
|
|
||||||
<primitives name="description" className="ecore::EString"/>
|
|
||||||
<primitives name="specification" className="ecore::EString"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="boundQuery" referenceTo="/25"/>
|
|
||||||
<primitives name="name" className="ecore::EString"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="Latitude_Int" className="face::datamodel::platform::Template" reference="/54">
|
|
||||||
<primitives name="description" className="ecore::EString"/>
|
|
||||||
<primitives name="specification" className="ecore::EString"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="effectiveQuery"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="boundQuery" referenceTo="/26"/>
|
|
||||||
<primitives name="name" className="ecore::EString"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="FACE_ConceptualDataModel" className="face::datamodel::ConceptualDataModel" reference="/55">
|
|
||||||
<primitives name="description" className="ecore::EString"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="element" referenceTo="/60"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="element" referenceTo="/57"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="element" referenceTo="/58"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="element" referenceTo="/59"/>
|
|
||||||
<primitives name="name" className="ecore::EString"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="element" referenceTo="/56"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="Speed" className="face::datamodel::conceptual::Query" reference="/56">
|
|
||||||
<primitives name="specification" className="ecore::EString"/>
|
|
||||||
<primitives name="name" className="ecore::EString"/>
|
|
||||||
<primitives name="description" className="ecore::EString"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="Angle" className="face::datamodel::conceptual::Query" reference="/57">
|
|
||||||
<primitives name="name" className="ecore::EString"/>
|
|
||||||
<primitives name="specification" className="ecore::EString"/>
|
|
||||||
<primitives name="description" className="ecore::EString"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="Longitude" className="face::datamodel::conceptual::Query" reference="/58">
|
|
||||||
<primitives name="specification" className="ecore::EString"/>
|
|
||||||
<primitives name="description" className="ecore::EString"/>
|
|
||||||
<primitives name="name" className="ecore::EString"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="Latitude" className="face::datamodel::conceptual::Query" reference="/59">
|
|
||||||
<primitives name="name" className="ecore::EString"/>
|
|
||||||
<primitives name="description" className="ecore::EString"/>
|
|
||||||
<primitives name="specification" className="ecore::EString"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="Position" className="face::datamodel::conceptual::CompositeQuery" reference="/60">
|
|
||||||
<primitives xsi:type="loss:Link" name="composition" referenceTo="/21"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="composition" referenceTo="/20"/>
|
|
||||||
<primitives name="isUnion" className="ecore::EBoolean"/>
|
|
||||||
<primitives name="description" className="ecore::EString"/>
|
|
||||||
<primitives name="name" className="ecore::EString"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="NoName" className="face::integration::UoPInputEndPoint" reference="/61">
|
|
||||||
<primitives xsi:type="loss:Link" name="connection" referenceTo="/33"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="NoName" className="face::integration::UoPInputEndPoint" reference="/62">
|
|
||||||
<primitives xsi:type="loss:Link" name="connection" referenceTo="/8"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="NoName" className="face::integration::UoPInputEndPoint" reference="/63">
|
|
||||||
<primitives xsi:type="loss:Link" name="connection" referenceTo="/9"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="FACE_DataModel" className="face::datamodel::DataModel" reference="/64">
|
|
||||||
<primitives xsi:type="loss:Link" name="ldm" referenceTo="/39"/>
|
|
||||||
<primitives name="name" className="ecore::EString"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="cdm" referenceTo="/55"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="pdm" referenceTo="/34"/>
|
|
||||||
<primitives name="description" className="ecore::EString"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="FACE_IntegrationModel" className="face::integration::IntegrationModel" reference="/65">
|
|
||||||
<primitives name="name" className="ecore::EString"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="element" referenceTo="/66"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="element" referenceTo="/67"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="element" referenceTo="/2"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="element" referenceTo="/0"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="element" referenceTo="/68"/>
|
|
||||||
<primitives name="description" className="ecore::EString"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="element" referenceTo="/69"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="Log" className="face::integration::UoPInstance" reference="/66">
|
|
||||||
<primitives name="name" className="ecore::EString"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="output" referenceTo="/10"/>
|
|
||||||
<primitives name="description" className="ecore::EString"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="realizes" referenceTo="/41"/>
|
|
||||||
<primitives name="configurationURI" className="ecore::EString"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="Compass" className="face::integration::UoPInstance" reference="/67">
|
|
||||||
<primitives name="configurationURI" className="ecore::EString"/>
|
|
||||||
<primitives name="description" className="ecore::EString"/>
|
|
||||||
<primitives name="name" className="ecore::EString"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="output" referenceTo="/11"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="realizes" referenceTo="/42"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="GPS" className="face::integration::UoPInstance" reference="/68">
|
|
||||||
<primitives name="description" className="ecore::EString"/>
|
|
||||||
<primitives name="name" className="ecore::EString"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="realizes" referenceTo="/43"/>
|
|
||||||
<primitives name="configurationURI" className="ecore::EString"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="output" referenceTo="/12"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="Display" className="face::integration::UoPInstance" reference="/69">
|
|
||||||
<primitives name="configurationURI" className="ecore::EString"/>
|
|
||||||
<primitives name="name" className="ecore::EString"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="realizes" referenceTo="/44"/>
|
|
||||||
<primitives name="description" className="ecore::EString"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="input" referenceTo="/61"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="input" referenceTo="/63"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="input" referenceTo="/62"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="Position" className="face::datamodel::logical::CompositeQuery" reference="/70">
|
|
||||||
<primitives xsi:type="loss:Link" name="composition" referenceTo="/27"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="realizes" referenceTo="/60"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="composition" referenceTo="/28"/>
|
|
||||||
<primitives name="isUnion" className="ecore::EBoolean"/>
|
|
||||||
<primitives name="name" className="ecore::EString"/>
|
|
||||||
<primitives name="description" className="ecore::EString"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="NoName" className="face::integration::TSNodeConnection" reference="/71">
|
|
||||||
<primitives xsi:type="loss:Link" name="destination" referenceTo="/29"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="source" referenceTo="/10"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="NoName" className="face::integration::TSNodeConnection" reference="/72">
|
|
||||||
<primitives xsi:type="loss:Link" name="source" referenceTo="/17"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="destination" referenceTo="/61"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="NoName" className="face::integration::TSNodeConnection" reference="/73">
|
|
||||||
<primitives xsi:type="loss:Link" name="destination" referenceTo="/30"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="source" referenceTo="/11"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="NoName" className="face::integration::TSNodeConnection" reference="/74">
|
|
||||||
<primitives xsi:type="loss:Link" name="destination" referenceTo="/62"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="source" referenceTo="/18"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="NoName" className="face::integration::TSNodeConnection" reference="/75">
|
|
||||||
<primitives xsi:type="loss:Link" name="source" referenceTo="/12"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="destination" referenceTo="/31"/>
|
|
||||||
</loss:Complex>
|
|
||||||
<loss:Complex name="NoName" className="face::integration::TSNodeConnection" reference="/76">
|
|
||||||
<primitives xsi:type="loss:Link" name="source" referenceTo="/19"/>
|
|
||||||
<primitives xsi:type="loss:Link" name="destination" referenceTo="/63"/>
|
|
||||||
</loss:Complex>
|
|
||||||
</xmi:XMI>
|
|
||||||
|
|
@ -0,0 +1,2 @@
|
||||||
|
/aaxl2loss.atl
|
||||||
|
/face2loss.atl
|
||||||
|
|
@ -1,16 +1,16 @@
|
||||||
|
|
||||||
query mm2loss =
|
query mm2loss =
|
||||||
let modulename : String = 'face2loss' in
|
let modulename : String = thisModule.inname + '2loss' in -- inname from Config
|
||||||
let ecoreClassifiers : Sequence(ECORE!EClassifier) = ECORE!EClassifier.allInstancesFrom('ECORE') in
|
let classifiers : Sequence(String) = thisModule.packageNames->collect( it | ECORE!EClassifier.allInstancesFrom(it) )->iterate( it ; acc : Set(ECORE!EClassifier) = Set{} | acc.union(it) ).asSet()->collect(item | item.toRule()) in
|
||||||
let classifiers : Sequence(String) = ECORE!EClassifier.allInstancesFrom('IN').union(ecoreClassifiers).asSet()->collect(item | item.toRule()) in
|
|
||||||
let linkRules : Sequence(String) = ECORE!EClass.allInstancesFrom('IN').asSet()->collect(cl | cl.toLink()) in
|
let linkRules : Sequence(String) = ECORE!EClass.allInstancesFrom('IN').asSet()->collect(cl | cl.toLink()) in
|
||||||
('module ' + modulename + ';\n\ncreate LOSS : OUT from MM : IN;\n\n' + thisModule.toLink + '\n' + thisModule.join(classifiers.union(linkRules), '\n').toString()).writeTo((modulename + '.atl').path);
|
('module ' + modulename + ';\n\ncreate LOSS : OUT from MM : IN;\n\n' + thisModule.toLink + '\n' + thisModule.join(classifiers.union(linkRules), '\n').toString()).writeTo((modulename + '.atl').path);
|
||||||
|
|
||||||
|
uses Config;
|
||||||
|
|
||||||
helper def : join(seq : Sequence(String), separator : String) : String =
|
helper def : join(seq : Sequence(String), separator : String) : String =
|
||||||
seq->iterate(el ; acc : String = '' | if acc = '' then el else acc + separator + el endif);
|
seq->iterate(el ; acc : String = '' | if acc = '' then el else acc + separator + el endif);
|
||||||
|
|
||||||
helper context String def : path : String =
|
helper context String def : path : String =
|
||||||
('/fr.tpt.mem4csd.loss.mm2loss/' + self);
|
('/fr.tpt.mem4csd.loss.mm2loss/transformations-gen/' + self);
|
||||||
|
|
||||||
helper context ECORE!EClassifier def : qualifiedName : String =
|
helper context ECORE!EClassifier def : qualifiedName : String =
|
||||||
self.ePackage.qualifiedName + '::' + self.name;
|
self.ePackage.qualifiedName + '::' + self.name;
|
||||||
|
|
@ -59,11 +59,12 @@ helper def : toLink : String =
|
||||||
'\t' + ')' + '\n' +
|
'\t' + ')' + '\n' +
|
||||||
'}\n';
|
'}\n';
|
||||||
|
|
||||||
|
|
||||||
helper def : referenceToPrimitive ( ref : ECORE!EReference ) : String =
|
helper def : referenceToPrimitive ( ref : ECORE!EReference ) : String =
|
||||||
if ref.many
|
if ref.many
|
||||||
then '.union(source.' + ref.name + '->collect(it | thisModule.ReferenceToLink(\'' + ref.name + '\', it)))'
|
then '.union(source.' + ref.name + '->collect(it | thisModule.ReferenceToLink(\'' + ref.name + '\', it)))'
|
||||||
else '.including(thisModule.ReferenceToLink(\'' + ref.name + '\', source.' + ref.name + '))'
|
else
|
||||||
|
'.union(Set{source.' + ref.name + '}->select( e | not e.oclIsUndefined())->collect(it | thisModule.ReferenceToLink(\'' + ref.name + '\', it)) )'
|
||||||
|
-- '.including(thisModule.ReferenceToLink(\'' + ref.name + '\', source.' + ref.name + '))'
|
||||||
endif;
|
endif;
|
||||||
|
|
||||||
helper def : attributeToPrimitive ( attr : ECORE!EAttribute ) : String =
|
helper def : attributeToPrimitive ( attr : ECORE!EAttribute ) : String =
|
||||||
|
|
@ -74,7 +75,7 @@ helper def : attributeToPrimitive ( attr : ECORE!EAttribute ) : String =
|
||||||
|
|
||||||
helper context ECORE!EClass def : toRule() : String =
|
helper context ECORE!EClass def : toRule() : String =
|
||||||
let noname : Boolean = self.getEStructuralFeature('name').oclIsUndefined() in
|
let noname : Boolean = self.getEStructuralFeature('name').oclIsUndefined() in
|
||||||
'rule CL' + self.sanitizedFullName.debug('class: ') + '2Complex {\n' +
|
'rule CL' + self.sanitizedFullName + '2Complex {\n' +
|
||||||
'\t' + 'from' + '\n' +
|
'\t' + 'from' + '\n' +
|
||||||
'\t' + 'source : IN!"' + self.qualifiedName + '" in MM (source.oclIsTypeOf(IN!"' + self.qualifiedName + '"))\n' +
|
'\t' + 'source : IN!"' + self.qualifiedName + '" in MM (source.oclIsTypeOf(IN!"' + self.qualifiedName + '"))\n' +
|
||||||
'\t' + 'to' + '\n' +
|
'\t' + 'to' + '\n' +
|
||||||
|
|
@ -1,7 +0,0 @@
|
||||||
/Complex.class
|
|
||||||
/Link.class
|
|
||||||
/LossFactory.class
|
|
||||||
/LossPackage$Literals.class
|
|
||||||
/LossPackage.class
|
|
||||||
/NamedObject.class
|
|
||||||
/Primitive.class
|
|
||||||
|
|
@ -1,6 +0,0 @@
|
||||||
/ComplexImpl.class
|
|
||||||
/LinkImpl.class
|
|
||||||
/LossFactoryImpl.class
|
|
||||||
/LossPackageImpl.class
|
|
||||||
/NamedObjectImpl.class
|
|
||||||
/PrimitiveImpl.class
|
|
||||||
|
|
@ -1,3 +0,0 @@
|
||||||
/LossAdapterFactory$1.class
|
|
||||||
/LossAdapterFactory.class
|
|
||||||
/LossSwitch.class
|
|
||||||
Loading…
Reference in New Issue