diff +multiblock/BoundaryGroup.m @ 592:4422c4476650 feature/utux2D

Merge with feature/grids
author Martin Almquist <martin.almquist@it.uu.se>
date Mon, 11 Sep 2017 14:17:15 +0200
parents 6712655953d3
children
line wrap: on
line diff
--- a/+multiblock/BoundaryGroup.m	Mon Sep 11 14:12:54 2017 +0200
+++ b/+multiblock/BoundaryGroup.m	Mon Sep 11 14:17:15 2017 +0200
@@ -1,30 +1,10 @@
 % BoundaryGroup defines a boundary grouping in a multiblock grid.
-classdef BoundaryGroup
-    properties
-        blockIDs
-        names
-    end
-
+% It workds like a cell array and collects boundary identifiers
+% Within the multiblock package a BoundaryGroup is a valid boundary identifier as well.
+classdef BoundaryGroup < Cell
     methods
-        function obj = BoundaryGroup(varargin)
-            % Input arguemnts are arbitrary number or 1x2 cell arrays
-            % representing each boundary in the group.
-            % The 1st element of the cell array is an integer defining which grid it belongs to.
-            % The 2nd element of the cell array is the name of the boundary within the block.
-            %
-            % Ex:
-            %   bg = multiblock.BoundaryGroup({1,'n'},{1,'s'},{2,'s'})
-
-
-            obj.blockIDs = [];
-            obj.names = {};
-            for i = 1:length(varargin)
-                if ~iscell(varargin{i}) || ~all(size(varargin{i}) == [1 2])
-                    error('multiblock:BoundaryGroup:BoundaryGroup:InvalidInput', 'Inputs must be 1x2 cell arrays');
-                end
-                obj.blockIDs(i) = varargin{i}{1};
-                obj.names{i} = varargin{i}{2};
-            end
+        function obj = BoundaryGroup(data)
+            obj = obj@Cell(data);
         end
 
         function display(obj, name)
@@ -33,19 +13,7 @@
             disp([name, ' ='])
             disp(' ')
 
-            if length(obj.names) == 1
-                fprintf('    {}\n\n')
-                return
-            end
-
-            fprintf('    {')
-
-            fprintf('%d:%s', obj.blockIDs(1), obj.names{1})
-            for i = 2:length(obj.names)
-                fprintf(', %d:%s', obj.blockIDs(i), obj.names{i});
-            end
-
-            fprintf('}\n\n')
+            fprintf('    BoundaryGroup%s\n\n', toString(obj.data));
         end
     end
-end
\ No newline at end of file
+end