LINE Solver
MATLAB API documentation
Loading...
Searching...
No Matches
getUsedLangFeatures.m
1function used = getUsedLangFeatures(self)
2% USED = GETUSEDLANGFEATURES()
3
4% Copyright (c) 2012-2026, Imperial College London
5% All rights reserved.
6
7self.initUsedFeatures;
8if ~isempty(self.getIndexClosedClasses)
9 self.setUsedLangFeature('ClosedClass');
10end
11if ~isempty(self.getIndexOpenClasses)
12 self.setUsedLangFeature('OpenClass');
13end
14
15% Get attributes
16for i=1:getNumberOfNodes(self)
17 for r=1:getNumberOfClasses(self)
18 try % not all nodes have all classes
19 switch class(self.nodes{i})
20 case {'Queue','QueueingStation','DelayStation','Delay'}
21 if ~isempty(self.nodes{i}.server.serviceProcess{r})
22 self.setUsedLangFeature(self.nodes{i}.server.serviceProcess{r}{3}.name);
23 if self.nodes{i}.numberOfServers > 1
24 %self.setUsedLangFeature('MultiServer')
25 end
26 self.setUsedLangFeature(SchedStrategy.toFeature(self.nodes{i}.schedStrategy));
27 self.setUsedLangFeature(RoutingStrategy.toFeature(self.nodes{i}.output.outputStrategy{r}{2}));
28 end
29 case 'Router'
30 self.setUsedLangFeature(RoutingStrategy.toFeature(self.nodes{i}.output.outputStrategy{r}{2}));
31 case 'Source'
32 self.setUsedLangFeature(self.nodes{i}.input.sourceClasses{r}{3}.name);
33 self.setUsedLangFeature('Source');
34 case 'ClassSwitch'
35 self.setUsedLangFeature('StatelessClassSwitcher');
36 self.setUsedLangFeature('ClassSwitch');
37 case 'Fork'
38 self.setUsedLangFeature('Fork');
39 self.setUsedLangFeature('Forker');
40 case 'Join'
41 self.setUsedLangFeature('Join');
42 self.setUsedLangFeature('Joiner');
43 case 'Sink'
44 self.setUsedLangFeature('Sink');
45 case 'Cache'
46 self.setUsedLangFeature('CacheClassSwitcher');
47 self.setUsedLangFeature('Cache');
48 self.setUsedLangFeature(ReplacementStrategy.toFeature(self.nodes{i}.replacestrategy));
49 case 'Transition'
50 self.setUsedLangFeature('Transition');
51 self.setUsedLangFeature('Enabling');
52 self.setUsedLangFeature('Timing');
53 self.setUsedLangFeature('Firing');
54 case 'Place'
55 self.setUsedLangFeature('Storage');
56 self.setUsedLangFeature('Linkage');
57 self.setUsedLangFeature('Place');
58 end
59 end
60 end
61end
62used = self.usedFeatures;
63end
Definition mmt.m:92