Class: Orthanc::Instance
- Inherits:
-
Object
- Object
- Orthanc::Instance
- Includes:
- Response
- Defined in:
- lib/orthanc/instances.rb
Instance Attribute Summary collapse
-
#base_uri ⇒ Object
Returns the value of attribute base_uri.
Instance Method Summary collapse
-
#anonymize(payload = {}) ⇒ Object
POST /instances/id/anonymize.
- #attachments(id = nil) ⇒ Object
-
#attachments_list ⇒ Object
GET /resourceType/id/attachments.
-
#content ⇒ Object
GET /instances/id/content/.
-
#content_sequence(group, element, index) ⇒ Object
GET /instances/id/content/group-element/index/…
-
#content_tag(group, element) ⇒ Object
GET /instances/id/content/group-element.
-
#delete ⇒ Object
DELETE /instances/id.
-
#export(payload = {}) ⇒ Object
POST /instances/id/export.
-
#fetch ⇒ Object
GET /instances, # GET /instances/id.
-
#file ⇒ Object
GET /instances/id/file.
-
#frame_image_int16(frame_number) ⇒ Object
GET /instances/id/frames/frameNumber/image-int16.
-
#frame_image_uint16(frame_number) ⇒ Object
GET /instances/id/frames/frameNumber/image-uint16.
-
#frame_image_uint8(frame_number) ⇒ Object
GET /instances/id/frames/frameNumber/image-uint8.
-
#frame_matlab(frame_number) ⇒ Object
GET /instances/id/frames/frameNumber/matlab.
-
#frames ⇒ Object
GET /instances/id/frames.
-
#image_int16 ⇒ Object
GET /instances/id/image-int16.
-
#image_uint16 ⇒ Object
GET /instances/id/image-uint16.
-
#image_uint8 ⇒ Object
GET /instances/id/image-uint8.
-
#initialize(id = nil) ⇒ Instance
constructor
A new instance of Instance.
-
#matlab ⇒ Object
GET /instances/id/matlab.
-
#metadata(name = nil) ⇒ Object
As class instances, for method chaining.
-
#metadata_list ⇒ Object
GET /resourceType/id/metadata.
-
#modify(payload = {}) ⇒ Object
POST /instances/id/modify.
-
#module ⇒ Object
GET /instances/id/module.
-
#patient ⇒ Object
GET /instances/id/patient.
-
#preview ⇒ Object
GET /instances/id/preview.
-
#series ⇒ Object
GET /instances/id/series.
-
#simplified_tags(params = {}) ⇒ Object
GET /instances/id/simplified-tags.
-
#statistics ⇒ Object
GET /instances/id/statistics.
-
#study ⇒ Object
GET /instances/id/study.
-
#tags(params = {}) ⇒ Object
GET /instances/id/tags.
Methods included from Response
#bool_to_num, #handle_response, #num_to_bool
Constructor Details
Instance Attribute Details
#base_uri ⇒ Object
Returns the value of attribute base_uri.
4 5 6 |
# File 'lib/orthanc/instances.rb', line 4 def base_uri @base_uri end |
Instance Method Details
#anonymize(payload = {}) ⇒ Object
POST /instances/id/anonymize
22 23 24 |
# File 'lib/orthanc/instances.rb', line 22 def anonymize(payload = {}) # https://code.google.com/p/orthanc/wiki/Anonymization base_uri["anonymize"].post(payload.to_s) end |
#attachments(id = nil) ⇒ Object
154 155 156 157 158 159 160 161 162 163 164 |
# File 'lib/orthanc/instances.rb', line 154 def (id = nil) if id return Attachment.new(base_uri, id) else a = [] handle_response(base_uri["attachments"].get).each do |id| a << Attachment.new(base_uri, id) end return a end end |
#attachments_list ⇒ Object
GET /resourceType/id/attachments
150 151 152 |
# File 'lib/orthanc/instances.rb', line 150 def # Orthanc endpoint response handle_response(base_uri["attachments"].get) end |
#content ⇒ Object
GET /instances/id/content/
27 28 29 |
# File 'lib/orthanc/instances.rb', line 27 def content # List the first-level DICOM tags handle_response(base_uri["frames"].get) end |
#content_sequence(group, element, index) ⇒ Object
GET /instances/id/content/group-element/index/…
37 38 39 |
# File 'lib/orthanc/instances.rb', line 37 def content_sequence(group, element, index) # Raw access to the content of DICOM sequences handle_response(base_uri["content/#{group}-#{element}/#{index}"].get) end |
#content_tag(group, element) ⇒ Object
GET /instances/id/content/group-element
32 33 34 |
# File 'lib/orthanc/instances.rb', line 32 def content_tag(group, element) # Raw access to the value of DICOM tags (comprising the padding character) handle_response(base_uri["content/#{group}-#{element}"].get) end |
#delete ⇒ Object
DELETE /instances/id
17 18 19 |
# File 'lib/orthanc/instances.rb', line 17 def delete handle_response(base_uri.delete) end |
#export(payload = {}) ⇒ Object
POST /instances/id/export
42 43 44 |
# File 'lib/orthanc/instances.rb', line 42 def export(payload = {}) # Write the DICOM file in the filesystem where Orthanc is running base_uri["export"].post(payload) end |
#fetch ⇒ Object
GET /instances, # GET /instances/id
12 13 14 |
# File 'lib/orthanc/instances.rb', line 12 def fetch # Fetch API response handle_response(base_uri.get) end |
#file ⇒ Object
GET /instances/id/file
47 48 49 |
# File 'lib/orthanc/instances.rb', line 47 def file base_uri["file"].get end |
#frame_image_int16(frame_number) ⇒ Object
GET /instances/id/frames/frameNumber/image-int16
57 58 59 |
# File 'lib/orthanc/instances.rb', line 57 def frame_image_int16(frame_number) # Truncated image to the [-32768;32767] range base_uri["frames/#{frame_number}/image-int16"].get end |
#frame_image_uint16(frame_number) ⇒ Object
GET /instances/id/frames/frameNumber/image-uint16
62 63 64 |
# File 'lib/orthanc/instances.rb', line 62 def frame_image_uint16(frame_number) # Truncated image to the [0;65535] range base_uri["frames/#{frame_number}/image-uint16"].get end |
#frame_image_uint8(frame_number) ⇒ Object
GET /instances/id/frames/frameNumber/image-uint8
67 68 69 |
# File 'lib/orthanc/instances.rb', line 67 def frame_image_uint8(frame_number) # Truncated image to the [0;255] range base_uri["frames/#{frame_number}/image-uint8"].get end |
#frame_matlab(frame_number) ⇒ Object
GET /instances/id/frames/frameNumber/matlab
72 73 74 |
# File 'lib/orthanc/instances.rb', line 72 def frame_matlab(frame_number) # a = eval(urlread('http://localhost:8042/instances/.../matlab')) base_uri["frames/#{frame_number}/matlab"].get end |
#frames ⇒ Object
GET /instances/id/frames
52 53 54 |
# File 'lib/orthanc/instances.rb', line 52 def frames # Instance frames array handle_response(base_uri["frames"].get) end |
#image_int16 ⇒ Object
GET /instances/id/image-int16
82 83 84 |
# File 'lib/orthanc/instances.rb', line 82 def image_int16 # Truncated image to the [-32768;32767] range base_uri["image-int16"].get end |
#image_uint16 ⇒ Object
GET /instances/id/image-uint16
87 88 89 |
# File 'lib/orthanc/instances.rb', line 87 def image_uint16 # Truncated image to the [0;65535] range base_uri["image-uint16"].get end |
#image_uint8 ⇒ Object
GET /instances/id/image-uint8
92 93 94 |
# File 'lib/orthanc/instances.rb', line 92 def image_uint8 # Truncated image to the [0;255] range base_uri["image-uint8"].get end |
#matlab ⇒ Object
GET /instances/id/matlab
97 98 99 |
# File 'lib/orthanc/instances.rb', line 97 def matlab # a = eval(urlread('http://localhost:8042/instances/.../matlab')) base_uri["matlab"].get end |
#metadata(name = nil) ⇒ Object
As class instances, for method chaining
173 174 175 176 177 178 179 180 181 182 183 |
# File 'lib/orthanc/instances.rb', line 173 def (name = nil) # As class instances, for method chaining if name return Metadata.new(base_uri, name) else a = [] handle_response(base_uri["metadata"].get).each do |name| a << Metadata.new(base_uri, name) end return a end end |
#metadata_list ⇒ Object
GET /resourceType/id/metadata
169 170 171 |
# File 'lib/orthanc/instances.rb', line 169 def # Orthanc endpoint response handle_response(base_uri["metadata"].get) end |
#modify(payload = {}) ⇒ Object
POST /instances/id/modify
102 103 104 |
# File 'lib/orthanc/instances.rb', line 102 def modify(payload = {}) # https://code.google.com/p/orthanc/wiki/Anonymization base_uri["modify"].post(payload.to_s) end |
#module ⇒ Object
GET /instances/id/module
107 108 109 |
# File 'lib/orthanc/instances.rb', line 107 def module handle_response(base_uri["module"].get) end |
#patient ⇒ Object
GET /instances/id/patient
112 113 114 |
# File 'lib/orthanc/instances.rb', line 112 def patient handle_response(base_uri["patient"].get) end |
#preview ⇒ Object
GET /instances/id/preview
77 78 79 |
# File 'lib/orthanc/instances.rb', line 77 def preview(frame_number) # Rescaled image (so that all the range [0;255] is used) base_uri["frames/#{frame_number}/preview"].get end |
#series ⇒ Object
GET /instances/id/series
122 123 124 |
# File 'lib/orthanc/instances.rb', line 122 def series handle_response(base_uri["series"].get) end |
#simplified_tags(params = {}) ⇒ Object
GET /instances/id/simplified-tags
127 128 129 |
# File 'lib/orthanc/instances.rb', line 127 def (params = {}) # "?simplify" argument to simplify output handle_response(base_uri["simplified-tags"].get({params: params})) end |
#statistics ⇒ Object
GET /instances/id/statistics
132 133 134 |
# File 'lib/orthanc/instances.rb', line 132 def statistics handle_response(base_uri["statistics"].get) end |
#study ⇒ Object
GET /instances/id/study
137 138 139 |
# File 'lib/orthanc/instances.rb', line 137 def study handle_response(base_uri["study"].get) end |
#tags(params = {}) ⇒ Object
GET /instances/id/tags
142 143 144 |
# File 'lib/orthanc/instances.rb', line 142 def (params = {}) # TODO: "?simplify" argument to simplify output (same as "simplified-tags") handle_response(base_uri["tags"].get({params: params})) end |