#ifndef __vvDicomServerQueryFactory_h_INCLUDED__ #define __vvDicomServerQueryFactory_h_INCLUDED__ #include "gdcmCompositeNetworkFunctions.h" struct vvQuery{ gdcm::ERootType theRoot; gdcm::EQueryLevel theLevel; std::vector< std::pair > keys; }; class vvDicomServerQueryFactory { public: vvDicomServerQueryFactory(){} ~vvDicomServerQueryFactory(){} gdcm::SmartPointer composeQuerySeries( std::vector< std::pair > keys); gdcm::SmartPointer composeQueryStudy( std::string m_patient); vvQuery getQueryforImages(const std::string patient_id, const std::string study_id, const std::string series_id,bool bdisplay); vvQuery getQueryforSeries(const std::string patient_id, const std::string study_id, bool bdisplay); vvQuery getQueryforStudy(const std::string patient_id, bool bdisplay); vvQuery getQueryPatient(const std::string i_patname, const std::string i_patid); void setQueryforImage(const std::string patient_id, const std::string study_id,const std::string series_id,const std::string image_id); std::vector< std::pair > getQueryKeysforStudy(const std::string patient_id, bool bdisplay); std::vector< std::pair > getPatientKeys(const std::string , const std::string ); std::vector< std::pair > getSeriesKeys(const std::string patient_id, const std::string study_id, bool bdisplay); std::vector< std::pair > getQueryKeysforImages(const std::string patient_id, const std::string study_id, const std::string series_id,bool bdisplay); std::vector< std::pair > getQueryKeysforImage(const std::string patient_id, const std::string study_id, const std::string series_id,const std::string image_id); vvQuery getMoveQuery() { return m_query;} private: vvQuery m_query; }; #endif // __vvDicomServerQueryFactory_h_INCLUDED__