*tptr++ = value[i];
else if(numeric_limits<T>::is_signed)
*tptr++ = round(min(max(value[i], -1.0f), 1.0f)*numeric_limits<T>::max());
*tptr++ = value[i];
else if(numeric_limits<T>::is_signed)
*tptr++ = round(min(max(value[i], -1.0f), 1.0f)*numeric_limits<T>::max());