LINE Solver
MATLAB API documentation
Loading...
Searching...
No Matches
ItemSet.m
1classdef ItemSet < NetworkElement
2 % A set of cacheable items
3 %
4 % Copyright (c) 2012-2026, Imperial College London
5 % All rights reserved.
6
7 properties
8 nitems;
9 index;
10 reference;
11 replicable;
12 end
13
14 methods
15 function self = ItemSet(model, name, nitems, reference)
16 % SELF = ITEMSET(MODEL, NAME, NITEMS, REFERENCE)
17
18 self@NetworkElement(name);
19 if model.isMatlabNative()
20 self.nitems = nitems;
21 self.index = 1;
22 self.replicable = false;
23 if ~isa(reference, 'Cache')
24 line_error(mfilename,'ItemSet must be pinned to a Cache.');
25 end
26 self.reference = reference;
27 model.addItemSet(self);
28 elseif model.isJavaNative()
29 self.obj = jline.lang.ItemSet(model.obj, name, nitems, reference.obj);
30 model.addItemSet(self);
31 end
32 end
33
34 function name = getName(self)
35 % NAME = GETNAME()
36
37 name = self.name;
38 end
39
40 function bool = hasReplicableItems(self)
41 % BOOL = HASREPLICABLEITEMS()
42
43 bool = self.replicable;
44 end
45
46 function ntypes = getNumberOfItems(self)
47 % NTYPES = GETNUMBEROFITEMS()
48
49 ntypes = self.nitems;
50 end
51 end
52end