|
65 | 65 | end;
|
66 | 66 | end;
|
67 | 67 |
|
| 68 | + function retList = inherited_properties(obj) |
| 69 | + retList = nix.Utils.fetchObjList('Section::inheritedProperties', ... |
| 70 | + obj.nix_handle, @nix.Property); |
| 71 | + end |
| 72 | + |
68 | 73 | % ----------------
|
69 | 74 | % Section methods
|
70 | 75 | % ----------------
|
|
146 | 151 | c = nix_mx('Section::propertyCount', obj.nix_handle);
|
147 | 152 | end
|
148 | 153 |
|
| 154 | + % ---------------- |
| 155 | + % Referring entity methods |
| 156 | + % ---------------- |
| 157 | + |
| 158 | + function ret = referring_data_arrays(obj, varargin) |
| 159 | + ret = obj.referring_util(@nix.DataArray, 'DataArrays', varargin{:}); |
| 160 | + end |
| 161 | + |
| 162 | + function ret = referring_tags(obj, varargin) |
| 163 | + ret = obj.referring_util(@nix.Tag, 'Tags', varargin{:}); |
| 164 | + end |
| 165 | + |
| 166 | + function ret = referring_multi_tags(obj, varargin) |
| 167 | + ret = obj.referring_util(@nix.MultiTag, 'MultiTags', varargin{:}); |
| 168 | + end |
| 169 | + |
| 170 | + function ret = referring_sources(obj, varargin) |
| 171 | + ret = obj.referring_util(@nix.Source, 'Sources', varargin{:}); |
| 172 | + end |
| 173 | + |
| 174 | + function ret = referring_blocks(obj) |
| 175 | + ret = nix.Utils.fetchObjList('Section::referringBlocks', ... |
| 176 | + obj.nix_handle, @nix.Block); |
| 177 | + end |
149 | 178 | end;
|
| 179 | + |
| 180 | + % ---------------- |
| 181 | + % Referring utility method |
| 182 | + % ---------------- |
| 183 | + |
| 184 | + methods(Access=protected) |
| 185 | + % referring_util receives a nix entityConstructor, part of a function |
| 186 | + % name and varargin to provide abstract access to nix.Section |
| 187 | + % referringXXX and referringXXX(Block) methods. |
| 188 | + function ret = referring_util(obj, entityConstructor, funcName, varargin) |
| 189 | + if (isempty(varargin)) |
| 190 | + ret = nix.Utils.fetchObjList(strcat('Section::referring', funcName), ... |
| 191 | + obj.nix_handle, entityConstructor); |
| 192 | + elseif ((size(varargin, 2) > 1) || ... |
| 193 | + (~strcmp(class(varargin{1}), 'nix.Block'))) |
| 194 | + error('Provide either empty arguments or a single Block entity'); |
| 195 | + else |
| 196 | + ret = nix.Utils.fetchObjListByEntity(strcat('Section::referringBlock', funcName), ... |
| 197 | + obj.nix_handle, varargin{1}.nix_handle, entityConstructor); |
| 198 | + end |
| 199 | + end |
| 200 | + end |
150 | 201 | end
|
0 commit comments