Method: DICOM::DClient#find_series
- Defined in:
- lib/dicom/d_client.rb
#find_series(query_params = {}) ⇒ Object
Note:
Caution: Calling this method without parameters will instruct your PACS to return info on ALL series in the database!
Queries a service class provider for series that match the specified criteria.
Instance level attributes for this query:
-
‘0008,0060’ (Modality)
-
‘0020,000E’ (Series Instance UID)
-
‘0020,0011’ (Series Number)
In addition to the above listed attributes, a number of “optional” attributes may be specified. For a general list of optional object instance level attributes, please refer to the DICOM standard, PS3.4 C.6.1.1.4, Table C.6-3.
177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 |
# File 'lib/dicom/d_client.rb', line 177 def find_series(query_params={}) # Study Root Query/Retrieve Information Model - FIND: set_default_presentation_context("1.2.840.10008.5.1.4.1.2.2.1") # Every query attribute with a value != nil (required) will be sent in the dicom query. # The query parameters with nil-value (optional) are left out unless specified. default_query_params = { "0008,0052" => "SERIES", # Query/Retrieve Level: "SERIES" "0008,0060" => "", # Modality "0020,000E" => "", # Series Instance UID "0020,0011" => "" # Series Number } # Raising an error if a non-tag query attribute is used: query_params.keys.each do |tag| raise ArgumentError, "The supplied tag (#{tag}) is not valid. It must be a string of the form 'GGGG,EEEE'." unless tag.is_a?(String) && tag.tag? end # Set up the query parameters and carry out the C-FIND: set_data_elements(default_query_params.merge(query_params)) perform_find return @data_results end |