Source code for PseudoNetCDF.core._dimensions

__all__ = ['PseudoNetCDFDimension']

from collections import OrderedDict


class PseudoNetCDFDimensions(OrderedDict):
    def __repr__(self):
        outs = []
        for k, v in self.items():
            out = '%s = %d' % (k, len(v))
            if v.isunlimited():
                out += ' // UNLIMITED'
            outs.append(out)
        return '\n'.join(outs)


[docs]class PseudoNetCDFDimension(object): """ Dimension object responds like that of netcdf4-python """ def __init__(self, group, name, size): self._len = int(size) self._unlimited = False self._name = name
[docs] def isunlimited(self): """ Returns ------- out : boolean is the dimension unlimited """ return self._unlimited
def __len__(self): return self._len
[docs] def setunlimited(self, unlimited): """ Parameters ---------- unlimited : boolean largely decorative in PseudoNetCDF, but important in persisting """ self._unlimited = unlimited
def __repr__(self): out = object.__repr__(self).replace( ' at ', ' (name = %s, len = %d) at' % (self._name, len(self))) return out