Commit 3420e26d authored by Maxime Perrotin's avatar Maxime Perrotin

Add Demo_ACN

parent d9e9b94c
--------------------------------------------------------
--! File generated by asn2aadl v2.1.39: DO NOT EDIT !
--------------------------------------------------------
--! InputASN1FileChecksum:ea2bc8085f96189ce53191fc48545a34:/home/taste/tool-src/kazoo/test/Demo_ACN/DataView.asn:
--! InputASN1FileChecksum:ee8a7e01f29874c0d50f437d5abb9599:/home/taste/tool-inst/share/taste-types/taste-types.asn:
--------------------------------------------------------
package DataView
public
with Data_Model;
with Taste;
with Base_Types;
with Deployment;
DATA Simulink_Tunable_Parameter
PROPERTIES
TASTE::Ada_Package_Name => "TASTE_Directives";
Type_Source_Name => "Simulink-Tunable-Parameter";
Deployment::ASN1_Module_Name => "TASTE-Directives";
TASTE::Forbid_in_PI => true;
END Simulink_Tunable_Parameter;
DATA Timer
PROPERTIES
TASTE::Ada_Package_Name => "TASTE_Directives";
Type_Source_Name => "Timer";
Deployment::ASN1_Module_Name => "TASTE-Directives";
TASTE::Forbid_in_PI => true;
END Timer;
DATA Taste_directive
PROPERTIES
TASTE::Ada_Package_Name => "TASTE_Directives";
Type_Source_Name => "Taste-directive";
Deployment::ASN1_Module_Name => "TASTE-Directives";
TASTE::Forbid_in_PI => true;
END Taste_directive;
data Stream_Element_Buffer
-- Root type for buffer elements
properties
Data_Model::Data_Representation => Character;
end Stream_Element_Buffer;
DATA T_Boolean
PROPERTIES
-- name of the ASN.1 source file:
Source_Text => ("/home/taste/tool-inst/share/taste-types/taste-types.asn");
TASTE::Ada_Package_Name => "TASTE_BasicTypes";
Deployment::ASN1_Module_Name => "TASTE-BasicTypes";
Source_Language => (ASN1);
-- Size of a buffer to cover all forms of message representation:
-- Real message size is 1; suggested aligned message buffer is...
Source_Data_Size => 8 Bytes;
-- name of the corresponding data type in the source file:
Type_Source_Name => "T-Boolean";
TASTE::Position_In_File => [ line => 14 ; column => 1 ; ];
-- what kind of type is this?
TASTE::ASN1_Basic_Type =>aBOOLEAN;
END T_Boolean;
DATA IMPLEMENTATION T_Boolean.impl
END T_Boolean.impl;
DATA T_Boolean_Buffer_Max
END T_Boolean_Buffer_Max;
DATA IMPLEMENTATION T_Boolean_Buffer_Max.impl
-- Buffer to hold a marshalled data of type T_Boolean
PROPERTIES
Data_Model::Data_Representation => array;
Data_Model::Dimension => (8); -- Size of the buffer
Source_Data_Size => 8 Bytes; -- Size of the buffer in bytes
Data_Model::Base_Type => (classifier (DataView::Stream_Element_Buffer));
END T_Boolean_Buffer_Max.impl;
DATA T_Boolean_Buffer
END T_Boolean_Buffer;
DATA IMPLEMENTATION T_Boolean_Buffer.impl
-- Buffer to hold a marshalled data of type T_Boolean
SUBCOMPONENTS
Buffer : data T_Boolean_Buffer_Max.impl;
Length : data Base_Types::Unsigned_32;
PROPERTIES
Data_Model::Data_Representation => Struct;
Source_Data_Size => 24 Bytes; -- Size of the buffer in bytes
END T_Boolean_Buffer.impl;
DATA T_Int32
PROPERTIES
-- name of the ASN.1 source file:
Source_Text => ("/home/taste/tool-inst/share/taste-types/taste-types.asn");
TASTE::Ada_Package_Name => "TASTE_BasicTypes";
Deployment::ASN1_Module_Name => "TASTE-BasicTypes";
Source_Language => (ASN1);
-- Size of a buffer to cover all forms of message representation:
-- Real message size is 8; suggested aligned message buffer is...
Source_Data_Size => 8 Bytes;
-- name of the corresponding data type in the source file:
Type_Source_Name => "T-Int32";
TASTE::Position_In_File => [ line => 6 ; column => 1 ; ];
-- what kind of type is this?
TASTE::ASN1_Basic_Type =>aINTEGER;
END T_Int32;
DATA IMPLEMENTATION T_Int32.impl
END T_Int32.impl;
DATA T_Int32_Buffer_Max
END T_Int32_Buffer_Max;
DATA IMPLEMENTATION T_Int32_Buffer_Max.impl
-- Buffer to hold a marshalled data of type T_Int32
PROPERTIES
Data_Model::Data_Representation => array;
Data_Model::Dimension => (8); -- Size of the buffer
Source_Data_Size => 8 Bytes; -- Size of the buffer in bytes
Data_Model::Base_Type => (classifier (DataView::Stream_Element_Buffer));
END T_Int32_Buffer_Max.impl;
DATA T_Int32_Buffer
END T_Int32_Buffer;
DATA IMPLEMENTATION T_Int32_Buffer.impl
-- Buffer to hold a marshalled data of type T_Int32
SUBCOMPONENTS
Buffer : data T_Int32_Buffer_Max.impl;
Length : data Base_Types::Unsigned_32;
PROPERTIES
Data_Model::Data_Representation => Struct;
Source_Data_Size => 24 Bytes; -- Size of the buffer in bytes
END T_Int32_Buffer.impl;
DATA T_Int8
PROPERTIES
-- name of the ASN.1 source file:
Source_Text => ("/home/taste/tool-inst/share/taste-types/taste-types.asn");
TASTE::Ada_Package_Name => "TASTE_BasicTypes";
Deployment::ASN1_Module_Name => "TASTE-BasicTypes";
Source_Language => (ASN1);
-- Size of a buffer to cover all forms of message representation:
-- Real message size is 8; suggested aligned message buffer is...
Source_Data_Size => 8 Bytes;
-- name of the corresponding data type in the source file:
Type_Source_Name => "T-Int8";
TASTE::Position_In_File => [ line => 10 ; column => 1 ; ];
-- what kind of type is this?
TASTE::ASN1_Basic_Type =>aINTEGER;
END T_Int8;
DATA IMPLEMENTATION T_Int8.impl
END T_Int8.impl;
DATA T_Int8_Buffer_Max
END T_Int8_Buffer_Max;
DATA IMPLEMENTATION T_Int8_Buffer_Max.impl
-- Buffer to hold a marshalled data of type T_Int8
PROPERTIES
Data_Model::Data_Representation => array;
Data_Model::Dimension => (8); -- Size of the buffer
Source_Data_Size => 8 Bytes; -- Size of the buffer in bytes
Data_Model::Base_Type => (classifier (DataView::Stream_Element_Buffer));
END T_Int8_Buffer_Max.impl;
DATA T_Int8_Buffer
END T_Int8_Buffer;
DATA IMPLEMENTATION T_Int8_Buffer.impl
-- Buffer to hold a marshalled data of type T_Int8
SUBCOMPONENTS
Buffer : data T_Int8_Buffer_Max.impl;
Length : data Base_Types::Unsigned_32;
PROPERTIES
Data_Model::Data_Representation => Struct;
Source_Data_Size => 24 Bytes; -- Size of the buffer in bytes
END T_Int8_Buffer.impl;
DATA T_POS
PROPERTIES
-- name of the ASN.1 source file:
Source_Text => ("/home/taste/tool-src/kazoo/test/Demo_ACN/DataView.asn");
TASTE::EncodingDefinitionFile => classifier(DataView::ACN_DataView);
TASTE::Ada_Package_Name => "MY_MODULE";
Deployment::ASN1_Module_Name => "MY-MODULE";
Source_Language => (ASN1);
-- Size of a buffer to cover all forms of message representation:
-- Real message size is 24; suggested aligned message buffer is...
Source_Data_Size => 24 Bytes;
-- name of the corresponding data type in the source file:
Type_Source_Name => "T-POS";
TASTE::Position_In_File => [ line => 3 ; column => 1 ; ];
-- what kind of type is this?
TASTE::ASN1_Basic_Type =>aCHOICE;
END T_POS;
DATA IMPLEMENTATION T_POS.impl
END T_POS.impl;
DATA T_POS_Buffer_Max
END T_POS_Buffer_Max;
DATA IMPLEMENTATION T_POS_Buffer_Max.impl
-- Buffer to hold a marshalled data of type T_POS
PROPERTIES
Data_Model::Data_Representation => array;
Data_Model::Dimension => (24); -- Size of the buffer
Source_Data_Size => 24 Bytes; -- Size of the buffer in bytes
Data_Model::Base_Type => (classifier (DataView::Stream_Element_Buffer));
END T_POS_Buffer_Max.impl;
DATA T_POS_Buffer
END T_POS_Buffer;
DATA IMPLEMENTATION T_POS_Buffer.impl
-- Buffer to hold a marshalled data of type T_POS
SUBCOMPONENTS
Buffer : data T_POS_Buffer_Max.impl;
Length : data Base_Types::Unsigned_32;
PROPERTIES
Data_Model::Data_Representation => Struct;
Source_Data_Size => 40 Bytes; -- Size of the buffer in bytes
END T_POS_Buffer.impl;
DATA T_UInt32
PROPERTIES
-- name of the ASN.1 source file:
Source_Text => ("/home/taste/tool-inst/share/taste-types/taste-types.asn");
TASTE::Ada_Package_Name => "TASTE_BasicTypes";
Deployment::ASN1_Module_Name => "TASTE-BasicTypes";
Source_Language => (ASN1);
-- Size of a buffer to cover all forms of message representation:
-- Real message size is 8; suggested aligned message buffer is...
Source_Data_Size => 8 Bytes;
-- name of the corresponding data type in the source file:
Type_Source_Name => "T-UInt32";
TASTE::Position_In_File => [ line => 8 ; column => 1 ; ];
-- what kind of type is this?
TASTE::ASN1_Basic_Type =>aINTEGER;
END T_UInt32;
DATA IMPLEMENTATION T_UInt32.impl
END T_UInt32.impl;
DATA T_UInt32_Buffer_Max
END T_UInt32_Buffer_Max;
DATA IMPLEMENTATION T_UInt32_Buffer_Max.impl
-- Buffer to hold a marshalled data of type T_UInt32
PROPERTIES
Data_Model::Data_Representation => array;
Data_Model::Dimension => (8); -- Size of the buffer
Source_Data_Size => 8 Bytes; -- Size of the buffer in bytes
Data_Model::Base_Type => (classifier (DataView::Stream_Element_Buffer));
END T_UInt32_Buffer_Max.impl;
DATA T_UInt32_Buffer
END T_UInt32_Buffer;
DATA IMPLEMENTATION T_UInt32_Buffer.impl
-- Buffer to hold a marshalled data of type T_UInt32
SUBCOMPONENTS
Buffer : data T_UInt32_Buffer_Max.impl;
Length : data Base_Types::Unsigned_32;
PROPERTIES
Data_Model::Data_Representation => Struct;
Source_Data_Size => 24 Bytes; -- Size of the buffer in bytes
END T_UInt32_Buffer.impl;
DATA T_UInt8
PROPERTIES
-- name of the ASN.1 source file:
Source_Text => ("/home/taste/tool-inst/share/taste-types/taste-types.asn");
TASTE::Ada_Package_Name => "TASTE_BasicTypes";
Deployment::ASN1_Module_Name => "TASTE-BasicTypes";
Source_Language => (ASN1);
-- Size of a buffer to cover all forms of message representation:
-- Real message size is 8; suggested aligned message buffer is...
Source_Data_Size => 8 Bytes;
-- name of the corresponding data type in the source file:
Type_Source_Name => "T-UInt8";
TASTE::Position_In_File => [ line => 12 ; column => 1 ; ];
-- what kind of type is this?
TASTE::ASN1_Basic_Type =>aINTEGER;
END T_UInt8;
DATA IMPLEMENTATION T_UInt8.impl
END T_UInt8.impl;
DATA T_UInt8_Buffer_Max
END T_UInt8_Buffer_Max;
DATA IMPLEMENTATION T_UInt8_Buffer_Max.impl
-- Buffer to hold a marshalled data of type T_UInt8
PROPERTIES
Data_Model::Data_Representation => array;
Data_Model::Dimension => (8); -- Size of the buffer
Source_Data_Size => 8 Bytes; -- Size of the buffer in bytes
Data_Model::Base_Type => (classifier (DataView::Stream_Element_Buffer));
END T_UInt8_Buffer_Max.impl;
DATA T_UInt8_Buffer
END T_UInt8_Buffer;
DATA IMPLEMENTATION T_UInt8_Buffer.impl
-- Buffer to hold a marshalled data of type T_UInt8
SUBCOMPONENTS
Buffer : data T_UInt8_Buffer_Max.impl;
Length : data Base_Types::Unsigned_32;
PROPERTIES
Data_Model::Data_Representation => Struct;
Source_Data_Size => 24 Bytes; -- Size of the buffer in bytes
END T_UInt8_Buffer.impl;
SYSTEM Taste_DataView
END Taste_DataView;
SYSTEM IMPLEMENTATION Taste_DataView.others
SUBCOMPONENTS
T_Boolean : DATA T_Boolean.impl;
T_Int32 : DATA T_Int32.impl;
T_Int8 : DATA T_Int8.impl;
T_POS : DATA T_POS.impl;
T_UInt32 : DATA T_UInt32.impl;
T_UInt8 : DATA T_UInt8.impl;
END Taste_DataView.others;
DATA ACN_DataView
PROPERTIES
Source_Text => ("/home/taste/tool-src/kazoo/test/Demo_ACN/DataView.acn");
Source_Language => (ACN);
END ACN_DataView;
end DataView;
MY-MODULE DEFINITIONS ::= BEGIN
T-POS[] {
first-choice [size 16, encoding pos-int] ,
second-choice [] {
intVal [size 5, encoding twos-complement] ,
boolVal [true-value '1'B]
}
}
END
MY-MODULE DEFINITIONS AUTOMATIC TAGS ::= BEGIN
T-POS ::= CHOICE {
first-choice INTEGER (0..10),
second-choice SEQUENCE {
intVal INTEGER (-10..10),
boolVal BOOLEAN
}
}
END
---------------------------------------------------
-- AADL2.0
-- TASTE
-- (c)Ellidiss Technologies
--
---------------------------------------------------
PACKAGE deploymentview::DV::pb
PUBLIC
WITH Taste;
WITH Deployment;
WITH TASTE_DV_Properties;
PROCESS demo
END demo;
PROCESS IMPLEMENTATION demo.others
END demo.others;
END deploymentview::DV::pb;
PACKAGE deploymentview::DV
PUBLIC
WITH ocarina_processors_x86;
WITH deploymentview::DV::pb;
WITH Taste;
WITH Deployment;
WITH interfaceview::IV;
WITH TASTE_DV_Properties;
SYSTEM pb
END pb;
SYSTEM IMPLEMENTATION pb.others
SUBCOMPONENTS
IV_A : SYSTEM interfaceview::IV::A.others {
Taste::coordinates => "841 503 1067 708";
Taste::FunctionName => "A";
};
IV_B : SYSTEM interfaceview::IV::B.others {
Taste::coordinates => "1185 559 1313 759";
Taste::FunctionName => "B";
};
IV_some_GUI : SYSTEM interfaceview::IV::some_GUI.others {
Taste::coordinates => "759 785 1154 944";
Taste::FunctionName => "some_GUI";
};
demo : PROCESS deploymentview::DV::pb::demo.others {
Taste::coordinates => "727 380 1501 995";
Deployment::Port_Number => 0;
};
native_proc : PROCESSOR ocarina_processors_x86::x86.linux {
Taste::coordinates => "652 291 1682 1031";
};
PROPERTIES
Taste::APLC_Binding => (reference (demo)) APPLIES TO IV_A;
Taste::APLC_Binding => (reference (demo)) APPLIES TO IV_B;
Taste::APLC_Binding => (reference (demo)) APPLIES TO IV_some_GUI;
Actual_Processor_Binding => (reference (native_proc)) APPLIES TO demo;
END pb.others;
SYSTEM deploymentview
END deploymentview;
SYSTEM IMPLEMENTATION deploymentview.others
SUBCOMPONENTS
pb : SYSTEM pb.others {
Taste::coordinates => "634 269 2021 2031";
};
interfaceview : SYSTEM interfaceview::IV::interfaceview.others;
END deploymentview.others;
PROPERTIES
Taste::coordinates => "0 0 2970 2100";
Taste::version => "1.3.13";
Taste::interfaceView => "InterfaceView.aadl";
Taste::HWLibraries => ("../../../../tool-inst/share/ocarina/AADLv2/ocarina_components.aadl");
END deploymentview::DV;
-- copied aadl libraries
\ No newline at end of file
---------------------------------------------------
-- AADL2.0
-- TASTE
-- (c)Ellidiss Technologies
--
---------------------------------------------------
PACKAGE interfaceview::FV::A
PUBLIC
WITH Taste;
WITH DataView;
WITH TASTE_IV_Properties;
SUBPROGRAM PI_Cyclic_Run
PROPERTIES
Taste::Associated_Queue_Size => 1;
END PI_Cyclic_Run;
SUBPROGRAM IMPLEMENTATION PI_Cyclic_Run.others
END PI_Cyclic_Run.others;
SUBPROGRAM PI_from_gui
FEATURES
position : IN PARAMETER DataView::T_POS {
Taste::encoding => NATIVE;
};
PROPERTIES
Taste::Associated_Queue_Size => 1;
END PI_from_gui;
SUBPROGRAM IMPLEMENTATION PI_from_gui.others
END PI_from_gui.others;
SUBPROGRAM RI_Hi
END RI_Hi;
SUBPROGRAM IMPLEMENTATION RI_Hi.others
END RI_Hi.others;
SUBPROGRAM RI_to_gui
FEATURES
position : IN PARAMETER DataView::T_POS {
Taste::encoding => NATIVE;
};
END RI_to_gui;
SUBPROGRAM IMPLEMENTATION RI_to_gui.others
END RI_to_gui.others;
END interfaceview::FV::A;
PACKAGE interfaceview::FV::B
PUBLIC
WITH Taste;
WITH DataView;
WITH TASTE_IV_Properties;
SUBPROGRAM PI_Hello
FEATURES
in_param : IN PARAMETER DataView::T_POS {
Taste::encoding => ACN;
};
PROPERTIES
Taste::Associated_Queue_Size => 1;
END PI_Hello;
SUBPROGRAM IMPLEMENTATION PI_Hello.others
END PI_Hello.others;
END interfaceview::FV::B;
PACKAGE interfaceview::FV::some_GUI
PUBLIC
WITH Taste;
WITH DataView;
WITH TASTE_IV_Properties;
SUBPROGRAM PI_to_gui
FEATURES
position : IN PARAMETER DataView::T_POS {
Taste::encoding => NATIVE;
};
PROPERTIES
Taste::Associated_Queue_Size => 1;
END PI_to_gui;
SUBPROGRAM IMPLEMENTATION PI_to_gui.others
END PI_to_gui.others;
SUBPROGRAM RI_from_gui
FEATURES
position : IN PARAMETER DataView::T_POS {
Taste::encoding => NATIVE;
};
END RI_from_gui;
SUBPROGRAM IMPLEMENTATION RI_from_gui.others
END RI_from_gui.others;
END interfaceview::FV::some_GUI;
PACKAGE interfaceview::IV
PUBLIC
WITH interfaceview::FV::A;
WITH interfaceview::FV::B;
WITH interfaceview::FV::some_GUI;
WITH interfaceview::FV;
WITH Taste;
WITH DataView;
WITH TASTE_IV_Properties;
SYSTEM A
FEATURES
PI_Cyclic_Run : PROVIDES SUBPROGRAM ACCESS interfaceview::FV::A::PI_Cyclic_Run.others {
Taste::coordinates => "229 490";
Taste::RCMoperationKind => cyclic;
Taste::RCMperiod => 2000 ms;
Taste::Deadline => 0 ms;
Taste::InterfaceName => "Cyclic_Run";
};
PI_from_gui : PROVIDES SUBPROGRAM ACCESS interfaceview::FV::A::PI_from_gui.others {
Taste::coordinates => "508 1015";
Taste::RCMoperationKind => sporadic;
Taste::RCMperiod => 0 ms;
Taste::Deadline => 0 ms;
Taste::InterfaceName => "from_gui";
};
RI_Hi : REQUIRES SUBPROGRAM ACCESS interfaceview::FV::B::PI_Hello.others {
Taste::coordinates => "1019 413";
Taste::RCMoperationKind => sporadic;
Taste::InterfaceName => "Hi";
Taste::labelInheritance => "true";
};
RI_to_gui : REQUIRES SUBPROGRAM ACCESS interfaceview::FV::some_GUI::PI_to_gui.others {
Taste::coordinates => "882 1015";
Taste::RCMoperationKind => any;
Taste::InterfaceName => "to_gui";
Taste::labelInheritance => "true";
};
PROPERTIES
Source_Language => (C);
END A;
SYSTEM IMPLEMENTATION A.others
SUBCOMPONENTS
Cyclic_Run_impl : SUBPROGRAM interfaceview::FV::A::PI_Cyclic_Run.others {
Compute_Execution_Time => 0 ms .. 0 ms;
};
from_gui_impl : SUBPROGRAM interfaceview::FV::A::PI_from_gui.others {
Compute_Execution_Time => 0 ms .. 0 ms;
};
CONNECTIONS
OpToPICnx_Cyclic_Run_impl : SUBPROGRAM ACCESS Cyclic_Run_impl -> PI_Cyclic_Run;
OpToPICnx_from_gui_impl : SUBPROGRAM ACCESS from_gui_impl -> PI_from_gui;
END A.others;
SYSTEM B
FEATURES
PI_Hello : PROVIDES SUBPROGRAM ACCESS interfaceview::FV::B::PI_Hello.others {
Taste::coordinates => "1719 413";
Taste::RCMoperationKind => sporadic;
Taste::RCMperiod => 0 ms;
Taste::Deadline => 0 ms;
Taste::InterfaceName => "Hello";
};
PROPERTIES
Source_Language => (C);
END B;
SYSTEM IMPLEMENTATION B.others
SUBCOMPONENTS
Hello_impl : SUBPROGRAM interfaceview::FV::B::PI_Hello.others {
Compute_Execution_Time => 0 ms .. 0 ms;
};
CONNECTIONS
OpToPICnx_Hello_impl : SUBPROGRAM ACCESS Hello_impl -> PI_Hello;
END B.others;
SYSTEM some_GUI
FEATURES
PI_to_gui : PROVIDES SUBPROGRAM ACCESS interfaceview::FV::some_GUI::PI_to_gui.others {
Taste::coordinates => "887 1308";
Taste::RCMoperationKind => sporadic;
Taste::RCMperiod => 0 ms;
Taste::Deadline => 0 ms;
Taste::InterfaceName => "to_gui";
};
RI_from_gui : REQUIRES SUBPROGRAM ACCESS interfaceview::FV::A::PI_from_gui.others {
Taste::coordinates => "513 1308";
Taste::RCMoperationKind => any;
Taste::InterfaceName => "from_gui";
Taste::labelInheritance => "true";
};
PROPERTIES
Source_Language => (GUI);
END some_GUI;
SYSTEM IMPLEMENTATION some_GUI.others
SUBCOMPONENTS
to_gui_impl : SUBPROGRAM interfaceview::FV::some_GUI::PI_to_gui.others {
Compute_Execution_Time => 0 ms .. 0 ms;
};
CONNECTIONS
OpToPICnx_to_gui_impl : SUBPROGRAM ACCESS to_gui_impl -> PI_to_gui;
END some_GUI.others;
SYSTEM interfaceview
END interfaceview;
SYSTEM IMPLEMENTATION interfaceview.others
SUBCOMPONENTS