001/* 002 * Version: MPL 1.1/GPL 2.0/LGPL 2.1 003 * 004 * The contents of this file are subject to the Mozilla Public License Version 005 * 1.1 (the "License"); you may not use this file except in compliance with 006 * the License. You may obtain a copy of the License at 007 * http://www.mozilla.org/MPL/ 008 * 009 * Software distributed under the License is distributed on an "AS IS" basis, 010 * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 011 * for the specific language governing rights and limitations under the 012 * License. 013 * 014 * The Original Code is part of dcm4che, an implementation of DICOM(TM) in 015 * Java(TM), hosted at https://github.com/gunterze/dcm4che. 016 * 017 * The Initial Developer of the Original Code is 018 * J4Care. 019 * Portions created by the Initial Developer are Copyright (C) 2015-2017 020 * the Initial Developer. All Rights Reserved. 021 * 022 * Contributor(s): 023 * See @authors listed below 024 * 025 * Alternatively, the contents of this file may be used under the terms of 026 * either the GNU General Public License Version 2 or later (the "GPL"), or 027 * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), 028 * in which case the provisions of the GPL or the LGPL are applicable instead 029 * of those above. If you wish to allow use of your version of this file only 030 * under the terms of either the GPL or the LGPL, and not to allow others to 031 * use your version of this file under the terms of the MPL, indicate your 032 * decision by deleting the provisions above and replace them with the notice 033 * and other provisions required by the GPL or the LGPL. If you do not delete 034 * the provisions above, a recipient may use your version of this file under 035 * the terms of any one of the MPL, the GPL or the LGPL. 036 * 037 */ 038 039package org.dcm4che3.dcmr; 040 041import org.dcm4che3.data.Code; 042 043import java.util.HashMap; 044import java.util.Map; 045 046/** 047 * @author Gunter Zeilinger <gunterze@gmail.com> 048 * @since Mar 2017 049 */ 050public class AnatomicRegion { 051 public static final Code Abdomen = new Code("T-D4000", "SRT", null, "Abdomen"); 052 public static final Code AbdomenPelvis = new Code("R-FAB57", "SRT", null, "Abdomen and Pelvis"); 053 public static final Code AdrenalGland = new Code("T-B3000", "SRT", null, "Adrenal gland"); 054 public static final Code AnkleJoint = new Code("T-15750", "SRT", null, "Ankle joint"); 055 public static final Code Aorta = new Code("T-42000", "SRT", null, "Aorta"); 056 public static final Code Axilla = new Code("T-D8104", "SRT", null, "Axilla"); 057 public static final Code Back = new Code("T-D2100", "SRT", null, "Back"); 058 public static final Code Bladder = new Code("T-74000", "SRT", null, "Bladder"); 059 public static final Code Brain = new Code("T-A0100", "SRT", null, "Brain"); 060 public static final Code Breast = new Code("T-04000", "SRT", null, "Breast"); 061 public static final Code Bronchus = new Code("T-26000", "SRT", null, "Bronchus"); 062 public static final Code Buttock = new Code("T-D2600", "SRT", null, "Buttock"); 063 public static final Code Calcaneus = new Code("T-12770", "SRT", null, "Calcaneus"); 064 public static final Code CalfOfLeg = new Code("T-D9440", "SRT", null, "Calf of leg"); 065 public static final Code CarotidArtery = new Code("T-45010", "SRT", null, "Carotid Artery"); 066 public static final Code Cerebellum = new Code("T-A6000", "SRT", null, "Cerebellum"); 067 public static final Code CervicalSpine = new Code("T-11501", "SRT", null, "Cervical spine"); 068 public static final Code CervicoThoracicSpine = new Code("T-D00F7", "SRT", null, "Cervico-thoracic spine"); 069 public static final Code Cervix = new Code("T-83200", "SRT", null, "Cervix"); 070 public static final Code Cheek = new Code("T-D1206", "SRT", null, "Cheek"); 071 public static final Code Chest = new Code("T-D3000", "SRT", null, "Chest"); 072 public static final Code ChestAbdomen = new Code("R-FAB55", "SRT", null, "Chest and Abdomen"); 073 public static final Code ChestAbdomenPelvis = new Code("R-FAB56", "SRT", null, "Chest, Abdomen and Pelvis"); 074 public static final Code CircleOfWillis = new Code("T-45526", "SRT", null, "Circle of Willis"); 075 public static final Code Clavicle = new Code("T-12310", "SRT", null, "Clavicle"); 076 public static final Code Coccyx = new Code("T-11BF0", "SRT", null, "Coccyx"); 077 public static final Code Colon = new Code("T-59300", "SRT", null, "Colon"); 078 public static final Code Cornea = new Code("T-AA200", "SRT", null, "Cornea"); 079 public static final Code CoronaryArtery = new Code("T-43000", "SRT", null, "Coronary artery"); 080 public static final Code Duodenum = new Code("T-58200", "SRT", null, "Duodenum"); 081 public static final Code Ear = new Code("T-AB000", "SRT", null, "Ear"); 082 public static final Code ElbowJoint = new Code("T-15430", "SRT", null, "Elbow joint"); 083 public static final Code EntireBody = new Code("T-D0010", "SRT", null, "Entire body"); 084 public static final Code Esophagus = new Code("T-56000", "SRT", null, "Esophagus"); 085 public static final Code Extremity = new Code("T-D0300", "SRT", null, "Extremity"); 086 public static final Code Eye = new Code("T-AA000", "SRT", null, "Eye"); 087 public static final Code Eyelid = new Code("T-AA810", "SRT", null, "Eyelid"); 088 public static final Code Face = new Code("T-D1200", "SRT", null, "Face"); 089 public static final Code Femur = new Code("T-12710", "SRT", null, "Femur"); 090 public static final Code Finger = new Code("T-D8800", "SRT", null, "Finger"); 091 public static final Code Foot = new Code("T-D9700", "SRT", null, "Foot"); 092 public static final Code Gallbladder = new Code("T-63000", "SRT", null, "Gallbladder"); 093 public static final Code Hand = new Code("T-D8700", "SRT", null, "Hand"); 094 public static final Code Head = new Code("T-D1100", "SRT", null, "Head"); 095 public static final Code HeadNeck = new Code("T-D1000", "SRT", null, "Head and Neck"); 096 public static final Code Heart = new Code("T-32000", "SRT", null, "Heart"); 097 public static final Code HipJoint = new Code("T-15710", "SRT", null, "Hip joint"); 098 public static final Code Humerus = new Code("T-12410", "SRT", null, "Humerus"); 099 public static final Code Ileum = new Code("T-58600", "SRT", null, "Ileum"); 100 public static final Code Ilium = new Code("T-12340", "SRT", null, "Ilium"); 101 public static final Code InternalAuditoryCanal = new Code("T-AB959", "SRT", null, "Internal Auditory Canal"); 102 public static final Code JawRegion = new Code("T-D1213", "SRT", null, "Jaw region"); 103 public static final Code Jejunum = new Code("T-58400", "SRT", null, "Jejunum"); 104 public static final Code Kidney = new Code("T-71000", "SRT", null, "Kidney"); 105 public static final Code Knee = new Code("T-D9200", "SRT", null, "Knee"); 106 public static final Code Larynx = new Code("T-24100", "SRT", null, "Larynx"); 107 public static final Code Liver = new Code("T-62000", "SRT", null, "Liver"); 108 public static final Code LowerLeg = new Code("T-D9400", "SRT", null, "Lower leg"); 109 public static final Code LumbarSpine = new Code("T-11503", "SRT", null, "Lumbar spine"); 110 public static final Code LumboSacralSpine = new Code("T-D00F9", "SRT", null, "Lumbo-sacral spine"); 111 public static final Code Lung = new Code("T-28000", "SRT", null, "Lung"); 112 public static final Code Mandible = new Code("T-11180", "SRT", null, "Mandible"); 113 public static final Code Maxilla = new Code("T-11170", "SRT", null, "Maxilla"); 114 public static final Code Mediastinum = new Code("T-D3300", "SRT", null, "Mediastinum"); 115 public static final Code Mouth = new Code("T-51000", "SRT", null, "Mouth"); 116 public static final Code Neck = new Code("T-D1600", "SRT", null, "Neck"); 117 public static final Code NeckChest = new Code("R-FAB52", "SRT", null, "Neck and Chest"); 118 public static final Code NeckChestAbdomen = new Code("R-FAB53", "SRT", null, "Neck, Chest and Abdomen"); 119 public static final Code NeckChestAbdomenPelvis = new Code("R-FAB54", "SRT", null, "Neck, Chest, Abdomen and Pelvis"); 120 public static final Code Nose = new Code("T-21000", "SRT", null, "Nose"); 121 public static final Code OrbitalStructure = new Code("T-D14AE", "SRT", null, "Orbital structure"); 122 public static final Code Ovary = new Code("T-87000", "SRT", null, "Ovary"); 123 public static final Code Pancreas = new Code("T-65000", "SRT", null, "Pancreas"); 124 public static final Code ParotidGland = new Code("T-61100", "SRT", null, "Parotid gland"); 125 public static final Code Patella = new Code("T-12730", "SRT", null, "Patella"); 126 public static final Code Pelvis = new Code("T-D6000", "SRT", null, "Pelvis"); 127 public static final Code Penis = new Code("T-91000", "SRT", null, "Penis"); 128 public static final Code Pharynx = new Code("T-55000", "SRT", null, "Pharynx"); 129 public static final Code Prostate = new Code("T-9200B", "SRT", null, "Prostate"); 130 public static final Code Radius = new Code("T-12420", "SRT", null, "Radius"); 131 public static final Code RadiusUlna = new Code("T-12403", "SRT", null, "Radius and ulna"); 132 public static final Code Rectum = new Code("T-59600", "SRT", null, "Rectum"); 133 public static final Code Rib = new Code("T-11300", "SRT", null, "Rib"); 134 public static final Code Sacrum = new Code("T-11AD0", "SRT", null, "Sacrum"); 135 public static final Code Scalp = new Code("T-D1160", "SRT", null, "Scalp"); 136 public static final Code Scapula = new Code("T-12280", "SRT", null, "Scapula"); 137 public static final Code Sclera = new Code("T-AA110", "SRT", null, "Sclera"); 138 public static final Code Scrotum = new Code("T-98000", "SRT", null, "Scrotum"); 139 public static final Code Shoulder = new Code("T-D2220", "SRT", null, "Shoulder"); 140 public static final Code Skull = new Code("T-11100", "SRT", null, "Skull"); 141 public static final Code Spine = new Code("T-D04FF", "SRT", null, "Spine"); 142 public static final Code Spleen = new Code("T-C3000", "SRT", null, "Spleen"); 143 public static final Code Sternum = new Code("T-11210", "SRT", null, "Sternum"); 144 public static final Code Stomach = new Code("T-57000", "SRT", null, "Stomach"); 145 public static final Code SubmandibularGland = new Code("T-61300", "SRT", null, "Submandibular gland"); 146 public static final Code TemporomandibularJoint = new Code("T-15290", "SRT", null, "Temporomandibular joint"); 147 public static final Code Testis = new Code("T-94000", "SRT", null, "Testis"); 148 public static final Code Thigh = new Code("T-D9100", "SRT", null, "Thigh"); 149 public static final Code ThoracicSpine = new Code("T-11502", "SRT", null, "Thoracic spine"); 150 public static final Code ThoracoLumbarSpine = new Code("T-D00F8", "SRT", null, "Thoraco-lumbar spine"); 151 public static final Code Thumb = new Code("T-D8810", "SRT", null, "Thumb"); 152 public static final Code Thymus = new Code("T-C8000", "SRT", null, "Thymus"); 153 public static final Code Thyroid = new Code("T-B6000", "SRT", null, "Thyroid"); 154 public static final Code Tibia = new Code("T-12740", "SRT", null, "Tibia"); 155 public static final Code TibiaFibula = new Code("T-12701", "SRT", null, "Tibia and fibula"); 156 public static final Code Toe = new Code("T-D9800", "SRT", null, "Toe"); 157 public static final Code Tongue = new Code("T-53000", "SRT", null, "Tongue"); 158 public static final Code Trachea = new Code("T-25000", "SRT", null, "Trachea"); 159 public static final Code Ulna = new Code("T-12430", "SRT", null, "Ulna"); 160 public static final Code UpperArm = new Code("T-D8200", "SRT", null, "Upper arm"); 161 public static final Code Ureter = new Code("T-73000", "SRT", null, "Ureter"); 162 public static final Code Urethra = new Code("T-75000", "SRT", null, "Urethra"); 163 public static final Code Uterus = new Code("T-83000", "SRT", null, "Uterus"); 164 public static final Code Vagina = new Code("T-82000", "SRT", null, "Vagina"); 165 public static final Code Vulva = new Code("T-81000", "SRT", null, "Vulva"); 166 public static final Code WristJoint = new Code("T-15460", "SRT", null, "Wrist joint"); 167 public static final Code Zygoma = new Code("T-11166", "SRT", null, "Zygoma"); 168 169 private static final Map<String, Code> BODY_PART_EXAMINED = new HashMap<String, Code>(); 170 static { 171 BODY_PART_EXAMINED.put("ABDOMEN", Abdomen); 172 BODY_PART_EXAMINED.put("ABDOMENPELVIS", AbdomenPelvis); 173 BODY_PART_EXAMINED.put("ADRENAL", AdrenalGland); 174 BODY_PART_EXAMINED.put("ANKLE", AnkleJoint); 175 BODY_PART_EXAMINED.put("AORTA", Aorta); 176 BODY_PART_EXAMINED.put("AXILLA", Axilla); 177 BODY_PART_EXAMINED.put("BACK", Back); 178 BODY_PART_EXAMINED.put("BLADDER", Bladder); 179 BODY_PART_EXAMINED.put("BRAIN", Brain); 180 BODY_PART_EXAMINED.put("BREAST", Breast); 181 BODY_PART_EXAMINED.put("BRONCHUS", Bronchus); 182 BODY_PART_EXAMINED.put("BUTTOCK", Buttock); 183 BODY_PART_EXAMINED.put("CALCANEUS", Calcaneus); 184 BODY_PART_EXAMINED.put("CALF", CalfOfLeg); 185 BODY_PART_EXAMINED.put("CAROTID", CarotidArtery); 186 BODY_PART_EXAMINED.put("CEREBELLUM", Cerebellum); 187 BODY_PART_EXAMINED.put("CSPINE", CervicalSpine); 188 BODY_PART_EXAMINED.put("CTSPINE", CervicoThoracicSpine); 189 BODY_PART_EXAMINED.put("CERVIX", Cervix); 190 BODY_PART_EXAMINED.put("CHEEK", Cheek); 191 BODY_PART_EXAMINED.put("CHEST", Chest); 192 BODY_PART_EXAMINED.put("CHESTABDOMEN", ChestAbdomen); 193 BODY_PART_EXAMINED.put("CHESTABDPELVIS", ChestAbdomenPelvis); 194 BODY_PART_EXAMINED.put("CIRCLEOFWILLIS", CircleOfWillis); 195 BODY_PART_EXAMINED.put("CLAVICLE", Clavicle); 196 BODY_PART_EXAMINED.put("COCCYX", Coccyx); 197 BODY_PART_EXAMINED.put("COLON", Colon); 198 BODY_PART_EXAMINED.put("CORNEA", Cornea); 199 BODY_PART_EXAMINED.put("CORONARYARTERY", CoronaryArtery); 200 BODY_PART_EXAMINED.put("DUODENUM", Duodenum); 201 BODY_PART_EXAMINED.put("EAR", Ear); 202 BODY_PART_EXAMINED.put("ELBOW", ElbowJoint); 203 BODY_PART_EXAMINED.put("WHOLEBODY", EntireBody); 204 BODY_PART_EXAMINED.put("ESOPHAGUS", Esophagus); 205 BODY_PART_EXAMINED.put("EXTREMITY", Extremity); 206 BODY_PART_EXAMINED.put("EYE", Eye); 207 BODY_PART_EXAMINED.put("EYELID", Eyelid); 208 BODY_PART_EXAMINED.put("FACE", Face); 209 BODY_PART_EXAMINED.put("FEMUR", Femur); 210 BODY_PART_EXAMINED.put("FINGER", Finger); 211 BODY_PART_EXAMINED.put("FOOT", Foot); 212 BODY_PART_EXAMINED.put("GALLBLADDER", Gallbladder); 213 BODY_PART_EXAMINED.put("HAND", Hand); 214 BODY_PART_EXAMINED.put("HEAD", Head); 215 BODY_PART_EXAMINED.put("HEADNECK", HeadNeck); 216 BODY_PART_EXAMINED.put("HEART", Heart); 217 BODY_PART_EXAMINED.put("HIP", HipJoint); 218 BODY_PART_EXAMINED.put("HUMERUS", Humerus); 219 BODY_PART_EXAMINED.put("ILEUM", Ileum); 220 BODY_PART_EXAMINED.put("ILIUM", Ilium); 221 BODY_PART_EXAMINED.put("IAC", InternalAuditoryCanal); 222 BODY_PART_EXAMINED.put("JAW", JawRegion); 223 BODY_PART_EXAMINED.put("JEJUNUM", Jejunum); 224 BODY_PART_EXAMINED.put("KIDNEY", Kidney); 225 BODY_PART_EXAMINED.put("KNEE", Knee); 226 BODY_PART_EXAMINED.put("LARYNX", Larynx); 227 BODY_PART_EXAMINED.put("LIVER", Liver); 228 BODY_PART_EXAMINED.put("LEG", LowerLeg); 229 BODY_PART_EXAMINED.put("LSPINE", LumbarSpine); 230 BODY_PART_EXAMINED.put("LSSPINE", LumboSacralSpine); 231 BODY_PART_EXAMINED.put("LUNG", Lung); 232 BODY_PART_EXAMINED.put("JAW", Mandible); 233 BODY_PART_EXAMINED.put("MAXILLA", Maxilla); 234 BODY_PART_EXAMINED.put("MEDIASTINUM", Mediastinum); 235 BODY_PART_EXAMINED.put("MOUTH", Mouth); 236 BODY_PART_EXAMINED.put("NECK", Neck); 237 BODY_PART_EXAMINED.put("NECKCHEST", NeckChest); 238 BODY_PART_EXAMINED.put("NECKCHESTABDOMEN", NeckChestAbdomen); 239 BODY_PART_EXAMINED.put("NECKCHESTABDPELV", NeckChestAbdomenPelvis); 240 BODY_PART_EXAMINED.put("NOSE", Nose); 241 BODY_PART_EXAMINED.put("ORBIT", OrbitalStructure); 242 BODY_PART_EXAMINED.put("OVARY", Ovary); 243 BODY_PART_EXAMINED.put("PANCREAS", Pancreas); 244 BODY_PART_EXAMINED.put("PAROTID", ParotidGland); 245 BODY_PART_EXAMINED.put("PATELLA", Patella); 246 BODY_PART_EXAMINED.put("PELVIS", Pelvis); 247 BODY_PART_EXAMINED.put("PENIS", Penis); 248 BODY_PART_EXAMINED.put("PHARYNX", Pharynx); 249 BODY_PART_EXAMINED.put("PROSTATE", Prostate); 250 BODY_PART_EXAMINED.put("RADIUS", Radius); 251 BODY_PART_EXAMINED.put("RADIUSULNA", RadiusUlna); 252 BODY_PART_EXAMINED.put("RECTUM", Rectum); 253 BODY_PART_EXAMINED.put("RIB", Rib); 254 BODY_PART_EXAMINED.put("SSPINE", Sacrum); 255 BODY_PART_EXAMINED.put("SCALP", Scalp); 256 BODY_PART_EXAMINED.put("SCAPULA", Scapula); 257 BODY_PART_EXAMINED.put("SCLERA", Sclera); 258 BODY_PART_EXAMINED.put("SCROTUM", Scrotum); 259 BODY_PART_EXAMINED.put("SHOULDER", Shoulder); 260 BODY_PART_EXAMINED.put("SKULL", Skull); 261 BODY_PART_EXAMINED.put("SPINE", Spine); 262 BODY_PART_EXAMINED.put("SPLEEN", Spleen); 263 BODY_PART_EXAMINED.put("STERNUM", Sternum); 264 BODY_PART_EXAMINED.put("STOMACH", Stomach); 265 BODY_PART_EXAMINED.put("SUBMANDIBULAR", SubmandibularGland); 266 BODY_PART_EXAMINED.put("TMJ", TemporomandibularJoint); 267 BODY_PART_EXAMINED.put("TESTIS", Testis); 268 BODY_PART_EXAMINED.put("THIGH", Thigh); 269 BODY_PART_EXAMINED.put("TSPINE", ThoracicSpine); 270 BODY_PART_EXAMINED.put("TLSPINE", ThoracoLumbarSpine); 271 BODY_PART_EXAMINED.put("THUMB", Thumb); 272 BODY_PART_EXAMINED.put("THYMUS", Thymus); 273 BODY_PART_EXAMINED.put("THYROID", Thyroid); 274 BODY_PART_EXAMINED.put("TIBIA", Tibia); 275 BODY_PART_EXAMINED.put("TIBIAFIBULA", TibiaFibula); 276 BODY_PART_EXAMINED.put("TOE", Toe); 277 BODY_PART_EXAMINED.put("TONGUE", Tongue); 278 BODY_PART_EXAMINED.put("TRACHEA", Trachea); 279 BODY_PART_EXAMINED.put("ULNA", Ulna); 280 BODY_PART_EXAMINED.put("ARM", UpperArm); 281 BODY_PART_EXAMINED.put("URETER", Ureter); 282 BODY_PART_EXAMINED.put("URETHRA", Urethra); 283 BODY_PART_EXAMINED.put("UTERUS", Uterus); 284 BODY_PART_EXAMINED.put("VAGINA", Vagina); 285 BODY_PART_EXAMINED.put("VULVA", Vulva); 286 BODY_PART_EXAMINED.put("WRIST", WristJoint); 287 BODY_PART_EXAMINED.put("ZYGOMA", Zygoma); 288 } 289 290 public static Code codeOf(String bodyPartExamined) { 291 return BODY_PART_EXAMINED.get(bodyPartExamined); 292 } 293 294 public static Code addCode(Code code, String bodyPartExamined) { 295 return BODY_PART_EXAMINED.put(bodyPartExamined, code); 296 } 297 298 public static Code removeCode(String bodyPartExamined) { 299 return BODY_PART_EXAMINED.remove(bodyPartExamined); 300 } 301}