############################################################################ # # Program: GDCM (Grassroots DICOM). A DICOM library # # Copyright (c) 2006-2011 Mathieu Malaterre # All rights reserved. # See Copyright.txt or http://gdcm.sourceforge.net/Copyright.html for details. # # This software is distributed WITHOUT ANY WARRANTY; without even # the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR # PURPOSE. See the above copyright notice for more information. # ############################################################################ """ This example shows how one can use the gdcm.CompositeNetworkFunctions class for executing a C-FIND query It will print the list of patient name found Usage: python FindAllPatientName.py """ import gdcm # Patient Name tag = gdcm.Tag(0x10,0x10) de = gdcm.DataElement(tag) # Search all patient name where string match 'F*' de.SetByteStringValue('F*') ds = gdcm.DataSet() ds.Insert(de) cnf = gdcm.CompositeNetworkFunctions() theQuery = cnf.ConstructQuery (gdcm.ePatientRootType,gdcm.ePatient,ds) #print theQuery.ValidateQuery() # prepare the variable for output ret = gdcm.DataSetArrayType() # Execute the C-FIND query cnf.CFind('dicom.example.com',11112,theQuery,ret,'GDCM_PYTHON','ANY-SCP') for i in range(0,ret.size()): print "Patient #",i print ret[i]