﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	severity	resolution	keywords	cc
20	Reduce number of numeric datatypes for psImage/psVector	robert.desonia@…	Paul Price	"Currently on the list of data types to support are:
   int8 (i.e., char on most systems)
   uint8 (i.e., unsigned char on most systems)
   int16 (i.e., short int on most systems)
   uint16 (i.e., unsigned short int on most systems)
   int32 (i.e., int on most systems)
   uint32 (i.e., unsigned int on most systems)
   long (32 or 64 bit, depending on system, probably should be int64_t)
   unsigned long (probably should be uint64_t)
   float
   complex float
   double
   complex double
(i.e., nearly every native numeric data type in C)

This is a very long list and really a burden to support.  For instance, to add
two images, the code would have to deal with every combination of the list and a
test case would have to be created for each combination.

Is it envisioned that Pan-STARRS will use every one of these types internally? 
I recommend that the internal representation be limited to the minimum number of
required types and keep such an exhaustive list for just file I/O.  Do we need
to keep all of the integer representations internally, or would it suffice to
cast most of them to/from float/double for file I/O?   If it is determined that
the IPP requires either single or double precision floating points, do we really
need to support both?

What would we lose if, for example, we just keep uint8 (mask), float (image) and
complex float (fourier-domain image) for internal data types?

-rdd"	defect	closed	high		PSLib SDRS	unspecified	major	fixed		Eric.VanAlst@…
