![]() |
ImFusion SDK 4.3
|
#include <ImFusion/Dicom/GUI/Scanner.h>
A scanner with Qt interop. More...
A scanner with Qt interop.
WARNING: This class is considered internal, use at your own risk!
Public Member Functions | |
ScannerQt (Dicom::SharedDatasetCache cache) | |
![]() | |
Scanner (Dicom::SharedDatasetCache cache) | |
void | setPacs (DicomPacsCommunication *pacs) |
Sets the PACS instance to use for scanning. | |
void | setDatasetCache (Dicom::SharedDatasetCache cache) |
Dicom::SharedDatasetCache | datasetCache () const |
void | setNumberOfThreads (int threads) |
Sets the number of threads used internally. | |
int | numberOfThreads () const |
void | scanDirectory (const QString &directory, bool recursive, bool useDicomdirOnly, bool checkDicomHeader) |
Scan a directory for Dicom files. | |
void | scanDicomDir (const QString &dicomDirFile) |
Scan a DICOMDIR file. | |
void | scanPacs (const DcmDataset &requestedTags) |
Retrieve patients from a PACS with a C-FIND. | |
void | scanPacs (const QString &patientNameFilter, const QString &studyFilter) |
Retrieve patients from a PACS by requesting the default tags. | |
void | scanPacsSeries (PacsSeriesProxy *psp) |
Retrieve a series from a PACS with a C-MOVE. | |
std::optional< Network::HttpError > | scanWeb (const Filesystem::Url &url) |
Scans a DICOMweb server for patients. | |
void | cancel () |
Cancel any scanning. | |
const std::vector< Patient * > & | patients () const |
Return the patients found by the last scan. | |
std::vector< std::unique_ptr< Patient > > | takePatients () |
Retrieve the patients found by the last scan. | |
Protected Member Functions | |
void | addPatient (Patient *patient) override |
Does not merge the patient but just adds it to the list of patients and emits patientAdded. | |
void | removePacsProxy (PacsSeriesProxy *psp) override |
Only emits pacsProxyRemoved but does not remove the proxy. | |
void | updateProgress (int val, int max) override |
Emits progressRangeChanged. | |
void | updateProgressText (const std::string &text) override |
Emits progressValueChanged. | |
![]() | |
void | scanDicomDirImpl (const QString &dicomDirFile, bool callUpdateProgress) |
QFileInfoList | retrieveFileList (const QDir &directory, bool recursive, bool dicomdirOnly, int depth) |
All these signal are potentially emitted by different threads. Those threads are also <em>not</em> managed by QThread! | |
void | patientAdded () |
void | pacsProxyRemoved (PacsSeriesProxy *) |
void | progressRangeChanged (int min, int max) |
void | progressValueChanged (int value) |
void | progressTextChanged (QString text) |
Additional Inherited Members | |
![]() | |
Dicom::SharedDatasetCache | m_cache |
DicomPacsCommunication * | m_pacs |
std::atomic< bool > | m_wasCancelled |
int | m_numThreads |
Number of threads used internally by scanDirectory. | |
std::mutex | m_patientsLock |
std::vector< Patient * > | m_patients |
|
overrideprotectedvirtual |
Does not merge the patient but just adds it to the list of patients and emits patientAdded.
Reimplemented from Scanner.
|
overrideprotectedvirtual |
Only emits pacsProxyRemoved but does not remove the proxy.
Reimplemented from Scanner.
|
overrideprotectedvirtual |
Emits progressRangeChanged.
Reimplemented from Scanner.
|
overrideprotectedvirtual |
Emits progressValueChanged.
Reimplemented from Scanner.