From 478123d2febde02f39f6a673ffdbdf0c760aef3c Mon Sep 17 00:00:00 2001 From: Kristóf Marussy Date: Mon, 25 Mar 2019 15:56:37 +0100 Subject: Add reliability probability and mtff objectives --- .../inf/dslreasoner/application/ApplicationConfiguration.xtext | 9 +++++++-- .../scoping/ApplicationConfigurationScopeProvider.xtend | 8 ++++---- 2 files changed, 11 insertions(+), 6 deletions(-) (limited to 'Application/hu.bme.mit.inf.dslreasoner.application/src/hu') diff --git a/Application/hu.bme.mit.inf.dslreasoner.application/src/hu/bme/mit/inf/dslreasoner/application/ApplicationConfiguration.xtext b/Application/hu.bme.mit.inf.dslreasoner.application/src/hu/bme/mit/inf/dslreasoner/application/ApplicationConfiguration.xtext index 44ef8fd1..2b4a56a6 100644 --- a/Application/hu.bme.mit.inf.dslreasoner.application/src/hu/bme/mit/inf/dslreasoner/application/ApplicationConfiguration.xtext +++ b/Application/hu.bme.mit.inf.dslreasoner.application/src/hu/bme/mit/inf/dslreasoner/application/ApplicationConfiguration.xtext @@ -101,8 +101,13 @@ enum OptimizationDirection: MINIMIZE='minimize' | MAXIMIZE='maximize'; OptimizationEntry: direction=OptimizationDirection function=ObjectiveFunction; enum ComparisonOperator: LESS_EQUALS='<=' | GREATER_EQUALS='>='; ThresholdEntry: function=ObjectiveFunction operator=ComparisonOperator threshold=REALLiteral; -ObjectiveFunction: ReliabiltiyFunction; -ReliabiltiyFunction: 'reliability' (package=[cftLanguage::CftModel|QualifiedName] '::')? transformation = [cftLanguage::TransformationDefinition]; +ObjectiveFunction: ReliabilityObjectiveFunction; +ReliabilityObjectiveFunction: ReliabiltiyProbability | Mtff; +ReliabiltiyProbability: + 'reliability' (package=[cftLanguage::CftModel|QualifiedName] '::')? transformation = [cftLanguage::TransformationDefinition] + 'at' time=REALLiteral; +Mtff: + 'mtff' (package=[cftLanguage::CftModel|QualifiedName] '::')? transformation = [cftLanguage::TransformationDefinition]; ObjectiveDeclaration: 'objectives' name = ID specification = ObjectiveSpecification; ObjectiveReference: referred = [ObjectiveDeclaration]; diff --git a/Application/hu.bme.mit.inf.dslreasoner.application/src/hu/bme/mit/inf/dslreasoner/application/scoping/ApplicationConfigurationScopeProvider.xtend b/Application/hu.bme.mit.inf.dslreasoner.application/src/hu/bme/mit/inf/dslreasoner/application/scoping/ApplicationConfigurationScopeProvider.xtend index 35a747c8..9d7e8aec 100644 --- a/Application/hu.bme.mit.inf.dslreasoner.application/src/hu/bme/mit/inf/dslreasoner/application/scoping/ApplicationConfigurationScopeProvider.xtend +++ b/Application/hu.bme.mit.inf.dslreasoner.application/src/hu/bme/mit/inf/dslreasoner/application/scoping/ApplicationConfigurationScopeProvider.xtend @@ -10,7 +10,6 @@ import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.EPackageI import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.MetamodelElement import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.MetamodelEntry import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.PatternEntry -import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.ReliabiltiyFunction import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.ViatraImport import hu.bme.mit.inf.dslreasoner.faulttree.components.cftLanguage.CftModel import org.eclipse.emf.ecore.EClass @@ -23,6 +22,7 @@ import org.eclipse.xtext.naming.IQualifiedNameConverter import org.eclipse.xtext.scoping.Scopes import static hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.ApplicationConfigurationPackage.Literals.* +import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.ReliabilityObjectiveFunction /** * This class contains custom scoping description. @@ -47,9 +47,9 @@ class ApplicationConfigurationScopeProvider extends AbstractApplicationConfigura getViatraPackageScope(context, reference, document) case PATTERN_ELEMENT__PATTERN: getViatraPatternScope(context, document) - case RELIABILTIY_FUNCTION__PACKAGE: + case RELIABILITY_OBJECTIVE_FUNCTION__PACKAGE: getCftPackageScope(context, reference, document) - case RELIABILTIY_FUNCTION__TRANSFORMATION: + case RELIABILITY_OBJECTIVE_FUNCTION__TRANSFORMATION: getCftTransformationScope(context, document) default: super.getScope(context, reference) @@ -136,7 +136,7 @@ class ApplicationConfigurationScopeProvider extends AbstractApplicationConfigura private def getCftTransformationScope(EObject context, ConfigurationScript document) { val transformations = switch (context) { - ReliabiltiyFunction case context.package !== null: + ReliabilityObjectiveFunction case context.package !== null: context.package.transformationDefinitions default: document.allCftTransformations -- cgit v1.2.3-70-g09d2