1 #ifndef __vvQPacsConnection_h_INCLUDED__
2 #define __vvQPacsConnection_h_INCLUDED__
4 #include <QTGUI/QWidget>
5 #include "ui_vvPacsConnection.h"
6 #include "gdcmCompositeNetworkFunctions.h"
7 #include <QtGui/QStandardItemModel.h>
8 #include <QtGui/QStringListModel.h>
10 #include "vvDicomServerQueryFactory.h"
15 //=====================================================================
16 //======================================================================
17 class vvQPacsConnection : public QDialog
21 //vvQPacsConnection(){}
22 vvQPacsConnection(QWidget *parent=0);
24 ~vvQPacsConnection(){}
25 void refreshNetworks();
26 std::vector <std::string> getFileNames();
29 void selectStudies(const QModelIndex &index);
30 void selectSeries(const QModelIndex &index);
31 void selectImages(const QModelIndex &index);
33 void on_scanButton_clicked();
34 void on_clearButton_clicked();
35 void on_optionsButton_clicked();
36 void on_check_ModAll_clicked(bool state);
37 void on_importButton_clicked();
38 void chooseServer(int index);
43 Ui::vvPacsConnection ui;
44 std::vector< std::pair<gdcm::Tag, std::string> > getKeys();
45 std::vector< std::pair<gdcm::Tag, std::string> > getPatientKeys(const std::string );
46 std::vector< std::pair<gdcm::Tag, std::string> > getStudyKeys(const std::string);
47 std::vector< std::pair<gdcm::Tag, std::string> > getSeriesKeys(const std::string i_val);
48 std::vector< std::pair<gdcm::Tag, std::string> > getImageKeys(const std::string i_val);
49 void manageStudiesFilter(bool i_enable);
50 void createTreeView();
52 QStandardItemModel *Patientmodel;
53 QStandardItemModel *Studymodel;
54 QStandardItemModel *Seriesmodel;
55 QStandardItemModel *Imagesmodel;
56 void convertDataSet(std::vector<gdcm::DataSet> i_ds, QStandardItemModel *i_model, std::vector< std::pair<gdcm::Tag, std::string> > keys);
57 void manageSeriesFilter(bool i_enable);
58 std::vector< std::pair<gdcm::Tag, std::string> > fillMoveKeys();
59 std::string m_patient;
62 gdcm::EQueryLevel m_level;
64 std::string m_aetitle;
66 std::string m_nickname;
67 vvDicomServerQueryFactory mquery;
68 gdcm::Directory::FilenamesType m_files;
70 }; // class vvQPacsConnection
71 //=====================================================================
75 #endif // __vvQPacsConnection_h_INCLUDED__