class Orthanc::Modality

Attributes

base_uri[RW]

Public Class Methods

new(id = nil) click to toggle source
# File lib/orthanc/modalities.rb, line 6
def initialize(id = nil)
  client = Client.new
  self.base_uri = client.base_uri["/modalities/#{id}"]
end

Public Instance Methods

delete() click to toggle source

DELETE /modalities/{id}

# File lib/orthanc/modalities.rb, line 17
def delete
  handle_response(base_uri.delete)
end
echo(payload = {}) click to toggle source

POST /modalities/{dicom}/echo

# File lib/orthanc/modalities.rb, line 27
def echo(payload = {}) # C-Echo SCU. Return true if successful
  base_uri["echo"].post(payload){|response, request, result, &block|
    if response.code == 200
      return true
    else
      return false
    end
  }
end
fetch() click to toggle source

GET /modalities, # GET /modalities/{id}

# File lib/orthanc/modalities.rb, line 12
def fetch # Fetch API response
  handle_response(base_uri.get)
end
find(payload = {}) click to toggle source

POST /modalities/{dicom}/find

# File lib/orthanc/modalities.rb, line 38
def find(payload = {}) # C-Echo SCU. Return true if successful
  base_uri["find"].post(payload){|response, request, result, &block|
    if response.code == 200
      return handle_response(response)
    else
      return false
    end
  }
end
find_patient(payload = {}) click to toggle source

POST /modalities/{dicom}/find-patient

# File lib/orthanc/modalities.rb, line 49
def find_patient(payload = {}) # eg. '{"PatientName":"JOD*","PatientSex":"M"}'
  base_uri["find-patient"].post(payload){|response, request, result, &block|
    if response.code == 200
      return handle_response(response)
    else
      return false
    end
  }
end
find_series(payload = {}) click to toggle source

POST /modalities/{dicom}/find-series

# File lib/orthanc/modalities.rb, line 60
def find_series(payload = {}) # eg. '{"PatientID":"0555643F"}'
  base_uri["find-series"].post(payload){|response, request, result, &block|
    if response.code == 200
      return handle_response(response)
    else
      return false
    end
  }
end
find_study(payload = {}) click to toggle source

POST /modalities/{dicom}/find-study

# File lib/orthanc/modalities.rb, line 71
def find_study(payload = {}) # eg. '{"PatientID":"0555643F","StudyInstanceUID":"1.2.840.113704.1.111.2768.1239195678.57"}'
  base_uri["find-study"].post(payload){|response, request, result, &block|
    if response.code == 200
      return handle_response(response)
    else
      return false
    end
  }
end
modify(payload = {}) click to toggle source

PUT /modalities/{dicom}

# File lib/orthanc/modalities.rb, line 22
def modify(payload = {})
  handle_response(base_uri["modalities/#{dicom}"].put(payload))
end
store(payload = {}) click to toggle source

POST /modalities/{dicom}/store

# File lib/orthanc/modalities.rb, line 82
def store(payload = {}) # POST body = UUID series, UUID instance, or raw DICOM file
  base_uri["store"].post(payload){|response, request, result, &block|
    if response.code == 200
      return true
    else
      return false
    end
  }
end