-<?xml version="1.0" encoding="iso-8859-1"?>
-<!--==========================================================================
- STARTS THE DESCRIPTION OF THE BLACK BOX -->
-<blackbox name="Gimmick">
- <!--========================================================================
- THE BOX DOCUMENTATION -->
- <author>laurent.guigues@creatis.insa-lyon.fr</author>
- <description>Gimmick! (Gimme my medical images quick!) is a medical image reader widget. It handles DICOM,jpg,tif,png,bmp and mhd. Images read are stored in sqlite3 databases and thus retrieved very quick next time. Screenshot : <img src=Gimmick1.jpg></img>"</description>
- <category>image;reader;dicom</category>
-
-<!--========================================================================
- #include directives to be put in the .h generated
- There must be one tag per file to include -->
-<include>creaImageIOWxGimmickDialog.h</include>
- <!--========================================================================
- INPUTS/OUTPUTS DECLARATION -->
-
- <input name="Title" type="std::string" description="Title of the dialog"/>
- <input name="ImageDimension" type="int" description="The maximal dimensionality of the image to be selected, e.g. 2 for a 2D image, 3 for a 3D image,..."/>
- <input name="Output" type="int" description="What to output ? 0(default)=image and filenames/1=only filenames"/>
- <typedef><PRE>typedef std::vector<std::string> OutputFilesType;</PRE></typedef>
- <typedef><PRE>typedef std::vector<vtkImageData*> OutputImagesType;</PRE></typedef>
-
- <output name="Out" type="vtkImageData*" description="The first selected image"/>
- <output name="Out2" type="OutputImagesType" description="The selected images"/>
- <output name="Files" type="OutputFilesType" description="The selected files"/>
-
- <!--========================================================================
- PROCESS section -->
-
- <process><PRE>
- int threads = 1;
-
- creaImageIO::WxGimmickDialog w(0,
- -1,
- crea::std2wx(bbGetInputTitle()),
- wxDefaultPosition,
- wxSize(1200,800),
- bbGetInputImageDimension(),
- threads);
- w.ShowModal();
-
- if (w.GetReturnCode() == wxID_OK)
- {
- if (bbGetInputOutput()==0)
- {
- std::vector<vtkImageData*> images;
- w.GetSelectedImages(images);
- bbSetOutputOut(images[0]);
- bbSetOutputOut2(images);
- }
- std::vector<std::string> files;
- w.GetSelectedFiles(files);
- bbSetOutputFiles(files);
- }
- else if (w.GetReturnCode() == wxID_CANCEL)
- {
-// if (bbGetOutputOut()!=0)
-// {
- // bbGetOutputOut()->Delete();
-// bbSetOutputOut(0);
-// }
- }
- </PRE></process>
-
- <!--======================================================================
- CONSTRUCTORS / DESTRUCTORS (OPTIONAL) -->
-
- <constructor><PRE>
- bbSetInputImageDimension(3);
- bbSetInputTitle("Select image(s)");
- bbSetInputOutput(0);
- bbSetOutputOut(0);
- </PRE>
- </constructor>
-
-
- <!-- THE COPY-CONSTRUCTION METHOD BODY : -->
- <copyconstructor>
- <PRE>
- bbSetOutputOut(0);
- </PRE>
- </copyconstructor>
-
- <!-- THE DESTRUCTION METHOD BODY -->
- <destructor>
- <PRE>
- std::vector<vtkImageData*>::iterator i;
- for (i=bbGetOutputOut2().begin();i!=bbGetOutputOut2().end();++i) (*i)->Delete();
- </PRE>
- </destructor>
-
-
-
-</blackbox>
-