def get_studies(self, search_string=None, patient_id=None, modality=None): # Create our Identifier (query) dataset ds = Dataset() for attr in Study.attributes: ds.__setattr__(attr, '') if modality: ds.Modality = modality if patient_id: ds.PatientID = patient_id if search_string: ds.StudyDescription = search_string ds.QueryRetrieveLevel = 'STUDY' identifiers = Scu.c_find(self.connection.host, self.connection.port, ds, self.connection.calling_aet, self.connection.called_aet) studies = [] for identifier in identifiers: study = Study() study.create(identifier, self.connection) studies.append(study) return studies
def get_patient(self, patient_uid): # Create our Identifier (query) dataset ds = Dataset() for attr in Patient.attributes: ds.__setattr__(attr, '') ds.PatientID = patient_uid ds.QueryRetrieveLevel = 'PATIENT' identifiers = Scu.c_find(self.connection.host, self.connection.port, ds, self.connection.calling_aet, self.connection.called_aet) for identifier in identifiers: patient = Patient() patient.create(identifier, self.connection) return patient return None
def get_serie(self, series_uid): # Create our Identifier (query) dataset ds = Dataset() for attr in Series.attributes: ds.__setattr__(attr, '') ds.SeriesInstanceUID = series_uid ds.QueryRetrieveLevel = 'SERIES' identifiers = Scu.c_find(self.connection.host, self.connection.port, ds, self.connection.calling_aet, self.connection.called_aet) for identifier in identifiers: serie = Series() serie.create(identifier, self.connection) return serie return None
def get_study(self, study_uid): # Create our Identifier (query) dataset ds = Dataset() for attr in Study.attributes: ds.__setattr__(attr, '') ds.StudyInstanceUID = study_uid ds.QueryRetrieveLevel = 'STUDY' identifiers = Scu.c_find(self.connection.host, self.connection.port, ds, self.connection.calling_aet, self.connection.called_aet) for identifier in identifiers: study = Study() study.create(identifier, self.connection) return study return None
def get_patients(self, search_string='*', modality=None): # Create our Identifier (query) dataset ds = Dataset() for attr in Patient.attributes: ds.__setattr__(attr, '') if modality: ds.Modality = modality ds.PatientName = search_string ds.QueryRetrieveLevel = 'PATIENT' identifiers = Scu.c_find(self.connection.host, self.connection.port, ds, self.connection.calling_aet, self.connection.called_aet) patients = [] for identifier in identifiers: patient = Patient() patient.create(identifier, self.connection) patients.append(patient) return patients
def get_series(self, study_uid=None, modality=None): # Create our Identifier (query) dataset ds = Dataset() for attr in Series.attributes: ds.__setattr__(attr, '') if study_uid: ds.StudyInstanceUID = study_uid if modality: ds.Modality = modality ds.QueryRetrieveLevel = 'SERIES' identifiers = Scu.c_find(self.connection.host, self.connection.port, ds, self.connection.calling_aet, self.connection.called_aet) series = [] for identifier in identifiers: serie = Series() serie.create(identifier, self.connection) series.append(serie) return series
def c_find(self, ds: Dataset): return Scu.c_find(self.connection.host, self.connection.port, ds, self.connection.calling_aet, self.connection.called_aet)