1 /* 2 * 3 * Copyright (C) 2015-2020, J. Riesmeier, Oldenburg, Germany 4 * All rights reserved. See COPYRIGHT file for details. 5 * 6 * Header file for class CID7469_GenericIntensityAndSizeMeasurements 7 * 8 * Generated automatically from DICOM PS 3.16-2020e 9 * File created on 2020-11-25 11:13:14 by J. Riesmeier 10 * 11 */ 12 13 14 #ifndef CMR_CID7469_H 15 #define CMR_CID7469_H 16 17 #include "dcmtk/config/osconfig.h" /* make sure OS specific configuration is included first */ 18 19 #include "dcmtk/dcmsr/dsrctxgr.h" 20 #include "dcmtk/dcmsr/cmr/define.h" 21 22 #include "dcmtk/ofstd/ofmap.h" 23 24 25 /*---------------------* 26 * class declaration * 27 *---------------------*/ 28 29 /** Implementation of DCMR Context Group: 30 * CID 7469 - Generic Intensity and Size Measurements. 31 * (type: extensible, version: 20141110) 32 */ 33 class DCMTK_CMR_EXPORT CID7469_GenericIntensityAndSizeMeasurements 34 : public DSRContextGroup 35 { 36 37 public: 38 39 /** types of generic intensity and size measurements 40 */ 41 enum EnumType 42 { 43 /// (115391007,SCT,"N-acetylaspartate"), included from CID 4033 44 NAcetylaspartate, 45 /// (59351004,SCT,"Citrate"), included from CID 4033 46 Citrate, 47 /// (65123005,SCT,"Choline"), included from CID 4033 48 Choline, 49 /// (14804005,SCT,"Creatine"), included from CID 4033 50 Creatine, 51 /// (113094,DCM,"Creatine and Choline"), included from CID 4033 52 CreatineAndCholine, 53 /// (83036002,SCT,"Lactate"), included from CID 4033 54 Lactate, 55 /// (70106000,SCT,"Lipid"), included from CID 4033 56 Lipid, 57 /// (113095,DCM,"Lipid and Lactate"), included from CID 4033 58 LipidAndLactate, 59 /// (113080,DCM,"Glutamate and glutamine"), included from CID 4033 60 GlutamateAndGlutamine, 61 /// (25761002,SCT,"Glutamine"), included from CID 4033 62 Glutamine, 63 /// (10944007,SCT,"Tuarine"), included from CID 4033 64 Tuarine, 65 /// (72164009,SCT,"Inositol"), included from CID 4033 66 Inositol, 67 /// (113081,DCM,"Choline/Creatine Ratio"), included from CID 4033 68 CholinePerCreatineRatio, 69 /// (113082,DCM,"N-acetylaspartate/Creatine Ratio"), included from CID 4033 70 NAcetylaspartatePerCreatineRatio, 71 /// (113083,DCM,"N-acetylaspartate/Choline Ratio"), included from CID 4033 72 NAcetylaspartatePerCholineRatio, 73 /// (113096,DCM,"Creatine+Choline/Citrate Ratio"), included from CID 4033 74 CreatinePlusCholinePerCitrateRatio, 75 /// (113063,DCM,"T1"), included from CID 7180 76 T1, 77 /// (113065,DCM,"T2"), included from CID 7180 78 T2, 79 /// (113064,DCM,"T2*"), included from CID 7180 80 T2Star, 81 /// (113058,DCM,"Proton Density"), included from CID 7180 82 ProtonDensity, 83 /// (110800,DCM,"Spin Tagging Perfusion MR Signal Intensity"), included from CID 7180 84 SpinTaggingPerfusionMRSignalIntensity, 85 /// (113070,DCM,"Velocity encoded"), included from CID 7180 86 VelocityEncoded, 87 /// (113067,DCM,"Temperature encoded"), included from CID 7180 88 TemperatureEncoded, 89 /// (110801,DCM,"Contrast Agent Angio MR Signal Intensity"), included from CID 7180 90 ContrastAgentAngioMRSignalIntensity, 91 /// (110802,DCM,"Time Of Flight Angio MR Signal Intensity"), included from CID 7180 92 TimeOfFlightAngioMRSignalIntensity, 93 /// (110803,DCM,"Proton Density Weighted MR Signal Intensity"), included from CID 7180 94 ProtonDensityWeightedMRSignalIntensity, 95 /// (110804,DCM,"T1 Weighted MR Signal Intensity"), included from CID 7180 96 T1WeightedMRSignalIntensity, 97 /// (110805,DCM,"T2 Weighted MR Signal Intensity"), included from CID 7180 98 T2WeightedMRSignalIntensity, 99 /// (110806,DCM,"T2* Weighted MR Signal Intensity"), included from CID 7180 100 T2StarWeightedMRSignalIntensity, 101 /// (113043,DCM,"Diffusion weighted"), included from CID 7270 102 DiffusionWeighted, 103 /// (110810,DCM,"Volumetric Diffusion Dxx Component"), included from CID 7270 104 VolumetricDiffusionDxxComponent, 105 /// (110811,DCM,"Volumetric Diffusion Dxy Component"), included from CID 7270 106 VolumetricDiffusionDxyComponent, 107 /// (110812,DCM,"Volumetric Diffusion Dxz Component"), included from CID 7270 108 VolumetricDiffusionDxzComponent, 109 /// (110813,DCM,"Volumetric Diffusion Dyy Component"), included from CID 7270 110 VolumetricDiffusionDyyComponent, 111 /// (110814,DCM,"Volumetric Diffusion Dyz Component"), included from CID 7270 112 VolumetricDiffusionDyzComponent, 113 /// (110815,DCM,"Volumetric Diffusion Dzz Component"), included from CID 7270 114 VolumetricDiffusionDzzComponent, 115 /// (110808,DCM,"Fractional Anisotropy"), included from CID 7271 116 FractionalAnisotropy, 117 /// (110809,DCM,"Relative Anisotropy"), included from CID 7271 118 RelativeAnisotropy, 119 /// (113288,DCM,"Volume Ratio"), included from CID 7271 120 VolumeRatio, 121 /// (113041,DCM,"Apparent Diffusion Coefficient"), included from CID 7272 122 ApparentDiffusionCoefficient, 123 /// (113289,DCM,"Diffusion Coefficient"), included from CID 7272 124 DiffusionCoefficient, 125 /// (113290,DCM,"Mono-exponential Apparent Diffusion Coefficient"), included from CID 7272 126 MonoExponentialApparentDiffusionCoefficient, 127 /// (113291,DCM,"Slow Diffusion Coefficient"), included from CID 7272 128 SlowDiffusionCoefficient, 129 /// (113292,DCM,"Fast Diffusion Coefficient"), included from CID 7272 130 FastDiffusionCoefficient, 131 /// (113293,DCM,"Fast Diffusion Coefficient Fraction"), included from CID 7272 132 FastDiffusionCoefficientFraction, 133 /// (113294,DCM,"Kurtosis Diffusion Coefficient"), included from CID 7272 134 KurtosisDiffusionCoefficient, 135 /// (113295,DCM,"Gamma Distribution Scale Parameter"), included from CID 7272 136 GammaDistributionScaleParameter, 137 /// (113296,DCM,"Gamma Distribution Shape Parameter"), included from CID 7272 138 GammaDistributionShapeParameter, 139 /// (113297,DCM,"Gamma Distribution Mode"), included from CID 7272 140 GammaDistributionMode, 141 /// (113298,DCM,"Distributed Diffusion Coefficient"), included from CID 7272 142 DistributedDiffusionCoefficient, 143 /// (113299,DCM,"Anomalous Exponent Parameter"), included from CID 7272 144 AnomalousExponentParameter, 145 /// (110807,DCM,"Field Map MR Signal Intensity"), included from CID 7180 146 FieldMapMRSignalIntensity, 147 /// (110816,DCM,"T1 Weighted Dynamic Contrast Enhanced MR Signal Intensity"), included from CID 7180 148 T1WeightedDynamicContrastEnhancedMRSignalIntensity, 149 /// (110817,DCM,"T2 Weighted Dynamic Contrast Enhanced MR Signal Intensity"), included from CID 7180 150 T2WeightedDynamicContrastEnhancedMRSignalIntensity, 151 /// (110818,DCM,"T2* Weighted Dynamic Contrast Enhanced MR Signal Intensity"), included from CID 7180 152 T2StarWeightedDynamicContrastEnhancedMRSignalIntensity, 153 /// (110819,DCM,"Blood Oxygenation Level"), included from CID 7180 154 BloodOxygenationLevel, 155 /// (110820,DCM,"Nuclear Medicine Projection Activity"), included from CID 7180 156 NuclearMedicineProjectionActivity, 157 /// (110821,DCM,"Nuclear Medicine Tomographic Activity"), included from CID 7180 158 NuclearMedicineTomographicActivity, 159 /// (110822,DCM,"Spatial Displacement X Component"), included from CID 7180 160 SpatialDisplacementXComponent, 161 /// (110823,DCM,"Spatial Displacement Y Component"), included from CID 7180 162 SpatialDisplacementYComponent, 163 /// (110824,DCM,"Spatial Displacement Z Component"), included from CID 7180 164 SpatialDisplacementZComponent, 165 /// (110825,DCM,"Hemodynamic Resistance"), included from CID 7180 166 HemodynamicResistance, 167 /// (110826,DCM,"Indexed Hemodynamic Resistance"), included from CID 7180 168 IndexedHemodynamicResistance, 169 /// (112031,DCM,"Attenuation Coefficient"), included from CID 7180 170 AttenuationCoefficient, 171 /// (110827,DCM,"Tissue Velocity"), included from CID 7180 172 TissueVelocity, 173 /// (110828,DCM,"Flow Velocity"), included from CID 7180 174 FlowVelocity, 175 /// (425704008,SCT,"Power Doppler"), included from CID 7180 176 PowerDoppler, 177 /// (110829,DCM,"Flow Variance"), included from CID 7180 178 FlowVariance, 179 /// (110830,DCM,"Elasticity"), included from CID 7180 180 Elasticity, 181 /// (110831,DCM,"Perfusion"), included from CID 7180 182 Perfusion, 183 /// (110832,DCM,"Speed of sound"), included from CID 7180 184 SpeedOfSound, 185 /// (110833,DCM,"Ultrasound Attenuation"), included from CID 7180 186 UltrasoundAttenuation, 187 /// (113068,DCM,"Student's T-test"), included from CID 7180 188 StudentsTTest, 189 /// (113071,DCM,"Z-score"), included from CID 7180 190 ZScore, 191 /// (113057,DCM,"R-Coefficient"), included from CID 7180 192 RCoefficient, 193 /// (126220,DCM,"R2-Coefficient"), included from CID 7180 194 R2Coefficient, 195 /// (126221,DCM,"Chi-square"), included from CID 7180 196 ChiSquare, 197 /// (126222,DCM,"D-W"), included from CID 7180 198 DW, 199 /// (126223,DCM,"AIC"), included from CID 7180 200 AIC, 201 /// (126224,DCM,"BIC"), included from CID 7180 202 BIC, 203 /// (110834,DCM,"RGB R Component"), included from CID 7180 204 RGBRComponent, 205 /// (110835,DCM,"RGB G Component"), included from CID 7180 206 RGBGComponent, 207 /// (110836,DCM,"RGB B Component"), included from CID 7180 208 RGBBComponent, 209 /// (110837,DCM,"YBR FULL Y Component"), included from CID 7180 210 YBR_FULLYComponent, 211 /// (110838,DCM,"YBR FULL CB Component"), included from CID 7180 212 YBR_FULL_CBComponent, 213 /// (110839,DCM,"YBR FULL CR Component"), included from CID 7180 214 YBR_FULL_CRComponent, 215 /// (110840,DCM,"YBR PARTIAL Y Component"), included from CID 7180 216 YBR_PARTIALYComponent, 217 /// (110841,DCM,"YBR PARTIAL CB Component"), included from CID 7180 218 YBR_PARTIAL_CBComponent, 219 /// (110842,DCM,"YBR PARTIAL CR Component"), included from CID 7180 220 YBR_PARTIAL_CRComponent, 221 /// (110843,DCM,"YBR ICT Y Component"), included from CID 7180 222 YBR_ICTYComponent, 223 /// (110844,DCM,"YBR ICT CB Component"), included from CID 7180 224 YBR_ICT_CBComponent, 225 /// (110845,DCM,"YBR ICT CR Component"), included from CID 7180 226 YBR_ICT_CRComponent, 227 /// (110846,DCM,"YBR RCT Y Component"), included from CID 7180 228 YBR_RCTYComponent, 229 /// (110847,DCM,"YBR RCT CB Component"), included from CID 7180 230 YBR_RCT_CBComponent, 231 /// (110848,DCM,"YBR RCT CR Component"), included from CID 7180 232 YBR_RCT_CRComponent, 233 /// (110849,DCM,"Echogenicity"), included from CID 7180 234 Echogenicity, 235 /// (110850,DCM,"X-Ray Attenuation"), included from CID 7180 236 XRayAttenuation, 237 /// (110852,DCM,"MR signal intensity"), included from CID 7180 238 MRSignalIntensity, 239 /// (110853,DCM,"Binary Segmentation"), included from CID 7180 240 BinarySegmentation, 241 /// (110854,DCM,"Fractional Probabilistic Segmentation"), included from CID 7180 242 FractionalProbabilisticSegmentation, 243 /// (110855,DCM,"Fractional Occupancy Segmentation"), included from CID 7180 244 FractionalOccupancySegmentation, 245 /// (126393,DCM,"R1"), included from CID 7180 246 R1, 247 /// (126394,DCM,"R2"), included from CID 7180 248 R2, 249 /// (126395,DCM,"R2*"), included from CID 7180 250 R2Star, 251 /// (113098,DCM,"Magnetization Transfer Ratio"), included from CID 7180 252 MagnetizationTransferRatio, 253 /// (126396,DCM,"Magnetic Susceptibility"), included from CID 7180 254 MagneticSusceptibility, 255 /// (126312,DCM,"Ktrans"), included from CID 4107 256 Ktrans, 257 /// (126313,DCM,"kep"), included from CID 4107 258 Kep, 259 /// (126314,DCM,"ve"), included from CID 4107 260 Ve, 261 /// (126330,DCM,"tau_m"), included from CID 4107 262 Tau_m, 263 /// (126331,DCM,"vp"), included from CID 4107 264 Vp, 265 /// (126390,DCM,"Absolute Regional Blood Flow"), included from CID 4108 266 AbsoluteRegionalBloodFlow, 267 /// (126391,DCM,"Absolute Regional Blood Volume"), included from CID 4108 268 AbsoluteRegionalBloodVolume, 269 /// (126397,DCM,"Relative Regional Blood Flow"), included from CID 4108 270 RelativeRegionalBloodFlow, 271 /// (126398,DCM,"Relative Regional Blood Volume"), included from CID 4108 272 RelativeRegionalBloodVolume, 273 /// (113052,DCM,"Mean Transit Time"), included from CID 4108 274 MeanTransitTime, 275 /// (113069,DCM,"Time To Peak"), included from CID 4108 276 TimeToPeak, 277 /// (126392,DCM,"Oxygen Extraction Fraction"), included from CID 4108 278 OxygenExtractionFraction, 279 /// (113084,DCM,"Tmax"), included from CID 4108 280 Tmax, 281 /// (126320,DCM,"IAUC"), included from CID 4109 282 IAUC, 283 /// (126321,DCM,"IAUC60"), included from CID 4109 284 IAUC60, 285 /// (126322,DCM,"IAUC90"), included from CID 4109 286 IAUC90, 287 /// (126323,DCM,"IAUC180"), included from CID 4109 288 IAUC180, 289 /// (126324,DCM,"IAUCBN"), included from CID 4109 290 IAUCBN, 291 /// (126325,DCM,"IAUC60BN"), included from CID 4109 292 IAUC60BN, 293 /// (126326,DCM,"IAUC90BN"), included from CID 4109 294 IAUC90BN, 295 /// (126327,DCM,"IAUC180BN"), included from CID 4109 296 IAUC180BN, 297 /// (126370,DCM,"Time of Peak Concentration"), included from CID 4109 298 TimeOfPeakConcentration, 299 /// (126372,DCM,"Time of Leading Half-Peak Concentration"), included from CID 4109 300 TimeOfLeadingHalfPeakConcentration, 301 /// (126371,DCM,"Bolus Arrival Time"), included from CID 4109 302 BolusArrivalTime, 303 /// (126374,DCM,"Temporal Derivative Threshold"), included from CID 4109 304 TemporalDerivativeThreshold, 305 /// (126375,DCM,"Maximum Slope"), included from CID 4109 306 MaximumSlope, 307 /// (126376,DCM,"Maximum Difference"), included from CID 4109 308 MaximumDifference, 309 /// (126377,DCM,"Tracer Concentration"), included from CID 4109 310 TracerConcentration, 311 /// (126400,DCM,"Standardized Uptake Value"), included from CID 7180 312 StandardizedUptakeValue, 313 /// (126401,DCM,"SUVbw"), included from CID 7180 314 SUVbw, 315 /// (126402,DCM,"SUVlbm"), included from CID 7180 316 SUVlbm, 317 /// (126406,DCM,"SUVlbm(James128)"), included from CID 7180 318 SUVlbmJames128, 319 /// (126405,DCM,"SUVlbm(Janma)"), included from CID 7180 320 SUVlbmJanma, 321 /// (126403,DCM,"SUVbsa"), included from CID 7180 322 SUVbsa, 323 /// (126404,DCM,"SUVibw"), included from CID 7180 324 SUVibw, 325 /// (128513,DCM,"Absorbed Dose"), included from CID 10070 326 AbsorbedDose, 327 /// (128512,DCM,"Equivalent Dose"), included from CID 10070 328 EquivalentDose, 329 /// (256674009,SCT,"Fat"), included from CID 7180 330 Fat, 331 /// (129100,DCM,"Fat fraction"), included from CID 7180 332 FatFraction, 333 /// (129101,DCM,"Water/fat in phase"), included from CID 7180 334 WaterPerFatInPhase, 335 /// (129102,DCM,"Water/fat out of phase"), included from CID 7180 336 WaterPerFatOutOfPhase, 337 /// (113054,DCM,"Negative enhancement integral"), included from CID 7180 338 NegativeEnhancementIntegral, 339 /// (113059,DCM,"Signal change"), included from CID 7180 340 SignalChange, 341 /// (113060,DCM,"Signal to noise"), included from CID 7180 342 SignalToNoise, 343 /// (113066,DCM,"Time course of signal"), included from CID 7180 344 TimeCourseOfSignal, 345 /// (11713004,SCT,"Water"), included from CID 7180 346 Water, 347 /// (129103,DCM,"Water fraction"), included from CID 7180 348 WaterFraction, 349 /// (130086,DCM,"Relative Linear Stopping Power"), included from CID 7180 350 RelativeLinearStoppingPower, 351 /// (130402,DCM,"Class activation"), included from CID 217 352 ClassActivation, 353 /// (130403,DCM,"Gradient-weighted class activation"), included from CID 217 354 GradientWeightedClassActivation, 355 /// (130404,DCM,"Saliency"), included from CID 217 356 Saliency, 357 /// (410668003,SCT,"Length"), included from CID 7470 358 Length, 359 /// (121211,DCM,"Path length"), included from CID 7470 360 PathLength, 361 /// (121206,DCM,"Distance"), included from CID 7470 362 Distance, 363 /// (103355008,SCT,"Width"), included from CID 7470 364 Width, 365 /// (131197000,SCT,"Depth"), included from CID 7470 366 Depth, 367 /// (81827009,SCT,"Diameter"), included from CID 7470 368 Diameter, 369 /// (103339001,SCT,"Long Axis"), included from CID 7470 370 LongAxis, 371 /// (103340004,SCT,"Short Axis"), included from CID 7470 372 ShortAxis, 373 /// (131187009,SCT,"Major Axis"), included from CID 7470 374 MajorAxis, 375 /// (131188004,SCT,"Minor Axis"), included from CID 7470 376 MinorAxis, 377 /// (131189007,SCT,"Perpendicular Axis"), included from CID 7470 378 PerpendicularAxis, 379 /// (131190003,SCT,"Radius"), included from CID 7470 380 Radius, 381 /// (131191004,SCT,"Perimeter"), included from CID 7470 382 Perimeter, 383 /// (74551000,SCT,"Circumference"), included from CID 7470 384 Circumference, 385 /// (131192006,SCT,"Diameter of circumscribed circle"), included from CID 7470 386 DiameterOfCircumscribedCircle, 387 /// (121207,DCM,"Height"), included from CID 7470 388 Height, 389 /// (121227,DCM,"Line segment length"), included from CID 7470 390 LineSegmentLength, 391 /// (L0JK,IBSI,"Maximum 3D Diameter of a Mesh"), included from CID 7470 392 Maximum3DDiameterOfAMesh, 393 /// (TDIC,IBSI,"Major Axis in 3D Length"), included from CID 7470 394 MajorAxisIn3DLength, 395 /// (P9VJ,IBSI,"Minor Axis in 3D Length"), included from CID 7470 396 MinorAxisIn3DLength, 397 /// (7J51,IBSI,"Least Axis in 3D Length"), included from CID 7470 398 LeastAxisIn3DLength, 399 /// (42798000,SCT,"Area"), included from CID 7471 400 Area, 401 /// (131184002,SCT,"Area of defined region"), included from CID 7471 402 AreaOfDefinedRegion, 403 /// (C0JK,IBSI,"Surface Area of Mesh"), included from CID 7471 404 SurfaceAreaOfMesh, 405 /// (118565006,SCT,"Volume"), included from CID 7472 406 Volume, 407 /// (121216,DCM,"Volume estimated from single 2D region"), included from CID 7472 408 VolumeEstimatedFromSingle2DRegion, 409 /// (121218,DCM,"Volume estimated from two non-coplanar 2D regions"), included from CID 7472 410 VolumeEstimatedFromTwoNonCoplanar2DRegions, 411 /// (121217,DCM,"Volume estimated from three or more non-coplanar 2D regions"), included from CID 7472 412 VolumeEstimatedFromThreeOrMoreNonCoplanar2DRegions, 413 /// (121222,DCM,"Volume of sphere"), included from CID 7472 414 VolumeOfSphere, 415 /// (121221,DCM,"Volume of ellipsoid"), included from CID 7472 416 VolumeOfEllipsoid, 417 /// (121220,DCM,"Volume of circumscribed sphere"), included from CID 7472 418 VolumeOfCircumscribedSphere, 419 /// (121219,DCM,"Volume of bounding three dimensional region"), included from CID 7472 420 VolumeOfBoundingThreeDimensionalRegion, 421 /// (RNU0,IBSI,"Volume of Mesh"), included from CID 7472 422 VolumeOfMesh, 423 /// (YEKZ,IBSI,"Volume from Voxel Summation"), included from CID 7472 424 VolumeFromVoxelSummation 425 }; 426 427 /** (default) constructor 428 ** @param selectedValue coded entry to be selected as the current value (optional). 429 * Should be a valid code according to the DICOM definitions 430 * for this context group, i.e. no checks are performed. 431 * Call DSRContextGroup::checkSelectedValue() if needed. 432 */ 433 CID7469_GenericIntensityAndSizeMeasurements(const DSRCodedEntryValue &selectedValue = DSRCodedEntryValue()); 434 435 /** constructor 436 ** @param selectedValue type mapped to a coded entry that is selected as the 437 * current value 438 ** @param enhancedEncodingMode set enhanced encoding mode for coded entry (if enabled) 439 */ 440 CID7469_GenericIntensityAndSizeMeasurements(const EnumType selectedValue, 441 const OFBool enhancedEncodingMode = OFFalse); 442 443 /** select a coded entry given by its type as the current value 444 ** @param selectedValue type mapped to a coded entry that is selected as the 445 * current value 446 * @param enhancedEncodingMode set enhanced encoding mode for coded entry (if enabled) 447 ** @return status, EC_Normal if successful, an error code otherwise 448 */ 449 virtual OFCondition selectValue(const EnumType selectedValue, 450 const OFBool enhancedEncodingMode = OFFalse); 451 452 // --- static helper functions --- 453 454 /** initialize this context group explicitly. Internally, the list of standard coded 455 * entries is created and initialized by calling getCodes(). 456 ** @note This function can be called multiple times but in case of multi-threaded 457 * applications should be called at least once before any instance of this class 458 * is actually used. For single-threaded applications, there is no need to call 459 * it since the initialization is done implicitly. 460 */ 461 static void initialize(); 462 463 /** cleanup this context group, i.e.\ delete the internal list of standard coded entries. 464 * Usually, there is no need to call this method, but it might be useful in order to 465 * explicitly free the associated memory, e.g. when checking for memory leaks. The list 466 * will be recreated automatically when needed (or when initialize() is called). 467 */ 468 static void cleanup(); 469 470 /** map a given type to the associated coded entry 471 ** @param value type that should be mapped to a coded entry 472 * @param enhancedEncodingMode set enhanced encoding mode for coded entry (if enabled) 473 ** @return coded entry that is associated with the given type 474 */ 475 static DSRCodedEntryValue getCodedEntry(const EnumType value, 476 const OFBool enhancedEncodingMode = OFFalse); 477 478 // --- reintroduce methods from base class 479 480 using DSRContextGroup::selectValue; 481 using DSRContextGroup::findCodedEntry; 482 483 484 protected: 485 486 /// type used for storing and managing the coded entries 487 typedef OFMap<EnumType, DSRBasicCodedEntry> CodeList; 488 489 /** print details on coded entries that are contained in this context group. 490 * See DSRCodedEntryValue::print() for details of the coded entry output. 491 ** @param stream stream to which the output should be printed 492 */ 493 virtual void printCodes(STD_NAMESPACE ostream &stream) const; 494 495 /** search for a given coded entry in this context group 496 ** @param searchForCodedEntry coded entry to be searched for 497 * @param foundCodedEntry pointer to variable that will store the coded entry 498 * (if found and pointer is not NULL) 499 * @param enhancedEncodingMode set enhanced encoding mode for coded entry (if enabled) 500 ** @return result of the search process, also defines the type of the entry 501 */ 502 virtual OFCondition findCodedEntry(const DSRCodedEntryValue &searchForCodedEntry, 503 DSRCodedEntryValue *foundCodedEntry, 504 const OFBool enhancedEncodingMode = OFFalse) const; 505 506 // --- static helper function --- 507 508 /** get list of standard coded entries that are managed by this context group. 509 * Internally, the singleton pattern is used, so the list is initialized only once. 510 * Please note that this function is not thread-safe. Therefore, the initialize() 511 * function can be called before any instance of this class is actually used. 512 ** @return reference to list of coded entries managed by this context group 513 */ 514 static CodeList &getCodes(); 515 516 /** set the "Enhanced Encoding Mode" for a given coded entry 517 ** @param codedEntryValue coded entry for which the enhanced encoding mode is set 518 ** @return status, EC_Normal if successful, an error code otherwise 519 */ 520 static OFCondition setEnhancedEncodingMode(DSRCodedEntryValue &codedEntryValue); 521 522 523 private: 524 525 /// pointer to internal code list (use a static variable for singleton pattern) 526 static CodeList *Codes; 527 }; 528 529 530 /*-------------------* 531 * type definition * 532 *-------------------*/ 533 534 // define short name for the context group class 535 typedef CID7469_GenericIntensityAndSizeMeasurements CMR_CID7469; 536 537 538 #endif 539