def __init__(self,arg,internal=False): SHMNUM.__init__(self, arg, internal) if type(arg) in [float, int, SHMINT, SHMDBL]: self.addr = py2shmobj.shmdbl_alloc() if self.addr is None: raise Exception('SHMDBL allocation failed: out of memory') if isinstance(arg,int): arg = float(arg) py2shmobj.shmdbl_set(self.addr,arg) elif self.addr is None: raise TypeError("invalid type %s assigned to SHMDBL" % type(arg))
def set(self,arg): SHMOBJ.protect(self) if type(arg) in [float, int, SHMINT, SHMDBL]: py2shmobj.shmdbl_set(self.addr,arg) else: raise TypeError("invalid type %s assigned to SHMDBL" % type(arg))