def stpool_error(item, nth, contin): (string, found) = cspyce0.stpool(item, nth, contin) if not found: [ok, count, nctype] = cspyce0.dtpool(name) if not ok: chkin('stpool_error') setmsg('pool variable "%s" not found' % name) sigerr('SPICE(VARIABLENOTFOUND)') chkout('stpool_error') return '' if nth != 0: (_, ok) = cspyce0.stpool(item, 0, contin) if ok: chkin('stpool_error') setmsg('index too large; ' 'kernel pool has fewer than %s ' % nth + 'strings matching name "%s" ' % item + 'and continuation "%s"' % contin) sigerr('SPICE(INDEXOUTOFRANGE)') chkout('stpool_error') return '' [ok, count, nctype] = cspyce0.dtpool(item) if nctype != 'C': setmsg('string values are not available; ' 'kernel pool variable "%s" has numeric values' % item) sigerr('SPICE(WRONGDATATYPE)') chkout('stpool_error') return '' return string
def gipool_error(name, start=0): (ivals, found) = cspyce0.gipool(name, start) if not found: [ok, count, nctype] = cspyce0.dtpool(name) if not ok: chkin('gipool_error') setmsg('pool variable "%s" not found' % name) sigerr('SPICE(VARIABLENOTFOUND)') chkout('gipool_error') return [] [ok, count, nctype] = cspyce0.dtpool(name) if nctype != 'N': chkin('gipool_error') setmsg('numeric values are not available; ' 'kernel pool variable "%s" has string values' % name) sigerr('SPICE(WRONGDATATYPE)') chkout('gipool_error') return [] if start > count: chkin('gipool_error') setmsg('kernel pool has only %s ' % count + 'values for variable "%s";' % name + 'start index value %s is too large' % start) sigerr('SPICE(INDEXOUTOFRANGE)') chkout('gipool_error') return [] return ivals
def gdpool_error(name, start=0): (values, found) = cspyce0.gdpool(name, start) if not found: [ok, count, nctype] = cspyce0.dtpool(name) if not ok: chkin('gdpool_error') setmsg(f'pool variable "{name}" not found') sigerr('SPICE(VARIABLENOTFOUND)') chkout('gdpool_error') return [] [ok, count, nctype] = cspyce0.dtpool(name) if nctype != 'N': chkin('gdpool_error') setmsg('numeric values are not available; ' f'kernel pool variable "{name}" has string values') sigerr('SPICE(WRONGDATATYPE)') chkout('gdpool_error') return [] if start > count: chkin('gdpool_error') setmsg(f'kernel pool has only {count} ' + f'values for variable "{name}";' + f'start index value {state} is too large') sigerr('SPICE(INDEXOUTOFRANGE)') chkout('gdpool_error') return [] return values
def dtpool_error(name): (found, n, vtype) = cspyce0.dtpool(name) if not found: chkin('dtpool_error') setmsg('pool variable "%s" not found' % name) sigerr('SPICE(VARIABLENOTFOUND)') chkout('dtpool_error') return [n, vtype]