public class ASME2SSME_Translate_Subprogram extends ASME2SSME_Translate_Property
ACTUAL_CONNECTION_BINDING_ID, ACTUAL_LATENCY_ID, ACTUAL_MEMORY_BINDING_ID, ACTUAL_PROCESSOR_BINDING_ID, CLOCK_PERIOD_ID, COMPUTE_EXECUTION_TIME, COMPUTE_EXECUTION_TIME_PROPERTY_ID, DEADLINE_ID, DEQUEUE_PROTOCOL_ID, DEQUEUE_PROTOCOL_PROPERTY_ID, DEQUEUED_ITEMS_ID, DEQUEUED_ITEMS_PROPERTY_ID, DEVICE_DISPATCH_PROTOCOL_ID, DISPATCH_PROTOCOL_ID, DISPATCH_PROTOCOL_PROPERTY_ID, FAN_OUT_POLICY_ID, FLOWLATENCY_ID, FROZEN_TIME_EVENT_ID, INPUT_TIME_PROPERTY_ID, INPUT_TIME_REFERENCE_TIME_ID, INPUT_TIME_REFERENCE_TIME_PROPERTY_ID, LATENCY_ID, LATENCY_PROPERTY_ID, LATENCY_TIME_EVENT_ID, OUTPUT_TIME_EVENT_ID, OUTPUT_TIME_PROPERTY_ID, OUTPUT_TIME_REFERENCE_TIME_ID, OUTPUT_TIME_REFERENCE_TIME_PROPERTY_ID, OVERFLOW_HANDLING_PROTOCOL_ID, OVERFLOW_HANDLING_PROTOCOL_PROPERTY_ID, PERIOD_ID, PERIOD_PROPERTY, PRIORITY_ID, PROPERTY_ID, QUEUE_PROCESSING_PROTOCOL_ID, QUEUE_PROCESSING_PROTOCOL_PROPERTY_ID, QUEUE_SIZE_ID, QUEUE_SIZE_PROPERTY_ID, READ_TIME_ID, READ_TIME_PROPERTY_ID, REFERENCE_TIME_EVENT_ID, SUPPORTED_DISPATCH_PROTOCOLS, TIME_OFFSET_ID, TIME_OFFSET_PROPERTY_ID, TIME_UNITS_ID, TIMING_ID, TIMING_PROPERTY_ID
ALARM_ID, COMPLETE_ID, COMPLETION_ID, CTL1_ID, CTL2_ID, DISPATCH_ID, ERROR_ID, NameList, RESUME_ID, START_ID, TIME1_ID, TIME2_ID, TOP_ID, TREAD_ID, TRESET_ID, TWRITE_ID
Constructor and Description |
---|
ASME2SSME_Translate_Subprogram() |
Modifier and Type | Method and Description |
---|---|
void |
ASME2SSME_Create_SharedSubprogram(java.lang.String sp_name,
java.lang.String label,
ProcessModelImpl vprocess,
ProcessModelImpl sp_process)
Translates a shared subprogram as a shared Signal process.
|
void |
ASME2SSME_SharedSubprogram_Call_Sync_x(java.lang.String sp_name,
ProcessModelImpl vprocess,
org.osate.aadl2.ProcessImplementation pimpl)
For a shared subprogram xx, give the clock of in puts: l_x ^= t1 ^+ t2 ^+
... where "l" is a local short name for the subprogram xx, l_x is a local
signal that represents in struct x, each ti is a local signal that
represents a thread's call subprogram or requires subprogram access
|
void |
ASME2SSME_SharedSubprogram_Sync_y(java.lang.String sp_name,
ProcessModelImpl vprocess,
org.osate.aadl2.ProcessImplementation pimpl)
For a shared subprogram xx, give the clock of out puts: l_y ^= l_id ^=
l_x where "l" is a local short name for the subprogram xx,
|
ProcessModelImpl |
ASME2SSME_SubprogramImpl(org.osate.aadl2.SubprogramImplementation subp_impl,
ModuleImpl vmodule)
Returns a Signal process that represents a device implementation
component.
|
ProcessModelImpl |
ASME2SSME_SubprogramType(org.osate.aadl2.SubprogramType subp_type,
ModuleImpl vmodule)
Returns a Signal process that represents a subprogram type component
An in event "call" is added to give the clock when the subprogram is
called.
|
void |
ASME2SSME_SubThread_SubSubprogram_Call_Sync_x(java.lang.String sp_name,
ProcessModelImpl vprocess,
org.osate.aadl2.ProcessImplementation pimpl)
For a subprogram (type or implementatin) named xx (xx is a sub subprogram
of a sub thread t in process pimpl): give the clock of in puts: l_x ^= t1
^+ t2 ^+ ... where "l_x" is a local shared signal that represents sp_x
each ti is a local signal that represents a thread's call subprogram or
requires subprogram access
|
void |
ASME2SSME_SubThread_SubSubprogram_Sync_y(java.lang.String sp_name,
ProcessModelImpl vprocess,
org.osate.aadl2.ProcessImplementation pimpl)
For a subprogram (type or implementatin) named xx (xx is a sub subprogram
of a sub thread t in process pimpl): give the clock of out puts: l_y ^=
l_id ^= l_x where "l" is a local short name for the subprogram xx,
|
ASME2SSME_Actual_Connection_Binding_Property, ASME2SSME_Actual_Memory_Binding_Property, ASME2SSME_Actual_Processor_Binding_Property, ASME2SSME_ActualLatency_Property_Call, ASME2SSME_Clock_Period_Property, ASME2SSME_Component_Properties_Call, ASME2SSME_Deadline_Property, ASME2SSME_Dequeue_Protocol_Property_Call, ASME2SSME_Dequeue_Protocol, ASME2SSME_Dequeued_Items_Property_Call, ASME2SSME_Dequeued_Items, ASME2SSME_Device_Dispatch_Protocol_Property, ASME2SSME_Device_property_call, ASME2SSME_Dispatch_Protocol_Property, ASME2SSME_Fan_Out_Policy_Property_Call, ASME2SSME_FlowLatency_Property_Call, ASME2SSME_Input_Time_Reference_Time_Property_Call, ASME2SSME_InputTime, ASME2SSME_Latency_Property_Call, ASME2SSME_Output_Time_Reference_Time_Property_Call, ASME2SSME_OutputTime, ASME2SSME_Overflow_Handling_Protocol_Property_Call, ASME2SSME_Overflow_Handling_Protocol, ASME2SSME_Period_Property, ASME2SSME_Priority_Property_Call, ASME2SSME_Property_Call_withName, ASME2SSME_Property_Call, ASME2SSME_PropertySet, ASME2SSME_Queue_Processing_Protocol_Property_Call, ASME2SSME_Queue_Processing_Protocol, ASME2SSME_Queue_Size_Property_Call, ASME2SSME_Queue_Size, ASME2SSME_Read_Time_Property, ASME2SSME_Source_Name, ASME2SSME_Time_Offset_Property_Call, ASME2SSME_Time_Unit_ConstantEnum, ASME2SSME_Timing_Property_Call, ASME2SSME_Timing, Name_of_Reference_data_classifier, read_PropertyAssociation
Generate_Process_Instance_comment, Get_top_sname, getSname, Name_of_Bus, Name_of_Connection, Name_of_CTL1_type, Name_of_CTL2_type, Name_of_Data, Name_of_DataBundle, Name_of_DataReadTime, Name_of_DataReset, Name_of_DataType, Name_of_DataWriteTime, Name_of_Device, Name_of_FeatureGroup, Name_of_FeatureGroupType, Name_of_Flow, Name_of_Local_Signal, Name_of_Memory, Name_of_ParameterConnection, Name_of_PortGroup, Name_of_PortGroupType, Name_of_Process, Name_of_Processor, Name_of_Subprogram_Struct_In, Name_of_Subprogram_Struct_Out, Name_of_Subprogram, Name_of_SubprogramCall, Name_of_System, Name_of_Thread, Name_of_ThreadDataPort, Name_of_ThreadEventDataPort, Name_of_ThreadEventPort, Name_of_ThreadTimeBundle, Name_of_TriggerDispatch_Event, Name_of_Type_Process, Trace
public ProcessModelImpl ASME2SSME_SubprogramType(org.osate.aadl2.SubprogramType subp_type, ModuleImpl vmodule)
An in event "call" is added to give the clock when the subprogram is called. Gets the out event or event data ports of this subprogram type, and translates them as the output of the interface Gets the in/out parameters, and translates them as the input/output
subp_type
- a subprogram type componentpublic ProcessModelImpl ASME2SSME_SubprogramImpl(org.osate.aadl2.SubprogramImplementation subp_impl, ModuleImpl vmodule)
This Signal process is named by a method Name_of_Subprogram(). An empty skeleton process is provided.
d
- a subprogram implementation componentpublic void ASME2SSME_Create_SharedSubprogram(java.lang.String sp_name, java.lang.String label, ProcessModelImpl vprocess, ProcessModelImpl sp_process)
sp_name
- AADL subprogram (type or implementation) (original) namelabel
- subprogram subcomponent namevprocess
- the upper level processsp_process
- the Signal process that represents the subprogrampublic void ASME2SSME_SharedSubprogram_Call_Sync_x(java.lang.String sp_name, ProcessModelImpl vprocess, org.osate.aadl2.ProcessImplementation pimpl)
sp_name
- a string name of AADL subprogram type of implementationvprocess
- Signal process that represents AADL process implementationpublic void ASME2SSME_SharedSubprogram_Sync_y(java.lang.String sp_name, ProcessModelImpl vprocess, org.osate.aadl2.ProcessImplementation pimpl)
sp_name
- a string name of AADL subprogram type of implementationvprocess
- Signal process that represents AADL process implementationpublic void ASME2SSME_SubThread_SubSubprogram_Call_Sync_x(java.lang.String sp_name, ProcessModelImpl vprocess, org.osate.aadl2.ProcessImplementation pimpl)
sp_name
- a string name of AADL subprogram type of implementationvprocess
- Signal process that represents AADL process implementationpublic void ASME2SSME_SubThread_SubSubprogram_Sync_y(java.lang.String sp_name, ProcessModelImpl vprocess, org.osate.aadl2.ProcessImplementation pimpl)
sp_name
- a string name of AADL subprogram type of implementationvprocess
- Signal process that represents AADL process implementation