1<?php 2/* 3 * Copyright 2014 Google Inc. 4 * 5 * Licensed under the Apache License, Version 2.0 (the "License"); you may not 6 * use this file except in compliance with the License. You may obtain a copy of 7 * the License at 8 * 9 * http://www.apache.org/licenses/LICENSE-2.0 10 * 11 * Unless required by applicable law or agreed to in writing, software 12 * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT 13 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the 14 * License for the specific language governing permissions and limitations under 15 * the License. 16 */ 17 18namespace Google\Service\CloudHealthcare\Resource; 19 20use Google\Service\CloudHealthcare\HttpBody; 21use Google\Service\CloudHealthcare\Operation; 22 23/** 24 * The "studies" collection of methods. 25 * Typical usage is: 26 * <code> 27 * $healthcareService = new Google\Service\CloudHealthcare(...); 28 * $studies = $healthcareService->studies; 29 * </code> 30 */ 31class ProjectsLocationsDatasetsDicomStoresStudies extends \Google\Service\Resource 32{ 33 /** 34 * DeleteStudy deletes all instances within the given study. Delete requests are 35 * equivalent to the GET requests specified in the Retrieve transaction. The 36 * method returns an Operation which will be marked successful when the deletion 37 * is complete. Warning: Instances cannot be inserted into a study that is being 38 * deleted by an operation until the operation completes. For samples that show 39 * how to call DeleteStudy, see [Deleting a study, series, or 40 * instance](https://cloud.google.com/healthcare/docs/how- 41 * tos/dicomweb#deleting_a_study_series_or_instance). (studies.delete) 42 * 43 * @param string $parent 44 * @param string $dicomWebPath The path of the DeleteStudy request. For example, 45 * `studies/{study_uid}`. 46 * @param array $optParams Optional parameters. 47 * @return Operation 48 */ 49 public function delete($parent, $dicomWebPath, $optParams = []) 50 { 51 $params = ['parent' => $parent, 'dicomWebPath' => $dicomWebPath]; 52 $params = array_merge($params, $optParams); 53 return $this->call('delete', [$params], Operation::class); 54 } 55 /** 56 * RetrieveStudyMetadata returns instance associated with the given study 57 * presented as metadata with the bulk data removed. See [RetrieveTransaction] ( 58 * http://dicom.nema.org/medical/dicom/current/output/html/part18.html#sect_10.4 59 * ). For details on the implementation of RetrieveStudyMetadata, see [Metadata 60 * resources](https://cloud.google.com/healthcare/docs/dicom#metadata_resources) 61 * in the Cloud Healthcare API conformance statement. For samples that show how 62 * to call RetrieveStudyMetadata, see [Retrieving 63 * metadata](https://cloud.google.com/healthcare/docs/how- 64 * tos/dicomweb#retrieving_metadata). (studies.retrieveMetadata) 65 * 66 * @param string $parent The name of the DICOM store that is being accessed. For 67 * example, `projects/{project_id}/locations/{location_id}/datasets/{dataset_id} 68 * /dicomStores/{dicom_store_id}`. 69 * @param string $dicomWebPath The path of the RetrieveStudyMetadata DICOMweb 70 * request. For example, `studies/{study_uid}/metadata`. 71 * @param array $optParams Optional parameters. 72 * @return HttpBody 73 */ 74 public function retrieveMetadata($parent, $dicomWebPath, $optParams = []) 75 { 76 $params = ['parent' => $parent, 'dicomWebPath' => $dicomWebPath]; 77 $params = array_merge($params, $optParams); 78 return $this->call('retrieveMetadata', [$params], HttpBody::class); 79 } 80 /** 81 * RetrieveStudy returns all instances within the given study. See 82 * [RetrieveTransaction] (http://dicom.nema.org/medical/dicom/current/output/htm 83 * l/part18.html#sect_10.4). For details on the implementation of RetrieveStudy, 84 * see [DICOM study/series/instances](https://cloud.google.com/healthcare/docs/d 85 * icom#dicom_studyseriesinstances) in the Cloud Healthcare API conformance 86 * statement. For samples that show how to call RetrieveStudy, see [Retrieving 87 * DICOM data](https://cloud.google.com/healthcare/docs/how- 88 * tos/dicomweb#retrieving_dicom_data). (studies.retrieveStudy) 89 * 90 * @param string $parent The name of the DICOM store that is being accessed. For 91 * example, `projects/{project_id}/locations/{location_id}/datasets/{dataset_id} 92 * /dicomStores/{dicom_store_id}`. 93 * @param string $dicomWebPath The path of the RetrieveStudy DICOMweb request. 94 * For example, `studies/{study_uid}`. 95 * @param array $optParams Optional parameters. 96 * @return HttpBody 97 */ 98 public function retrieveStudy($parent, $dicomWebPath, $optParams = []) 99 { 100 $params = ['parent' => $parent, 'dicomWebPath' => $dicomWebPath]; 101 $params = array_merge($params, $optParams); 102 return $this->call('retrieveStudy', [$params], HttpBody::class); 103 } 104 /** 105 * SearchForInstances returns a list of matching instances. See [Search 106 * Transaction] (http://dicom.nema.org/medical/dicom/current/output/html/part18. 107 * html#sect_10.6). For details on the implementation of SearchForInstances, see 108 * [Search transaction](https://cloud.google.com/healthcare/docs/dicom#search_tr 109 * ansaction) in the Cloud Healthcare API conformance statement. For samples 110 * that show how to call SearchForInstances, see [Searching for studies, series, 111 * instances, and frames](https://cloud.google.com/healthcare/docs/how- 112 * tos/dicomweb#searching_for_studies_series_instances_and_frames). 113 * (studies.searchForInstances) 114 * 115 * @param string $parent The name of the DICOM store that is being accessed. For 116 * example, `projects/{project_id}/locations/{location_id}/datasets/{dataset_id} 117 * /dicomStores/{dicom_store_id}`. 118 * @param string $dicomWebPath The path of the SearchForInstancesRequest 119 * DICOMweb request. For example, `instances`, `series/{series_uid}/instances`, 120 * or `studies/{study_uid}/instances`. 121 * @param array $optParams Optional parameters. 122 * @return HttpBody 123 */ 124 public function searchForInstances($parent, $dicomWebPath, $optParams = []) 125 { 126 $params = ['parent' => $parent, 'dicomWebPath' => $dicomWebPath]; 127 $params = array_merge($params, $optParams); 128 return $this->call('searchForInstances', [$params], HttpBody::class); 129 } 130 /** 131 * SearchForSeries returns a list of matching series. See [Search Transaction] ( 132 * http://dicom.nema.org/medical/dicom/current/output/html/part18.html#sect_10.6 133 * ). For details on the implementation of SearchForSeries, see [Search transact 134 * ion](https://cloud.google.com/healthcare/docs/dicom#search_transaction) in 135 * the Cloud Healthcare API conformance statement. For samples that show how to 136 * call SearchForSeries, see [Searching for studies, series, instances, and 137 * frames](https://cloud.google.com/healthcare/docs/how- 138 * tos/dicomweb#searching_for_studies_series_instances_and_frames). 139 * (studies.searchForSeries) 140 * 141 * @param string $parent The name of the DICOM store that is being accessed. For 142 * example, `projects/{project_id}/locations/{location_id}/datasets/{dataset_id} 143 * /dicomStores/{dicom_store_id}`. 144 * @param string $dicomWebPath The path of the SearchForSeries DICOMweb request. 145 * For example, `series` or `studies/{study_uid}/series`. 146 * @param array $optParams Optional parameters. 147 * @return HttpBody 148 */ 149 public function searchForSeries($parent, $dicomWebPath, $optParams = []) 150 { 151 $params = ['parent' => $parent, 'dicomWebPath' => $dicomWebPath]; 152 $params = array_merge($params, $optParams); 153 return $this->call('searchForSeries', [$params], HttpBody::class); 154 } 155 /** 156 * StoreInstances stores DICOM instances associated with study instance unique 157 * identifiers (SUID). See [Store Transaction] (http://dicom.nema.org/medical/di 158 * com/current/output/html/part18.html#sect_10.5). For details on the 159 * implementation of StoreInstances, see [Store transaction](https://cloud.googl 160 * e.com/healthcare/docs/dicom#store_transaction) in the Cloud Healthcare API 161 * conformance statement. For samples that show how to call StoreInstances, see 162 * [Storing DICOM data](https://cloud.google.com/healthcare/docs/how- 163 * tos/dicomweb#storing_dicom_data). (studies.storeInstances) 164 * 165 * @param string $parent The name of the DICOM store that is being accessed. For 166 * example, `projects/{project_id}/locations/{location_id}/datasets/{dataset_id} 167 * /dicomStores/{dicom_store_id}`. 168 * @param string $dicomWebPath The path of the StoreInstances DICOMweb request. 169 * For example, `studies/[{study_uid}]`. Note that the `study_uid` is optional. 170 * @param HttpBody $postBody 171 * @param array $optParams Optional parameters. 172 * @return HttpBody 173 */ 174 public function storeInstances($parent, $dicomWebPath, HttpBody $postBody, $optParams = []) 175 { 176 $params = ['parent' => $parent, 'dicomWebPath' => $dicomWebPath, 'postBody' => $postBody]; 177 $params = array_merge($params, $optParams); 178 return $this->call('storeInstances', [$params], HttpBody::class); 179 } 180} 181 182// Adding a class alias for backwards compatibility with the previous class name. 183class_alias(ProjectsLocationsDatasetsDicomStoresStudies::class, 'Google_Service_CloudHealthcare_Resource_ProjectsLocationsDatasetsDicomStoresStudies'); 184