An output from ATCOR processing (besides an atmospheric correction and dehazing) is expected to be an image containing true reflectance values (instead of raw input DNs). As far as I know such data are commonly stored as a floating point values (and not 8 or 16 bit data), because each pixel represents a fraction (from 0 to 1). But each time I process an image (LS8, QB, etc) I get an output of the same type as an input image was (8b or 16bit data). Does anyone know why is that? (I used a proper calibration file each time, and also there is no output data type options dialog - it just prompts for a filename).
Late answer, but better than nothing:
ATCOR scales its output per default into the 8-bit range. If you need to have a 16-bit output you have to set the Factor for Reflectance (found in the Main Menu) to values ≥ 10 so it will be scaled into the 16-bit range. With fcref=100 (supported since ATCOR 2010.1) the output data ranges from 0 to 10,000 which will be stored as 16-bit/pixel.
With fcref=100 all sensors up to true 13-bit/pixel (all the 16-bit sensors actually are true 11- or 12-bit only) can be supported! One should keep in mind though that the error contributions in ATCOR of MODTRAN alone is in the range of a possible 5% already and a value in the 2nd or 3rd decimal place suggests a much higher accuracy. The default value for 8-bit is 4.
Example: using an 'fcref'=100 the output DN of 5627 is exactly 56.27% reflectance at ground.