]> Creatis software - creaMaracasVisu.git/blob - lib/maracasVisuLib/src/interface/wxWindows/wxMaracasApp.cxx
BUG interaction click right
[creaMaracasVisu.git] / lib / maracasVisuLib / src / interface / wxWindows / wxMaracasApp.cxx
1 /*=========================================================================
2
3  Program:   wxMaracas
4  Module:    $RCSfile: wxMaracasApp.cxx,v $
5  Language:  C++
6  Date:      $Date: 2008/10/31 16:32:09 $
7  Version:   $Revision: 1.1 $
8
9   Copyright: (c) 2002, 2003
10   License:
11
12    This software is distributed WITHOUT ANY WARRANTY; without even
13    the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
14    PURPOSE.  See the above copyright notice for more information.
15
16 =========================================================================*/
17
18
19 /*!
20  \mainpage wxMaracas version wxWindows
21
22  \section intro Introduction
23
24  This is the introduction. 
25
26
27
28
29
30
31
32   \dot
33
34
35 digraph example_0 {
36         rankdir=LR
37         graph [ ratio=fill];
38     node [shape=record, fontname=Helvetica, fontsize=10];
39
40         ___wxMaracasFrame03                     [ label="wxMaracasFrame03"      URL="\ref wxMaracasFrame03"];
41         ___wxMaracasApp02                       [ label="wxMaracasApp02"        URL="\ref wxMaracasApp02"];
42         __wxMaracasFrame02                      [ label="wxMaracasFrame02"      URL="\ref wxMaracasFrame02"];
43         __wxMaracasApp02                        [ label="wxMaracasApp02"        URL="\ref wxMaracasApp02"];
44         _wxMaracasFrame                         [ label="wxMaracasFrame"        URL="\ref wxMaracasFrame"];
45         _wxMaracasApp                           [ label="wxMaracasApp"          URL="\ref wxMaracasApp"];
46
47         _wxMaracas3DBrowser                     [ label="wxMaracas3DBrowser"                    URL="\ref wxMaracas3DBrowser"];
48         _wxMaracasQuantification        [ label="wxMaracasQuantification"               URL="\ref wxMaracasQuantification"];
49
50
51         __wxMaracasDataBrowser          [ label="wxMaracasDataBrowser"                  URL="\ref wxMaracasDataBrowser"];
52         __wxMaracasImageBrowser         [ label="wxMaracasImageBrowser"                 URL="\ref wxMaracasImageBrowser"];
53         __wxMaracasImageBrowser02       [ label="wxMaracasImageBrowser02"               URL="\ref wxMaracasImageBrowser02" ];
54         __wxMaracas3DBrowser            [ label="wxMaracas3DBrowser"                    URL="\ref wxMaracas3DBrowser"];
55         __wxMaracasQuantification       [ label="wxMaracasQuantification"               URL="\ref wxMaracasQuantification"];
56         __wxMaracasQuantificationCT     [ label="wxMaracasQuantificationCT"             URL="\ref wxMaracasQuantificationCT"];
57         __wxMaracasMPR                          [ label="wxMaracasMPR"                                  URL="\ref wxMaracasMPR"];
58         __wxMaracasProcessingCT         [ label="wxMaracasProcessingCT"                 URL="\ref wxMaracasProcessingCT"];
59         __wxMaracasEmptyPanel           [ label="wxMaracasEmptyPanel"                   URL="\ref wxMaracasEmptyPanel"];
60         __wxMaracasEmptyPanel_2         [ label="wxMaracasEmptyPanel_2"                 URL="\ref wxMaracasEmptyPanel_2"];
61         __wxSurfaceSTLWidget            [ label="wxSurfaceSTLWidget"                    URL="\ref wxSurfaceSTLWidget"];
62         __wxILPD                                        [ label="wxILPD"                                                URL="\ref wxILPD"];
63
64
65         _wxMaracasApp           -> _wxMaracasFrame                      
66         _wxMaracasFrame         -> _wxMaracas3DBrowser          
67         _wxMaracasFrame         -> _wxMaracasQuantification 
68
69         __wxMaracasApp02        -> __wxMaracasFrame02           
70         __wxMaracasFrame02      -> __wxMaracasDataBrowser       
71         __wxMaracasFrame02      -> __wxMaracasImageBrowser      
72         __wxMaracasFrame02      -> __wxMaracasImageBrowser02 
73         __wxMaracasFrame02      -> __wxMaracas3DBrowser 
74         __wxMaracasFrame02      -> __wxMaracasQuantification
75         __wxMaracasFrame02      -> __wxMaracasQuantificationCT 
76         __wxMaracasFrame02      -> __wxMaracasMPR       
77         __wxMaracasFrame02      -> __wxMaracasProcessingCT 
78         __wxMaracasFrame02      -> __wxMaracasEmptyPanel
79         __wxMaracasFrame02      -> __wxMaracasEmptyPanel_2
80         __wxMaracasFrame02      -> __wxSurfaceSTLWidget 
81         __wxMaracasFrame02      -> __wxILPD 
82
83
84         ___wxMaracasImageBrowser02      [ label="wxMaracasImageBrowser02"               URL="\ref wxMaracasImageBrowser02"];
85         ___wxMaracas3DBrowser           [ label="wxMaracas3DBrowser"                    URL="\ref wxMaracas3DBrowser"];
86         ___wxMaracasQuantification      [ label="wxMaracasQuantification"               URL="\ref wxMaracasQuantification"];
87         ___wxMaracasQuantificationCT[ label="wxMaracasQuantificationCT"         URL="\ref wxMaracasQuantificationCT"];
88         ___wxMaracasMPR                         [ label="wxMaracasMPR"                                  URL="\ref wxMaracasMPR"];
89         ___wxMaracasProcessingCT        [ label="wxMaracasProcessingCT"                 URL="\ref wxMaracasProcessingCT"];
90         ___wxMaracasEmptyPanel_2        [ label="wxMaracasEmptyPanel_2"                 URL="\ref wxMaracasEmptyPanel_2"];
91         ___wxSurfaceSTLWidget           [ label="wxSurfaceSTLWidget"                    URL="\ref wxSurfaceSTLWidget"];
92         ___wxILPDwithImage                      [ label="wxILPDwithImage"                               URL="\ref wxILPDwithImage"];
93         ___wxMaracasEmptyPanel_3        [ label="wxMaracasEmptyPanel_3"                 URL="\ref wxMaracasEmptyPanel_3"];
94
95
96         ___wxMaracasNoteBookPatientLstVoi                       [ label="wxMaracasNoteBookPatientLstVoi"                        URL="\ref wxMaracasNoteBookPatientLstVoi"];
97         ___wxMaracasNoteBookCTQuantification            [ label="wxMaracasNoteBookCTQuantification"                     URL="\ref wxMaracasNoteBookCTQuantification"];
98         ___wxMaracasNoteBookIRMQuantification           [ label="wxMaracasNoteBookIRMQuantification"            URL="\ref wxMaracasNoteBookIRMQuantification"];
99         ___wxMaracasNoteBookSTLFormat                           [ label="wxMaracasNoteBookSTLFormat"                            URL="\ref wxMaracasNoteBookSTLFormat"];
100         ___wxMaracasNoteBookTests                                       [ label="wxMaracasNoteBookTests"                                        URL="\ref wxMaracasNoteBookTests"];
101         ___wxMaracasNoteBookVascularTreeExtraction      [ label="wxMaracasNoteBookVascularTreeExtraction"       URL="\ref wxMaracasNoteBookVascularTreeExtraction"];
102
103
104         ___wxMaracasApp02       -> ___wxMaracasFrame03          
105         ___wxMaracasFrame03     -> ___wxMaracasNoteBookPatientLstVoi            
106         ___wxMaracasFrame03     -> ___wxMaracasNoteBookCTQuantification                 
107         ___wxMaracasFrame03     -> ___wxMaracasNoteBookIRMQuantification                
108         ___wxMaracasFrame03     -> ___wxMaracasNoteBookSTLFormat                
109         ___wxMaracasFrame03     -> ___wxMaracasNoteBookTests            
110         ___wxMaracasFrame03     -> ___wxMaracasNoteBookVascularTreeExtraction           
111
112
113
114         ___wxMaracasNoteBookPatientLstVoi                       -> ___wxILPDwithImage
115         ___wxMaracasNoteBookPatientLstVoi                       -> ___wxMaracasImageBrowser02
116         ___wxMaracasNoteBookPatientLstVoi                       -> ___wxMaracasMPR
117
118         ___wxMaracasNoteBookCTQuantification            -> ___wxMaracasMPR
119         ___wxMaracasNoteBookCTQuantification            -> ___wxMaracasProcessingCT
120         ___wxMaracasNoteBookCTQuantification            -> ___wxMaracasQuantificationCT
121
122         ___wxMaracasNoteBookIRMQuantification           -> ___wxMaracas3DBrowser
123         ___wxMaracasNoteBookIRMQuantification           -> ___wxMaracasQuantification
124
125         ___wxMaracasNoteBookSTLFormat                           -> ___wxMaracas3DBrowser
126         ___wxMaracasNoteBookSTLFormat                           -> ___wxSurfaceSTLWidget
127
128         ___wxMaracasNoteBookTests                                       -> ___wxMaracasEmptyPanel_3
129
130         ___wxMaracasNoteBookVascularTreeExtraction      -> ___wxMaracasEmptyPanel_2
131
132 }
133
134 \enddot
135
136
137
138
139
140
141
142
143
144 \dot
145
146 digraph example {
147         graph [ ratio=fill];
148     node [shape=record, fontname=Helvetica, fontsize=10];
149
150         subgraph subgraph_App {
151                 rank = same;
152                 _wxMaracasApp                   [ label="wxMaracasApp"                          URL="\ref wxMaracasApp"];
153     _wxMaracasApp02                     [ label="wxMaracasApp02"                        URL="\ref wxMaracasApp02"];
154         }
155         subgraph subgraph_Frame {
156                 rank = same;
157                 _wxMaracasFrame                 [ label="wxMaracasFrame"                        URL="\ref wxMaracasFrame"];
158                 _wxMaracasFrame02               [ label="wxMaracasFrame02"                      URL="\ref wxMaracasFrame02"];
159                 _wxMaracasFrame03               [ label="wxMaracasFrame03"                      URL="\ref wxMaracasFrame03"];
160         }
161
162         subgraph cluster_000 {
163                 label = "Interface Pages"
164                 style=filled;
165                 color=lightgrey;
166                 rank = same;
167                 _wxMaracasNoteBookPatientLstVoi                 [ label="wxMaracasNoteBookPatientLstVoi"                        URL="\ref wxMaracasNoteBookPatientLstVoi"];
168                 _wxMaracasNoteBookCTQuantification              [ label="wxMaracasNoteBookCTQuantification"                     URL="\ref wxMaracasNoteBookCTQuantification"];
169                 _wxMaracasNoteBookIRMQuantification             [ label="wxMaracasNoteBookIRMQuantification"            URL="\ref wxMaracasNoteBookIRMQuantification"];
170                 _wxMaracasNoteBookSTLFormat                             [ label="wxMaracasNoteBookSTLFormat"                            URL="\ref wxMaracasNoteBookSTLFormat"];
171                 _wxMaracasNoteBookTests                                 [ label="wxMaracasNoteBookTests"                                        URL="\ref wxMaracasNoteBookTests"];
172                 _wxMaracasNoteBookVascularTreeExtraction[ label="wxMaracasNoteBookVascularTreeExtraction"       URL="\ref wxMaracasNoteBookVascularTreeExtraction"];
173                 _wxMaracasNoteBookManualRegistration    [ label="wxMaracasNoteBookManualRegistration"           URL="\ref wxMaracasNoteBookManualRegistration"];
174         }
175
176         subgraph cluster_PersistanceConfiguration {
177                 label = "Persistance Configuration"
178                 style=filled;
179                 color=lightgrey;
180                 rank = same;
181                 _wxReadWriteConf                                                [ label="wxReadWriteConf"                       URL="\ref wxReadWriteConf"];
182                 _FileInformationModel                                   [ label="FileInformationModel"          URL="\ref FileInformationModel"];
183                 _FileInfoNode                                                   [ label="FileInfoNode"                          URL="\ref FileInfoNode"];
184
185
186         }
187
188         subgraph cluster_001 {
189                 style=filled;
190                 color=lightgrey;
191                 rank = same;
192                 _wxMaracasDataBrowser           [ label="wxMaracasDataBrowser"                  URL="\ref wxMaracasDataBrowser"];
193                 _wxMaracasImageBrowser          [ label="wxMaracasImageBrowser"                 URL="\ref wxMaracasImageBrowser"];
194                 _wxMaracasImageBrowser02        [ label="wxMaracasImageBrowser02"               URL="\ref wxMaracasImageBrowser02"];
195                 _wxMaracas3DBrowser                     [ label="wxMaracas3DBrowser"                    URL="\ref wxMaracas3DBrowser"];
196                 _wxMaracasQuantification        [ label="wxMaracasQuantification"               URL="\ref wxMaracasQuantification"];
197                 _wxMaracasMPR                           [ label="wxMaracasMPR"                                  URL="\ref wxMaracasMPR"];
198                 _wxMaracasEmptyPanel            [ label="wxMaracasEmptyPanel"                   URL="\ref wxMaracasEmptyPanel"];
199                 _wxMaracasEmptyPanel_2          [ label="wxMaracasEmptyPanel_2"                 URL="\ref wxMaracasEmptyPanel_2"];
200                 _wxMaracasEmptyPanel_3          [ label="wxMaracasEmptyPanel_3"                 URL="\ref wxMaracasEmptyPanel_3"];
201                 _wxILPDwithImage                        [ label="wxILPDwithImage"                               URL="\ref wxILPDwithImage"];
202
203                 subgraph cluster_00STL {
204                         rank=same;
205                         _wxSurfaceSTLWidget                     [ label="wxSurfaceSTLWidget"                    URL="\ref wxSurfaceSTLWidget"];
206                         _wxSTLWidget_02                         [ label="wxSTLWidget_02"                                URL="\ref wxSTLWidget_02"];
207                         _wxSTLWidget_03                         [ label="wxSTLWidget_03"                                URL="\ref wxSTLWidget_03"];
208                 }
209
210                 _wxMaracas_ManualTree_MPR       [ label="wxMaracas_ManualTree_MPR"              URL="\ref wxMaracas_ManualTree_MPR"];
211
212                 _wxManualRegistration3D         [ label="wxManualRegistration3D"                URL="\ref wxManualRegistration3D"];
213         
214                 subgraph cluster_00NN {
215                         rank=same;
216                         _wxMaracasQuantificationCT      [ label="wxMaracasQuantificationCT"             URL="\ref wxMaracasQuantificationCT"];
217                         _wxMaracasProcessingCT          [ label="wxMaracasProcessingCT"                 URL="\ref wxMaracasProcessingCT"];
218                 }
219
220         }
221
222
223         subgraph cluster_Widgets {
224                 label = "Imprtant Widgets";
225                 style=filled;
226                 color=lightgrey;
227                 _wxProcessingCTWidget       [ label="wxProcessingCTWidget"              URL="\ref wxProcessingCTWidget" fillcolor=yellow style=filled];
228                 _wxEmptyPanelWidget                     [ label="wxEmptyPanelWidget"            URL="\ref wxEmptyPanelWidget"];
229                 _wxEmptyPanelWidget_2       [ label="wxEmptyPanelWidget_2"              URL="\ref wxEmptyPanelWidget_2"];
230                 _wxManualTree_MPRWidget     [ label="wxManualTree_MPRWidget"    URL="\ref wxManualTree_MPRWidget"];
231                 _wxQuantificationWidget         [ label="wxQuantificationWidget"                        URL="\ref wxQuantificationWidget"];
232                 _wxQuantificationWidgetCT       [ label="wxQuantificationWidgetCT"                      URL="\ref wxQuantificationWidgetCT"  fillcolor=yellow style=filled];
233                 _vtk3DSurfaceSTLWidget          [ label="vtk3DSurfaceSTLWidget"         URL="\ref vtk3DSurfaceSTLWidget"];
234         }
235
236         _wxSurfaceWidget                                                [ label="wxSurfaceWidget"                       URL="\ref wxSurfaceWidget"];
237         _wxVTKRenderWindowInteractor                    [ label=" wxVTKRenderWindowInteractor"  URL="\ref wxVTKRenderWindowInteractor"];
238         _wxVTKRenderWindowInteractorEditContour [ label=" wxVTKRenderWindowInteractorEditContour"       URL="\ref wxVTKRenderWindowInteractorEditContour"];
239         _vtk3DSurfaceWidget                                             [ label="vtk3DSurfaceWidget"            URL="\ref vtk3DSurfaceWidget"];
240         _InterfaceVtkPanelWidgets                               [ label="InterfaceVtkPanelWidgets"      URL="\ref InterfaceVtkPanelWidgets"];
241
242         subgraph cluster_marInterface {
243                 label = "marInterface";
244                 style=filled;
245                 color=lightgrey;
246                 _marInterface                           [ label="marInterface"                          URL="\ref marInterface"];
247                 _marParameters                          [ label="marParameters"                         URL="\ref marParameters"];
248                 _marExperiment                          [ label="marExperiment"                         URL="\ref marExperiment"];
249                 _marObject                                      [ label="marObject"                                     URL="\ref marObject"];
250                 _marDynData                                     [ label="marDynData"                            URL="\ref marDynData"];
251                 _kVolume                                        [ label="kVolume"                                       URL="\ref kVolume"];
252                 _marAxis                                        [ label="marAxis"                                       URL="\ref marAxis"];
253         } 
254
255         subgraph cluster_002 {
256                 label = "Load Dicom Images";
257                 style=filled;
258                 color=lightgrey;
259                 _LoadRangeImage                 [ label="LoadRangeImage"                        URL="\ref LoadRangeImage"];
260                 _marGdcmDicom                   [ label="marGdcmDicom"                          URL="\ref marGdcmDicom"];
261                 _marGdcmDicomILPD               [ label="marGdcmDicomILPD"                      URL="\ref marGdcmDicomILPD"];
262                 _marSimpleDicom                 [ label="marSimpleDicom"                        URL="\ref marSimpleDicom"];
263                 _marRAWFiles                    [ label="marRAWFiles"                           URL="\ref marRAWFiles"];
264                 _marRAW2Files                   [ label="marRAW2Files"                          URL="\ref marRAW2Files"];
265                 _marFilesBase                   [ label="marFilesBase"                          URL="\ref marFilesBase"];
266         }
267
268         subgraph subgraph_003 {
269                 rank = same;
270                 node [style=rounded]
271
272                 _axisExtractor          [ label="axisExtractor"             URL="\ref axisExtractor"   fillcolor=yellow style=filled];
273                 _axisExtractor02                [ label="axisExtractor02"                       URL="\ref axisExtractor02" fillcolor=yellow style=filled];      
274         }
275         _TreeExtraction_MH_JFC          [ label="TreeExtraction_MH_JFC"         URL="\ref TreeExtraction_MH_JFC"                                 ];
276         _carotidaBifurcacion            [ label="carotidaBifurcacion"           URL="\ref carotidaBifurcacion"  fillcolor=yellow style=filled];
277
278 subgraph cluster_MPRxxx {
279                 _wxMPRWidget                                    [ label="wxMPRWidget"                                   URL="\ref wxMPRWidget"];
280                 _wxMPRWidget2                                   [ label="wxMPRWidget2"                                  URL="\ref wxMPRWidget2"];
281                 _wxMaracas_ViewerWidget                 [ label="wxMaracas_ViewerWidget"                URL="\ref wxMaracas_ViewerWidget"];
282                 _wxMaracas_N_ViewersWidget              [ label="wxMaracas_N_ViewersWidget"             URL="\ref wxMaracas_N_ViewersWidget"];
283
284         subgraph cluster_2D3DBaseViewer {
285                 label = "2D 3D Base Viewer (Maracas+VTK+WxWindow)";
286                 style=filled;
287                 color=lightgrey;
288
289                 subgraph cluster_base_base {
290                         label = "base base ";
291                         style=filled;
292                         color=gray71;
293                         _wxVtkBaseView                                  [ label="wxVtkBaseView"                                 URL="\ref wxVtkBaseView"];
294                         _wxVtk2DView_TMP                                [ label="wxVtk2DView_TMP"                               URL="\ref wxVtk2DView_TMP"];
295                         _vtkImageViewer2_XYZ                    [ label="vtkImageViewer2_XYZ"                   URL="\ref vtkImageViewer2_XYZ"];
296                         _wxVtk2DBaseView                                [ label="wxVtk2DBaseView"                               URL="\ref wxVtk2DBaseView"];
297                         _wxVtk3DBaseView                                [ label="wxVtk3DBaseView"                               URL="\ref wxVtk3DBaseView"];
298                 } // cluster_base_base
299
300                 subgraph cluster_2DViewer {
301                         _wxVtkMPR2DView                                 [ label="wxVtkMPR2DView"                                URL="\ref wxVtkMPR2DView"];
302                         _wxSphereView                                   [ label="wxSphereView"                                  URL="\ref wxSphereView"];
303                         _vtkPlane2DView                                 [ label="vtkPlane2DView"                                URL="\ref vtkPlane2DView"];
304                 } // cluster_2DViewer
305
306                 subgraph cluster_Clipping3D {
307                         label = "Clipping 3D Viewer ";
308                         style=filled;
309                         color=gray71;
310                         _vtkClipping3DDataViewer                [ label="vtkClipping3DDataViewer"               URL="\ref vtkClipping3DDataViewer"];
311                         _wxVtkClipping3DViewCntrlPanel  [ label="wxVtkClipping3DViewCntrlPanel" URL="\ref wxVtkClipping3DViewCntrlPanel"];
312                         _wxVtkClipping3DView                    [ label="wxVtkClipping3DView"                   URL="\ref wxVtkClipping3DView"];
313                 } //cluster_Clipping3D
314
315
316                 subgraph cluster_ViewerDATA {
317                         label = "Viewer DATA ";
318                         style=filled;
319                         color=gray71;
320                         _vtkBaseData                            [ label="vtkBaseData"                                   URL="\ref vtkBaseData"];
321                         _vtkMPRBaseData                         [ label="vtkMPRBaseData"                                URL="\ref vtkMPRBaseData"];
322                         _vtkMPR3DDataViewer             [ label="vtkMPR3DDataViewer"                    URL="\ref vtkMPR3DDataViewer"];
323                 } // cluster_ViewerDATA
324
325                 subgraph cluster_MPR3DView {
326                         label = " MPR3D View ";
327                         style=filled;
328                         color=gray71;
329                         _wxVtkMPR3DView                                 [ label="wxVtkMPR3DView"                                URL="\ref wxVtkMPR3DView"];
330                         _wxVtkMPR3DViewCntrlPanel               [ label="wxVtkMPR3DViewCntrlPanel"              URL="\ref wxVtkMPR3DViewCntrlPanel"]; 
331                 } // cluster_MPR3DView
332
333   } // cluster_2D3DBaseViewer
334 } // cluster_MPRxxx
335
336
337         subgraph cluster_3DViewer {
338                 label = "3D Viewer (Maracas+VTK+WxWindow)";
339                 style=filled;
340                 color=lightgrey;
341                 _boxSurfaceObserver                     [ label="boxSurfaceObserver"                    URL="\ref boxSurfaceObserver"];
342                 _boxVolumeObserver                              [ label="boxVolumeObserver"                     URL="\ref boxVolumeObserver"];
343
344                 _vtkmyPWCallback_3DPointWidget  [ label="vtkmyPWCallback_3DPointWidget" URL="\ref vtkmyPWCallback_3DPointWidget"];
345         }
346
347
348         _vtkInteractorStyleCutter               [ label="vtkInteractorStyleCutter"      URL="\ref vtkInteractorStyleCutter"];
349         _vtkImagePolyDataSeedConnectivity       [ label="vtkImagePolyDataSeedConnectivity"              URL="\ref vtkImagePolyDataSeedConnectivity"];
350         _wxImageViewerWidgetRoi                 [ label="wxImageViewerWidgetRoi"        URL="\ref wxImageViewerWidgetRoi"];
351
352         subgraph subgraph_005 {
353                 _marZoomROIObserver                             [ label="marZoomROIObserver"                            URL="\ref marZoomROIObserver"];
354                 _wxImageViewerWidget                            [ label="wxImageViewerWidget"                           URL="\ref wxImageViewerWidget"];
355         }
356
357         _vtk2DQuantSliceWidget                                  [ label="vtk2DQuantSliceWidget"                         URL="\ref vtk2DQuantSliceWidget"];
358
359         subgraph cluster0 {
360                 label = "Manual Contour";
361                 style=filled;
362                 color=lightgrey;
363                 _manualContourModel                                     [ label="manualContourModel"                            URL="\ref manualContourModel"];
364
365                 _manualViewBaseContour                          [ label="manualViewBaseContour"                         URL="\ref manualViewBaseContour"];
366                 _manualViewContour                                      [ label="manualViewContour"                                     URL="\ref manualViewContour"];
367                 _manualView3VContour                            [ label="manualView3VContour"                           URL="\ref manualView3VContour"];
368                 _manualView3DContour                            [ label="manualView3DContour"                           URL="\ref manualView3DContour"];
369                 _manualViewPerpPlaneContour         [ label="manualViewPerpPlaneContour"                URL="\ref manualViewPerpPlaneContour"];
370
371                 
372                 _manualViewRoi                                          [ label="manualViewRoi"                                         URL="\ref manualViewRoi"];
373                   
374
375                 _manualContourBaseControler                     [ label="manualContourBaseControler"            URL="\ref manualContourBaseControler"];
376                 _manualContourControler                         [ label="manualContourControler"                        URL="\ref manualContourControler"];
377                 _manualContour3VControler                       [ label="manualContour3VControler"                      URL="\ref manualContour3VControler"];
378                 _manualContour3DControler                       [ label="manualContour3DControler"                      URL="\ref manualContour3DControler"];
379                 _manualContour3V3DControler                     [ label="manualContour3V3DControler"            URL="\ref manualContour3V3DControler"];
380                 _manualContourPerpPlaneControler        [ label="manualContourPerpPlaneControler"       URL="\ref manualContourPerpPlaneControler"];
381                 _manualRoiControler                                     [ label="manualRoiControler"                            URL="\ref manualRoiControler"];
382
383                 _manualViewPoint                                        [ label="manualViewPoint"                                       URL="\ref manualViewPoint"];
384                 _manualPoint                                            [ label="manualPoint"                                           URL="\ref manualPoint"];
385
386         }               
387
388         subgraph cluster_interactor {
389                 label = "Interactors";
390                 style=filled;
391                 color=lightgrey;
392                 _vtkInteractorStyleBaseView                     [ label="vtkInteractorStyleBaseView"            URL="\ref vtkInteractorStyleBaseView"];
393                 _vtkInteractorStyleBaseView2D           [ label="vtkInteractorStyleBaseView2D"          URL="\ref vtkInteractorStyleBaseView2D"];
394                 _vtkInteractorStyleBaseView3D           [ label="vtkInteractorStyleBaseView3D"          URL="\ref vtkInteractorStyleBaseView3D"];                                       
395                 _vtkInteractorStyle3DView                       [ label="vtkInteractorStyle3DView"                      URL="\ref vtkInteractorStyle3DView"];                   
396                 _vtkInfoTextImageInteractor                     [ label="vtkInfoTextImageInteractor"            URL="\ref vtkInfoTextImageInteractor"];
397                 _vtkInfoTextImageInteractorPlane2D      [ label="vtkInfoTextImageInteractorPlane2D"     URL="\ref vtkInfoTextImageInteractorPlane2D"];
398                 _vtkInfoTextImage                                       [ label="vtkInfoTextImage"                                      URL="\ref vtkInfoTextImage"];
399                 _vtkInteractorStyleMPRView                      [ label="vtkInteractorStyleMPRView"                     URL="\ref vtkInteractorStyleMPRView"];
400                 _vtkInteractorStylePlane2D                      [ label="vtkInteractorStylePlane2D"                     URL="\ref vtkInteractorStylePlane2D"];
401                 _vtkInteractorStyleSphere                       [ label="vtkInteractorStyleSphere"                      URL="\ref vtkInteractorStyleSphere"];
402                 _InteractorStyleMaracas                         [ label="InteractorStyleMaracas"                        URL="\ref InteractorStyleMaracas"];     
403                 _vtkInteractorScrollZ                           [ label="vtkInteractorScrollZ"                          URL="\ref vtkInteractorScrollZ"];                       
404                 _manualInteractorWindowLevel            [ label="manualInteractorWindowLevel"           URL="\ref manualInteractorWindowLevel"];                        
405
406   }
407
408     subgraph cluster_uniandeskernel {
409                 label = "Kernel CT (uniandes)";
410                 style=filled;
411                 color=lightgrey;
412                 _marAxisContours                        [ label="marAxisContours"                       URL="\ref marAxisContours"      fillcolor=yellow style=filled];
413                 _marAxisCT                                      [ label="marAxisCT"                                     URL="\ref marAxisCT"    fillcolor=yellow style=filled];
414                 _marContourVO                           [ label="marContourVO"                                          URL="\ref marContourVO"         fillcolor=yellow style=filled];
415                 _marExperimentCT                        [ label="marExperimentCT"                               URL="\ref marExperimentCT"      fillcolor=yellow style=filled];
416                 _marInterfaceCT                         [ label="marInterfaceCT"                                        URL="\ref marInterfaceCT"       fillcolor=yellow style=filled];
417                 _marIsocontour                          [ label="marIsocontour"                                 URL="\ref marIsocontour"        fillcolor=yellow style=filled];
418                 _marPoint                                       [ label="marPoint"                                      URL="\ref marPoint"     fillcolor=yellow style=filled];
419         }
420
421   subgraph cluster_uniandesvisual {
422                 label = "Visualization CT (uniandes)";
423                 style=filled;
424                 color=lightgrey;
425                 _ContourView                            [ label="ContourView"                   URL="\ref ContourView"  fillcolor=yellow style=filled];
426                 _PointView                                      [ label="PointView"                                     URL="\ref PointView"    fillcolor=yellow style=filled];
427                 _LineView                                       [ label="LineView"                                              URL="\ref LineView"     fillcolor=yellow style=filled];
428                 _wxPnlContourControl            [ label="wxPnlContourControl"                           URL="\ref wxPnlContourControl"  fillcolor=yellow style=filled];
429                 
430         }
431
432 subgraph cluster_006 {
433                 label = "Thread";
434                 style=filled;
435                 color=lightgrey;
436                 _PriorityLoadImageBar                   [ label="PriorityLoadImageBar"                  URL="\ref PriorityLoadImageBar"];
437                 _BarLoading                                             [ label="BarLoading"                                    URL="\ref BarLoading"];
438                 _BarRange                                               [ label="BarRange"                                              URL="\ref BarRange"];
439                 _MyThread                                               [ label="MyThread"                                              URL="\ref MyThread"];
440                 _AdminThreadEED                                 [ label="AdminThreadEED"                                URL="\ref AdminThreadEED"];
441                 _PriorityLoop                                   [ label="PriorityLoop"                                  URL="\ref PriorityLoop"];
442 }
443
444                 _vtkInteractorStyle2DMaracas            [ label="vtkInteractorStyle2DMaracas"           URL="\ref vtkInteractorStyle2DMaracas"];
445                 _wxQuantificationWidget_base            [ label="wxQuantificationWidget_base"           URL="\ref wxQuantificationWidget_base"];
446                 _wxPanelControlsHealthySickSlice2       [ label="wxPanelControlsHealthySickSlice2"      URL="\ref wxPanelControlsHealthySickSlice2"];
447
448
449                 _vtk3DQuantSurfaceWidget                [ label="vtk3DQuantSurfaceWidget"               URL="\ref vtk3DQuantSurfaceWidget"];
450                 _RectangleGuideVtk                              [ label="RectangleGuideVtk"                             URL="\ref RectangleGuideVtk"];
451
452
453 subgraph cluster_figureCutting {
454                 label = "Figure Cutting";
455                 style=filled;
456                 color=lightgrey;
457
458                 _wxPanelCuttingImageData                [ label="wxPanelCuttingImageData"               URL="\ref wxPanelCuttingImageData"];
459                 _figureCuttingModel                             [ label="figureCuttingModel"                    URL="\ref figureCuttingModel"];
460
461                 _figureCuttingCubeModel                 [ label="figureCuttingCubeModel"                URL="\ref figureCuttingCubeModel"];
462                 _figureCuttingCylinderModel             [ label="figureCuttingCylinderModel"    URL="\ref figureCuttingCylinderModel"];
463                 _figureCuttingSphereModel               [ label="figureCuttingSphereModel"              URL="\ref figureCuttingSphereModel"];
464 }
465                 
466
467 subgraph cluster_mesure_tools {
468                 label = "Mesure tools widgets";
469                 style=filled;
470                 color=lightgrey;
471
472                 _wxWidgetMesure2D                               [ label="wxWidgetMesure2D"                              URL="\ref wxWidgetMesure2D"];
473                 _wxWidgetMesure2D_Plane                 [ label="wxWidgetMesure2D_Plane"                URL="\ref wxWidgetMesure2D_Plane"];
474                 _wxWidgetMesure2D_Plane_in_MPR  [ label="wxWidgetMesure2D_Plane_in_MPR" URL="\ref wxWidgetMesure2D_Plane_in_MPR"];
475 }
476
477                 _marImageData   [ label="marImageData"  URL="\ref marImageData"];
478
479
480           _wxMaracasApp         -> _wxMaracasFrame                              [ arrowhead="open", style="dashed" ];
481       _wxMaracasFrame   -> _wxMaracas3DBrowser                  [ arrowhead="open", style="dashed" ];
482       _wxMaracasFrame   -> _wxMaracasQuantification             [ arrowhead="open", style="dashed" ];
483
484       _wxMaracasApp02   -> _wxMaracasFrame02                    [ arrowhead="open", style="dashed" ];
485
486 //      _wxMaracasFrame02       -> _wxMaracasDataBrowser                [ arrowhead="open", style="dashed" ];
487 //      _wxMaracasFrame02       -> _wxMaracasImageBrowser               [ arrowhead="open", style="dashed" ];
488 //      _wxMaracasFrame02       -> _wxMaracasImageBrowser02             [ arrowhead="open", style="dashed" ];
489 //      _wxMaracasFrame02       -> _wxMaracas3DBrowser                  [ arrowhead="open", style="dashed" ];
490 //      _wxMaracasFrame02       -> _wxMaracasQuantification             [ arrowhead="open", style="dashed" ];
491 //      _wxMaracasFrame02       -> _wxMaracasQuantificationCT   [ arrowhead="open", style="dashed" ];
492 //      _wxMaracasFrame02       -> _wxMaracasMPR                                [ arrowhead="open", style="dashed" ];
493 //      _wxMaracasFrame02       -> _wxMaracasProcessingCT               [ arrowhead="open", style="dashed" ];
494 //      _wxMaracasFrame02       -> _wxMaracasEmptyPanel                 [ arrowhead="open", style="dashed" ];
495 //      _wxMaracasFrame02       -> _wxMaracasEmptyPanel_2               [ arrowhead="open", style="dashed" ];
496 //      _wxMaracasFrame02       -> _wxSurfaceSTLWidget                  [ arrowhead="open", style="dashed" ];
497 //              _wxMaracasFrame02       -> _ILPDViewListPatient                 [ arrowhead="open", style="dashed" ];
498 //              _wxMaracasFrame02       -> _wxILPD                                              [ arrowhead="open", style="dashed" ];
499
500
501
502         _wxMaracasApp02         -> _wxMaracasFrame03                                                    [ arrowhead="open", style="dashed" ];
503         _wxMaracasFrame03       -> _wxMaracasNoteBookPatientLstVoi                              [ arrowhead="open", style="dashed" ];
504         _wxMaracasFrame03       -> _wxMaracasNoteBookCTQuantification                   [ arrowhead="open", style="dashed" ];   
505         _wxMaracasFrame03       -> _wxMaracasNoteBookIRMQuantification                  [ arrowhead="open", style="dashed" ];   
506         _wxMaracasFrame03       -> _wxMaracasNoteBookSTLFormat                                  [ arrowhead="open", style="dashed" ];
507         _wxMaracasFrame03       -> _wxMaracasNoteBookTests                                              [ arrowhead="open", style="dashed" ];
508         _wxMaracasFrame03       -> _wxMaracasNoteBookVascularTreeExtraction             [ arrowhead="open", style="dashed" ];   
509         _wxMaracasFrame03       -> _wxMaracasNoteBookManualRegistration                 [ arrowhead="open", style="dashed" ];   
510
511
512         _wxMaracasNoteBookPatientLstVoi                 -> _wxILPD                                      [ arrowhead="open", style="dashed" ];
513         _wxMaracasNoteBookPatientLstVoi                 -> _wxILPDwithImage                     [ arrowhead="open", style="dashed" ];
514         _wxMaracasNoteBookPatientLstVoi                 -> _wxMaracasImageBrowser02 [ arrowhead="open", style="dashed" ];
515         _wxMaracasNoteBookPatientLstVoi                 -> _wxMaracasMPR                        [ arrowhead="open", style="dashed" ];
516         _wxMaracasNoteBookPatientLstVoi                 -> _wxReadWriteConf                     [ arrowhead="open", style="dashed" ];
517
518         _wxILPDwithImage                                                -> _wxILPD                                      [ arrowhead="open", style="dashed" ];
519         _wxILPDwithImage                                                -> _wxVtk2DBaseView                     [ arrowhead="open", style="dashed" ];
520         _wxILPDwithImage                                                -> _vtkBaseData                         [ arrowhead="open", style="dashed" ];
521
522         _wxMaracasNoteBookCTQuantification              -> _wxMaracasMPR                        [ arrowhead="open", style="dashed" ];
523         _wxMaracasNoteBookCTQuantification              -> _wxMaracasProcessingCT       [ arrowhead="open", style="dashed" ];
524         _wxMaracasNoteBookCTQuantification              -> _wxMaracasQuantificationCT [ arrowhead="open", style="dashed" ];
525         _wxMaracasNoteBookCTQuantification              -> _wxReadWriteConf                     [ arrowhead="open", style="dashed" ];
526
527         _wxMaracasNoteBookIRMQuantification             -> _wxMaracas3DBrowser          [ arrowhead="open", style="dashed" ];
528         _wxMaracasNoteBookIRMQuantification             -> _wxMaracasQuantification [ arrowhead="open", style="dashed" ];
529
530         _wxMaracasNoteBookSTLFormat                             -> _wxMaracas3DBrowser          [ arrowhead="open", style="dashed" ];
531         _wxMaracasNoteBookSTLFormat                             -> _wxSurfaceSTLWidget          [ arrowhead="open", style="dashed" ];
532
533         _wxMaracasNoteBookSTLFormat                             -> _wxSTLWidget_02                      [ arrowhead="open", style="dashed" ];
534         _wxMaracasNoteBookSTLFormat                             -> _wxSTLWidget_03                      [ arrowhead="open", style="dashed" ];
535
536         _wxMaracasNoteBookTests                                 -> _wxMaracasEmptyPanel_3       [ arrowhead="open", style="dashed" ];
537         _wxMaracasNoteBookTests                                 -> _wxMaracas_ManualTree_MPR [ arrowhead="open", style="dashed" ];
538
539         _wxMaracasNoteBookVascularTreeExtraction-> _wxMaracasEmptyPanel_2       [ arrowhead="open", style="dashed" ];
540
541         _wxMaracasNoteBookManualRegistration    -> _wxManualRegistration3D      [ arrowhead="open", style="dashed" ];
542
543         _wxManualRegistration3D -> _wxPanelCuttingImageData     [ arrowhead="open", style="dashed" ];
544         _wxManualRegistration3D -> _vtkMPRBaseData                      [ arrowhead="open", style="dashed" ];
545
546         _wxManualRegistration3D -> _marImageData                        [ arrowhead="open", style="dashed" ];
547         _wxManualRegistration3D -> _wxVtk3DBaseView                     [ arrowhead="open", style="dashed" ];
548         _wxManualRegistration3D -> _wxVtkMPR3DView                      [ arrowhead="open", style="dashed" ];
549         _wxManualRegistration3D -> _wxVtkClipping3DView         [ arrowhead="open", style="dashed" ];
550         _wxManualRegistration3D -> _wxVtkMPR3DView                      [ arrowhead="open", style="dashed" ];
551         _wxManualRegistration3D -> _wxVtkClipping3DView         [ arrowhead="open", style="dashed" ];
552
553           _wxMaracasMPR                         ->_marInterface                                 [ arrowhead="open", style="dashed" ];
554           _wxMaracasEmptyPanel          ->_wxEmptyPanelWidget                   [ arrowhead="open", style="dashed" ];
555           _wxMaracasProcessingCT        ->_wxProcessingCTWidget                 [ arrowhead="open", style="dashed" ];
556           _wxMaracasEmptyPanel_2        ->_wxEmptyPanelWidget_2                 [ arrowhead="open", style="dashed" ];
557           _wxSurfaceSTLWidget           ->_marInterface                                 [ arrowhead="open", style="dashed" ];
558           _wxSurfaceSTLWidget           ->_vtk3DSurfaceSTLWidget                [ arrowhead="open", style="dashed" ];
559
560           _wxMaracas3DBrowser           ->_marInterface                                 [ arrowhead="open", style="dashed" ];
561           _wxMaracas3DBrowser           ->_wxSurfaceWidget                              [ arrowhead="open", style="dashed" ];
562
563           _wxSurfaceWidget                      -> _InterfaceVtkPanelWidgets    [ arrowhead="onormal"                      ];
564           _wxSurfaceWidget                      -> _vtk3DSurfaceWidget                  [ arrowhead="open", style="dashed" ];
565           _wxSurfaceWidget                      -> _marInterface                                [ arrowhead="open", style="dashed" ];
566
567           _vtk3DSurfaceWidget           -> _wxVTKRenderWindowInteractor [ arrowhead="onormal"   ];
568           _vtk3DSurfaceWidget           -> _marInterface                                [ arrowhead="open", style="dashed" ];
569           _vtk3DSurfaceWidget           -> _InterfaceVtkPanelWidgets    [ arrowhead="open", style="dashed" ];
570
571           _wxMaracas_ManualTree_MPR -> _wxManualTree_MPRWidget          [ arrowhead="open", style="dashed" ];
572
573
574           _wxReadWriteConf                      -> _FileInformationModel                [ arrowhead="open", style="dashed" ];
575           _FileInformationModel         -> _FileInfoNode                                [ arrowhead="open", style="dashed" ];
576
577
578           _marInterface         -> _marFilesBase                        [ arrowhead="open", style="dashed" ];
579           _marInterface         -> _marParameters                       [ arrowhead="open", style="dashed" ];
580           _marInterface         -> _marExperiment                       [ arrowhead="open", style="dashed" ];
581
582           _marExperiment        -> _marObject                           [ arrowhead="onormal"                      ];
583           _marExperiment        -> _marDynData                          [ arrowhead="open", style="dashed" ];
584           _marExperiment        -> _marAxis                                     [ arrowhead="open", style="dashed" ];
585
586           _marDynData           -> _marObject                           [ arrowhead="onormal"                      ];
587           _marDynData           -> _kVolume                                     [ arrowhead="open", style="dashed" ];
588
589           _marAxis                      -> _marObject                           [ arrowhead="onormal"                      ];
590           _marAxis                      -> _kVolume                                     [ arrowhead="onormal"                      ];
591
592           _marFilesBase         -> _marObject                           [ arrowhead="onormal"                      ];
593           _marFilesBase         -> _kVolume                                     [ arrowhead="open", style="dashed" ];
594
595           _marSimpleDicom       -> _marFilesBase                        [ arrowhead="onormal"                      ];
596           _marGdcmDicom         -> _marFilesBase                        [ arrowhead="onormal"                      ];
597           _marRAWFiles          -> _marFilesBase                        [ arrowhead="onormal"                      ];
598           _marRAW2Files         -> _marRAWFiles                         [ arrowhead="onormal"                      ];
599           _marGdcmDicomILPD     -> _marGdcmDicom                        [ arrowhead="onormal"                      ];
600
601           _wxMaracasDataBrowser         -> _marInterface                        [ arrowhead="open", style="dashed" ];
602
603           _wxImageViewerWidgetRoi       -> _wxImageViewerWidget         [ arrowhead="onormal"                      ];
604           _wxMaracasImageBrowser        -> _wxImageViewerWidgetRoi      [ arrowhead="open", style="dashed" ];
605
606           _wxMaracasImageBrowser02      -> _LoadRangeImage                      [ arrowhead="open", style="dashed" ];
607           _wxMaracasImageBrowser02      -> _manualViewRoi                       [ arrowhead="open", style="dashed" ];
608           _wxMaracasImageBrowser02      -> _vtkBaseData                         [ arrowhead="open", style="dashed" ];
609           _wxMaracasImageBrowser02      -> _wxVtk2DBaseView                     [ arrowhead="open", style="dashed" ];
610           _wxMaracasImageBrowser02      -> _manualContourModel          [ arrowhead="open", style="dashed" ];
611           _wxMaracasImageBrowser02      -> _manualRoiControler          [ arrowhead="open", style="dashed" ];
612           _wxMaracasImageBrowser02      -> _marInterface                        [ arrowhead="open", style="dashed" ];
613
614  
615
616           _wxEmptyPanelWidget           -> _wxVtk3DBaseView                             [ arrowhead="open", style="dashed" ];
617           _wxEmptyPanelWidget           -> _axisExtractor02                             [ arrowhead="open", style="dashed" color=red];
618
619           _wxProcessingCTWidget         -> _vtkBaseData                                 [ arrowhead="open", style="dashed" ];
620           _wxProcessingCTWidget         -> _wxVtk2DBaseView                             [ arrowhead="open", style="dashed" ];
621           _wxProcessingCTWidget         -> _marInterfaceCT                              [ arrowhead="open", style="dashed" ];
622
623           _wxVtkBaseView                        -> _wxVTKRenderWindowInteractor[ arrowhead="open", style="dashed"       ];
624
625
626           _wxVtk2DBaseView                      -> _wxVtkBaseView                               [ arrowhead="onormal"                           ];
627           _wxVtk2DView_TMP                      -> _wxVtkBaseView                               [ arrowhead="onormal"                           ];
628
629           _wxVtk2DBaseView                      -> _vtkBaseData                                 [ arrowhead="open", style="dashed"      ];
630           _wxVtk2DBaseView                      -> _vtkImageViewer2_XYZ                 [ arrowhead="open", style="dashed"      ];
631
632           _vtkPlane2DView                       -> _wxVtk2DBaseView                             [ arrowhead="onormal"                           ];
633           _vtkPlane2DView                       -> _vtkMPRBaseData                              [ arrowhead="open", style="dashed"      ];
634           _vtkPlane2DView                       -> _vtkInteractorStylePlane2D   [ arrowhead="open", style="dashed" ];
635
636           _wxVtkMPR2DView                       -> _wxVtk2DBaseView                             [ arrowhead="onormal"                           ];
637           _wxVtkMPR2DView                       -> _vtkInteractorStyleMPRView   [ arrowhead="open", style="dashed" ];
638
639           _wxSphereView                         -> _wxVtk2DBaseView                             [ arrowhead="onormal"                           ];
640           _wxSphereView                         -> _vtkMPRBaseData                              [ arrowhead="open", style="dashed"      ];
641           _wxSphereView                         -> _vtkInteractorStyleSphere    [ arrowhead="open", style="dashed"      ];
642
643
644
645                 _vtkInteractorStyleBaseView             -> _wxVtkBaseView                               [ arrowhead="open", style="dashed" ];
646                 _wxVtkBaseView                                  -> _vtkInteractorStyleBaseView  [ arrowhead="open", style="dashed" ];
647                 _vtkInteractorStyleBaseView             -> _manualInteractorWindowLevel [ arrowhead="open", style="dashed" ];
648                 _vtkInteractorStyleBaseView             -> _vtkInteractorScrollZ                [ arrowhead="open", style="dashed" ];
649                 _vtkInteractorStyleSphere               -> _InteractorStyleMaracas              [ arrowhead="onormal"                      ];
650                 _vtkInteractorStyleMPRView              -> _InteractorStyleMaracas              [ arrowhead="onormal"                      ];
651                 _vtkInteractorStylePlane2D              -> _InteractorStyleMaracas              [ arrowhead="onormal"                      ];
652                 _vtkInteractorStyle3DView               -> _InteractorStyleMaracas              [ arrowhead="onormal"                      ];
653
654
655                 _vtkInteractorStyleBaseView2D   -> _vtkInteractorStyleBaseView  [ arrowhead="onormal"                      ];
656                 _vtkInteractorStyleBaseView3D   -> _vtkInteractorStyleBaseView  [ arrowhead="onormal"                      ];
657
658
659             _InteractorStyleMaracas             ->  _vtkInteractorStyleBaseView         [ arrowhead="open", style="dashed"      ];
660             _vtkInteractorStyleBaseView ->  _InteractorStyleMaracas                     [ arrowhead="open", style="dashed"      ];
661
662
663                 _vtkInteractorScrollZ           -> _InteractorStyleMaracas                      [ arrowhead="onormal"                      ];
664
665
666
667                 _wxManualTree_MPRWidget         -> _wxMPRWidget2                                        [ arrowhead="open", style="dashed" ];
668                 _wxManualTree_MPRWidget         -> _wxVtkClipping3DView                         [ arrowhead="open", style="dashed" ];
669                 _wxManualTree_MPRWidget         -> _wxVtk3DBaseView                             [ arrowhead="open", style="dashed" ];
670                 _wxManualTree_MPRWidget         -> _wxVtkMPR3DView                                      [ arrowhead="open", style="dashed" ];
671                 _wxManualTree_MPRWidget         -> _manualContourModel                          [ arrowhead="open", style="dashed" ];
672                 _wxManualTree_MPRWidget         -> _manualContour3VControler            [ arrowhead="open", style="dashed" ];
673                 _wxManualTree_MPRWidget         -> _manualContour3V3DControler          [ arrowhead="open", style="dashed" ];
674
675
676
677                 _manualContourBaseControler             ->      _InteractorStyleMaracas                 [ arrowhead="onormal"                           ];
678                 _manualContourBaseControler             ->      _manualContourModel                             [ arrowhead="open", style="dashed"      ];
679             _manualContourBaseControler         ->      _manualViewBaseContour                  [ arrowhead="open", style="dashed"      ];
680             _manualContourControler                     ->      _manualContourBaseControler             [ arrowhead="onormal"                           ];
681             _manualContour3VControler           ->      _manualContourControler                 [ arrowhead="onormal"                           ];
682             _manualContour3DControler           ->      _manualContourControler                 [ arrowhead="onormal"                           ];
683             _manualContour3V3DControler         ->      _manualContour3DControler               [ arrowhead="onormal"                           ];
684                 _manualContour3V3DControler             ->      _manualContour3VControler               [ arrowhead="open", style="dashed"      ];
685                 _manualContourPerpPlaneControler->      _manualContourControler                 [ arrowhead="onormal"                           ];
686                 _manualRoiControler                             ->      _manualContourBaseControler             [ arrowhead="onormal"                           ];
687             _manualViewBaseContour                      ->      _manualContourModel                             [ arrowhead="open", style="dashed"      ];
688                 _manualViewBaseContour                  ->      _manualViewPoint                                [ arrowhead="open", style="dashed"      ];
689                 _manualViewBaseContour                  ->      _wxVtkBaseView                                  [ arrowhead="open", style="dashed"      ];
690
691                 _manualContourModel                             ->      _manualPoint                                    [ arrowhead="open", style="dashed"      ];
692                 _manualViewContour                              ->      _manualViewBaseContour                  [ arrowhead="onormal"                           ];
693                 _manualView3VContour                    ->      _manualViewContour                              [ arrowhead="onormal"                           ];
694                 _manualView3DContour                    ->      _manualViewContour                              [ arrowhead="onormal"                           ];
695                 _manualViewPerpPlaneContour             ->      _manualViewContour                              [ arrowhead="onormal"                           ];
696                 _manualViewRoi                                  ->      _manualViewBaseContour                  [ arrowhead="onormal"                           ];
697                 _manualInteractorWindowLevel    ->      _InteractorStyleMaracas                 [ arrowhead="onormal"                           ];
698
699
700           _wxVtkMPR3DView                               -> _wxVtk3DBaseView                                     [ arrowhead="open", style="dashed"      ];
701           _wxVtkMPR3DView                               -> _vtkMPR3DDataViewer                          [ arrowhead="open", style="dashed"      ];
702           _wxVtkMPR3DView                               -> _wxVtkMPR3DViewCntrlPanel            [ arrowhead="open", style="dashed"      ];
703           _wxVtkMPR3DView                               -> _vtkmyPWCallback_3DPointWidget       [ arrowhead="open", style="dashed" ];
704           _vtkmyPWCallback_3DPointWidget-> _wxVtkMPR3DView                                      [ arrowhead="open", style="dashed" ];
705
706           _wxVtk3DBaseView                      -> _wxVtkBaseView                                               [ arrowhead="onormal"                           ];
707
708           _wxEmptyPanelWidget_2         -> _wxVtk3DBaseView                                             [ arrowhead="open", style="dashed"      ];
709           _wxEmptyPanelWidget_2         -> _axisExtractor                                               [ arrowhead="open", style="dashed"      color=red];
710           _wxEmptyPanelWidget_2         -> _axisExtractor02                                             [ arrowhead="open", style="dashed"      color=red];
711           _wxEmptyPanelWidget_2         -> _marInterface                                                [ arrowhead="open", style="dashed"      ];
712           _wxEmptyPanelWidget_2         -> _wxSurfaceWidget                                             [ arrowhead="open", style="dashed"      ];
713           _wxEmptyPanelWidget_2         -> _TreeExtraction_MH_JFC                               [ arrowhead="open", style="dashed"      ];
714           _TreeExtraction_MH_JFC        -> _carotidaBifurcacion                                 [ arrowhead="open", style="dashed"      ];
715
716           _vtk3DSurfaceSTLWidget        -> _wxVTKRenderWindowInteractor                 [ arrowhead="onormal"                      ];
717           _vtk3DSurfaceSTLWidget        -> _marInterface                                                [ arrowhead="open", style="dashed" ];
718           _vtk3DSurfaceSTLWidget        -> _vtkInteractorStyleCutter                    [ arrowhead="open", style="dashed" ];
719           _vtk3DSurfaceSTLWidget        -> _vtkImagePolyDataSeedConnectivity    [ arrowhead="open", style="dashed" ];
720
721           _marZoomROIObserver           ->      _wxImageViewerWidget                    [ arrowhead="open", style="dashed"  ];
722           _wxImageViewerWidget          ->      _marZoomROIObserver                             [ arrowhead="open", style="dashed"  ];
723           _wxImageViewerWidget          ->      _manualContourModel                             [ arrowhead="open", style="dashed"  ];
724           _wxImageViewerWidget          ->      _manualViewContour                              [ arrowhead="open", style="dashed"  ];
725           _wxImageViewerWidget          ->      _manualContourControler             [ arrowhead="open", style="dashed"  ];
726           _wxImageViewerWidget          ->      _vtkInteractorStyle2DMaracas    [ arrowhead="open", style="dashed"  ];
727           _wxImageViewerWidget          ->      _wxVTKRenderWindowInteractorEditContour [ arrowhead="open", style="dashed"  ];
728           _wxImageViewerWidget          ->      _InterfaceVtkPanelWidgets               [ arrowhead="open", style="dashed"  ];
729
730
731           _vtk2DQuantSliceWidget        ->      _wxImageViewerWidget                    [ arrowhead="onormal"                           ];
732
733           _wxVTKRenderWindowInteractorEditContour       ->      _wxVTKRenderWindowInteractor    [ arrowhead="onormal"                           ];
734
735           _wxQuantificationWidget_base  -> _InterfaceVtkPanelWidgets                    [ arrowhead="onormal"                       ];
736           _wxQuantificationWidget               -> _wxQuantificationWidget_base                 [ arrowhead="onormal"                       ];
737           _wxQuantificationWidgetCT             -> _wxQuantificationWidget_base                 [ arrowhead="onormal"                       ];
738
739       _wxMaracasQuantification          -> _marInterface                                                [ arrowhead="open", style="dashed" ];
740       _wxMaracasQuantification          -> _wxQuantificationWidget                              [ arrowhead="open", style="dashed" ];
741       _wxQuantificationWidget           -> _vtk2DQuantSliceWidget                               [ arrowhead="open", style="dashed" ];
742       _wxQuantificationWidget           -> _marInterface                                                [ arrowhead="open", style="dashed" ];
743       _wxQuantificationWidget           -> _wxPanelControlsHealthySickSlice2    [ arrowhead="open", style="dashed" ];
744       _wxQuantificationWidget           -> _vtk3DQuantSurfaceWidget                     [ arrowhead="open", style="dashed" ];
745
746       _wxMaracasQuantificationCT        -> _marInterfaceCT                                              [ arrowhead="open", style="dashed" ];
747       _wxMaracasQuantificationCT        -> _wxQuantificationWidgetCT                    [ arrowhead="open", style="dashed" ];
748       _wxQuantificationWidgetCT         -> _vtk2DQuantSliceWidget                               [ arrowhead="open", style="dashed" ];
749       _wxQuantificationWidgetCT         -> _marInterfaceCT                                              [ arrowhead="open", style="dashed" ];
750       _wxQuantificationWidgetCT         -> _wxPanelControlsHealthySickSlice2    [ arrowhead="open", style="dashed" ];
751       _wxQuantificationWidgetCT         -> _vtk3DQuantSurfaceWidget                     [ arrowhead="open", style="dashed" ];
752
753
754   
755            _vtk3DQuantSurfaceWidget             -> _vtk3DSurfaceWidget                                  [ arrowhead="onormal"                      ];
756            _vtk3DQuantSurfaceWidget             -> _RectangleGuideVtk                                   [ arrowhead="open", style="dashed" ];
757         
758
759                 _vtkMPRBaseData                         -> _vtkBaseData                                                 [ arrowhead="onormal"                      ];
760
761                 _wxMaracasMPR                           ->      _wxMPRWidget                                            [ arrowhead="open", style="dashed" ];
762                 _wxMPRWidget2                           ->      _wxMPRWidget                                            [ arrowhead="onormal"                      ];
763                 _wxMPRWidget                            ->      _wxWidgetMesure2D_Plane_in_MPR          [ arrowhead="open", style="dashed" ];
764                 _wxMPRWidget                            ->      _wxVtkMPR2DView                                         [ arrowhead="open", style="dashed" ];
765                 _wxMPRWidget                            ->      _wxSphereView                                           [ arrowhead="open", style="dashed" ];
766                 _wxMPRWidget                            ->      _vtkMPRBaseData                                         [ arrowhead="open", style="dashed" ];
767                 _wxMPRWidget                            ->      _wxVtkMPR3DView                                         [ arrowhead="open", style="dashed" ];
768                 _wxMPRWidget                            ->      _wxVtk3DBaseView                                        [ arrowhead="open", style="dashed" ];
769
770
771                 _wxMaracas_N_ViewersWidget      ->      _wxMaracas_ViewerWidget                         [ arrowhead="open", style="dashed" ];
772                 _wxMaracas_ViewerWidget         ->      _vtkMPRBaseData                                         [ arrowhead="open", style="dashed" ];
773                 _wxMaracas_ViewerWidget         ->      _wxVtk2DBaseView                                        [ arrowhead="open", style="dashed" ];
774                 _wxMaracas_ViewerWidget         ->      _wxVtkMPR2DView                                         [ arrowhead="open", style="dashed" ];
775                 _wxMaracas_ViewerWidget         ->      _wxWidgetMesure2D_Plane_in_MPR          [ arrowhead="open", style="dashed" ];
776                 _wxMaracas_ViewerWidget         ->      _vtkPlane2DView                                         [ arrowhead="open", style="dashed" ];
777                 _wxMaracas_ViewerWidget         ->      _wxVtkClipping3DView                            [ arrowhead="open", style="dashed" ];
778                 _wxMaracas_ViewerWidget         ->      _wxVtk3DBaseView                                        [ arrowhead="open", style="dashed" ];
779                 _wxMaracas_ViewerWidget         ->      _wxVtkMPR3DView                                         [ arrowhead="open", style="dashed" ];
780                 _wxMaracas_ViewerWidget         ->      _wxSphereView                                           [ arrowhead="open", style="dashed" ];
781
782
783
784                 _vtkMPR3DDataViewer                     ->      _vtkMPRBaseData                                         [ arrowhead="open", style="dashed" ];
785                 _wxVtkMPR3DViewCntrlPanel       ->      _wxVtkMPR3DView                                         [ arrowhead="open", style="dashed" ];
786                 
787
788                 _wxVtkClipping3DView                    ->      _wxVtk3DBaseView                                [ arrowhead="open", style="dashed" ];
789                 _wxMPRWidget                                    ->      _wxVtkClipping3DView                    [ arrowhead="open", style="dashed" ];
790                 _wxVtkClipping3DView                    ->      _vtkClipping3DDataViewer                [ arrowhead="open", style="dashed" ];
791                 _vtkClipping3DDataViewer                ->  _boxSurfaceObserver                         [ arrowhead="open", style="dashed" ];
792                 _vtkClipping3DDataViewer                ->  _boxVolumeObserver                          [ arrowhead="open", style="dashed" ];
793                 _vtkClipping3DDataViewer                ->      _vtkMPRBaseData                                 [ arrowhead="open", style="dashed" ];
794                 _wxVtkClipping3DViewCntrlPanel  ->      _wxVtkClipping3DView                    [ arrowhead="open", style="dashed" ];
795                 _wxVtkClipping3DView                    ->      _wxVtkClipping3DViewCntrlPanel  [ arrowhead="open", style="dashed" ];
796           
797                 _LoadRangeImage                 -> _InterfaceVtkPanelWidgets    [ arrowhead="onormal"                      ];
798                 _LoadRangeImage                 -> _wxImageViewerWidget                 [ arrowhead="open", style="dashed" ];
799                 _LoadRangeImage                 -> _marFilesBase                                [ arrowhead="open", style="dashed" ];
800                 _LoadRangeImage                 -> _PriorityLoadImageBar                [ arrowhead="open", style="dashed" ];
801                 _PriorityLoadImageBar   -> _PriorityLoop                                [ arrowhead="onormal"                      ];
802                 _PriorityLoadImageBar   -> _marGdcmDicom                                [ arrowhead="open", style="dashed" ];
803                 _PriorityLoadImageBar   -> _BarLoading                                  [ arrowhead="open", style="dashed" ];
804                 _LoadRangeImage                 -> _BarLoading                                  [ arrowhead="open", style="dashed" ];   
805                 _LoadRangeImage                 -> _BarRange                                    [ arrowhead="open", style="dashed" ];
806                 _LoadRangeImage                 -> _MyThread                                    [ arrowhead="open", style="dashed" ];
807                 _MyThread                               -> _AdminThreadEED                              [ arrowhead="open", style="dashed" ];
808                 _LoadRangeImage                 -> _AdminThreadEED                              [ arrowhead="open", style="dashed" ];
809
810
811           _vtkInfoTextImageInteractor           -> _InteractorStyleMaracas                      [ arrowhead="onormal"                      ];
812           _vtkInfoTextImageInteractor           -> _vtkInfoTextImage                            [ arrowhead="open", style="dashed" ];
813           _vtkInfoTextImage                                     -> _wxVtk2DBaseView                                     [ arrowhead="open", style="dashed" ];
814           _wxVtk2DBaseView                                      -> _vtkInfoTextImage                            [ arrowhead="open", style="dashed" ];
815           _wxVtk2DBaseView                                      -> _vtkInfoTextImageInteractor          [ arrowhead="open", style="dashed" ];
816           
817           _vtkInfoTextImageInteractorPlane2D-> _vtkInfoTextImageInteractor              [ arrowhead="onormal"                      ];
818
819
820       _marInterfaceCT                   -> _marExperimentCT                     [ arrowhead="open", style="dashed" ];
821           _marInterfaceCT                       -> _marFilesBase                                [ arrowhead="open", style="dashed" ];
822           _marInterfaceCT                       -> _marParameters                               [ arrowhead="open", style="dashed" ];
823           _marInterfaceCT                       -> _marExperiment                               [ arrowhead="open", style="dashed" ];
824           _marAxisCT                            -> _marIsocontour                               [ arrowhead="open", style="dashed" ];
825           _marIsocontour                        -> _marPoint                                    [ arrowhead="open", style="dashed" ];
826           _marAxis                                      -> _marAxisContours                             [ arrowhead="open", style="dashed" ];
827           _marAxisContours                      -> _marContourVO                                [ arrowhead="open", style="dashed" ];
828           _marExperimentCT                      -> _marExperiment                               [ arrowhead="onormal"                      ];
829           _marAxisCT                            -> _marAxis                                             [ arrowhead="onormal"                      ];
830
831           
832           _vtk3DSurfaceWidget           -> _marInterfaceCT                              [ arrowhead="open", style="dashed" ];
833           _wxQuantificationWidgetCT     -> _ContourView                                 [ arrowhead="open", style="dashed" ];
834           _wxQuantificationWidgetCT     -> _PointView                                   [ arrowhead="open", style="dashed" ];
835           _wxQuantificationWidgetCT     -> _LineView                                    [ arrowhead="open", style="dashed" ];
836           _wxQuantificationWidgetCT     -> _manualViewContour                   [ arrowhead="open", style="dashed" ];
837           _wxQuantificationWidgetCT     -> _manualViewContour                   [ arrowhead="open", style="dashed" ];
838           _wxQuantificationWidgetCT     -> _manualContourModel                  [ arrowhead="open", style="dashed" ];
839           _wxQuantificationWidgetCT     -> _manualContourModel                  [ arrowhead="open", style="dashed" ];
840           _wxQuantificationWidgetCT     -> _manualContourControler              [ arrowhead="open", style="dashed" ];
841           _wxQuantificationWidgetCT     -> _manualContourControler              [ arrowhead="open", style="dashed" ];
842           _ContourView                          -> _wxVtkBaseView                               [ arrowhead="open", style="dashed" ];
843           _PointView                            -> _wxVtkBaseView                               [ arrowhead="open", style="dashed" ];
844           _LineView                                     -> _wxVtkBaseView                               [ arrowhead="open", style="dashed" ];
845   
846
847           _figureCuttingCubeModel                       -> _figureCuttingModel                                  [ arrowhead="onormal"                      ];
848           _figureCuttingCylinderModel           -> _figureCuttingModel                                  [ arrowhead="onormal"                      ];
849           _figureCuttingSphereModel                     -> _figureCuttingModel                                  [ arrowhead="onormal"                      ];
850           _wxPanelCuttingImageData                      -> _wxVtk3DBaseView                                     [ arrowhead="open", style="dashed" ];
851           _wxPanelCuttingImageData                      -> _figureCuttingModel                                  [ arrowhead="open", style="dashed" ];
852           _wxPanelCuttingImageData                      -> _figureCuttingCubeModel                              [ arrowhead="open", style="dashed" ];
853           _wxPanelCuttingImageData                      -> _figureCuttingCylinderModel                  [ arrowhead="open", style="dashed" ];
854           _wxPanelCuttingImageData                      -> _figureCuttingSphereModel                    [ arrowhead="open", style="dashed" ];
855           _wxMPRWidget                                          -> _wxPanelCuttingImageData                             [ arrowhead="open", style="dashed" ];
856
857
858           _wxWidgetMesure2D_Plane                       -> _wxWidgetMesure2D                                    [ arrowhead="onormal"                      ];
859           _wxWidgetMesure2D_Plane_in_MPR        -> _wxWidgetMesure2D_Plane                              [ arrowhead="onormal"                      ];
860           _wxWidgetMesure2D                                     -> _manualContourControler                              [ arrowhead="open", style="dashed" ];
861           _wxWidgetMesure2D                                     -> _manualViewContour                                   [ arrowhead="open", style="dashed" ];
862           _wxWidgetMesure2D                                     -> _manualContourModel                                  [ arrowhead="open", style="dashed" ];
863           _wxWidgetMesure2D                                     -> _wxVtk2DBaseView                                     [ arrowhead="open", style="dashed" ];
864           _wxWidgetMesure2D_Plane_in_MPR        -> _vtkPlane2DView                                              [ arrowhead="open", style="dashed" ];
865                   
866           
867 subgraph cluster1 {
868         style=filled;
869         color=lightgrey;
870         label = "ILPD - Interface List Patient Dicom";
871
872         subgraph subgraph_ILPD_003 {
873                 rank = "same";
874                 _ILPDViewListPatient            [ label="ILPDViewListPatient "          URL="\ref ILPDViewListPatient"];
875                 _ILPDViewWxWindow                       [ label="ILPDViewWxWindow "                     URL="\ref ILPDViewWxWindow "];
876                 _ILPDViewMFC                            [ label="ILPDViewMFC "                          URL="\ref ILPDViewMFC "];
877         }               
878
879                 _ILPDBaseView                           [ label="ILPDBaseView "                         URL="\ref ILPDBaseView "];
880                 _wxILPD                                         [ label="wxILPD "                                       URL="\ref wxILPD "];
881                 _mfcILPD                                        [ label="mfcILPD "                                      URL="\ref mfcILPD "];
882                 _ILPD_MySQL                             [ label="ILPD_MySQL "                           URL="\ref ILPD_MySQL "];
883
884         subgraph subgraph_ILPD_004 {
885                 rank = "same";
886                 _ILPDBaseModel                          [ label="ILPDBaseModel "                        URL="\ref ILPDBaseModel "];
887                 _ILPDBaseDB                             [ label="ILPDBaseDB "                           URL="\ref ILPDBaseDB "];
888         }
889
890                 _MySql                                          [ label="MySql "                                        URL="\ref MySql "];
891                 _ILPD_Oracle                            [ label="ILPD_Oracle "                          URL="\ref ILPD_Oracle "];
892                 _Oracle                                         [ label="Oracle "                                       URL="\ref Oracle "];
893                 _ILPDLectureLoic                        [ label="ILPDLectureLoic "                      URL="\ref ILPDLectureLoic "];
894                 _ILPDLectureGDCM                        [ label="ILPDLectureGDCM "                      URL="\ref ILPDLectureGDCM "];
895                 _GDCM                                           [ label="GDCM "                                         URL="\ref GDCM "];
896                 _Loic                                           [ label="Loic "                                         URL="\ref Loic "];
897
898         subgraph subgraph_ILPD_005 {
899                 rank = "same";
900                 _ILPDModel                                      [ label="ILPDModel "                            URL="\ref ILPDModel "];
901                 _ILPDBaseLecture                        [ label="ILPDBaseLecture "                      URL="\ref ILPDBaseLecture "];
902         }
903
904         subgraph subgraph_ILPD_006 {
905                 rank    = "same";
906                 rankdir = "LR";
907                 _ILPDListPatient                        [ label="ILPDListPatient "                      URL="\ref ILPDListPatient "];
908                 _ILPDPatient                            [ label="ILPDPatient"                           URL="\ref ILPDPatient "];
909                 _ILPDStudy                                      [ label="ILPDStudy "                            URL="\ref ILPDStudy "];
910                 _ILPDSeries                                     [ label="ILPDSeries "                           URL="\ref ILPDSeries "];
911                 _ILPDImage                                      [ label="ILPDImage "                            URL="\ref ILPDImage "];
912         }
913                 _ILPDBase                                       [ label="ILPDBase "                                     URL="\ref ILPDBase "];
914
915         subgraph subgraph_ILPD_007 {
916                 rank = "same";
917                 _ILPDNode                                       [ label="ILPDNode "                                     URL="\ref ILPDNode "];
918                 _ILPDControlNode                        [ label="ILPDControlNode "                      URL="\ref ILPDControlNode "];
919         }
920                 _ILPDControler                          [ label="ILPDControler "                        URL="\ref ILPDControler"];      
921
922
923         _ILPD_MySQL                     -> _ILPDBaseDB                          [ arrowhead="onormal"                              ];
924         _ILPDBaseModel                  -> _ILPDBaseDB                          [ arrowhead="open"      style="dashed"     ];
925
926         _ILPD_MySQL                     -> _MySql                                       [ arrowhead="open"      style="dashed"     ];
927         _ILPD_Oracle                    -> _Oracle                                      [ arrowhead="open"      style="dashed"     ];
928         _ILPD_Oracle                    -> _ILPDBaseDB                          [ arrowhead="onormal"                              ];
929         _ILPDLectureGDCM                -> _GDCM                                        [ arrowhead="open"      style="dashed"     ];
930         _ILPDLectureLoic                -> _Loic                                        [ arrowhead="open"      style="dashed"     ];
931         _ILPDLectureGDCM                -> _ILPDBaseLecture                     [ arrowhead="onormal"                              ];
932         _ILPDLectureLoic                -> _ILPDBaseLecture                     [ arrowhead="onormal"                              ];
933         _ILPDModel                              -> _ILPDBaseModel                       [ arrowhead="onormal"                              ];
934         _ILPDModel                              -> _ILPDBaseLecture                     [ arrowhead="open"      style="dashed"     ];
935         
936         _ILPDBaseModel                  -> _ILPDListPatient                     [ arrowhead="open", style="dashed" ];
937         _ILPDListPatient                -> _ILPDBase                            [ arrowhead="onormal"                      ];
938         _ILPDPatient                    -> _ILPDBase                            [ arrowhead="onormal"                      ];
939         _ILPDStudy                              -> _ILPDBase                            [ arrowhead="onormal"                      ];
940         _ILPDSeries                             -> _ILPDBase                            [ arrowhead="onormal"                      ];
941         _ILPDImage                              -> _ILPDBase                            [ arrowhead="onormal"                      ];
942         _ILPDBase                               -> _ILPDBase                            [ arrowhead="open", style="dashed" ];
943         _ILPDNode                               -> _ILPDBase                            [ arrowhead="open", style="dashed" ];
944         _ILPDNode                               -> _ILPDNode                            [ arrowhead="open", style="dashed" ];
945         _ILPDControlNode                -> _ILPDNode                            [ arrowhead="open", style="dashed" ];
946         _ILPDBaseView                   -> _ILPDControlNode                     [ arrowhead="open", style="dashed" ];
947
948         _ILPDControler                  -> _ILPDBaseView                        [ arrowhead="open", style="dashed" ];
949         _ILPDControler                  -> _ILPDModel                           [ arrowhead="open", style="dashed" ];
950         _ILPDBaseView                   -> _ILPDControler                       [ arrowhead="open", style="dashed" ];
951         _ILPDViewWxWindow               -> _ILPDBaseView                        [ arrowhead="onormal"                      ];
952         _ILPDViewMFC                    -> _ILPDBaseView                        [ arrowhead="onormal"                      ];
953         _ILPDViewWxWindow               -> _wxILPD                                      [ arrowhead="open", style="dashed" ];
954         _ILPDViewMFC                    -> _mfcILPD                                     [ arrowhead="open", style="dashed" ];
955         _wxILPD                                 -> _ILPDBaseView                        [ arrowhead="open", style="dashed" ];
956         _mfcILPD                                -> _ILPDBaseView                        [ arrowhead="open", style="dashed" ];
957         _ILPDViewListPatient    -> _ILPDModel                           [ arrowhead="open", style="dashed" ];
958         _ILPDViewListPatient    -> _ILPDControler                       [ arrowhead="open", style="dashed" ];
959         _ILPDViewListPatient    -> _ILPDBaseView                        [ arrowhead="open", style="dashed" ];
960  }
961
962
963 }
964   \enddot
965
966
967
968  \section install Installation
969
970  \subsection step1 Step 1: Opening the box
971
972  etc...
973 */
974
975 // ----------------------------------------------------------------------------
976 // wx headers
977 // ----------------------------------------------------------------------------
978 #include "wx/wxprec.h"
979
980 #ifndef WX_PRECOMP
981 #   include <wx/wx.h>
982 #endif
983
984 // ----------------------------------------------------------------------------
985 // Local headers
986 // ----------------------------------------------------------------------------
987 #include "wxMaracasApp.h"
988 #include "wxMaracasFrame.h"
989 #include <wx/log.h>
990
991
992 #ifdef __WXGTK__
993 # include <locale.h>
994 #endif
995
996 // ----------------------------------------------------------------------------
997 // This macro implements the entry point (main function) for the application
998 // ----------------------------------------------------------------------------
999 IMPLEMENT_APP( wxMaracasApp );
1000
1001 // ----------------------------------------------------------------------------
1002 // The `main program' equivalent, creating the windows and returning the
1003 // main frame
1004 bool wxMaracasApp::OnInit( )
1005 {
1006 #ifdef __WXGTK__
1007         //See http://www.wxwindows.org/faqgtk.htm#locale
1008         setlocale(LC_NUMERIC, "C");
1009 #endif
1010
1011
1012 // PS -> #ifndef DXMM
1013 // PS ->        // GO !
1014 // PS ->        SetExitOnFrameDelete(true);
1015 // PS ->        m_pFrame->Show( true );
1016 // PS -> #else
1017         SetExitOnFrameDelete(false);
1018 // PS -> #endif
1019
1020         return( true );
1021 }
1022 // ----------------------------------------------------------------------------
1023 int wxMaracasApp::OnExit(){
1024         if (Initialized())
1025         {
1026                 initialized=false;
1027 //              delete  _mar;
1028                 m_pFrame->Destroy();
1029         }
1030         ProcessIdle();
1031
1032 //EEDxx2.4 DEBuG
1033 //      wxLogDebug("----------- Exiting application");
1034 //      wxLogDebug("---------------------------------------------------");
1035
1036         return true;
1037 }
1038
1039 // ----------------------------------------------------------------------------
1040 void wxMaracasApp::Run(){
1041
1042         m_pFrame->Show( true );
1043         wxCommandEvent cmdEvt=wxCommandEvent();
1044         m_pFrame->OnStartExperiment(cmdEvt);
1045         m_pFrame->Maximize(true);
1046
1047 //EEDxx2.4 DEBuG
1048 //      wxLogDebug("----------- Running application");
1049 }
1050
1051 // ----------------------------------------------------------------------------
1052 void wxMaracasApp::Reset(){
1053         // TODO : we can make it more nicely
1054 //EEDxx2.4 DEBuG
1055 //      wxLogDebug("---------------------------------------------------");
1056 //      wxLogDebug("----------- Reseting application");
1057 //      wxLogDebug("---------------------------------------------------");
1058         //OnExit();
1059 //      OnInit();
1060         Initialize();
1061 }
1062
1063 // ----------------------------------------------------------------------------
1064 void wxMaracasApp::Initialize(){
1065 #ifdef __WXDEBUG__
1066         //static wxLogWindow * myLogWindow=new wxLogWindow(NULL,"Log Window",false,false);
1067         static wxLogWindow * myLogWindow=new wxLogWindow(NULL,"Log Window",true,false);
1068         wxLog::SetActiveTarget(myLogWindow);
1069         myLogWindow->ClearTraceMasks();
1070 #endif
1071 //EEDxx2.4 DEBuG
1072 //      wxLogDebug("---------------------------------------------------");
1073 //      wxLogDebug("----------- Initialising application");
1074
1075
1076         int nSize=_MAX_PATH;
1077         LPTSTR lpFilename=(LPTSTR) (new char[nSize]);
1078         GetModuleFileName(NULL,lpFilename,nSize);
1079         
1080         wxString moduleFileName(lpFilename);
1081
1082         wxString paramFileName=moduleFileName.BeforeLast('\\')
1083                 +wxString('\\')
1084                 +wxString(MAR_DEFAULT_FILE_PARAMETERS);
1085
1086         wxString dictionaryFileName=moduleFileName.BeforeLast('\\')
1087                 +wxString('\\')
1088                 +wxString(MAR_DEFAULT_FILE_DICTIONARY);
1089
1090         // Initialize MARACAS
1091
1092
1093         _mar = new marInterface();
1094         _mar->SetParamFileName(paramFileName.c_str());
1095         _mar->loadParameters();
1096         _marSimpleDicom = new marSimpleDicom( _mar->_parameters );
1097         _mar->SetDicom(_marSimpleDicom);
1098
1099
1100
1101         // Create the main frame window
1102         m_pFrame = new wxMaracasFrame( ( wxFrame* )NULL,  -1 , _mar , _marSimpleDicom ,(const char*)dictionaryFileName.mb_str());
1103
1104                 
1105         m_pFrame->Maximize( );
1106         this->SetTopWindow( m_pFrame );
1107         _mar->saveParameters( );
1108
1109         initialized=true;
1110         SetExitOnFrameDelete(false);
1111 }
1112
1113 // ----------------------------------------------------------------------------
1114 bool wxMaracasApp::Initialized(){
1115         return initialized;
1116 }
1117 // PS -> #endif
1118
1119 void wxMaracasApp::ShowFrame(int cmdShow)
1120 {
1121 //EEDxx2.4 DEBuG
1122 //      wxLogDebug("----------- Show Frame");
1123         if (Initialized())
1124         {
1125                 if ( SHOW_WINDOW_MINIMIZED == cmdShow )
1126                 {
1127                         m_pFrame->Iconize();
1128                 }
1129                 else if ( SHOW_WINDOW_RESTORE == cmdShow )
1130                 {
1131                         m_pFrame->Maximize(false);
1132                         m_pFrame->Raise();
1133                 }
1134                 else if (SW_NORMAL == cmdShow )
1135                 {
1136                         m_pFrame->Raise();
1137                 }
1138                 else if ( SHOW_WINDOW_MAXIMIZED == cmdShow )
1139                 {
1140                         m_pFrame->Maximize(true);
1141                         m_pFrame->Raise();
1142                 }
1143                 else
1144                 {
1145                         m_pFrame->Raise();
1146                 }
1147         }
1148 }
1149
1150
1151 void wxMaracasApp::SetVolumeData(int dimX, int dimY, int dimZ, 
1152                                                                  float spacingX,float spacingY, float spacingZ, 
1153                                                                  float rescaleSlope, float rescaleIntercept,
1154                                                                  unsigned short *pixels)
1155 {
1156         if (Initialized())
1157         {
1158                 _marSimpleDicom->SetInvestSliceOrder( _mar->_parameters->getInvestSliceOrder() );
1159                 _marSimpleDicom->SetVolumeData(dimX, dimY, dimZ,
1160                                                                            spacingX, spacingY, spacingZ,
1161                                                                            rescaleSlope, rescaleIntercept,
1162                                                                            pixels);
1163         }
1164 }
1165
1166 wxBitmap*       wxMaracasApp::GetSnapshot(){
1167         wxWindowDC *wxwindc = new wxWindowDC(m_pFrame);
1168         wxCoord w, h;
1169         wxwindc->GetSize(&w, &h);
1170         wxBitmap *wxbitmap      = new wxBitmap(w, h);
1171
1172         wxMemoryDC *wxmemorydc = new wxMemoryDC();
1173         wxmemorydc->SelectObject(*wxbitmap);
1174         wxmemorydc->Blit(0,0,w,h,wxwindc,0,0);
1175
1176         delete wxwindc;
1177         delete wxmemorydc;
1178
1179         return wxbitmap;
1180 }