A raw image data creating unit that creates a raw image data; an image
file creating unit capable of creating an image file conforming to a
predetermined format based on the created raw image data; and a control
unit for determining based on a predetermined criterion whether an
external apparatus is caused to execute at least part of a process for
creating the image file based on the raw image data, outputting the raw
image data or halfway processed data obtained when the image file
creating unit is caused to execute the process halfway to the external
apparatus, instructing the external apparatus to create the image file
based on the raw image data or the halfway processed data if the control
unit determines that the external apparatus is caused to execute it, and
causing the image file creating unit to execute creating the image file
if the control unit determines that the external apparatus is not caused
to execute it.