Changeset 16405


Ignore:
Timestamp:
10/15/13 08:15:42 (11 years ago)
Author:
Mathieu Morlighem
Message:

CHG: enums do not need to be a field of outputdefinitions, define it localy at marshall

Location:
issm/trunk-jpl/src/m/classes
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk-jpl/src/m/classes/outputdefinition.m

    r16388 r16405  
    77        properties (SetAccess=public)
    88                definitions                 = {};
    9         end
    10         properties (SetAccess=private)
    11                 enums                 = {};
    129        end
    1310        methods
     
    2320
    2421                        obj.definitions={};
    25                         obj.enums=NaN;
    2622
    2723                end % }}}
     
    4743                        classdefinition=class(obj.definitions{i});
    4844                        classdefinition(1)=upper(classdefinition(1)); %so it matches our enums definitions.
    49                         obj.enums(i)=StringToEnum(classdefinition);
     45                        enums(i)=StringToEnum(classdefinition);
    5046                end
    51                 obj.enums=unique(obj.enums);
     47                enums=unique(enums);
    5248               
    53                 WriteData(fid,'object',obj,'fieldname','enums','format','DoubleMat','mattype',1);
     49                WriteData(fid,'data',enums,'enum',OutputdefinitionEnumsEnum(),'format','DoubleMat','mattype',1);
    5450                end % }}}
    5551        end
  • issm/trunk-jpl/src/m/classes/outputdefinition.py

    r16388 r16405  
    1616        def __init__(self): # {{{
    1717                self.definitions                   = []
    18                 self.enums                         = float('NaN')
    1918                #}}}
    2019        def __repr__(self): # {{{
     
    3736        def marshall(self,md,fid):    # {{{
    3837               
    39                 self.enums=npy.zeros(len(self.definitions),)
     38                enums=npy.zeros(len(self.definitions),)
    4039               
    4140                for i in range(len(self.definitions)):
     
    4342                        classdefinition=self.definitions[i].__class__.__name__
    4443                        classdefinition=classdefinition[0].upper()+classdefinition[1:]
    45                         self.enums[i]=StringToEnum(classdefinition)[0]
     44                        enums[i]=StringToEnum(classdefinition)[0]
    4645               
    47                 self.enums=npy.unique(self.enums);
     46                enums=npy.unique(enums);
    4847               
    49                 WriteData(fid,'object',self,'fieldname','enums','format','DoubleMat','mattype',1)
    50 
     48                WriteData(fid,'data',enums,'enum',OutputdefinitionEnumsEnum(),'format','DoubleMat','mattype',1);
    5149        # }}}
Note: See TracChangeset for help on using the changeset viewer.