| <?xml version="1.0" encoding="UTF-8" standalone="no"?> |
| <xsd:schema xmlns:am="http://app4mc.eclipse.org/amalthea/0.9.7" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:xsd="http://www.w3.org/2001/XMLSchema" ecore:nsPrefix="am" ecore:package="org.eclipse.app4mc.amalthea.model" targetNamespace="http://app4mc.eclipse.org/amalthea/0.9.7"> |
| <xsd:import namespace="http://www.eclipse.org/emf/2002/Ecore" schemaLocation="platform:/plugin/org.eclipse.emf.ecore/model/Ecore.xsd"/> |
| <xsd:annotation> |
| <xsd:documentation>* |
| ******************************************************************************* |
| Copyright (c) 2015-2020 Robert Bosch GmbH and others. |
| |
| This program and the accompanying materials are made |
| available under the terms of the Eclipse Public License 2.0 |
| which is available at https://www.eclipse.org/legal/epl-2.0/ |
| |
| SPDX-License-Identifier: EPL-2.0 |
| *******************************************************************************</xsd:documentation> |
| </xsd:annotation> |
| <xsd:element ecore:ignore="true" name="Amalthea" type="am:Amalthea"/> |
| <xsd:element ecore:ignore="true" name="CommonElements" type="am:CommonElements"/> |
| <xsd:element ecore:ignore="true" name="BaseObject" type="am:BaseObject"/> |
| <xsd:element ecore:ignore="true" name="ReferableObject" type="am:ReferableObject"/> |
| <xsd:element ecore:ignore="true" name="ReferableBaseObject" type="am:ReferableBaseObject"/> |
| <xsd:element ecore:ignore="true" name="IAnnotatable" type="am:IAnnotatable"/> |
| <xsd:element ecore:ignore="true" name="ITaggable" type="am:ITaggable"/> |
| <xsd:element ecore:ignore="true" name="INamed" type="am:INamed"/> |
| <xsd:element ecore:ignore="true" name="IReferable" type="am:IReferable"/> |
| <xsd:element ecore:ignore="true" name="IDisplayName" type="am:IDisplayName"/> |
| <xsd:element ecore:ignore="true" name="IDescription" type="am:IDescription"/> |
| <xsd:element ecore:ignore="true" name="INamespaceMember" type="am:INamespaceMember"/> |
| <xsd:element ecore:ignore="true" name="Tag" type="am:Tag"/> |
| <xsd:element ecore:ignore="true" name="Namespace" type="am:Namespace"/> |
| <xsd:element ecore:ignore="true" name="Classifier" type="am:Classifier"/> |
| <xsd:element ecore:ignore="true" name="CoreClassifier" type="am:CoreClassifier"/> |
| <xsd:element ecore:ignore="true" name="MemoryClassifier" type="am:MemoryClassifier"/> |
| <xsd:element ecore:ignore="true" name="TransmissionPolicy" type="am:TransmissionPolicy"/> |
| <xsd:element ecore:ignore="true" name="Quantity" type="am:Quantity"/> |
| <xsd:element ecore:ignore="true" name="TimeComparable" type="am:TimeComparable"/> |
| <xsd:element ecore:ignore="true" name="Time" type="am:Time"/> |
| <xsd:element ecore:ignore="true" name="Frequency" type="am:Frequency"/> |
| <xsd:element ecore:ignore="true" name="Voltage" type="am:Voltage"/> |
| <xsd:element ecore:ignore="true" name="DataSize" type="am:DataSize"/> |
| <xsd:element ecore:ignore="true" name="DataRateComparable" type="am:DataRateComparable"/> |
| <xsd:element ecore:ignore="true" name="DataRate" type="am:DataRate"/> |
| <xsd:element ecore:ignore="true" name="CustomProperty" type="am:CustomProperty"/> |
| <xsd:element ecore:ignore="true" name="Value" type="am:Value"/> |
| <xsd:element ecore:ignore="true" name="ListObject" type="am:ListObject"/> |
| <xsd:element ecore:ignore="true" name="StringObject" type="am:StringObject"/> |
| <xsd:element ecore:ignore="true" name="BigIntegerObject" type="am:BigIntegerObject"/> |
| <xsd:element ecore:ignore="true" name="ReferenceObject" type="am:ReferenceObject"/> |
| <xsd:element ecore:ignore="true" name="IntegerObject" type="am:IntegerObject"/> |
| <xsd:element ecore:ignore="true" name="LongObject" type="am:LongObject"/> |
| <xsd:element ecore:ignore="true" name="FloatObject" type="am:FloatObject"/> |
| <xsd:element ecore:ignore="true" name="DoubleObject" type="am:DoubleObject"/> |
| <xsd:element ecore:ignore="true" name="BooleanObject" type="am:BooleanObject"/> |
| <xsd:element ecore:ignore="true" name="NumericStatistic" type="am:NumericStatistic"/> |
| <xsd:element ecore:ignore="true" name="MinAvgMaxStatistic" type="am:MinAvgMaxStatistic"/> |
| <xsd:element ecore:ignore="true" name="SingleValueStatistic" type="am:SingleValueStatistic"/> |
| <xsd:element ecore:ignore="true" name="ITimeDeviation" type="am:ITimeDeviation"/> |
| <xsd:element ecore:ignore="true" name="TimeInterval" type="am:TimeInterval"/> |
| <xsd:element ecore:ignore="true" name="TimeConstant" type="am:TimeConstant"/> |
| <xsd:element ecore:ignore="true" name="TimeHistogram" type="am:TimeHistogram"/> |
| <xsd:element ecore:ignore="true" name="TimeHistogramEntry" type="am:TimeHistogramEntry"/> |
| <xsd:element ecore:ignore="true" name="BoundedTimeDistribution" type="am:BoundedTimeDistribution"/> |
| <xsd:element ecore:ignore="true" name="TruncatedTimeDistribution" type="am:TruncatedTimeDistribution"/> |
| <xsd:element ecore:ignore="true" name="TimeBoundaries" type="am:TimeBoundaries"/> |
| <xsd:element ecore:ignore="true" name="TimeStatistics" type="am:TimeStatistics"/> |
| <xsd:element ecore:ignore="true" name="TimeUniformDistribution" type="am:TimeUniformDistribution"/> |
| <xsd:element ecore:ignore="true" name="TimeGaussDistribution" type="am:TimeGaussDistribution"/> |
| <xsd:element ecore:ignore="true" name="TimeWeibullEstimatorsDistribution" type="am:TimeWeibullEstimatorsDistribution"/> |
| <xsd:element ecore:ignore="true" name="TimeBetaDistribution" type="am:TimeBetaDistribution"/> |
| <xsd:element ecore:ignore="true" name="IDiscreteValueDeviation" type="am:IDiscreteValueDeviation"/> |
| <xsd:element ecore:ignore="true" name="DiscreteValueInterval" type="am:DiscreteValueInterval"/> |
| <xsd:element ecore:ignore="true" name="DiscreteValueConstant" type="am:DiscreteValueConstant"/> |
| <xsd:element ecore:ignore="true" name="DiscreteValueHistogram" type="am:DiscreteValueHistogram"/> |
| <xsd:element ecore:ignore="true" name="DiscreteValueHistogramEntry" type="am:DiscreteValueHistogramEntry"/> |
| <xsd:element ecore:ignore="true" name="BoundedDiscreteValueDistribution" type="am:BoundedDiscreteValueDistribution"/> |
| <xsd:element ecore:ignore="true" name="TruncatedDiscreteValueDistribution" type="am:TruncatedDiscreteValueDistribution"/> |
| <xsd:element ecore:ignore="true" name="DiscreteValueBoundaries" type="am:DiscreteValueBoundaries"/> |
| <xsd:element ecore:ignore="true" name="DiscreteValueStatistics" type="am:DiscreteValueStatistics"/> |
| <xsd:element ecore:ignore="true" name="DiscreteValueUniformDistribution" type="am:DiscreteValueUniformDistribution"/> |
| <xsd:element ecore:ignore="true" name="DiscreteValueGaussDistribution" type="am:DiscreteValueGaussDistribution"/> |
| <xsd:element ecore:ignore="true" name="DiscreteValueWeibullEstimatorsDistribution" type="am:DiscreteValueWeibullEstimatorsDistribution"/> |
| <xsd:element ecore:ignore="true" name="DiscreteValueBetaDistribution" type="am:DiscreteValueBetaDistribution"/> |
| <xsd:element ecore:ignore="true" name="IContinuousValueDeviation" type="am:IContinuousValueDeviation"/> |
| <xsd:element ecore:ignore="true" name="ContinuousValueInterval" type="am:ContinuousValueInterval"/> |
| <xsd:element ecore:ignore="true" name="ContinuousValueConstant" type="am:ContinuousValueConstant"/> |
| <xsd:element ecore:ignore="true" name="ContinuousValueHistogram" type="am:ContinuousValueHistogram"/> |
| <xsd:element ecore:ignore="true" name="ContinuousValueHistogramEntry" type="am:ContinuousValueHistogramEntry"/> |
| <xsd:element ecore:ignore="true" name="BoundedContinuousValueDistribution" type="am:BoundedContinuousValueDistribution"/> |
| <xsd:element ecore:ignore="true" name="TruncatedContinuousValueDistribution" type="am:TruncatedContinuousValueDistribution"/> |
| <xsd:element ecore:ignore="true" name="ContinuousValueBoundaries" type="am:ContinuousValueBoundaries"/> |
| <xsd:element ecore:ignore="true" name="ContinuousValueStatistics" type="am:ContinuousValueStatistics"/> |
| <xsd:element ecore:ignore="true" name="ContinuousValueUniformDistribution" type="am:ContinuousValueUniformDistribution"/> |
| <xsd:element ecore:ignore="true" name="ContinuousValueGaussDistribution" type="am:ContinuousValueGaussDistribution"/> |
| <xsd:element ecore:ignore="true" name="ContinuousValueWeibullEstimatorsDistribution" type="am:ContinuousValueWeibullEstimatorsDistribution"/> |
| <xsd:element ecore:ignore="true" name="ContinuousValueBetaDistribution" type="am:ContinuousValueBetaDistribution"/> |
| <xsd:element ecore:ignore="true" name="Mode" type="am:Mode"/> |
| <xsd:element ecore:ignore="true" name="NumericMode" type="am:NumericMode"/> |
| <xsd:element ecore:ignore="true" name="EnumMode" type="am:EnumMode"/> |
| <xsd:element ecore:ignore="true" name="ModeLiteral" type="am:ModeLiteral"/> |
| <xsd:element ecore:ignore="true" name="ComponentsModel" type="am:ComponentsModel"/> |
| <xsd:element ecore:ignore="true" name="IComponentContainer" type="am:IComponentContainer"/> |
| <xsd:element ecore:ignore="true" name="IInterfaceContainer" type="am:IInterfaceContainer"/> |
| <xsd:element ecore:ignore="true" name="ISystem" type="am:ISystem"/> |
| <xsd:element ecore:ignore="true" name="ComponentInterface" type="am:ComponentInterface"/> |
| <xsd:element ecore:ignore="true" name="MainInterface" type="am:MainInterface"/> |
| <xsd:element ecore:ignore="true" name="SubInterface" type="am:SubInterface"/> |
| <xsd:element ecore:ignore="true" name="ComponentPort" type="am:ComponentPort"/> |
| <xsd:element ecore:ignore="true" name="ComponentStructure" type="am:ComponentStructure"/> |
| <xsd:element ecore:ignore="true" name="IComponentStructureMember" type="am:IComponentStructureMember"/> |
| <xsd:element ecore:ignore="true" name="Component" type="am:Component"/> |
| <xsd:element ecore:ignore="true" name="Composite" type="am:Composite"/> |
| <xsd:element ecore:ignore="true" name="System" type="am:System"/> |
| <xsd:element ecore:ignore="true" name="ComponentInstance" type="am:ComponentInstance"/> |
| <xsd:element ecore:ignore="true" name="Connector" type="am:Connector"/> |
| <xsd:element ecore:ignore="true" name="InterfaceChannel" type="am:InterfaceChannel"/> |
| <xsd:element ecore:ignore="true" name="QualifiedPort" type="am:QualifiedPort"/> |
| <xsd:element ecore:ignore="true" name="ConfigModel" type="am:ConfigModel"/> |
| <xsd:element ecore:ignore="true" name="EventConfig" type="am:EventConfig"/> |
| <xsd:element ecore:ignore="true" name="ConstraintsModel" type="am:ConstraintsModel"/> |
| <xsd:element ecore:ignore="true" name="RunnableSequencingConstraint" type="am:RunnableSequencingConstraint"/> |
| <xsd:element ecore:ignore="true" name="AffinityConstraint" type="am:AffinityConstraint"/> |
| <xsd:element ecore:ignore="true" name="SeparationConstraint" type="am:SeparationConstraint"/> |
| <xsd:element ecore:ignore="true" name="PairingConstraint" type="am:PairingConstraint"/> |
| <xsd:element ecore:ignore="true" name="ProcessConstraint" type="am:ProcessConstraint"/> |
| <xsd:element ecore:ignore="true" name="RunnableConstraint" type="am:RunnableConstraint"/> |
| <xsd:element ecore:ignore="true" name="DataConstraint" type="am:DataConstraint"/> |
| <xsd:element ecore:ignore="true" name="RunnableSeparationConstraint" type="am:RunnableSeparationConstraint"/> |
| <xsd:element ecore:ignore="true" name="ProcessSeparationConstraint" type="am:ProcessSeparationConstraint"/> |
| <xsd:element ecore:ignore="true" name="DataSeparationConstraint" type="am:DataSeparationConstraint"/> |
| <xsd:element ecore:ignore="true" name="RunnablePairingConstraint" type="am:RunnablePairingConstraint"/> |
| <xsd:element ecore:ignore="true" name="ProcessPairingConstraint" type="am:ProcessPairingConstraint"/> |
| <xsd:element ecore:ignore="true" name="DataPairingConstraint" type="am:DataPairingConstraint"/> |
| <xsd:element ecore:ignore="true" name="RunnableConstraintTarget" type="am:RunnableConstraintTarget"/> |
| <xsd:element ecore:ignore="true" name="ProcessConstraintTarget" type="am:ProcessConstraintTarget"/> |
| <xsd:element ecore:ignore="true" name="DataConstraintTarget" type="am:DataConstraintTarget"/> |
| <xsd:element ecore:ignore="true" name="TargetMemory" type="am:TargetMemory"/> |
| <xsd:element ecore:ignore="true" name="TargetCore" type="am:TargetCore"/> |
| <xsd:element ecore:ignore="true" name="TargetScheduler" type="am:TargetScheduler"/> |
| <xsd:element ecore:ignore="true" name="LabelGroup" type="am:LabelGroup"/> |
| <xsd:element ecore:ignore="true" name="RunnableGroup" type="am:RunnableGroup"/> |
| <xsd:element ecore:ignore="true" name="ProcessGroup" type="am:ProcessGroup"/> |
| <xsd:element ecore:ignore="true" name="LabelEntityGroup" type="am:LabelEntityGroup"/> |
| <xsd:element ecore:ignore="true" name="RunnableEntityGroup" type="am:RunnableEntityGroup"/> |
| <xsd:element ecore:ignore="true" name="ProcessEntityGroup" type="am:ProcessEntityGroup"/> |
| <xsd:element ecore:ignore="true" name="TagGroup" type="am:TagGroup"/> |
| <xsd:element ecore:ignore="true" name="AbstractEventChain" type="am:AbstractEventChain"/> |
| <xsd:element ecore:ignore="true" name="EventChain" type="am:EventChain"/> |
| <xsd:element ecore:ignore="true" name="SubEventChain" type="am:SubEventChain"/> |
| <xsd:element ecore:ignore="true" name="EventChainItem" type="am:EventChainItem"/> |
| <xsd:element ecore:ignore="true" name="EventChainReference" type="am:EventChainReference"/> |
| <xsd:element ecore:ignore="true" name="EventChainContainer" type="am:EventChainContainer"/> |
| <xsd:element ecore:ignore="true" name="TimingConstraint" type="am:TimingConstraint"/> |
| <xsd:element ecore:ignore="true" name="PhysicalSectionConstraint" type="am:PhysicalSectionConstraint"/> |
| <xsd:element ecore:ignore="true" name="SynchronizationConstraint" type="am:SynchronizationConstraint"/> |
| <xsd:element ecore:ignore="true" name="EventSynchronizationConstraint" type="am:EventSynchronizationConstraint"/> |
| <xsd:element ecore:ignore="true" name="EventChainSynchronizationConstraint" type="am:EventChainSynchronizationConstraint"/> |
| <xsd:element ecore:ignore="true" name="DelayConstraint" type="am:DelayConstraint"/> |
| <xsd:element ecore:ignore="true" name="EventChainLatencyConstraint" type="am:EventChainLatencyConstraint"/> |
| <xsd:element ecore:ignore="true" name="RepetitionConstraint" type="am:RepetitionConstraint"/> |
| <xsd:element ecore:ignore="true" name="DataAgeConstraint" type="am:DataAgeConstraint"/> |
| <xsd:element ecore:ignore="true" name="DataAge" type="am:DataAge"/> |
| <xsd:element ecore:ignore="true" name="DataAgeCycle" type="am:DataAgeCycle"/> |
| <xsd:element ecore:ignore="true" name="DataAgeTime" type="am:DataAgeTime"/> |
| <xsd:element ecore:ignore="true" name="Requirement" type="am:Requirement"/> |
| <xsd:element ecore:ignore="true" name="ProcessRequirement" type="am:ProcessRequirement"/> |
| <xsd:element ecore:ignore="true" name="RunnableRequirement" type="am:RunnableRequirement"/> |
| <xsd:element ecore:ignore="true" name="ArchitectureRequirement" type="am:ArchitectureRequirement"/> |
| <xsd:element ecore:ignore="true" name="ProcessChainRequirement" type="am:ProcessChainRequirement"/> |
| <xsd:element ecore:ignore="true" name="RequirementLimit" type="am:RequirementLimit"/> |
| <xsd:element ecore:ignore="true" name="CPUPercentageRequirementLimit" type="am:CPUPercentageRequirementLimit"/> |
| <xsd:element ecore:ignore="true" name="FrequencyRequirementLimit" type="am:FrequencyRequirementLimit"/> |
| <xsd:element ecore:ignore="true" name="PercentageRequirementLimit" type="am:PercentageRequirementLimit"/> |
| <xsd:element ecore:ignore="true" name="CountRequirementLimit" type="am:CountRequirementLimit"/> |
| <xsd:element ecore:ignore="true" name="TimeRequirementLimit" type="am:TimeRequirementLimit"/> |
| <xsd:element ecore:ignore="true" name="DataCoherencyGroup" type="am:DataCoherencyGroup"/> |
| <xsd:element ecore:ignore="true" name="DataStabilityGroup" type="am:DataStabilityGroup"/> |
| <xsd:element ecore:ignore="true" name="DataGroupScope" type="am:DataGroupScope"/> |
| <xsd:element ecore:ignore="true" name="ProcessScope" type="am:ProcessScope"/> |
| <xsd:element ecore:ignore="true" name="RunnableScope" type="am:RunnableScope"/> |
| <xsd:element ecore:ignore="true" name="ComponentScope" type="am:ComponentScope"/> |
| <xsd:element ecore:ignore="true" name="EventModel" type="am:EventModel"/> |
| <xsd:element ecore:ignore="true" name="Event" type="am:Event"/> |
| <xsd:element ecore:ignore="true" name="EventSet" type="am:EventSet"/> |
| <xsd:element ecore:ignore="true" name="EntityEvent" type="am:EntityEvent"/> |
| <xsd:element ecore:ignore="true" name="TriggerEvent" type="am:TriggerEvent"/> |
| <xsd:element ecore:ignore="true" name="CustomEvent" type="am:CustomEvent"/> |
| <xsd:element ecore:ignore="true" name="StimulusEvent" type="am:StimulusEvent"/> |
| <xsd:element ecore:ignore="true" name="ProcessEvent" type="am:ProcessEvent"/> |
| <xsd:element ecore:ignore="true" name="ProcessChainEvent" type="am:ProcessChainEvent"/> |
| <xsd:element ecore:ignore="true" name="RunnableEvent" type="am:RunnableEvent"/> |
| <xsd:element ecore:ignore="true" name="LabelEvent" type="am:LabelEvent"/> |
| <xsd:element ecore:ignore="true" name="ChannelEvent" type="am:ChannelEvent"/> |
| <xsd:element ecore:ignore="true" name="SemaphoreEvent" type="am:SemaphoreEvent"/> |
| <xsd:element ecore:ignore="true" name="ComponentEvent" type="am:ComponentEvent"/> |
| <xsd:element ecore:ignore="true" name="HWModel" type="am:HWModel"/> |
| <xsd:element ecore:ignore="true" name="HwStructure" type="am:HwStructure"/> |
| <xsd:element ecore:ignore="true" name="HwModule" type="am:HwModule"/> |
| <xsd:element ecore:ignore="true" name="HwDomain" type="am:HwDomain"/> |
| <xsd:element ecore:ignore="true" name="FrequencyDomain" type="am:FrequencyDomain"/> |
| <xsd:element ecore:ignore="true" name="PowerDomain" type="am:PowerDomain"/> |
| <xsd:element ecore:ignore="true" name="ProcessingUnit" type="am:ProcessingUnit"/> |
| <xsd:element ecore:ignore="true" name="Memory" type="am:Memory"/> |
| <xsd:element ecore:ignore="true" name="Cache" type="am:Cache"/> |
| <xsd:element ecore:ignore="true" name="HwFeatureCategory" type="am:HwFeatureCategory"/> |
| <xsd:element ecore:ignore="true" name="HwFeature" type="am:HwFeature"/> |
| <xsd:element ecore:ignore="true" name="HwPort" type="am:HwPort"/> |
| <xsd:element ecore:ignore="true" name="ConnectionHandler" type="am:ConnectionHandler"/> |
| <xsd:element ecore:ignore="true" name="HwConnection" type="am:HwConnection"/> |
| <xsd:element ecore:ignore="true" name="HwAccessElement" type="am:HwAccessElement"/> |
| <xsd:element ecore:ignore="true" name="HwDefinition" type="am:HwDefinition"/> |
| <xsd:element ecore:ignore="true" name="ProcessingUnitDefinition" type="am:ProcessingUnitDefinition"/> |
| <xsd:element ecore:ignore="true" name="ConnectionHandlerDefinition" type="am:ConnectionHandlerDefinition"/> |
| <xsd:element ecore:ignore="true" name="MemoryDefinition" type="am:MemoryDefinition"/> |
| <xsd:element ecore:ignore="true" name="CacheDefinition" type="am:CacheDefinition"/> |
| <xsd:element ecore:ignore="true" name="HwPath" type="am:HwPath"/> |
| <xsd:element ecore:ignore="true" name="HwAccessPath" type="am:HwAccessPath"/> |
| <xsd:element ecore:ignore="true" name="HwPathElement" type="am:HwPathElement"/> |
| <xsd:element ecore:ignore="true" name="HwDestination" type="am:HwDestination"/> |
| <xsd:element ecore:ignore="true" name="MappingModel" type="am:MappingModel"/> |
| <xsd:element ecore:ignore="true" name="SchedulerAllocation" type="am:SchedulerAllocation"/> |
| <xsd:element ecore:ignore="true" name="TaskAllocation" type="am:TaskAllocation"/> |
| <xsd:element ecore:ignore="true" name="ISRAllocation" type="am:ISRAllocation"/> |
| <xsd:element ecore:ignore="true" name="RunnableAllocation" type="am:RunnableAllocation"/> |
| <xsd:element ecore:ignore="true" name="MemoryMapping" type="am:MemoryMapping"/> |
| <xsd:element ecore:ignore="true" name="PhysicalSectionMapping" type="am:PhysicalSectionMapping"/> |
| <xsd:element ecore:ignore="true" name="OSModel" type="am:OSModel"/> |
| <xsd:element ecore:ignore="true" name="OsDataConsistency" type="am:OsDataConsistency"/> |
| <xsd:element ecore:ignore="true" name="DataStability" type="am:DataStability"/> |
| <xsd:element ecore:ignore="true" name="NonAtomicDataCoherency" type="am:NonAtomicDataCoherency"/> |
| <xsd:element ecore:ignore="true" name="Semaphore" type="am:Semaphore"/> |
| <xsd:element ecore:ignore="true" name="Scheduler" type="am:Scheduler"/> |
| <xsd:element ecore:ignore="true" name="TaskScheduler" type="am:TaskScheduler"/> |
| <xsd:element ecore:ignore="true" name="SchedulerAssociation" type="am:SchedulerAssociation"/> |
| <xsd:element ecore:ignore="true" name="InterruptController" type="am:InterruptController"/> |
| <xsd:element ecore:ignore="true" name="SchedulingParameters" type="am:SchedulingParameters"/> |
| <xsd:element ecore:ignore="true" name="ParameterExtension" type="am:ParameterExtension"/> |
| <xsd:element ecore:ignore="true" name="Algorithm" type="am:Algorithm"/> |
| <xsd:element ecore:ignore="true" name="InterruptSchedulingAlgorithm" type="am:InterruptSchedulingAlgorithm"/> |
| <xsd:element ecore:ignore="true" name="TaskSchedulingAlgorithm" type="am:TaskSchedulingAlgorithm"/> |
| <xsd:element ecore:ignore="true" name="FixedPriority" type="am:FixedPriority"/> |
| <xsd:element ecore:ignore="true" name="FixedPriorityPreemptive" type="am:FixedPriorityPreemptive"/> |
| <xsd:element ecore:ignore="true" name="FixedPriorityPreemptiveWithBudgetEnforcement" type="am:FixedPriorityPreemptiveWithBudgetEnforcement"/> |
| <xsd:element ecore:ignore="true" name="OSEK" type="am:OSEK"/> |
| <xsd:element ecore:ignore="true" name="DeadlineMonotonic" type="am:DeadlineMonotonic"/> |
| <xsd:element ecore:ignore="true" name="RateMonotonic" type="am:RateMonotonic"/> |
| <xsd:element ecore:ignore="true" name="Pfair" type="am:Pfair"/> |
| <xsd:element ecore:ignore="true" name="PfairPD2" type="am:PfairPD2"/> |
| <xsd:element ecore:ignore="true" name="PartlyPFairPD2" type="am:PartlyPFairPD2"/> |
| <xsd:element ecore:ignore="true" name="EarlyReleaseFairPD2" type="am:EarlyReleaseFairPD2"/> |
| <xsd:element ecore:ignore="true" name="PartlyEarlyReleaseFairPD2" type="am:PartlyEarlyReleaseFairPD2"/> |
| <xsd:element ecore:ignore="true" name="DynamicPriority" type="am:DynamicPriority"/> |
| <xsd:element ecore:ignore="true" name="LeastLocalRemainingExecutionTimeFirst" type="am:LeastLocalRemainingExecutionTimeFirst"/> |
| <xsd:element ecore:ignore="true" name="EarliestDeadlineFirst" type="am:EarliestDeadlineFirst"/> |
| <xsd:element ecore:ignore="true" name="PriorityBasedRoundRobin" type="am:PriorityBasedRoundRobin"/> |
| <xsd:element ecore:ignore="true" name="ReservationBasedServer" type="am:ReservationBasedServer"/> |
| <xsd:element ecore:ignore="true" name="DeferrableServer" type="am:DeferrableServer"/> |
| <xsd:element ecore:ignore="true" name="PollingPeriodicServer" type="am:PollingPeriodicServer"/> |
| <xsd:element ecore:ignore="true" name="SporadicServer" type="am:SporadicServer"/> |
| <xsd:element ecore:ignore="true" name="ConstantBandwidthServer" type="am:ConstantBandwidthServer"/> |
| <xsd:element ecore:ignore="true" name="ConstantBandwidthServerWithCASH" type="am:ConstantBandwidthServerWithCASH"/> |
| <xsd:element ecore:ignore="true" name="Grouping" type="am:Grouping"/> |
| <xsd:element ecore:ignore="true" name="UserSpecificSchedulingAlgorithm" type="am:UserSpecificSchedulingAlgorithm"/> |
| <xsd:element ecore:ignore="true" name="PriorityBased" type="am:PriorityBased"/> |
| <xsd:element ecore:ignore="true" name="OperatingSystem" type="am:OperatingSystem"/> |
| <xsd:element ecore:ignore="true" name="VendorOperatingSystem" type="am:VendorOperatingSystem"/> |
| <xsd:element ecore:ignore="true" name="OsOverhead" type="am:OsOverhead"/> |
| <xsd:element ecore:ignore="true" name="OsAPIOverhead" type="am:OsAPIOverhead"/> |
| <xsd:element ecore:ignore="true" name="OsISROverhead" type="am:OsISROverhead"/> |
| <xsd:element ecore:ignore="true" name="PropertyConstraintsModel" type="am:PropertyConstraintsModel"/> |
| <xsd:element ecore:ignore="true" name="CoreAllocationConstraint" type="am:CoreAllocationConstraint"/> |
| <xsd:element ecore:ignore="true" name="MemoryMappingConstraint" type="am:MemoryMappingConstraint"/> |
| <xsd:element ecore:ignore="true" name="ProcessAllocationConstraint" type="am:ProcessAllocationConstraint"/> |
| <xsd:element ecore:ignore="true" name="ProcessPrototypeAllocationConstraint" type="am:ProcessPrototypeAllocationConstraint"/> |
| <xsd:element ecore:ignore="true" name="RunnableAllocationConstraint" type="am:RunnableAllocationConstraint"/> |
| <xsd:element ecore:ignore="true" name="AbstractElementMappingConstraint" type="am:AbstractElementMappingConstraint"/> |
| <xsd:element ecore:ignore="true" name="Classification" type="am:Classification"/> |
| <xsd:element ecore:ignore="true" name="CoreClassification" type="am:CoreClassification"/> |
| <xsd:element ecore:ignore="true" name="MemoryClassification" type="am:MemoryClassification"/> |
| <xsd:element ecore:ignore="true" name="StimuliModel" type="am:StimuliModel"/> |
| <xsd:element ecore:ignore="true" name="Stimulus" type="am:Stimulus"/> |
| <xsd:element ecore:ignore="true" name="ModeValueList" type="am:ModeValueList"/> |
| <xsd:element ecore:ignore="true" name="ModeValueMapEntry" type="am:ModeValueMapEntry"/> |
| <xsd:element ecore:ignore="true" name="ModeValue" type="am:ModeValue"/> |
| <xsd:element ecore:ignore="true" name="ModeAssignment" type="am:ModeAssignment"/> |
| <xsd:element ecore:ignore="true" name="ModeConditionDisjunction" type="am:ModeConditionDisjunction"/> |
| <xsd:element ecore:ignore="true" name="ModeConditionDisjunctionEntry" type="am:ModeConditionDisjunctionEntry"/> |
| <xsd:element ecore:ignore="true" name="ModeCondition" type="am:ModeCondition"/> |
| <xsd:element ecore:ignore="true" name="ModeValueCondition" type="am:ModeValueCondition"/> |
| <xsd:element ecore:ignore="true" name="ModeLabelCondition" type="am:ModeLabelCondition"/> |
| <xsd:element ecore:ignore="true" name="ModeConditionConjunction" type="am:ModeConditionConjunction"/> |
| <xsd:element ecore:ignore="true" name="FixedPeriodic" type="am:FixedPeriodic"/> |
| <xsd:element ecore:ignore="true" name="PeriodicStimulus" type="am:PeriodicStimulus"/> |
| <xsd:element ecore:ignore="true" name="RelativePeriodicStimulus" type="am:RelativePeriodicStimulus"/> |
| <xsd:element ecore:ignore="true" name="VariableRateStimulus" type="am:VariableRateStimulus"/> |
| <xsd:element ecore:ignore="true" name="Scenario" type="am:Scenario"/> |
| <xsd:element ecore:ignore="true" name="PeriodicSyntheticStimulus" type="am:PeriodicSyntheticStimulus"/> |
| <xsd:element ecore:ignore="true" name="CustomStimulus" type="am:CustomStimulus"/> |
| <xsd:element ecore:ignore="true" name="SingleStimulus" type="am:SingleStimulus"/> |
| <xsd:element ecore:ignore="true" name="InterProcessStimulus" type="am:InterProcessStimulus"/> |
| <xsd:element ecore:ignore="true" name="PeriodicBurstStimulus" type="am:PeriodicBurstStimulus"/> |
| <xsd:element ecore:ignore="true" name="EventStimulus" type="am:EventStimulus"/> |
| <xsd:element ecore:ignore="true" name="ArrivalCurveStimulus" type="am:ArrivalCurveStimulus"/> |
| <xsd:element ecore:ignore="true" name="ArrivalCurveEntry" type="am:ArrivalCurveEntry"/> |
| <xsd:element ecore:ignore="true" name="Clock" type="am:Clock"/> |
| <xsd:element ecore:ignore="true" name="ClockFunction" type="am:ClockFunction"/> |
| <xsd:element ecore:ignore="true" name="ClockStepList" type="am:ClockStepList"/> |
| <xsd:element ecore:ignore="true" name="ClockStep" type="am:ClockStep"/> |
| <xsd:element ecore:ignore="true" name="SWModel" type="am:SWModel"/> |
| <xsd:element ecore:ignore="true" name="AbstractMemoryElement" type="am:AbstractMemoryElement"/> |
| <xsd:element ecore:ignore="true" name="AbstractProcess" type="am:AbstractProcess"/> |
| <xsd:element ecore:ignore="true" name="CustomEntity" type="am:CustomEntity"/> |
| <xsd:element ecore:ignore="true" name="ProcessChain" type="am:ProcessChain"/> |
| <xsd:element ecore:ignore="true" name="Process" type="am:Process"/> |
| <xsd:element ecore:ignore="true" name="IActivityGraphItemContainer" type="am:IActivityGraphItemContainer"/> |
| <xsd:element ecore:ignore="true" name="ActivityGraph" type="am:ActivityGraph"/> |
| <xsd:element ecore:ignore="true" name="ActivityGraphItem" type="am:ActivityGraphItem"/> |
| <xsd:element ecore:ignore="true" name="ModeSwitch" type="am:ModeSwitch"/> |
| <xsd:element ecore:ignore="true" name="ModeSwitchEntry" type="am:ModeSwitchEntry"/> |
| <xsd:element ecore:ignore="true" name="ModeSwitchDefault" type="am:ModeSwitchDefault"/> |
| <xsd:element ecore:ignore="true" name="ProbabilitySwitch" type="am:ProbabilitySwitch"/> |
| <xsd:element ecore:ignore="true" name="ProbabilitySwitchEntry" type="am:ProbabilitySwitchEntry"/> |
| <xsd:element ecore:ignore="true" name="Counter" type="am:Counter"/> |
| <xsd:element ecore:ignore="true" name="WaitEvent" type="am:WaitEvent"/> |
| <xsd:element ecore:ignore="true" name="SetEvent" type="am:SetEvent"/> |
| <xsd:element ecore:ignore="true" name="ClearEvent" type="am:ClearEvent"/> |
| <xsd:element ecore:ignore="true" name="EventMask" type="am:EventMask"/> |
| <xsd:element ecore:ignore="true" name="OsEvent" type="am:OsEvent"/> |
| <xsd:element ecore:ignore="true" name="InterProcessTrigger" type="am:InterProcessTrigger"/> |
| <xsd:element ecore:ignore="true" name="EnforcedMigration" type="am:EnforcedMigration"/> |
| <xsd:element ecore:ignore="true" name="SchedulePoint" type="am:SchedulePoint"/> |
| <xsd:element ecore:ignore="true" name="TerminateProcess" type="am:TerminateProcess"/> |
| <xsd:element ecore:ignore="true" name="Task" type="am:Task"/> |
| <xsd:element ecore:ignore="true" name="ISR" type="am:ISR"/> |
| <xsd:element ecore:ignore="true" name="ProcessPrototype" type="am:ProcessPrototype"/> |
| <xsd:element ecore:ignore="true" name="ChainedProcessPrototype" type="am:ChainedProcessPrototype"/> |
| <xsd:element ecore:ignore="true" name="GeneralPrecedence" type="am:GeneralPrecedence"/> |
| <xsd:element ecore:ignore="true" name="AccessPrecedenceSpec" type="am:AccessPrecedenceSpec"/> |
| <xsd:element ecore:ignore="true" name="OrderPrecedenceSpec" type="am:OrderPrecedenceSpec"/> |
| <xsd:element ecore:ignore="true" name="IDependsOn" type="am:IDependsOn"/> |
| <xsd:element ecore:ignore="true" name="DataDependency" type="am:DataDependency"/> |
| <xsd:element ecore:ignore="true" name="RunnableParameter" type="am:RunnableParameter"/> |
| <xsd:element ecore:ignore="true" name="Runnable" type="am:Runnable"/> |
| <xsd:element ecore:ignore="true" name="Label" type="am:Label"/> |
| <xsd:element ecore:ignore="true" name="Channel" type="am:Channel"/> |
| <xsd:element ecore:ignore="true" name="ModeLabel" type="am:ModeLabel"/> |
| <xsd:element ecore:ignore="true" name="Section" type="am:Section"/> |
| <xsd:element ecore:ignore="true" name="ComputationItem" type="am:ComputationItem"/> |
| <xsd:element ecore:ignore="true" name="ExecutionNeed" type="am:ExecutionNeed"/> |
| <xsd:element ecore:ignore="true" name="NeedEntry" type="am:NeedEntry"/> |
| <xsd:element ecore:ignore="true" name="Ticks" type="am:Ticks"/> |
| <xsd:element ecore:ignore="true" name="TicksEntry" type="am:TicksEntry"/> |
| <xsd:element ecore:ignore="true" name="ModeLabelAccess" type="am:ModeLabelAccess"/> |
| <xsd:element ecore:ignore="true" name="LabelAccess" type="am:LabelAccess"/> |
| <xsd:element ecore:ignore="true" name="ChannelAccess" type="am:ChannelAccess"/> |
| <xsd:element ecore:ignore="true" name="ChannelSend" type="am:ChannelSend"/> |
| <xsd:element ecore:ignore="true" name="ChannelReceive" type="am:ChannelReceive"/> |
| <xsd:element ecore:ignore="true" name="SemaphoreAccess" type="am:SemaphoreAccess"/> |
| <xsd:element ecore:ignore="true" name="SenderReceiverCommunication" type="am:SenderReceiverCommunication"/> |
| <xsd:element ecore:ignore="true" name="SenderReceiverRead" type="am:SenderReceiverRead"/> |
| <xsd:element ecore:ignore="true" name="SenderReceiverWrite" type="am:SenderReceiverWrite"/> |
| <xsd:element ecore:ignore="true" name="ServerCall" type="am:ServerCall"/> |
| <xsd:element ecore:ignore="true" name="SynchronousServerCall" type="am:SynchronousServerCall"/> |
| <xsd:element ecore:ignore="true" name="AsynchronousServerCall" type="am:AsynchronousServerCall"/> |
| <xsd:element ecore:ignore="true" name="GetResultServerCall" type="am:GetResultServerCall"/> |
| <xsd:element ecore:ignore="true" name="Group" type="am:Group"/> |
| <xsd:element ecore:ignore="true" name="CallArgument" type="am:CallArgument"/> |
| <xsd:element ecore:ignore="true" name="RunnableCall" type="am:RunnableCall"/> |
| <xsd:element ecore:ignore="true" name="CustomEventTrigger" type="am:CustomEventTrigger"/> |
| <xsd:element ecore:ignore="true" name="DataType" type="am:DataType"/> |
| <xsd:element ecore:ignore="true" name="CompoundType" type="am:CompoundType"/> |
| <xsd:element ecore:ignore="true" name="Struct" type="am:Struct"/> |
| <xsd:element ecore:ignore="true" name="StructEntry" type="am:StructEntry"/> |
| <xsd:element ecore:ignore="true" name="Array" type="am:Array"/> |
| <xsd:element ecore:ignore="true" name="Pointer" type="am:Pointer"/> |
| <xsd:element ecore:ignore="true" name="TypeRef" type="am:TypeRef"/> |
| <xsd:element ecore:ignore="true" name="Alias" type="am:Alias"/> |
| <xsd:element ecore:ignore="true" name="TypeDefinition" type="am:TypeDefinition"/> |
| <xsd:element ecore:ignore="true" name="DataTypeDefinition" type="am:DataTypeDefinition"/> |
| <xsd:element ecore:ignore="true" name="BaseTypeDefinition" type="am:BaseTypeDefinition"/> |
| <xsd:element ecore:ignore="true" name="Activation" type="am:Activation"/> |
| <xsd:element ecore:ignore="true" name="PeriodicActivation" type="am:PeriodicActivation"/> |
| <xsd:element ecore:ignore="true" name="VariableRateActivation" type="am:VariableRateActivation"/> |
| <xsd:element ecore:ignore="true" name="SporadicActivation" type="am:SporadicActivation"/> |
| <xsd:element ecore:ignore="true" name="SingleActivation" type="am:SingleActivation"/> |
| <xsd:element ecore:ignore="true" name="EventActivation" type="am:EventActivation"/> |
| <xsd:element ecore:ignore="true" name="CustomActivation" type="am:CustomActivation"/> |
| <xsd:element ecore:ignore="true" name="LabelAccessStatistic" type="am:LabelAccessStatistic"/> |
| <xsd:element ecore:ignore="true" name="RunEntityCallStatistic" type="am:RunEntityCallStatistic"/> |
| <xsd:element ecore:ignore="true" name="MeasurementModel" type="am:MeasurementModel"/> |
| <xsd:element ecore:ignore="true" name="Measurement" type="am:Measurement"/> |
| <xsd:element ecore:ignore="true" name="EventChainMeasurement" type="am:EventChainMeasurement"/> |
| <xsd:element ecore:ignore="true" name="TaskMeasurement" type="am:TaskMeasurement"/> |
| <xsd:element ecore:ignore="true" name="RunnableMeasurement" type="am:RunnableMeasurement"/> |
| <xsd:complexType name="Amalthea"> |
| <xsd:complexContent> |
| <xsd:extension base="am:BaseObject"> |
| <xsd:sequence> |
| <xsd:element minOccurs="0" name="commonElements" type="am:CommonElements"/> |
| <xsd:element minOccurs="0" name="swModel" type="am:SWModel"/> |
| <xsd:element minOccurs="0" name="hwModel" type="am:HWModel"/> |
| <xsd:element minOccurs="0" name="osModel" type="am:OSModel"/> |
| <xsd:element minOccurs="0" name="stimuliModel" type="am:StimuliModel"/> |
| <xsd:element minOccurs="0" name="eventModel" type="am:EventModel"/> |
| <xsd:element minOccurs="0" name="constraintsModel" type="am:ConstraintsModel"/> |
| <xsd:element minOccurs="0" name="propertyConstraintsModel" type="am:PropertyConstraintsModel"/> |
| <xsd:element minOccurs="0" name="mappingModel" type="am:MappingModel"/> |
| <xsd:element minOccurs="0" name="componentsModel" type="am:ComponentsModel"/> |
| <xsd:element minOccurs="0" name="configModel" type="am:ConfigModel"/> |
| <xsd:element minOccurs="0" name="measurementModel" type="am:MeasurementModel"/> |
| </xsd:sequence> |
| <xsd:attribute ecore:changeable="false" ecore:derived="true" ecore:transient="true" ecore:volatile="true" name="version" type="ecore:EString"/> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType name="CommonElements"> |
| <xsd:complexContent> |
| <xsd:extension base="am:BaseObject"> |
| <xsd:sequence> |
| <xsd:element maxOccurs="unbounded" minOccurs="0" name="tags" type="am:Tag"/> |
| <xsd:element maxOccurs="unbounded" minOccurs="0" name="namespaces" type="am:Namespace"/> |
| <xsd:element maxOccurs="unbounded" minOccurs="0" name="coreClassifiers" type="am:CoreClassifier"/> |
| <xsd:element maxOccurs="unbounded" minOccurs="0" name="memoryClassifiers" type="am:MemoryClassifier"/> |
| </xsd:sequence> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType abstract="true" name="BaseObject"> |
| <xsd:annotation> |
| <xsd:documentation>Base classes to be used to provide common functionality for all objects. |
| Needs to be extended by other classes.</xsd:documentation> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:IAnnotatable"/> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType abstract="true" name="ReferableObject"> |
| <xsd:complexContent> |
| <xsd:extension base="am:IReferable"/> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType abstract="true" ecore:implements="am:IReferable" name="ReferableBaseObject"> |
| <xsd:complexContent> |
| <xsd:extension base="am:IAnnotatable"/> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType abstract="true" ecore:interface="true" name="IAnnotatable"> |
| <xsd:annotation> |
| <xsd:documentation>IAnnotatable: Possibility to store custom properties on elements</xsd:documentation> |
| </xsd:annotation> |
| <xsd:sequence> |
| <xsd:element maxOccurs="unbounded" minOccurs="0" name="customProperties" type="am:CustomProperty"/> |
| </xsd:sequence> |
| </xsd:complexType> |
| <xsd:complexType abstract="true" ecore:interface="true" name="ITaggable"> |
| <xsd:annotation> |
| <xsd:documentation>ITaggable: Possibility to add tags to an elements</xsd:documentation> |
| </xsd:annotation> |
| <xsd:attribute ecore:reference="am:Tag" name="tags"> |
| <xsd:simpleType> |
| <xsd:list itemType="xsd:anyURI"/> |
| </xsd:simpleType> |
| </xsd:attribute> |
| </xsd:complexType> |
| <xsd:complexType abstract="true" ecore:interface="true" name="INamed"> |
| <xsd:annotation> |
| <xsd:appinfo ecore:key="operations" source="http://www.eclipse.org/emf/2002/Ecore"> |
| <operation name="getNamedContainer" type="am:INamed" unique="false"> |
| <body><%org.eclipse.app4mc.amalthea.model.INamed%> _xifexpression = null; |
| <%org.eclipse.emf.ecore.EObject%> _eContainer = this.eContainer(); |
| if ((_eContainer instanceof <%org.eclipse.app4mc.amalthea.model.INamed%>)) |
| { |
| <%org.eclipse.emf.ecore.EObject%> _eContainer_1 = this.eContainer(); |
| _xifexpression = ((<%org.eclipse.app4mc.amalthea.model.INamed%>) _eContainer_1); |
| } |
| else |
| { |
| _xifexpression = null; |
| } |
| return _xifexpression;</body> |
| </operation> |
| <operation name="getNamePrefix" type="ecore:EString" unique="false"> |
| <body><%java.lang.String%> _xifexpression = null; |
| <%org.eclipse.app4mc.amalthea.model.Namespace%> _namespace = this.getNamespace(); |
| boolean _tripleEquals = (_namespace == null); |
| if (_tripleEquals) |
| { |
| return ""; |
| } |
| else |
| { |
| _xifexpression = <%org.eclipse.app4mc.amalthea.model.AmaltheaExtensions%>.toPlainString(this.getNamePrefixSegments(), this.getDefaultNameSeparator()); |
| } |
| return _xifexpression;</body> |
| </operation> |
| <operation name="getQualifiedNameSegments" type="ecore:EString" unique="false" upperBound="-1"> |
| <body>final <%org.eclipse.emf.common.util.EList%><<%java.lang.String%>> segments = this.getNamePrefixSegments(); |
| <%java.lang.String%> _name = this.getName(); |
| boolean _tripleNotEquals = (_name != null); |
| if (_tripleNotEquals) |
| { |
| segments.add(this.getName()); |
| } |
| return segments;</body> |
| </operation> |
| <operation name="getDefaultNameSeparator" type="ecore:EString" unique="false"> |
| <annotation source="http://www.eclipse.org/emf/2002/GenModel"> |
| <detail key="documentation">Overwrite this method to define a specific name separator.</detail> |
| </annotation> |
| <body>return ".";</body> |
| </operation> |
| <operation name="getNamespace" type="am:Namespace" unique="false"> |
| <body>return null;</body> |
| </operation> |
| <operation name="getNamePrefixSegments" type="ecore:EString" unique="false" upperBound="-1"> |
| <annotation source="http://www.eclipse.org/emf/2002/GenModel"> |
| <detail key="documentation">Overwrite this method to define a specific prefix (used by name-based references).</detail> |
| </annotation> |
| <body><%org.eclipse.emf.common.util.EList%><<%java.lang.String%>> _xifexpression = null; |
| <%org.eclipse.app4mc.amalthea.model.Namespace%> _namespace = this.getNamespace(); |
| boolean _tripleEquals = (_namespace == null); |
| if (_tripleEquals) |
| { |
| _xifexpression = <%org.eclipse.emf.ecore.xcore.lib.XcoreCollectionLiterals%>.<<%java.lang.String%>>newBasicEList(); |
| } |
| else |
| { |
| _xifexpression = this.getNamespace().getQualifiedNameSegments(); |
| } |
| return _xifexpression;</body> |
| </operation> |
| </xsd:appinfo> |
| <xsd:documentation>INamed: Name attribute</xsd:documentation> |
| </xsd:annotation> |
| <xsd:attribute default="" ecore:unsettable="false" name="name" type="ecore:EString"/> |
| <xsd:attribute ecore:changeable="false" ecore:derived="true" ecore:transient="true" ecore:volatile="true" name="qualifiedName" type="ecore:EString"/> |
| </xsd:complexType> |
| <xsd:complexType abstract="true" ecore:interface="true" name="IReferable"> |
| <xsd:annotation> |
| <xsd:appinfo ecore:key="operations" source="http://www.eclipse.org/emf/2002/Ecore"> |
| <operation name="getEncodedQualifiedName" type="ecore:EString" unique="false"> |
| <body>return <%org.eclipse.app4mc.amalthea.model.AmaltheaExtensions%>.toEncodedString(this.getQualifiedNameSegments());</body> |
| </operation> |
| <operation name="validateInvariants" type="ecore:EBoolean" unique="false"> |
| <parameter name="diagnostics" type="ecore:EDiagnosticChain" unique="false"/> |
| <parameter name="context" type="ecore:EMap{ecore:EJavaObject, ecore:EJavaObject}" unique="false"/> |
| <body>return <%org.eclipse.app4mc.amalthea.model.AmaltheaValidations%>.validateInvariants(this, diagnostics, context);</body> |
| </operation> |
| </xsd:appinfo> |
| <xsd:documentation>IReferable: Computed ID for name based references</xsd:documentation> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:INamed"> |
| <xsd:attribute ecore:changeable="false" ecore:derived="true" ecore:id="true" ecore:transient="true" ecore:volatile="true" name="uniqueName" type="ecore:EString"/> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType abstract="true" ecore:interface="true" name="IDisplayName"> |
| <xsd:attribute name="displayName" type="ecore:EString"/> |
| </xsd:complexType> |
| <xsd:complexType abstract="true" ecore:interface="true" name="IDescription"> |
| <xsd:attribute name="description" type="ecore:EString"/> |
| </xsd:complexType> |
| <xsd:complexType abstract="true" ecore:interface="true" name="INamespaceMember"> |
| <xsd:attribute ecore:reference="am:Namespace" name="namespace" type="xsd:anyURI"/> |
| </xsd:complexType> |
| <xsd:complexType ecore:implements="am:IDescription" name="Tag"> |
| <xsd:annotation> |
| <xsd:documentation>A tag for processes, runnables, events and labels</xsd:documentation> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:ReferableBaseObject"> |
| <xsd:attribute name="tagType" type="ecore:EString"/> |
| <xsd:attribute ecore:changeable="false" ecore:derived="true" ecore:reference="am:ITaggable" ecore:transient="true" ecore:volatile="true" name="taggedObjects"> |
| <xsd:annotation> |
| <xsd:documentation> |
| <p> |
| <b>Returns an <em>immutable</em> list of objects (ITaggable) referring to this tag.</b> |
| </p> |
| </xsd:documentation> |
| </xsd:annotation> |
| <xsd:simpleType> |
| <xsd:list itemType="xsd:anyURI"/> |
| </xsd:simpleType> |
| </xsd:attribute> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType name="Namespace"> |
| <xsd:annotation> |
| <xsd:appinfo ecore:key="operations" source="http://www.eclipse.org/emf/2002/Ecore"> |
| <operation name="getNamePrefixSegments" type="ecore:EString" unique="false" upperBound="-1"> |
| <body><%org.eclipse.emf.common.util.EList%><<%java.lang.String%>> _elvis = null; |
| <%org.eclipse.app4mc.amalthea.model.Namespace%> _previousSegment = this.getPreviousSegment(); |
| <%org.eclipse.emf.common.util.EList%><<%java.lang.String%>> _qualifiedNameSegments = null; |
| if (_previousSegment!=null) |
| { |
| _qualifiedNameSegments=_previousSegment.getQualifiedNameSegments(); |
| } |
| if (_qualifiedNameSegments != null) |
| { |
| _elvis = _qualifiedNameSegments; |
| } else |
| { |
| <%org.eclipse.emf.common.util.BasicEList%><<%java.lang.String%>> _newBasicEList = <%org.eclipse.emf.ecore.xcore.lib.XcoreCollectionLiterals%>.<<%java.lang.String%>>newBasicEList(); |
| _elvis = _newBasicEList; |
| } |
| return _elvis;</body> |
| </operation> |
| </xsd:appinfo> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:ReferableObject"> |
| <xsd:sequence> |
| <xsd:element ecore:opposite="previousSegment" maxOccurs="unbounded" minOccurs="0" name="nextSegments" type="am:Namespace"/> |
| </xsd:sequence> |
| <xsd:attribute ecore:changeable="false" ecore:opposite="nextSegments" ecore:reference="am:Namespace" name="previousSegment" type="xsd:anyURI"/> |
| <xsd:attribute ecore:changeable="false" ecore:derived="true" ecore:reference="am:INamespaceMember" ecore:transient="true" ecore:volatile="true" name="memberObjects"> |
| <xsd:annotation> |
| <xsd:documentation> |
| <p> |
| <b>Returns an <em>immutable</em> list of objects (INamespaceMember) referring to this namespace.</b> |
| </p> |
| </xsd:documentation> |
| </xsd:annotation> |
| <xsd:simpleType> |
| <xsd:list itemType="xsd:anyURI"/> |
| </xsd:simpleType> |
| </xsd:attribute> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:simpleType name="RelationalOperator"> |
| <xsd:restriction base="xsd:string"> |
| <xsd:enumeration value="_undefined_"/> |
| <xsd:enumeration ecore:value="0" value="EQUAL"/> |
| <xsd:enumeration ecore:value="0" value="NOT_EQUAL"/> |
| <xsd:enumeration ecore:value="0" value="LESS_THAN"/> |
| <xsd:enumeration ecore:value="0" value="GREATER_THAN"/> |
| </xsd:restriction> |
| </xsd:simpleType> |
| <xsd:complexType abstract="true" ecore:implements="am:IDescription" name="Classifier"> |
| <xsd:annotation> |
| <xsd:documentation>Classifiers for hardware properties</xsd:documentation> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:ReferableBaseObject"/> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType name="CoreClassifier"> |
| <xsd:complexContent> |
| <xsd:extension base="am:Classifier"/> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType name="MemoryClassifier"> |
| <xsd:complexContent> |
| <xsd:extension base="am:Classifier"/> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType name="TransmissionPolicy"> |
| <xsd:annotation> |
| <xsd:documentation>Data transmission details for communication (e.g. LabelAccesses)</xsd:documentation> |
| </xsd:annotation> |
| <xsd:sequence> |
| <xsd:element minOccurs="0" name="chunkSize" type="am:DataSize"/> |
| </xsd:sequence> |
| <xsd:attribute default="0" ecore:unsettable="false" name="chunkProcessingTicks" type="ecore:EInt"/> |
| <xsd:attribute default="1.0" ecore:unsettable="false" name="transmitRatio" type="ecore:EDouble"/> |
| </xsd:complexType> |
| <xsd:complexType abstract="true" name="Quantity"> |
| <xsd:annotation> |
| <xsd:documentation>Abstract class for Quantities (value + unit)</xsd:documentation> |
| </xsd:annotation> |
| </xsd:complexType> |
| <xsd:simpleType name="TimeUnit"> |
| <xsd:annotation> |
| <xsd:documentation>Time units (enumeration of available units)</xsd:documentation> |
| </xsd:annotation> |
| <xsd:restriction base="xsd:string"> |
| <xsd:enumeration value="_undefined_"/> |
| <xsd:enumeration ecore:value="0" value="s"/> |
| <xsd:enumeration ecore:value="0" value="ms"/> |
| <xsd:enumeration ecore:value="0" value="us"/> |
| <xsd:enumeration ecore:value="0" value="ns"/> |
| <xsd:enumeration ecore:value="0" value="ps"/> |
| </xsd:restriction> |
| </xsd:simpleType> |
| <xsd:complexType abstract="true" ecore:instanceClass="java.lang.Comparable{org.eclipse.app4mc.amalthea.model.Time}" ecore:interface="true" name="TimeComparable"/> |
| <xsd:complexType ecore:implements="am:Value am:TimeComparable" name="Time"> |
| <xsd:annotation> |
| <xsd:appinfo ecore:key="operations" source="http://www.eclipse.org/emf/2002/Ecore"> |
| <operation name="toString" type="ecore:EString" unique="false"> |
| <body><%java.math.BigInteger%> _value = this.getValue(); |
| <%java.lang.String%> _plus = (_value + " "); |
| <%java.lang.String%> _xifexpression = null; |
| <%org.eclipse.app4mc.amalthea.model.TimeUnit%> _unit = this.getUnit(); |
| boolean _equals = <%com.google.common.base.Objects%>.equal(_unit, <%org.eclipse.app4mc.amalthea.model.TimeUnit%>._UNDEFINED_); |
| if (_equals) |
| { |
| _xifexpression = "<unit>"; |
| } |
| else |
| { |
| _xifexpression = this.getUnit().getLiteral(); |
| } |
| return (_plus + _xifexpression);</body> |
| </operation> |
| <operation name="compareTo" type="ecore:EInt" unique="false"> |
| <parameter name="t" type="am:Time" unique="false"/> |
| <body>return <%org.eclipse.app4mc.amalthea.model.AmaltheaServices%>.compareTimes(this, t);</body> |
| </operation> |
| <operation name="adjustUnit" type="am:Time" unique="false"> |
| <body>return <%org.eclipse.app4mc.amalthea.model.AmaltheaServices%>.adjustTimeUnit(this);</body> |
| </operation> |
| <operation name="add" type="am:Time" unique="false"> |
| <parameter name="t" type="am:Time" unique="false"/> |
| <body>return <%org.eclipse.app4mc.amalthea.model.AmaltheaServices%>.addTime(this, t);</body> |
| </operation> |
| <operation name="subtract" type="am:Time" unique="false"> |
| <parameter name="t" type="am:Time" unique="false"/> |
| <body>return <%org.eclipse.app4mc.amalthea.model.AmaltheaServices%>.subtractTime(this, t);</body> |
| </operation> |
| <operation name="multiply" type="am:Time" unique="false"> |
| <parameter name="v" type="ecore:ELong" unique="false"/> |
| <body>return <%org.eclipse.app4mc.amalthea.model.AmaltheaServices%>.multiply(this, v);</body> |
| </operation> |
| <operation name="multiply" type="am:Time" unique="false"> |
| <parameter name="v" type="ecore:EDouble" unique="false"/> |
| <body>return <%org.eclipse.app4mc.amalthea.model.AmaltheaServices%>.multiply(this, v);</body> |
| </operation> |
| <operation name="divide" type="ecore:EDouble" unique="false"> |
| <parameter name="t" type="am:Time" unique="false"/> |
| <body>return <%org.eclipse.app4mc.amalthea.model.AmaltheaServices%>.divideTime(this, t);</body> |
| </operation> |
| </xsd:appinfo> |
| <xsd:documentation>General time class to define time value and unit.</xsd:documentation> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:Quantity"> |
| <xsd:attribute default="0" ecore:unsettable="false" name="value" type="ecore:EBigInteger"/> |
| <xsd:attribute ecore:unsettable="false" name="unit" type="am:TimeUnit"/> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:simpleType name="FrequencyUnit"> |
| <xsd:annotation> |
| <xsd:documentation>Frequency units (enumeration of available units)</xsd:documentation> |
| </xsd:annotation> |
| <xsd:restriction base="xsd:string"> |
| <xsd:enumeration value="_undefined_"/> |
| <xsd:enumeration ecore:value="0" value="Hz"/> |
| <xsd:enumeration ecore:value="0" value="kHz"/> |
| <xsd:enumeration ecore:value="0" value="MHz"/> |
| <xsd:enumeration ecore:value="0" value="GHz"/> |
| </xsd:restriction> |
| </xsd:simpleType> |
| <xsd:complexType name="Frequency"> |
| <xsd:annotation> |
| <xsd:appinfo ecore:key="operations" source="http://www.eclipse.org/emf/2002/Ecore"> |
| <operation name="toString" type="ecore:EString" unique="false"> |
| <body>double _value = this.getValue(); |
| <%java.lang.String%> _plus = (<%java.lang.Double%>.valueOf(_value) + " "); |
| <%java.lang.String%> _xifexpression = null; |
| <%org.eclipse.app4mc.amalthea.model.FrequencyUnit%> _unit = this.getUnit(); |
| boolean _equals = <%com.google.common.base.Objects%>.equal(_unit, <%org.eclipse.app4mc.amalthea.model.FrequencyUnit%>._UNDEFINED_); |
| if (_equals) |
| { |
| _xifexpression = "<unit>"; |
| } |
| else |
| { |
| _xifexpression = this.getUnit().getLiteral(); |
| } |
| return (_plus + _xifexpression);</body> |
| </operation> |
| </xsd:appinfo> |
| <xsd:documentation>General frequency class to define frequency value and unit</xsd:documentation> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:Quantity"> |
| <xsd:attribute default="0.0" ecore:unsettable="false" name="value" type="am:NonNegativeDouble"/> |
| <xsd:attribute ecore:unsettable="false" name="unit" type="am:FrequencyUnit"/> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:simpleType name="VoltageUnit"> |
| <xsd:annotation> |
| <xsd:documentation>Voltage units (enumeration of available units)</xsd:documentation> |
| </xsd:annotation> |
| <xsd:restriction base="xsd:string"> |
| <xsd:enumeration value="_undefined_"/> |
| <xsd:enumeration ecore:value="0" value="uV"/> |
| <xsd:enumeration ecore:value="0" value="mV"/> |
| <xsd:enumeration ecore:value="0" value="V"/> |
| </xsd:restriction> |
| </xsd:simpleType> |
| <xsd:complexType name="Voltage"> |
| <xsd:annotation> |
| <xsd:appinfo ecore:key="operations" source="http://www.eclipse.org/emf/2002/Ecore"> |
| <operation name="toString" type="ecore:EString" unique="false"> |
| <body>double _value = this.getValue(); |
| <%java.lang.String%> _plus = (<%java.lang.Double%>.valueOf(_value) + " "); |
| <%java.lang.String%> _xifexpression = null; |
| <%org.eclipse.app4mc.amalthea.model.VoltageUnit%> _unit = this.getUnit(); |
| boolean _equals = <%com.google.common.base.Objects%>.equal(_unit, <%org.eclipse.app4mc.amalthea.model.VoltageUnit%>._UNDEFINED_); |
| if (_equals) |
| { |
| _xifexpression = "<unit>"; |
| } |
| else |
| { |
| _xifexpression = this.getUnit().getLiteral(); |
| } |
| return (_plus + _xifexpression);</body> |
| </operation> |
| </xsd:appinfo> |
| <xsd:documentation>General voltage class to define voltage value and unit</xsd:documentation> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:Quantity"> |
| <xsd:attribute default="0.0" ecore:unsettable="false" name="value" type="ecore:EDouble"/> |
| <xsd:attribute ecore:unsettable="false" name="unit" type="am:VoltageUnit"/> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:simpleType name="DataSizeUnit"> |
| <xsd:annotation> |
| <xsd:documentation>Data size units (enumeration of available units)</xsd:documentation> |
| </xsd:annotation> |
| <xsd:restriction base="xsd:string"> |
| <xsd:enumeration value="_undefined_"/> |
| <xsd:enumeration ecore:value="0" value="bit"/> |
| <xsd:enumeration ecore:value="0" value="kbit"/> |
| <xsd:enumeration ecore:value="0" value="Mbit"/> |
| <xsd:enumeration ecore:value="0" value="Gbit"/> |
| <xsd:enumeration ecore:value="0" value="Tbit"/> |
| <xsd:enumeration ecore:value="0" value="Kibit"/> |
| <xsd:enumeration ecore:value="0" value="Mibit"/> |
| <xsd:enumeration ecore:value="0" value="Gibit"/> |
| <xsd:enumeration ecore:value="0" value="Tibit"/> |
| <xsd:enumeration ecore:value="0" value="B"/> |
| <xsd:enumeration ecore:value="0" value="kB"/> |
| <xsd:enumeration ecore:value="0" value="MB"/> |
| <xsd:enumeration ecore:value="0" value="GB"/> |
| <xsd:enumeration ecore:value="0" value="TB"/> |
| <xsd:enumeration ecore:value="0" value="KiB"/> |
| <xsd:enumeration ecore:value="0" value="MiB"/> |
| <xsd:enumeration ecore:value="0" value="GiB"/> |
| <xsd:enumeration ecore:value="0" value="TiB"/> |
| </xsd:restriction> |
| </xsd:simpleType> |
| <xsd:complexType name="DataSize"> |
| <xsd:annotation> |
| <xsd:appinfo ecore:key="operations" source="http://www.eclipse.org/emf/2002/Ecore"> |
| <operation name="toString" type="ecore:EString" unique="false"> |
| <body><%java.math.BigInteger%> _value = this.getValue(); |
| <%java.lang.String%> _plus = (_value + " "); |
| <%java.lang.String%> _xifexpression = null; |
| <%org.eclipse.app4mc.amalthea.model.DataSizeUnit%> _unit = this.getUnit(); |
| boolean _equals = <%com.google.common.base.Objects%>.equal(_unit, <%org.eclipse.app4mc.amalthea.model.DataSizeUnit%>._UNDEFINED_); |
| if (_equals) |
| { |
| _xifexpression = "<unit>"; |
| } |
| else |
| { |
| _xifexpression = this.getUnit().getLiteral(); |
| } |
| return (_plus + _xifexpression);</body> |
| </operation> |
| <operation name="getNumberBits" type="ecore:ELong" unique="false"> |
| <annotation source="http://www.eclipse.org/emf/2002/GenModel"> |
| <detail key="documentation">Convenience methods to retrieve the size in Bits and Bytes</detail> |
| </annotation> |
| <body>long _xblockexpression = (long) 0; |
| { |
| <%org.eclipse.app4mc.amalthea.model.DataSizeUnit%> _unit = this.getUnit(); |
| boolean _tripleEquals = (_unit == <%org.eclipse.app4mc.amalthea.model.DataSizeUnit%>.BIT); |
| if (_tripleEquals) |
| { |
| return this.getValue().longValue(); |
| } |
| final <%java.math.BigInteger%> bits = <%org.eclipse.app4mc.amalthea.model.AmaltheaServices%>.convertToBit(this); |
| long _xifexpression = (long) 0; |
| if ((bits == null)) |
| { |
| _xifexpression = (-1L); |
| } |
| else |
| { |
| _xifexpression = bits.longValue(); |
| } |
| _xblockexpression = _xifexpression; |
| } |
| return _xblockexpression;</body> |
| </operation> |
| <operation name="getNumberBytes" type="ecore:ELong" unique="false"> |
| <body>long _xblockexpression = (long) 0; |
| { |
| <%org.eclipse.app4mc.amalthea.model.DataSizeUnit%> _unit = this.getUnit(); |
| boolean _tripleEquals = (_unit == <%org.eclipse.app4mc.amalthea.model.DataSizeUnit%>.B); |
| if (_tripleEquals) |
| { |
| return this.getValue().longValue(); |
| } |
| final <%java.math.BigInteger%> bits = <%org.eclipse.app4mc.amalthea.model.AmaltheaServices%>.convertToBit(this); |
| long _xifexpression = (long) 0; |
| if ((bits == null)) |
| { |
| _xifexpression = (-1L); |
| } |
| else |
| { |
| long _longValue = bits.longValue(); |
| long _divide = (_longValue / 8); |
| _xifexpression = <%java.lang.Double%>.valueOf(<%java.lang.Math%>.ceil(_divide)).longValue(); |
| } |
| _xblockexpression = _xifexpression; |
| } |
| return _xblockexpression;</body> |
| </operation> |
| </xsd:appinfo> |
| <xsd:documentation>General data size class to define size (value and unit)</xsd:documentation> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:Quantity"> |
| <xsd:attribute default="0" ecore:unsettable="false" name="value" type="ecore:EBigInteger"/> |
| <xsd:attribute ecore:unsettable="false" name="unit" type="am:DataSizeUnit"/> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:simpleType name="DataRateUnit"> |
| <xsd:annotation> |
| <xsd:documentation>Data rate units (enumeration of available units)</xsd:documentation> |
| </xsd:annotation> |
| <xsd:restriction base="xsd:string"> |
| <xsd:enumeration value="_undefined_"/> |
| <xsd:enumeration ecore:value="0" value="bitPerSecond"/> |
| <xsd:enumeration ecore:value="0" value="kbitPerSecond"/> |
| <xsd:enumeration ecore:value="0" value="MbitPerSecond"/> |
| <xsd:enumeration ecore:value="0" value="GbitPerSecond"/> |
| <xsd:enumeration ecore:value="0" value="TbitPerSecond"/> |
| <xsd:enumeration ecore:value="0" value="KibitPerSecond"/> |
| <xsd:enumeration ecore:value="0" value="MibitPerSecond"/> |
| <xsd:enumeration ecore:value="0" value="GibitPerSecond"/> |
| <xsd:enumeration ecore:value="0" value="TibitPerSecond"/> |
| <xsd:enumeration ecore:value="0" value="BPerSecond"/> |
| <xsd:enumeration ecore:value="0" value="kBPerSecond"/> |
| <xsd:enumeration ecore:value="0" value="MBPerSecond"/> |
| <xsd:enumeration ecore:value="0" value="GBPerSecond"/> |
| <xsd:enumeration ecore:value="0" value="TBPerSecond"/> |
| <xsd:enumeration ecore:value="0" value="KiBPerSecond"/> |
| <xsd:enumeration ecore:value="0" value="MiBPerSecond"/> |
| <xsd:enumeration ecore:value="0" value="GiBPerSecond"/> |
| <xsd:enumeration ecore:value="0" value="TiBPerSecond"/> |
| </xsd:restriction> |
| </xsd:simpleType> |
| <xsd:complexType abstract="true" ecore:instanceClass="java.lang.Comparable{org.eclipse.app4mc.amalthea.model.DataRate}" ecore:interface="true" name="DataRateComparable"/> |
| <xsd:complexType ecore:implements="am:DataRateComparable" name="DataRate"> |
| <xsd:annotation> |
| <xsd:appinfo ecore:key="operations" source="http://www.eclipse.org/emf/2002/Ecore"> |
| <operation name="toString" type="ecore:EString" unique="false"> |
| <body><%java.math.BigInteger%> _value = this.getValue(); |
| <%java.lang.String%> _plus = (_value + " "); |
| <%java.lang.String%> _xifexpression = null; |
| <%org.eclipse.app4mc.amalthea.model.DataRateUnit%> _unit = this.getUnit(); |
| boolean _equals = <%com.google.common.base.Objects%>.equal(_unit, <%org.eclipse.app4mc.amalthea.model.DataRateUnit%>._UNDEFINED_); |
| if (_equals) |
| { |
| _xifexpression = "<unit>"; |
| } |
| else |
| { |
| _xifexpression = this.getUnit().getLiteral().replace("PerSecond", "/s"); |
| } |
| return (_plus + _xifexpression);</body> |
| </operation> |
| <operation name="compareTo" type="ecore:EInt" unique="false"> |
| <parameter name="rate" type="am:DataRate" unique="false"/> |
| <body>return <%org.eclipse.app4mc.amalthea.model.AmaltheaServices%>.compareDataRates(this, rate);</body> |
| </operation> |
| </xsd:appinfo> |
| <xsd:documentation>General data rate class to define rate (value and unit)</xsd:documentation> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:Quantity"> |
| <xsd:attribute default="0" ecore:unsettable="false" name="value" type="ecore:EBigInteger"/> |
| <xsd:attribute ecore:unsettable="false" name="unit" type="am:DataRateUnit"/> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType ecore:instanceClass="java.util.Map$Entry" name="CustomProperty"> |
| <xsd:annotation> |
| <xsd:documentation>custom property container for map</xsd:documentation> |
| </xsd:annotation> |
| <xsd:sequence> |
| <xsd:element minOccurs="0" name="value" type="am:Value"/> |
| </xsd:sequence> |
| <xsd:attribute name="key" type="ecore:EString" use="required"/> |
| </xsd:complexType> |
| <xsd:complexType abstract="true" name="Value"> |
| <xsd:annotation> |
| <xsd:documentation>Abstract generalization of a value entry.</xsd:documentation> |
| </xsd:annotation> |
| </xsd:complexType> |
| <xsd:complexType name="ListObject"> |
| <xsd:complexContent> |
| <xsd:extension base="am:Value"> |
| <xsd:sequence> |
| <xsd:element maxOccurs="unbounded" minOccurs="0" name="values" type="am:Value"/> |
| </xsd:sequence> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType name="StringObject"> |
| <xsd:annotation> |
| <xsd:documentation>Object for using the elementary datatype String as generic parameter</xsd:documentation> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:Value"> |
| <xsd:attribute name="value" type="ecore:EString" use="required"/> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType name="BigIntegerObject"> |
| <xsd:annotation> |
| <xsd:documentation>Object for using the elementary datatype String as generic parameter</xsd:documentation> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:Value"> |
| <xsd:attribute ecore:default="0" ecore:unsettable="false" name="value" type="ecore:EBigInteger" use="required"/> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType name="ReferenceObject"> |
| <xsd:annotation> |
| <xsd:documentation>Object for using object reference as generic parameter</xsd:documentation> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:Value"> |
| <xsd:attribute ecore:reference="am:IReferable" name="value" type="xsd:anyURI"/> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType name="IntegerObject"> |
| <xsd:annotation> |
| <xsd:documentation>Object for using the elementary datatype integer as generic parameter</xsd:documentation> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:Value"> |
| <xsd:attribute ecore:default="0" ecore:unsettable="false" name="value" type="ecore:EInt" use="required"/> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType name="LongObject"> |
| <xsd:annotation> |
| <xsd:documentation>Object for using the elementary datatype long as generic parameter</xsd:documentation> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:Value"> |
| <xsd:attribute ecore:default="0" ecore:unsettable="false" name="value" type="ecore:ELong" use="required"/> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType name="FloatObject"> |
| <xsd:annotation> |
| <xsd:documentation>Object for using the elementary datatype float as generic parameter</xsd:documentation> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:Value"> |
| <xsd:attribute ecore:default="0.0" ecore:unsettable="false" name="value" type="ecore:EFloat" use="required"/> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType name="DoubleObject"> |
| <xsd:annotation> |
| <xsd:documentation>Object for using the elementary datatype double as generic parameter</xsd:documentation> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:Value"> |
| <xsd:attribute ecore:default="0.0" ecore:unsettable="false" name="value" type="ecore:EDouble" use="required"/> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType name="BooleanObject"> |
| <xsd:annotation> |
| <xsd:documentation>Object for using the elementary datatype boolean as generic parameter</xsd:documentation> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:Value"> |
| <xsd:attribute ecore:default="false" ecore:unsettable="false" name="value" type="ecore:EBoolean" use="required"/> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType abstract="true" ecore:interface="true" name="NumericStatistic"/> |
| <xsd:complexType name="MinAvgMaxStatistic"> |
| <xsd:annotation> |
| <xsd:appinfo ecore:key="operations" source="http://www.eclipse.org/emf/2002/Ecore"> |
| <operation name="validateInvariants" type="ecore:EBoolean" unique="false"> |
| <parameter name="diagnostics" type="ecore:EDiagnosticChain" unique="false"/> |
| <parameter name="context" type="ecore:EMap{ecore:EJavaObject, ecore:EJavaObject}" unique="false"/> |
| <body>return <%org.eclipse.app4mc.amalthea.model.AmaltheaValidations%>.validateInvariants(this, diagnostics, context);</body> |
| </operation> |
| </xsd:appinfo> |
| <xsd:documentation>Statistic to provide capabilities for min, max and avg</xsd:documentation> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:NumericStatistic"> |
| <xsd:attribute default="0" ecore:unsettable="false" name="min" type="ecore:EInt"/> |
| <xsd:attribute default="0f" ecore:unsettable="false" name="avg" type="ecore:EFloat"/> |
| <xsd:attribute default="0" ecore:unsettable="false" name="max" type="ecore:EInt"/> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType name="SingleValueStatistic"> |
| <xsd:complexContent> |
| <xsd:extension base="am:NumericStatistic"> |
| <xsd:attribute default="0f" ecore:unsettable="false" name="value" type="ecore:EFloat"/> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:simpleType name="SamplingType"> |
| <xsd:annotation> |
| <xsd:documentation>The types of sampling</xsd:documentation> |
| </xsd:annotation> |
| <xsd:restriction base="xsd:string"> |
| <xsd:enumeration value="default"/> |
| <xsd:enumeration ecore:value="0" value="BestCase"/> |
| <xsd:enumeration ecore:value="0" value="WorstCase"/> |
| <xsd:enumeration ecore:value="0" value="AverageCase"/> |
| <xsd:enumeration ecore:value="0" value="CornerCase"/> |
| <xsd:enumeration ecore:value="0" value="Uniform"/> |
| </xsd:restriction> |
| </xsd:simpleType> |
| <xsd:complexType abstract="true" ecore:interface="true" name="ITimeDeviation"> |
| <xsd:annotation> |
| <xsd:appinfo ecore:key="operations" source="http://www.eclipse.org/emf/2002/Ecore"> |
| <operation name="getLowerBound" type="am:Time" unique="false"/> |
| <operation name="getUpperBound" type="am:Time" unique="false"/> |
| <operation name="getAverage" type="am:Time" unique="false"/> |
| </xsd:appinfo> |
| </xsd:annotation> |
| </xsd:complexType> |
| <xsd:complexType abstract="true" name="TimeInterval"> |
| <xsd:annotation> |
| <xsd:appinfo ecore:key="operations" source="http://www.eclipse.org/emf/2002/Ecore"> |
| <operation name="getAverage" type="am:Time" unique="false"> |
| <body>return <%org.eclipse.app4mc.amalthea.model.AmaltheaServices2%>.getAverage(this.getLowerBound(), this.getUpperBound());</body> |
| </operation> |
| <operation name="validateInvariants" type="ecore:EBoolean" unique="false"> |
| <parameter name="diagnostics" type="ecore:EDiagnosticChain" unique="false"/> |
| <parameter name="context" type="ecore:EMap{ecore:EJavaObject, ecore:EJavaObject}" unique="false"/> |
| <body>return <%org.eclipse.app4mc.amalthea.model.AmaltheaValidations%>.validateInvariants(this, diagnostics, context);</body> |
| </operation> |
| </xsd:appinfo> |
| </xsd:annotation> |
| <xsd:sequence> |
| <xsd:element name="lowerBound" type="am:Time"/> |
| <xsd:element name="upperBound" type="am:Time"/> |
| </xsd:sequence> |
| </xsd:complexType> |
| <xsd:complexType name="TimeConstant"> |
| <xsd:annotation> |
| <xsd:appinfo ecore:key="operations" source="http://www.eclipse.org/emf/2002/Ecore"> |
| <operation name="getLowerBound" type="am:Time" unique="false"> |
| <body>return this.getValue();</body> |
| </operation> |
| <operation name="getUpperBound" type="am:Time" unique="false"> |
| <body>return this.getValue();</body> |
| </operation> |
| <operation name="getAverage" type="am:Time" unique="false"> |
| <body>return this.getValue();</body> |
| </operation> |
| </xsd:appinfo> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:ITimeDeviation"> |
| <xsd:sequence> |
| <xsd:element name="value" type="am:Time"/> |
| </xsd:sequence> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType name="TimeHistogram"> |
| <xsd:annotation> |
| <xsd:appinfo ecore:key="operations" source="http://www.eclipse.org/emf/2002/Ecore"> |
| <operation name="getLowerBound" type="am:Time" unique="false"> |
| <body>return <%org.eclipse.app4mc.amalthea.model.AmaltheaServices2%>.getLowerBound_Time(this.getEntries());</body> |
| </operation> |
| <operation name="getUpperBound" type="am:Time" unique="false"> |
| <body>return <%org.eclipse.app4mc.amalthea.model.AmaltheaServices2%>.getUpperBound_Time(this.getEntries());</body> |
| </operation> |
| <operation name="getAverage" type="am:Time" unique="false"> |
| <body>return <%org.eclipse.app4mc.amalthea.model.AmaltheaServices2%>.getAverage_Time(this.getEntries());</body> |
| </operation> |
| </xsd:appinfo> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:ITimeDeviation"> |
| <xsd:sequence> |
| <xsd:element maxOccurs="unbounded" name="entries" type="am:TimeHistogramEntry"/> |
| </xsd:sequence> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType name="TimeHistogramEntry"> |
| <xsd:complexContent> |
| <xsd:extension base="am:TimeInterval"> |
| <xsd:attribute ecore:default="1" ecore:unsettable="false" name="occurrences" type="am:PositiveLong" use="required"/> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType abstract="true" ecore:implements="am:ITimeDeviation" name="BoundedTimeDistribution"> |
| <xsd:complexContent> |
| <xsd:extension base="am:TimeInterval"/> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType abstract="true" name="TruncatedTimeDistribution"> |
| <xsd:annotation> |
| <xsd:appinfo ecore:key="operations" source="http://www.eclipse.org/emf/2002/Ecore"> |
| <operation name="validateInvariants" type="ecore:EBoolean" unique="false"> |
| <parameter name="diagnostics" type="ecore:EDiagnosticChain" unique="false"/> |
| <parameter name="context" type="ecore:EMap{ecore:EJavaObject, ecore:EJavaObject}" unique="false"/> |
| <body>return <%org.eclipse.app4mc.amalthea.model.AmaltheaValidations%>.validateInvariants(this, diagnostics, context);</body> |
| </operation> |
| </xsd:appinfo> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:ITimeDeviation"> |
| <xsd:sequence> |
| <xsd:element minOccurs="0" name="lowerBound" type="am:Time"/> |
| <xsd:element minOccurs="0" name="upperBound" type="am:Time"/> |
| </xsd:sequence> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType name="TimeBoundaries"> |
| <xsd:annotation> |
| <xsd:documentation>Defines the upper and lower bounds of a value interval without defining the distribution</xsd:documentation> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:BoundedTimeDistribution"> |
| <xsd:attribute ecore:unsettable="false" name="samplingType" type="am:SamplingType"/> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType name="TimeStatistics"> |
| <xsd:annotation> |
| <xsd:documentation>Defines the upper bound, lower bound and mean of a value interval without defining the distribution</xsd:documentation> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:BoundedTimeDistribution"> |
| <xsd:sequence> |
| <xsd:element name="average" type="am:Time"/> |
| </xsd:sequence> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType name="TimeUniformDistribution"> |
| <xsd:annotation> |
| <xsd:documentation>Uniform distribution</xsd:documentation> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:BoundedTimeDistribution"/> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType name="TimeGaussDistribution"> |
| <xsd:annotation> |
| <xsd:appinfo ecore:key="operations" source="http://www.eclipse.org/emf/2002/Ecore"> |
| <operation name="getAverage" type="am:Time" unique="false"> |
| <body>return <%org.eclipse.app4mc.amalthea.model.AmaltheaServices2%>.getAverageOfTruncatedNormalDistribution(this.getLowerBound(), this.getUpperBound(), this.getMean(), this.getSd());</body> |
| </operation> |
| </xsd:appinfo> |
| <xsd:documentation>Gauss distribution</xsd:documentation> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:TruncatedTimeDistribution"> |
| <xsd:sequence> |
| <xsd:element name="mean" type="am:Time"/> |
| <xsd:element name="sd" type="am:Time"/> |
| </xsd:sequence> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType name="TimeWeibullEstimatorsDistribution"> |
| <xsd:annotation> |
| <xsd:documentation>Weibull Distribution |
| The parameter of a Weibull distribution (kappa, lambda...) are calculated from the estimators minimum, maximum and average.</xsd:documentation> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:BoundedTimeDistribution"> |
| <xsd:sequence> |
| <xsd:element name="average" type="am:Time"/> |
| </xsd:sequence> |
| <xsd:attribute ecore:default="1.0" ecore:unsettable="false" name="pRemainPromille" type="am:PositiveDouble" use="required"/> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType name="TimeBetaDistribution"> |
| <xsd:annotation> |
| <xsd:appinfo ecore:key="operations" source="http://www.eclipse.org/emf/2002/Ecore"> |
| <operation name="getAverage" type="am:Time" unique="false"> |
| <body>return <%org.eclipse.app4mc.amalthea.model.AmaltheaServices2%>.getAverageOfBetaDistribution(this.getLowerBound(), this.getUpperBound(), <%java.lang.Double%>.valueOf(this.getAlpha()), <%java.lang.Double%>.valueOf(this.getBeta()));</body> |
| </operation> |
| </xsd:appinfo> |
| <xsd:documentation>Beta distribution</xsd:documentation> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:BoundedTimeDistribution"> |
| <xsd:attribute ecore:default="1.0" ecore:unsettable="false" name="alpha" type="am:PositiveDouble" use="required"/> |
| <xsd:attribute ecore:default="1.0" ecore:unsettable="false" name="beta" type="am:PositiveDouble" use="required"/> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType abstract="true" ecore:interface="true" name="IDiscreteValueDeviation"> |
| <xsd:annotation> |
| <xsd:appinfo ecore:key="operations" source="http://www.eclipse.org/emf/2002/Ecore"> |
| <operation name="getLowerBound" type="ecore:ELongObject" unique="false"/> |
| <operation name="getUpperBound" type="ecore:ELongObject" unique="false"/> |
| <operation name="getAverage" type="ecore:EDoubleObject" unique="false"/> |
| </xsd:appinfo> |
| </xsd:annotation> |
| </xsd:complexType> |
| <xsd:complexType abstract="true" name="DiscreteValueInterval"> |
| <xsd:annotation> |
| <xsd:appinfo ecore:key="operations" source="http://www.eclipse.org/emf/2002/Ecore"> |
| <operation name="getAverage" type="ecore:EDoubleObject" unique="false"> |
| <body>return <%org.eclipse.app4mc.amalthea.model.AmaltheaServices2%>.getAverage(this.getLowerBound(), this.getUpperBound());</body> |
| </operation> |
| <operation name="validateInvariants" type="ecore:EBoolean" unique="false"> |
| <parameter name="diagnostics" type="ecore:EDiagnosticChain" unique="false"/> |
| <parameter name="context" type="ecore:EMap{ecore:EJavaObject, ecore:EJavaObject}" unique="false"/> |
| <body>return <%org.eclipse.app4mc.amalthea.model.AmaltheaValidations%>.validateInvariants(this, diagnostics, context);</body> |
| </operation> |
| </xsd:appinfo> |
| </xsd:annotation> |
| <xsd:attribute ecore:default="0" ecore:unsettable="false" name="lowerBound" type="ecore:ELongObject" use="required"/> |
| <xsd:attribute ecore:default="0" ecore:unsettable="false" name="upperBound" type="ecore:ELongObject" use="required"/> |
| </xsd:complexType> |
| <xsd:complexType name="DiscreteValueConstant"> |
| <xsd:annotation> |
| <xsd:appinfo ecore:key="operations" source="http://www.eclipse.org/emf/2002/Ecore"> |
| <operation name="getLowerBound" type="ecore:ELongObject" unique="false"> |
| <body>return <%java.lang.Long%>.valueOf(this.getValue());</body> |
| </operation> |
| <operation name="getUpperBound" type="ecore:ELongObject" unique="false"> |
| <body>return <%java.lang.Long%>.valueOf(this.getValue());</body> |
| </operation> |
| <operation name="getAverage" type="ecore:EDoubleObject" unique="false"> |
| <body>return <%java.lang.Double%>.valueOf(<%java.lang.Long%>.valueOf(this.getValue()).doubleValue());</body> |
| </operation> |
| </xsd:appinfo> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:IDiscreteValueDeviation"> |
| <xsd:attribute ecore:default="0" ecore:unsettable="false" name="value" type="ecore:ELong" use="required"/> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType name="DiscreteValueHistogram"> |
| <xsd:annotation> |
| <xsd:appinfo ecore:key="operations" source="http://www.eclipse.org/emf/2002/Ecore"> |
| <operation name="getLowerBound" type="ecore:ELongObject" unique="false"> |
| <body>return <%org.eclipse.app4mc.amalthea.model.AmaltheaServices2%>.getLowerBound_DV(this.getEntries());</body> |
| </operation> |
| <operation name="getUpperBound" type="ecore:ELongObject" unique="false"> |
| <body>return <%org.eclipse.app4mc.amalthea.model.AmaltheaServices2%>.getUpperBound_DV(this.getEntries());</body> |
| </operation> |
| <operation name="getAverage" type="ecore:EDoubleObject" unique="false"> |
| <body>return <%org.eclipse.app4mc.amalthea.model.AmaltheaServices2%>.getAverage_DV(this.getEntries());</body> |
| </operation> |
| </xsd:appinfo> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:IDiscreteValueDeviation"> |
| <xsd:sequence> |
| <xsd:element maxOccurs="unbounded" name="entries" type="am:DiscreteValueHistogramEntry"/> |
| </xsd:sequence> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType name="DiscreteValueHistogramEntry"> |
| <xsd:complexContent> |
| <xsd:extension base="am:DiscreteValueInterval"> |
| <xsd:attribute ecore:default="1" ecore:unsettable="false" name="occurrences" type="am:PositiveLong" use="required"/> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType abstract="true" ecore:implements="am:IDiscreteValueDeviation" name="BoundedDiscreteValueDistribution"> |
| <xsd:complexContent> |
| <xsd:extension base="am:DiscreteValueInterval"/> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType abstract="true" name="TruncatedDiscreteValueDistribution"> |
| <xsd:annotation> |
| <xsd:appinfo ecore:key="operations" source="http://www.eclipse.org/emf/2002/Ecore"> |
| <operation name="validateInvariants" type="ecore:EBoolean" unique="false"> |
| <parameter name="diagnostics" type="ecore:EDiagnosticChain" unique="false"/> |
| <parameter name="context" type="ecore:EMap{ecore:EJavaObject, ecore:EJavaObject}" unique="false"/> |
| <body>return <%org.eclipse.app4mc.amalthea.model.AmaltheaValidations%>.validateInvariants(this, diagnostics, context);</body> |
| </operation> |
| </xsd:appinfo> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:IDiscreteValueDeviation"> |
| <xsd:attribute name="lowerBound" type="ecore:ELongObject"/> |
| <xsd:attribute name="upperBound" type="ecore:ELongObject"/> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType name="DiscreteValueBoundaries"> |
| <xsd:annotation> |
| <xsd:documentation>Defines the upper and lower bounds of a value interval without defining the distribution</xsd:documentation> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:BoundedDiscreteValueDistribution"> |
| <xsd:attribute ecore:unsettable="false" name="samplingType" type="am:SamplingType"/> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType name="DiscreteValueStatistics"> |
| <xsd:annotation> |
| <xsd:documentation>Defines the upper bound, lower bound and mean of a value interval without defining the distribution</xsd:documentation> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:BoundedDiscreteValueDistribution"> |
| <xsd:attribute ecore:default="0.0" ecore:unsettable="false" name="average" type="ecore:EDoubleObject" use="required"/> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType name="DiscreteValueUniformDistribution"> |
| <xsd:annotation> |
| <xsd:documentation>Uniform distribution</xsd:documentation> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:BoundedDiscreteValueDistribution"/> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType name="DiscreteValueGaussDistribution"> |
| <xsd:annotation> |
| <xsd:appinfo ecore:key="operations" source="http://www.eclipse.org/emf/2002/Ecore"> |
| <operation name="getAverage" type="ecore:EDoubleObject" unique="false"> |
| <body>return <%org.eclipse.app4mc.amalthea.model.AmaltheaServices2%>.getAverageOfTruncatedNormalDistribution(this.getLowerBound(), this.getUpperBound(), <%java.lang.Double%>.valueOf(this.getMean()), <%java.lang.Double%>.valueOf(this.getSd()));</body> |
| </operation> |
| </xsd:appinfo> |
| <xsd:documentation>Gauss distribution</xsd:documentation> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:TruncatedDiscreteValueDistribution"> |
| <xsd:attribute ecore:default="0.0" ecore:unsettable="false" name="mean" type="ecore:EDouble" use="required"/> |
| <xsd:attribute ecore:default="1.0" ecore:unsettable="false" name="sd" type="am:PositiveDouble" use="required"/> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType name="DiscreteValueWeibullEstimatorsDistribution"> |
| <xsd:annotation> |
| <xsd:documentation>Weibull Distribution |
| The parameter of a Weibull distribution (kappa, lambda...) are calculated from the estimators minimum, maximum and average.</xsd:documentation> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:BoundedDiscreteValueDistribution"> |
| <xsd:attribute ecore:default="0.0" ecore:unsettable="false" name="average" type="ecore:EDoubleObject" use="required"/> |
| <xsd:attribute ecore:default="1.0" ecore:unsettable="false" name="pRemainPromille" type="am:PositiveDouble" use="required"/> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType name="DiscreteValueBetaDistribution"> |
| <xsd:annotation> |
| <xsd:appinfo ecore:key="operations" source="http://www.eclipse.org/emf/2002/Ecore"> |
| <operation name="getAverage" type="ecore:EDoubleObject" unique="false"> |
| <body>return <%org.eclipse.app4mc.amalthea.model.AmaltheaServices2%>.getAverageOfBetaDistribution(this.getLowerBound(), this.getUpperBound(), <%java.lang.Double%>.valueOf(this.getAlpha()), <%java.lang.Double%>.valueOf(this.getBeta()));</body> |
| </operation> |
| </xsd:appinfo> |
| <xsd:documentation>Beta distribution</xsd:documentation> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:BoundedDiscreteValueDistribution"> |
| <xsd:attribute ecore:default="1.0" ecore:unsettable="false" name="alpha" type="am:PositiveDouble" use="required"/> |
| <xsd:attribute ecore:default="1.0" ecore:unsettable="false" name="beta" type="am:PositiveDouble" use="required"/> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType abstract="true" ecore:interface="true" name="IContinuousValueDeviation"> |
| <xsd:annotation> |
| <xsd:appinfo ecore:key="operations" source="http://www.eclipse.org/emf/2002/Ecore"> |
| <operation name="getLowerBound" type="ecore:EDoubleObject" unique="false"/> |
| <operation name="getUpperBound" type="ecore:EDoubleObject" unique="false"/> |
| <operation name="getAverage" type="ecore:EDoubleObject" unique="false"/> |
| </xsd:appinfo> |
| </xsd:annotation> |
| </xsd:complexType> |
| <xsd:complexType abstract="true" name="ContinuousValueInterval"> |
| <xsd:annotation> |
| <xsd:appinfo ecore:key="operations" source="http://www.eclipse.org/emf/2002/Ecore"> |
| <operation name="getAverage" type="ecore:EDoubleObject" unique="false"> |
| <body>return <%org.eclipse.app4mc.amalthea.model.AmaltheaServices2%>.getAverage(this.getLowerBound(), this.getUpperBound());</body> |
| </operation> |
| <operation name="validateInvariants" type="ecore:EBoolean" unique="false"> |
| <parameter name="diagnostics" type="ecore:EDiagnosticChain" unique="false"/> |
| <parameter name="context" type="ecore:EMap{ecore:EJavaObject, ecore:EJavaObject}" unique="false"/> |
| <body>return <%org.eclipse.app4mc.amalthea.model.AmaltheaValidations%>.validateInvariants(this, diagnostics, context);</body> |
| </operation> |
| </xsd:appinfo> |
| </xsd:annotation> |
| <xsd:attribute ecore:default="0.0" ecore:unsettable="false" name="lowerBound" type="ecore:EDoubleObject" use="required"/> |
| <xsd:attribute ecore:default="0.0" ecore:unsettable="false" name="upperBound" type="ecore:EDoubleObject" use="required"/> |
| </xsd:complexType> |
| <xsd:complexType name="ContinuousValueConstant"> |
| <xsd:annotation> |
| <xsd:appinfo ecore:key="operations" source="http://www.eclipse.org/emf/2002/Ecore"> |
| <operation name="getLowerBound" type="ecore:EDoubleObject" unique="false"> |
| <body>return <%java.lang.Double%>.valueOf(this.getValue());</body> |
| </operation> |
| <operation name="getUpperBound" type="ecore:EDoubleObject" unique="false"> |
| <body>return <%java.lang.Double%>.valueOf(this.getValue());</body> |
| </operation> |
| <operation name="getAverage" type="ecore:EDoubleObject" unique="false"> |
| <body>return <%java.lang.Double%>.valueOf(this.getValue());</body> |
| </operation> |
| </xsd:appinfo> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:IContinuousValueDeviation"> |
| <xsd:attribute ecore:default="0.0" ecore:unsettable="false" name="value" type="ecore:EDouble" use="required"/> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType name="ContinuousValueHistogram"> |
| <xsd:annotation> |
| <xsd:appinfo ecore:key="operations" source="http://www.eclipse.org/emf/2002/Ecore"> |
| <operation name="getLowerBound" type="ecore:EDoubleObject" unique="false"> |
| <body>return <%org.eclipse.app4mc.amalthea.model.AmaltheaServices2%>.getLowerBound_CV(this.getEntries());</body> |
| </operation> |
| <operation name="getUpperBound" type="ecore:EDoubleObject" unique="false"> |
| <body>return <%org.eclipse.app4mc.amalthea.model.AmaltheaServices2%>.getUpperBound_CV(this.getEntries());</body> |
| </operation> |
| <operation name="getAverage" type="ecore:EDoubleObject" unique="false"> |
| <body>return <%org.eclipse.app4mc.amalthea.model.AmaltheaServices2%>.getAverage_CV(this.getEntries());</body> |
| </operation> |
| </xsd:appinfo> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:IContinuousValueDeviation"> |
| <xsd:sequence> |
| <xsd:element maxOccurs="unbounded" name="entries" type="am:ContinuousValueHistogramEntry"/> |
| </xsd:sequence> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType name="ContinuousValueHistogramEntry"> |
| <xsd:complexContent> |
| <xsd:extension base="am:ContinuousValueInterval"> |
| <xsd:attribute ecore:default="1" ecore:unsettable="false" name="occurrences" type="am:PositiveLong" use="required"/> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType abstract="true" ecore:implements="am:IContinuousValueDeviation" name="BoundedContinuousValueDistribution"> |
| <xsd:complexContent> |
| <xsd:extension base="am:ContinuousValueInterval"/> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType abstract="true" name="TruncatedContinuousValueDistribution"> |
| <xsd:annotation> |
| <xsd:appinfo ecore:key="operations" source="http://www.eclipse.org/emf/2002/Ecore"> |
| <operation name="validateInvariants" type="ecore:EBoolean" unique="false"> |
| <parameter name="diagnostics" type="ecore:EDiagnosticChain" unique="false"/> |
| <parameter name="context" type="ecore:EMap{ecore:EJavaObject, ecore:EJavaObject}" unique="false"/> |
| <body>return <%org.eclipse.app4mc.amalthea.model.AmaltheaValidations%>.validateInvariants(this, diagnostics, context);</body> |
| </operation> |
| </xsd:appinfo> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:IContinuousValueDeviation"> |
| <xsd:attribute name="lowerBound" type="ecore:EDoubleObject"/> |
| <xsd:attribute name="upperBound" type="ecore:EDoubleObject"/> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType name="ContinuousValueBoundaries"> |
| <xsd:annotation> |
| <xsd:documentation>Defines the upper and lower bounds of a value interval without defining the distribution</xsd:documentation> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:BoundedContinuousValueDistribution"> |
| <xsd:attribute ecore:unsettable="false" name="samplingType" type="am:SamplingType"/> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType name="ContinuousValueStatistics"> |
| <xsd:annotation> |
| <xsd:documentation>Defines the upper bound, lower bound and mean of a value interval without defining the distribution</xsd:documentation> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:BoundedContinuousValueDistribution"> |
| <xsd:attribute ecore:default="0.0" ecore:unsettable="false" name="average" type="ecore:EDoubleObject" use="required"/> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType name="ContinuousValueUniformDistribution"> |
| <xsd:annotation> |
| <xsd:documentation>Uniform distribution</xsd:documentation> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:BoundedContinuousValueDistribution"/> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType name="ContinuousValueGaussDistribution"> |
| <xsd:annotation> |
| <xsd:appinfo ecore:key="operations" source="http://www.eclipse.org/emf/2002/Ecore"> |
| <operation name="getAverage" type="ecore:EDoubleObject" unique="false"> |
| <body>return <%org.eclipse.app4mc.amalthea.model.AmaltheaServices2%>.getAverageOfTruncatedNormalDistribution(this.getLowerBound(), this.getUpperBound(), <%java.lang.Double%>.valueOf(this.getMean()), <%java.lang.Double%>.valueOf(this.getSd()));</body> |
| </operation> |
| </xsd:appinfo> |
| <xsd:documentation>Gauss distribution</xsd:documentation> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:TruncatedContinuousValueDistribution"> |
| <xsd:attribute ecore:default="0.0" ecore:unsettable="false" name="mean" type="ecore:EDouble" use="required"/> |
| <xsd:attribute ecore:default="1.0" ecore:unsettable="false" name="sd" type="am:PositiveDouble" use="required"/> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType name="ContinuousValueWeibullEstimatorsDistribution"> |
| <xsd:annotation> |
| <xsd:documentation>Weibull Distribution |
| The parameter of a Weibull distribution (kappa, lambda...) are calculated from the estimators minimum, maximum and average.</xsd:documentation> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:BoundedContinuousValueDistribution"> |
| <xsd:attribute ecore:default="0.0" ecore:unsettable="false" name="average" type="ecore:EDoubleObject" use="required"/> |
| <xsd:attribute ecore:default="1.0" ecore:unsettable="false" name="pRemainPromille" type="am:PositiveDouble" use="required"/> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType name="ContinuousValueBetaDistribution"> |
| <xsd:annotation> |
| <xsd:appinfo ecore:key="operations" source="http://www.eclipse.org/emf/2002/Ecore"> |
| <operation name="getAverage" type="ecore:EDoubleObject" unique="false"> |
| <body>return <%org.eclipse.app4mc.amalthea.model.AmaltheaServices2%>.getAverageOfBetaDistribution(this.getLowerBound(), this.getUpperBound(), <%java.lang.Double%>.valueOf(this.getAlpha()), <%java.lang.Double%>.valueOf(this.getBeta()));</body> |
| </operation> |
| </xsd:appinfo> |
| <xsd:documentation>Beta distribution</xsd:documentation> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:BoundedContinuousValueDistribution"> |
| <xsd:attribute ecore:default="1.0" ecore:unsettable="false" name="alpha" type="am:PositiveDouble" use="required"/> |
| <xsd:attribute ecore:default="1.0" ecore:unsettable="false" name="beta" type="am:PositiveDouble" use="required"/> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType abstract="true" name="Mode"> |
| <xsd:complexContent> |
| <xsd:extension base="am:ReferableBaseObject"/> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType name="NumericMode"> |
| <xsd:complexContent> |
| <xsd:extension base="am:Mode"/> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType name="EnumMode"> |
| <xsd:annotation> |
| <xsd:appinfo ecore:key="operations" source="http://www.eclipse.org/emf/2002/Ecore"> |
| <operation name="getLiteral" type="am:ModeLiteral" unique="false"> |
| <parameter name="literal" type="ecore:EString" unique="false"/> |
| <body>final <%org.eclipse.xtext.xbase.lib.Functions.Function1%><<%org.eclipse.app4mc.amalthea.model.ModeLiteral%>, <%java.lang.Boolean%>> _function = new <%org.eclipse.xtext.xbase.lib.Functions.Function1%><<%org.eclipse.app4mc.amalthea.model.ModeLiteral%>, <%java.lang.Boolean%>>() |
| { |
| public <%java.lang.Boolean%> apply(final <%org.eclipse.app4mc.amalthea.model.ModeLiteral%> it) |
| { |
| <%java.lang.String%> _name = it.getName(); |
| return <%java.lang.Boolean%>.valueOf(<%com.google.common.base.Objects%>.equal(_name, literal)); |
| } |
| }; |
| return <%org.eclipse.xtext.xbase.lib.IterableExtensions%>.<<%org.eclipse.app4mc.amalthea.model.ModeLiteral%>>findFirst(this.getLiterals(), _function);</body> |
| </operation> |
| </xsd:appinfo> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:Mode"> |
| <xsd:sequence> |
| <xsd:element ecore:opposite="containingMode" maxOccurs="unbounded" minOccurs="0" name="literals" type="am:ModeLiteral"/> |
| </xsd:sequence> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType name="ModeLiteral"> |
| <xsd:annotation> |
| <xsd:appinfo ecore:key="operations" source="http://www.eclipse.org/emf/2002/Ecore"> |
| <operation name="getNamePrefixSegments" type="ecore:EString" unique="false" upperBound="-1"> |
| <body><%org.eclipse.emf.common.util.EList%><<%java.lang.String%>> _elvis = null; |
| <%org.eclipse.app4mc.amalthea.model.EnumMode%> _containingMode = this.getContainingMode(); |
| <%org.eclipse.emf.common.util.EList%><<%java.lang.String%>> _qualifiedNameSegments = null; |
| if (_containingMode!=null) |
| { |
| _qualifiedNameSegments=_containingMode.getQualifiedNameSegments(); |
| } |
| if (_qualifiedNameSegments != null) |
| { |
| _elvis = _qualifiedNameSegments; |
| } else |
| { |
| <%org.eclipse.emf.common.util.BasicEList%><<%java.lang.String%>> _newBasicEList = <%org.eclipse.emf.ecore.xcore.lib.XcoreCollectionLiterals%>.<<%java.lang.String%>>newBasicEList(); |
| _elvis = _newBasicEList; |
| } |
| return _elvis;</body> |
| </operation> |
| <operation name="toString" type="ecore:EString" unique="false"> |
| <body><%java.lang.String%> _xifexpression = null; |
| boolean _isNullOrEmpty = <%org.eclipse.xtext.xbase.lib.StringExtensions%>.isNullOrEmpty(this.getName()); |
| if (_isNullOrEmpty) |
| { |
| _xifexpression = "<literal>"; |
| } |
| else |
| { |
| _xifexpression = this.getName(); |
| } |
| return _xifexpression;</body> |
| </operation> |
| </xsd:appinfo> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:ReferableBaseObject"> |
| <xsd:attribute ecore:changeable="false" ecore:opposite="literals" ecore:reference="am:EnumMode" name="containingMode" type="xsd:anyURI"/> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:simpleType ecore:instanceClass="long" name="Address"> |
| <xsd:annotation> |
| <xsd:documentation>Hardware Address (long; specified as hexadecimal value)</xsd:documentation> |
| </xsd:annotation> |
| <xsd:restriction base="xsd:string"> |
| <xsd:minInclusive value="0"/> |
| </xsd:restriction> |
| </xsd:simpleType> |
| <xsd:simpleType ecore:instanceClass="int" name="PositiveInt"> |
| <xsd:restriction base="xsd:string"> |
| <xsd:minExclusive value="0"/> |
| </xsd:restriction> |
| </xsd:simpleType> |
| <xsd:simpleType ecore:instanceClass="long" name="PositiveLong"> |
| <xsd:restriction base="xsd:string"> |
| <xsd:minExclusive value="0"/> |
| </xsd:restriction> |
| </xsd:simpleType> |
| <xsd:simpleType ecore:instanceClass="double" name="PositiveDouble"> |
| <xsd:restriction base="xsd:string"> |
| <xsd:minExclusive value="0"/> |
| </xsd:restriction> |
| </xsd:simpleType> |
| <xsd:simpleType ecore:instanceClass="int" name="NonNegativeInt"> |
| <xsd:restriction base="xsd:string"> |
| <xsd:minInclusive value="0"/> |
| </xsd:restriction> |
| </xsd:simpleType> |
| <xsd:simpleType ecore:instanceClass="long" name="NonNegativeLong"> |
| <xsd:restriction base="xsd:string"> |
| <xsd:minInclusive value="0"/> |
| </xsd:restriction> |
| </xsd:simpleType> |
| <xsd:simpleType ecore:instanceClass="double" name="NonNegativeDouble"> |
| <xsd:restriction base="xsd:string"> |
| <xsd:minInclusive value="0"/> |
| </xsd:restriction> |
| </xsd:simpleType> |
| <xsd:complexType ecore:implements="am:IComponentContainer am:IInterfaceContainer" name="ComponentsModel"> |
| <xsd:complexContent> |
| <xsd:extension base="am:BaseObject"> |
| <xsd:sequence> |
| <xsd:element maxOccurs="unbounded" minOccurs="0" name="structures" type="am:ComponentStructure"/> |
| <xsd:element maxOccurs="unbounded" minOccurs="0" name="systems" type="am:System"/> |
| </xsd:sequence> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType abstract="true" ecore:interface="true" name="IComponentContainer"> |
| <xsd:sequence> |
| <xsd:element maxOccurs="unbounded" minOccurs="0" name="components" type="am:Component"/> |
| </xsd:sequence> |
| </xsd:complexType> |
| <xsd:complexType abstract="true" ecore:interface="true" name="IInterfaceContainer"> |
| <xsd:sequence> |
| <xsd:element maxOccurs="unbounded" minOccurs="0" name="interfaces" type="am:MainInterface"/> |
| </xsd:sequence> |
| </xsd:complexType> |
| <xsd:complexType abstract="true" ecore:interface="true" name="ISystem"> |
| <xsd:sequence> |
| <xsd:element ecore:opposite="containingSystem" maxOccurs="unbounded" minOccurs="0" name="componentInstances" type="am:ComponentInstance"/> |
| <xsd:element ecore:opposite="containingSystem" maxOccurs="unbounded" minOccurs="0" name="connectors" type="am:Connector"/> |
| <xsd:element maxOccurs="unbounded" minOccurs="0" name="groundedPorts" type="am:QualifiedPort"/> |
| </xsd:sequence> |
| <xsd:attribute ecore:changeable="false" ecore:derived="true" ecore:reference="am:QualifiedPort" ecore:transient="true" ecore:volatile="true" name="innerPorts"> |
| <xsd:simpleType> |
| <xsd:list itemType="xsd:anyURI"/> |
| </xsd:simpleType> |
| </xsd:attribute> |
| </xsd:complexType> |
| <xsd:complexType abstract="true" ecore:implements="am:ITaggable" name="ComponentInterface"> |
| <xsd:complexContent> |
| <xsd:extension base="am:ReferableBaseObject"> |
| <xsd:sequence> |
| <xsd:element ecore:opposite="containingInterface" maxOccurs="unbounded" minOccurs="0" name="subInterfaces" type="am:SubInterface"/> |
| </xsd:sequence> |
| <xsd:attribute ecore:reference="am:TypeDefinition" name="datatype" type="xsd:anyURI"/> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType ecore:implements="am:INamespaceMember am:IComponentStructureMember" name="MainInterface"> |
| <xsd:complexContent> |
| <xsd:extension base="am:ComponentInterface"> |
| <xsd:attribute default="1.0" ecore:unsettable="false" name="version" type="ecore:EString"/> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType name="SubInterface"> |
| <xsd:annotation> |
| <xsd:appinfo ecore:key="operations" source="http://www.eclipse.org/emf/2002/Ecore"> |
| <operation name="getNamePrefixSegments" type="ecore:EString" unique="false" upperBound="-1"> |
| <body><%org.eclipse.emf.common.util.EList%><<%java.lang.String%>> _elvis = null; |
| <%org.eclipse.app4mc.amalthea.model.ComponentInterface%> _containingInterface = this.getContainingInterface(); |
| <%org.eclipse.emf.common.util.EList%><<%java.lang.String%>> _qualifiedNameSegments = null; |
| if (_containingInterface!=null) |
| { |
| _qualifiedNameSegments=_containingInterface.getQualifiedNameSegments(); |
| } |
| if (_qualifiedNameSegments != null) |
| { |
| _elvis = _qualifiedNameSegments; |
| } else |
| { |
| <%org.eclipse.emf.common.util.BasicEList%><<%java.lang.String%>> _newBasicEList = <%org.eclipse.emf.ecore.xcore.lib.XcoreCollectionLiterals%>.<<%java.lang.String%>>newBasicEList(); |
| _elvis = _newBasicEList; |
| } |
| return _elvis;</body> |
| </operation> |
| </xsd:appinfo> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:ComponentInterface"> |
| <xsd:attribute ecore:changeable="false" ecore:opposite="subInterfaces" ecore:reference="am:ComponentInterface" name="containingInterface" type="xsd:anyURI"/> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType ecore:implements="am:ITaggable" name="ComponentPort"> |
| <xsd:annotation> |
| <xsd:appinfo ecore:key="operations" source="http://www.eclipse.org/emf/2002/Ecore"> |
| <operation name="getNamePrefixSegments" type="ecore:EString" unique="false" upperBound="-1"> |
| <body><%org.eclipse.emf.common.util.EList%><<%java.lang.String%>> _elvis = null; |
| <%org.eclipse.app4mc.amalthea.model.Component%> _containingComponent = this.getContainingComponent(); |
| <%org.eclipse.emf.common.util.EList%><<%java.lang.String%>> _qualifiedNameSegments = null; |
| if (_containingComponent!=null) |
| { |
| _qualifiedNameSegments=_containingComponent.getQualifiedNameSegments(); |
| } |
| if (_qualifiedNameSegments != null) |
| { |
| _elvis = _qualifiedNameSegments; |
| } else |
| { |
| <%org.eclipse.emf.common.util.BasicEList%><<%java.lang.String%>> _newBasicEList = <%org.eclipse.emf.ecore.xcore.lib.XcoreCollectionLiterals%>.<<%java.lang.String%>>newBasicEList(); |
| _elvis = _newBasicEList; |
| } |
| return _elvis;</body> |
| </operation> |
| </xsd:appinfo> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:ReferableBaseObject"> |
| <xsd:attribute ecore:changeable="false" ecore:opposite="ports" ecore:reference="am:Component" name="containingComponent" type="xsd:anyURI"/> |
| <xsd:attribute ecore:unsettable="false" name="kind" type="am:InterfaceKind"/> |
| <xsd:attribute ecore:reference="am:ComponentInterface" name="interface" type="xsd:anyURI"/> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType name="ComponentStructure"> |
| <xsd:annotation> |
| <xsd:appinfo ecore:key="operations" source="http://www.eclipse.org/emf/2002/Ecore"> |
| <operation name="getContainingStructure" type="am:ComponentStructure" unique="false"> |
| <body><%org.eclipse.app4mc.amalthea.model.ComponentStructure%> _xifexpression = null; |
| <%org.eclipse.emf.ecore.EObject%> _eContainer = this.eContainer(); |
| if ((_eContainer instanceof <%org.eclipse.app4mc.amalthea.model.ComponentStructure%>)) |
| { |
| <%org.eclipse.emf.ecore.EObject%> _eContainer_1 = this.eContainer(); |
| _xifexpression = ((<%org.eclipse.app4mc.amalthea.model.ComponentStructure%>) _eContainer_1); |
| } |
| else |
| { |
| _xifexpression = null; |
| } |
| return _xifexpression;</body> |
| </operation> |
| <operation name="getDefaultNameSeparator" type="ecore:EString" unique="false"> |
| <body>return "::";</body> |
| </operation> |
| <operation name="getNamePrefixSegments" type="ecore:EString" unique="false" upperBound="-1"> |
| <body><%org.eclipse.emf.common.util.EList%><<%java.lang.String%>> _xifexpression = null; |
| <%org.eclipse.app4mc.amalthea.model.ComponentStructure%> _containingStructure = this.getContainingStructure(); |
| boolean _tripleEquals = (_containingStructure == null); |
| if (_tripleEquals) |
| { |
| _xifexpression = <%org.eclipse.emf.ecore.xcore.lib.XcoreCollectionLiterals%>.<<%java.lang.String%>>newBasicEList(); |
| } |
| else |
| { |
| _xifexpression = this.getContainingStructure().getQualifiedNameSegments(); |
| } |
| return _xifexpression;</body> |
| </operation> |
| </xsd:appinfo> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:ReferableObject"> |
| <xsd:sequence> |
| <xsd:element maxOccurs="unbounded" minOccurs="0" name="subStructures" type="am:ComponentStructure"/> |
| </xsd:sequence> |
| <xsd:attribute default="" ecore:unsettable="false" name="structureType" type="ecore:EString"/> |
| <xsd:attribute ecore:changeable="false" ecore:derived="true" ecore:reference="am:IComponentStructureMember" ecore:transient="true" ecore:volatile="true" name="memberObjects"> |
| <xsd:annotation> |
| <xsd:documentation> |
| <p> |
| <b>Returns an <em>immutable</em> list of objects (IComponentStructureMember) referring to this structure.</b> |
| </p> |
| </xsd:documentation> |
| </xsd:annotation> |
| <xsd:simpleType> |
| <xsd:list itemType="xsd:anyURI"/> |
| </xsd:simpleType> |
| </xsd:attribute> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType abstract="true" ecore:interface="true" name="IComponentStructureMember"> |
| <xsd:attribute ecore:reference="am:ComponentStructure" name="structure" type="xsd:anyURI"/> |
| </xsd:complexType> |
| <xsd:complexType ecore:implements="am:ITaggable am:INamespaceMember am:IComponentStructureMember" name="Component"> |
| <xsd:complexContent> |
| <xsd:extension base="am:ReferableBaseObject"> |
| <xsd:sequence> |
| <xsd:element ecore:opposite="containingComponent" maxOccurs="unbounded" minOccurs="0" name="ports" type="am:ComponentPort"/> |
| </xsd:sequence> |
| <xsd:attribute ecore:reference="am:AbstractProcess" name="processes"> |
| <xsd:simpleType> |
| <xsd:list itemType="xsd:anyURI"/> |
| </xsd:simpleType> |
| </xsd:attribute> |
| <xsd:attribute ecore:reference="am:Runnable" name="runnables"> |
| <xsd:simpleType> |
| <xsd:list itemType="xsd:anyURI"/> |
| </xsd:simpleType> |
| </xsd:attribute> |
| <xsd:attribute ecore:reference="am:Label" name="labels"> |
| <xsd:simpleType> |
| <xsd:list itemType="xsd:anyURI"/> |
| </xsd:simpleType> |
| </xsd:attribute> |
| <xsd:attribute ecore:reference="am:Semaphore" name="semaphores"> |
| <xsd:simpleType> |
| <xsd:list itemType="xsd:anyURI"/> |
| </xsd:simpleType> |
| </xsd:attribute> |
| <xsd:attribute ecore:reference="am:OsEvent" name="osEvents"> |
| <xsd:simpleType> |
| <xsd:list itemType="xsd:anyURI"/> |
| </xsd:simpleType> |
| </xsd:attribute> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType ecore:implements="am:ISystem" name="Composite"> |
| <xsd:complexContent> |
| <xsd:extension base="am:Component"/> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType ecore:implements="am:ITaggable am:ISystem" name="System"> |
| <xsd:complexContent> |
| <xsd:extension base="am:ReferableBaseObject"/> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType ecore:implements="am:ITaggable" name="ComponentInstance"> |
| <xsd:annotation> |
| <xsd:appinfo ecore:key="operations" source="http://www.eclipse.org/emf/2002/Ecore"> |
| <operation name="getNamePrefixSegments" type="ecore:EString" unique="false" upperBound="-1"> |
| <body><%org.eclipse.emf.common.util.EList%><<%java.lang.String%>> _elvis = null; |
| <%org.eclipse.app4mc.amalthea.model.INamed%> _namedContainer = this.getNamedContainer(); |
| <%org.eclipse.emf.common.util.EList%><<%java.lang.String%>> _qualifiedNameSegments = null; |
| if (_namedContainer!=null) |
| { |
| _qualifiedNameSegments=_namedContainer.getQualifiedNameSegments(); |
| } |
| if (_qualifiedNameSegments != null) |
| { |
| _elvis = _qualifiedNameSegments; |
| } else |
| { |
| <%org.eclipse.emf.common.util.BasicEList%><<%java.lang.String%>> _newBasicEList = <%org.eclipse.emf.ecore.xcore.lib.XcoreCollectionLiterals%>.<<%java.lang.String%>>newBasicEList(); |
| _elvis = _newBasicEList; |
| } |
| return _elvis;</body> |
| </operation> |
| </xsd:appinfo> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:ReferableBaseObject"> |
| <xsd:attribute ecore:opposite="componentInstances" ecore:reference="am:ISystem" name="containingSystem" type="xsd:anyURI"/> |
| <xsd:attribute ecore:reference="am:Component" name="type" type="xsd:anyURI"/> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType ecore:implements="am:INamed am:ITaggable" name="Connector"> |
| <xsd:complexContent> |
| <xsd:extension base="am:BaseObject"> |
| <xsd:sequence> |
| <xsd:element minOccurs="0" name="sourcePort" type="am:QualifiedPort"/> |
| <xsd:element minOccurs="0" name="targetPort" type="am:QualifiedPort"/> |
| <xsd:element maxOccurs="unbounded" minOccurs="0" name="implementedInterfaces" type="am:InterfaceChannel"/> |
| </xsd:sequence> |
| <xsd:attribute ecore:opposite="connectors" ecore:reference="am:ISystem" name="containingSystem" type="xsd:anyURI"/> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType ecore:instanceClass="java.util.Map$Entry" name="InterfaceChannel"> |
| <xsd:attribute ecore:reference="am:ComponentInterface" name="key" type="xsd:anyURI" use="required"/> |
| <xsd:attribute ecore:reference="am:Channel" name="value" type="xsd:anyURI"/> |
| </xsd:complexType> |
| <xsd:complexType name="QualifiedPort"> |
| <xsd:complexContent> |
| <xsd:extension base="am:BaseObject"> |
| <xsd:attribute ecore:reference="am:ComponentInstance" name="instance" type="xsd:anyURI"/> |
| <xsd:attribute ecore:reference="am:ComponentPort" name="port" type="xsd:anyURI" use="required"/> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:simpleType name="InterfaceKind"> |
| <xsd:restriction base="xsd:string"> |
| <xsd:enumeration value="_undefined_"/> |
| <xsd:enumeration ecore:value="0" value="provides"/> |
| <xsd:enumeration ecore:value="0" value="requires"/> |
| <xsd:enumeration ecore:value="0" value="provides_requires"/> |
| </xsd:restriction> |
| </xsd:simpleType> |
| <xsd:complexType name="ConfigModel"> |
| <xsd:complexContent> |
| <xsd:extension base="am:BaseObject"> |
| <xsd:sequence> |
| <xsd:element maxOccurs="unbounded" minOccurs="0" name="eventsToTrace" type="am:EventConfig"/> |
| </xsd:sequence> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType ecore:implements="am:INamed" name="EventConfig"> |
| <xsd:complexContent> |
| <xsd:extension base="am:BaseObject"> |
| <xsd:attribute ecore:reference="am:EntityEvent" name="event" type="xsd:anyURI" use="required"/> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType name="ConstraintsModel"> |
| <xsd:complexContent> |
| <xsd:extension base="am:BaseObject"> |
| <xsd:sequence> |
| <xsd:element maxOccurs="unbounded" minOccurs="0" name="eventChains" type="am:EventChain"/> |
| <xsd:element maxOccurs="unbounded" minOccurs="0" name="timingConstraints" type="am:TimingConstraint"/> |
| <xsd:element maxOccurs="unbounded" minOccurs="0" name="affinityConstraints" type="am:AffinityConstraint"/> |
| <xsd:element maxOccurs="unbounded" minOccurs="0" name="runnableSequencingConstraints" type="am:RunnableSequencingConstraint"/> |
| <xsd:element maxOccurs="unbounded" minOccurs="0" name="dataAgeConstraints" type="am:DataAgeConstraint"/> |
| <xsd:element maxOccurs="unbounded" minOccurs="0" name="requirements" type="am:Requirement"/> |
| <xsd:element maxOccurs="unbounded" minOccurs="0" name="dataCoherencyGroups" type="am:DataCoherencyGroup"/> |
| <xsd:element maxOccurs="unbounded" minOccurs="0" name="dataStabilityGroups" type="am:DataStabilityGroup"/> |
| <xsd:element maxOccurs="unbounded" minOccurs="0" name="physicalSectionConstraints" type="am:PhysicalSectionConstraint"/> |
| </xsd:sequence> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:simpleType name="RunnableOrderType"> |
| <xsd:restriction base="xsd:string"> |
| <xsd:enumeration value="_undefined_"/> |
| <xsd:enumeration ecore:value="0" value="successor"/> |
| <xsd:enumeration ecore:value="0" value="immediateSuccessorStartSequence"/> |
| <xsd:enumeration ecore:value="0" value="immediateSuccessorAnySequence"/> |
| <xsd:enumeration ecore:value="0" value="immediateSuccessorEndSequence"/> |
| </xsd:restriction> |
| </xsd:simpleType> |
| <xsd:complexType name="RunnableSequencingConstraint"> |
| <xsd:complexContent> |
| <xsd:extension base="am:ReferableBaseObject"> |
| <xsd:sequence> |
| <xsd:element maxOccurs="unbounded" minOccurs="2" name="runnableGroups" type="am:RunnableEntityGroup"/> |
| </xsd:sequence> |
| <xsd:attribute ecore:unsettable="false" name="orderType" type="am:RunnableOrderType"/> |
| <xsd:attribute ecore:reference="am:AbstractProcess" name="processScope"> |
| <xsd:simpleType> |
| <xsd:list itemType="xsd:anyURI"/> |
| </xsd:simpleType> |
| </xsd:attribute> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType abstract="true" name="AffinityConstraint"> |
| <xsd:complexContent> |
| <xsd:extension base="am:ReferableBaseObject"/> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType abstract="true" name="SeparationConstraint"> |
| <xsd:annotation> |
| <xsd:documentation>An abstract superclass for all separation constraints</xsd:documentation> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:AffinityConstraint"/> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType abstract="true" name="PairingConstraint"> |
| <xsd:annotation> |
| <xsd:documentation>An abstract superclass for all pairing constraints</xsd:documentation> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:AffinityConstraint"/> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType abstract="true" name="ProcessConstraint"> |
| <xsd:annotation> |
| <xsd:documentation>An abstract superclass for all process related constraint |
| The target describes the entity on which the processes can be mapped</xsd:documentation> |
| </xsd:annotation> |
| <xsd:sequence> |
| <xsd:element minOccurs="0" name="target" type="am:ProcessConstraintTarget"/> |
| </xsd:sequence> |
| </xsd:complexType> |
| <xsd:complexType abstract="true" name="RunnableConstraint"> |
| <xsd:annotation> |
| <xsd:documentation>An abstract superclass for all runnable related constraint |
| The target describes the entity on which the runnables can be mapped</xsd:documentation> |
| </xsd:annotation> |
| <xsd:sequence> |
| <xsd:element minOccurs="0" name="target" type="am:RunnableConstraintTarget"/> |
| </xsd:sequence> |
| </xsd:complexType> |
| <xsd:complexType abstract="true" name="DataConstraint"> |
| <xsd:annotation> |
| <xsd:documentation>An abstract superclass for all data related constraint |
| The target describes the entity on which the data can be mapped</xsd:documentation> |
| </xsd:annotation> |
| <xsd:sequence> |
| <xsd:element minOccurs="0" name="target" type="am:DataConstraintTarget"/> |
| </xsd:sequence> |
| </xsd:complexType> |
| <xsd:complexType ecore:implements="am:RunnableConstraint am:BaseObject" name="RunnableSeparationConstraint"> |
| <xsd:annotation> |
| <xsd:documentation>A runnable-separation-constraint |
| groups describes the runnable-groups that should be separated from each other on the target |
| if there is only one group then this means that the runnables of this group are not allowed to be executed on the target</xsd:documentation> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:SeparationConstraint"> |
| <xsd:sequence> |
| <xsd:element maxOccurs="2" name="groups" type="am:RunnableGroup"/> |
| </xsd:sequence> |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| <xsd:complexType ecore:implements="am:ProcessConstraint am:BaseObject" name="ProcessSeparationConstraint"> |
| <xsd:annotation> |
| <xsd:documentation>A process-separation-constraint |
| groups describes the process-groups that should be separated from each other on the target |
| if there is only one group then this means that the processes of this group are not allowed to be executed on the target</xsd:documentation> |
| </xsd:annotation> |
| <xsd:complexContent> |
| <xsd:extension base="am:SeparationConstraint"> |
| <xsd:sequence> |
| <xsd:element maxOccurs="2" name="groups" type="am:ProcessGroup"/> |
| </xsd:sequence> |
| </xsd:extension> |
|
|