QtDcm.h
Go to the documentation of this file.
1 /*
2  QtDcm is a C++ Qt based library for communication and conversion of Dicom images.
3  Copyright (C) 2011 Alexandre Abadie <Alexandre.Abadie@univ-rennes1.fr>
4 
5  This library is free software; you can redistribute it and/or
6  modify it under the terms of the GNU Lesser General Public
7  License as published by the Free Software Foundation; either
8  version 2.1 of the License, or (at your option) any later version.
9 
10  This library is distributed in the hope that it will be useful,
11  but WITHOUT ANY WARRANTY; without even the implied warranty of
12  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13  Lesser General Public License for more details.
14 
15  You should have received a copy of the GNU Lesser General Public
16  License along with this library; if not, write to the Free Software
17  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18 */
19 
20 #ifndef QTDCM_H
21 #define QTDCM_H
22 
23 #include "qtdcmExports.h"
24 #include "ui_qtdcm.h"
25 #include <QtGui>
26 
27 class QtDcmPrivate;
28 class QtDcmManager;
29 
36 class QTDCM_EXPORT QtDcm : public QWidget, public Ui::QtDcmWidget
37 {
38  Q_OBJECT
39 
40 public:
41  enum eMode {
42  CD_MODE = 0,
43  PACS_MODE
44  };
45 
46  enum eGender {
47  ALL_GENDER = 0,
49  F_GENDER
50  };
51 
52  enum eModalities {
53  ALL_MODALITIES = 0,
56  PET_MODALITY
57  };
58 
59  explicit QtDcm ( QWidget *parent = 0 );
60  virtual ~QtDcm();
61 
67  QTreeView *patientsTreeView(){return treeWidgetPatients;}
68 
69  QTreeView *studiesTreeView() {return treeWidgetStudies;}
70 
71  QTreeView *seriesTreeView() {return treeWidgetSeries;}
72 
76  void updatePacsComboBox();
77 
81  void editPreferences();
82 
86  void openDicomdir();
87 
88 
89 signals:
90  void serieChecked ( bool checked );
91  void serieSelected ( bool selected );
92 
93 protected slots:
94  void onPacsSearchButtonClicked();
95 
96  void onCurrentModalityChanged ( int index );
97 
98  void onCurrentGenderChanged ( int index );
99 
100  void onCurrentPacsChanged ( int index );
101 
102  void onStartDateChanged ( const QDate & startdate );
103 
104  void onEndDateChanged ( const QDate & enddate );
105 
106  void onPatientItemSelected ( QTreeWidgetItem* current, QTreeWidgetItem* previous );
107 
108  void onStudyItemSelected ( QTreeWidgetItem* current, QTreeWidgetItem* previous );
109 
110  void onSerieItemSelected ( QTreeWidgetItem* current, QTreeWidgetItem* previous );
111 
112  void onSerieItemClicked ( QTreeWidgetItem* current, int index );
113 
114  void onDicomMediaButtonClicked();
115 
116  void onPatientNameTextChanged ( const QString & pName);
117 
118  void onSerieDescriptionTextChanged ( const QString & description );
119 
120  void onStudyDescriptionTextChanged ( const QString & description );
121 
122 protected:
123  void loadPatientsFromDicomdir();
124  void queryPACS();
125  void clearDisplay();
126  void initConnections();
127 
128 private:
129  QtDcmPrivate *d;
130 };
131 
132 #endif
133 
This class is in charge of the different process (dcm2nii), pacs query/retrieve (dcm4chee), temporary directory creation and removing, PACS server settings.
Definition: QtDcmManager.h:44
eModalities
Definition: QtDcm.h:52
eMode
Definition: QtDcm.h:41
QTreeView * studiesTreeView()
Definition: QtDcm.h:69
#define QTDCM_EXPORT
Definition: qtdcmExports.h:11
eGender
Definition: QtDcm.h:46
QTreeView * seriesTreeView()
Definition: QtDcm.h:71
QTreeView * patientsTreeView()
Get the pointer of the treewidget.
Definition: QtDcm.h:67
This class contains the widget for managing Dicom data.
Definition: QtDcm.h:36