[Insight-users] ImageIO & GUI Support : TCON 2.0 : Topic forTomorrow : Request for Feedback

Luis Ibanez luis.ibanez at kitware.com
Fri Sep 12 09:17:15 EDT 2008

Hi Niels,

Thanks for your feedback on this proposal.

The discussion during last week's Tcon was not very extensive.

We have now added  a Proposl Wiki page at:

please follow the link:

In general the methods that we are proposing will be declared
"virtual" at the level of the ImageIOBase class, and they will
be overloaded in the derived ImageIO specific classes.

In the case of the proposed API:

     * unsigned int GetNumberOfExtensions() const;
     * std::string GetNthExtension(unsigned int) const

we were thinking only on the Write side of the GUI, since
it is at this point that GUI users need more guidance on
what options are available to them.

But,... you have a point in that the same would be useful
in the context of reading files.  We just added this comment
to the proposal page.

We will be discussing this again today at the tcon:

For instructions on how to join the Tcon 2.0 in Second Life,
please look at:



Niels Dekker wrote:
> Can you please tell us about last week's TCON regarding ImageIO & GUI 
> Support?  I'm sorry I couldn't be there.  Still I provided some feedback 
> beforehand, as Sean McBride did.  Was our feedback useful to you?
> www.itk.org/Wiki/Minutes_090508 says:
>> Suggested API for the ImageIO classes unsigned int 
>> GetNumberOfExtensions() const; std::string GetNthExtension(unsigned 
>> int) const
> Would those two be member functions of ImageIOBase?  Does that mean that 
> the difference between "read extensions" and "write extensions" is no 
> longer considered relevant?  If so, I think it would be convenient to 
> just have a function that returns all the supported extensions:
>  const ArrayOfExtensionsType & GetSupportedExtensions() const
> Will there also be a function to get a descriptive name of the supported 
> file format?
> Last week I wrote:
> ----- Original Message ----- From: "Niels Dekker"
> To: Luis Ibanez; insight-users; Insight-developers
> Sent: Friday, September 05, 2008 10:38
> Subject: Re: [Insight-users] ImageIO & GUI Support : TCON 2.0 : Topic 
> forTomorrow : Request for Feedback
> At our research group (LKEB), we're also developing an Image IO
> framework.  Although this framework is more specific to our inhouse
> software development (as it supports LKEB-specific file formats and data
> structures), we've encountered similar design issues.  Both ITK's and
> VTK's IO frameworks are a source of inspiration to our Image IO
> framework.  :-)  It would be very helpful to us at LKEB to be able to
> query the file extensions and the file format description from ITK IO.
> VTK already has this, which made it much easier for us to write a
> wrapper for VTK readers, for our (LKEB) framework.
> I think it's a good idea to have the extensions and description of a
> file format aggregated together.  Do you mean to have them as an
> std::pair<string,vector<string>>?  At LKEB, we chose to have them
> together in an AbstractFileFormat class, offering two member functions:
>  std::string GetDescriptiveName() const;
>  std::vector<FileName> GetFileExtensions() const;
> Each file format we support has its own class, derived from
> AbstractFileFormat.
> Why do you have separate functions for supported read and write formats?
> Doesn't an IO class typically supports the same file format for reading
> and writing?  Or could one specific IO class possibly support reading
> only JPEG and writing only TIFF files?
> I'm also very interested in the Unicode and localisation issues raised
> by Sean McBride at the Insight Developers mailing list.
> Kind regards, Niels
> -- 
> Niels Dekker
> http://www.xs4all.nl/~nd/dekkerware
> Scientific programmer at LKEB, Leiden University Medical Center

More information about the Insight-users mailing list