aboutsummaryrefslogtreecommitdiffstats
path: root/Metrics/Metrics-Calculation/SocialNetwork_plugin/ecore.vsconfig
blob: 85202b9dcd24dcb6dcd219d5f5183b02fce87d74 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
import viatra "./queries/queries/Ecore.vql"
import epackage "http://www.eclipse.org/emf/2002/Ecore"

// Copy this for different model sizes
generate {
	metamodel = {package ecore excluding{EClassifier.instanceClass, EClassifier.defaultValue, 
										 EEnumLiteral.instance, EStructuralFeature.defaultValue, EStructuralFeature.changeable,
										 EStructuralFeature.derived, ENamedElement.name, EClass.interface, EClass.abstract, EClassifier.instanceTypeName,
										 EClassifier.instanceClassName, EPackage.nsPrefix, EPackage.nsURI, EAnnotation.source,
										 EAttribute.iD, EDataType.serializable, EEnumLiteral.literal, EEnumLiteral.value,
										 EReference.resolveProxies, EReference.container, EReference.containment, EStringToStringMapEntry.key,
										 EStringToStringMapEntry.value, EStructuralFeature.defaultValueLiteral, EStructuralFeature.transient,
										 EStructuralFeature.unsettable, EStructuralFeature.volatile, ETypedElement.lowerBound,
										 ETypedElement.many, ETypedElement.ordered, ETypedElement.required, ETypedElement.unique,ETypedElement.upperBound,
										 // cannot generate eFactoryInstance
										 EPackage.eFactoryInstance, 
										 //Derived edges
										 EClass.eAllSuperTypes, EClass.eAllAttributes, EClass.eAllReferences, EClass.eAllContainments, EClass.eAllGenericSuperTypes,
										 EClass. eAllOperations, EClass.eAllStructuralFeatures, EClass.eAttributes, EClass.eIDAttribute, EClass.eReferences,
										 EAttribute.eAttributeType, EGenericType.eRawType, EReference.eReferenceType,
										 //Generic Types
										 EClass.eGenericSuperTypes, ETypedElement.eGenericType, EOperation.eGenericExceptions, EObject, EAnnotation.references, EAnnotation.contents
										 
										 }}
	partial-model = { "inputs/ecore.xmi"}
	constraints = { package queries }
	

	solver = ViatraSolver
	
	//median run time
	scope = {
		#node = 30  // (warm-up: 10) 30, 50, 80, 100, 120 ....
	}
	
	number = 1
	runs = 1
	config = {
		log-level = none,
		runtime = 300, // the runtime is in seconds, want to set is to 5 mins
		"optional-wf" = "false",
		"realistic-guidance" = "Composite",
		"allow-must-violations" = "false",
		"domain" = "Ecore"
	}
	
	debug = "debug"
	statistics = "statistics/Ecore/warmup.csv"  //give different set up different filenames
	output = "output/Ecore/run_time/"
}