DYT/Tool/3rdParty_x64/include/dcmtk/dcmsr/cmr/cid4021.h
2024-11-22 23:19:31 +08:00

383 lines
14 KiB
C++

/*
*
* Copyright (C) 2015-2016, J. Riesmeier, Oldenburg, Germany
* All rights reserved. See COPYRIGHT file for details.
*
* Header file for class CID4021_PETRadiopharmaceutical
*
* Generated automatically from DICOM PS 3.16-2016b
* File created on 2016-04-06 16:26:42 by J. Riesmeier
*
*/
#ifndef CMR_CID4021_H
#define CMR_CID4021_H
#include "dcmtk/config/osconfig.h" /* make sure OS specific configuration is included first */
#include "dcmtk/dcmsr/dsrctxgr.h"
#include "dcmtk/dcmsr/cmr/define.h"
#include "dcmtk/ofstd/ofmap.h"
/*---------------------*
* class declaration *
*---------------------*/
/** Implementation of DCMR Context Group:
* CID 4021 - PET Radiopharmaceutical.
* (type: extensible, version: 20160119)
*/
class DCMTK_CMR_EXPORT CID4021_PETRadiopharmaceutical
: public DSRContextGroup
{
public:
/** types of PET radiopharmaceutical
*/
enum EnumType
{
/// (126752,DCM,"28H1 ^89^Zr")
_28H1_89Zr,
/// (126713,DCM,"2FA F^18^")
_2FA_F18,
/// (126751,DCM,"7D12 ^89^Zr")
_7D12_89Zr,
/// (126750,DCM,"7E11 ^89^Zr")
_7E11_89Zr,
/// (C-B1043,SRT,"Acetate C^11^")
Acetate_C11,
/// (126729,DCM,"AGN-150998 ^89^Zr")
AGN150998_89Zr,
/// (C-B103C,SRT,"Ammonia N^13^")
Ammonia_N13,
/// (126754,DCM,"Anti-B220 ^89^Zr")
AntiB220_89Zr,
/// (126700,DCM,"ATSM Cu^60^")
ATSM_Cu60,
/// (126701,DCM,"ATSM Cu^61^")
ATSM_Cu61,
/// (126702,DCM,"ATSM Cu^62^")
ATSM_Cu62,
/// (C-B07DB,SRT,"ATSM Cu^64^")
ATSM_Cu64,
/// (126722,DCM,"Benralizumab ^89^Zr")
Benralizumab_89Zr,
/// (126516,DCM,"Bevacizumab ^89^Zr")
Bevacizumab_89Zr,
/// (126727,DCM,"Blinatumomab ^89^Zr")
Blinatumomab_89Zr,
/// (126735,DCM,"Brentuximab ^89^Zr")
Brentuximab_89Zr,
/// (C-B07DC,SRT,"Butanol O^15^")
Butanol_O15,
/// (C-B103B,SRT,"Carbon dioxide O^15^")
CarbonDioxide_O15,
/// (C-B1045,SRT,"Carbon monoxide C^11^")
CarbonMonoxide_C11,
/// (C-B103A,SRT,"Carbon monoxide O^15^")
CarbonMonoxide_O15,
/// (C-B103F,SRT,"Carfentanil C^11^")
Carfentanil_C11,
/// (126513,DCM,"Cetuximab ^89^Zr")
Cetuximab_89Zr,
/// (126517,DCM,"cG250-F(ab')(2) ^89^Zr")
CG250Fab2_89Zr,
/// (126703,DCM,"Choline C^11^")
Choline_C11,
/// (126715,DCM,"CLR1404 I^124^")
CLR1404_I124,
/// (126716,DCM,"CLR1404 I^131^")
CLR1404_I131,
/// (126746,DCM,"cMAb U36 ^89^Zr")
CMAbU36_89Zr,
/// (126515,DCM,"cU36 ^89^Zr")
CU36_89Zr,
/// (126762,DCM,"Df-[FK](2) ^89^Zr")
DfFK2_89Zr,
/// (126763,DCM,"Df-[FK](2)-3PEG(4) ^89^Zr")
DfFK23PEG4_89Zr,
/// (126520,DCM,"Df-CD45 ^89^Zr")
DfCD45_89Zr,
/// (126760,DCM,"Df-FK ^89^Zr")
DfFK_89Zr,
/// (126761,DCM,"Df-FK-PEG(3) ^89^Zr")
DfFKPEG3_89Zr,
/// (126747,DCM,"DN30 ^89^Zr")
DN30_89Zr,
/// (126519,DCM,"E4G10 ^89^Zr")
E4G10_89Zr,
/// (126732,DCM,"Ecromeximab ^89^Zr")
Ecromeximab_89Zr,
/// (C2713594,UMLS,"Edotreotide Ga^68^")
Edotreotide_Ga68,
/// (C-B07DD,SRT,"EDTA Ga^68^")
EDTA_Ga68,
/// (126704,DCM,"Fallypride C^11^")
Fallypride_C11,
/// (126705,DCM,"Fallypride F^18^")
Fallypride_F18,
/// (126706,DCM,"FLB 457 C^11^")
FLB457_C11,
/// (126501,DCM,"Florbetaben F^18^")
Florbetaben_F18,
/// (C-E0269,SRT,"Florbetapir F^18^")
Florbetapir_F18,
/// (126503,DCM,"Flubatine F^18^")
Flubatine_F18_126503,
/// (126712,DCM,"Flubatine F^18^")
Flubatine_F18_126712,
/// (C-E0265,SRT,"Fluciclatide F^18^")
Fluciclatide_F18,
/// (C-E026A,SRT,"Fluciclovine F^18^")
Fluciclovine_F18,
/// (C-B07DE,SRT,"Flumazenil C^11^")
Flumazenil_C11,
/// (C-B07DF,SRT,"Flumazenil F^18^")
Flumazenil_F18,
/// (C-B07E0,SRT,"Fluorethyltyrosin F^18^")
Fluorethyltyrosin_F18,
/// (C-B07E4,SRT,"Fluorobenzothiazole F^18^")
Fluorobenzothiazole_F18,
/// (C-E0273,SRT,"Fluorocholine F^18^")
Fluorocholine_F18,
/// (C-B1031,SRT,"Fluorodeoxyglucose F^18^")
Fluorodeoxyglucose_F18,
/// (C1831937,UMLS,"Fluoroestradiol (FES) F^18^")
FluoroestradiolFES_F18,
/// (C1541539,UMLS,"Fluoroetanidazole F^18^")
Fluoroetanidazole_F18,
/// (C-B1034,SRT,"Fluoro-L-dopa F^18^")
FluoroLDopa_F18,
/// (C-B07E2,SRT,"Fluoromethane F^18^")
Fluoromethane_F18,
/// (C-B07E1,SRT,"Fluoromisonidazole F^18^")
Fluoromisonidazole_F18,
/// (C2934038,UMLS,"Fluoropropyl-dihydrotetrabenazine (DTBZ) F^18^")
FluoropropylDihydrotetrabenazineDTBZ_F18,
/// (126707,DCM,"Fluorotriopride F^18^")
Fluorotriopride_F18,
/// (C-B07E3,SRT,"Fluorouracil F^18^")
Fluorouracil_F18,
/// (C-E0267,SRT,"Flutemetamol F^18^")
Flutemetamol_F18,
/// (126748,DCM,"Fresolimumab ^89^Zr")
Fresolimumab_89Zr,
/// (126731,DCM,"GA201 ^89^Zr")
GA201_89Zr,
/// (C-B1046,SRT,"Germanium Ge^68^")
Germanium_Ge68,
/// (126724,DCM,"Glembatumumab vedotin ^89^Zr")
GlembatumumabVedotin_89Zr,
/// (C-B103D,SRT,"Glutamate N^13^")
Glutamate_N13,
/// (126709,DCM,"Glutamine C^11^")
Glutamine_C11,
/// (126710,DCM,"Glutamine C^14^")
Glutamine_C14,
/// (126711,DCM,"Glutamine F^18^")
Glutamine_F18,
/// (C2981788,UMLS,"ISO-1 F^18^")
ISO1_F18,
/// (126514,DCM,"J591 ^89^Zr")
J591_89Zr,
/// (126740,DCM,"Margetuximab ^89^Zr")
Margetuximab_89Zr,
/// (126730,DCM,"MEDI-551 ^89^Zr")
MEDI551_89Zr,
/// (C-B07E5,SRT,"Mespiperone C^11^")
Mespiperone_C11,
/// (C-B103E,SRT,"Methionine C^11^")
Methionine_C11,
/// (126738,DCM,"Mogamulizumab ^89^Zr")
Mogamulizumab_89Zr,
/// (126510,DCM,"Monoclonal Antibody (mAb) ^64^Cu")
MonoclonalAntibodymAb_64Cu,
/// (126511,DCM,"Monoclonal Antibody (mAb) ^89^Zr")
MonoclonalAntibodymAb_89Zr,
/// (C-B07E6,SRT,"Monoclonal antibody I^124^")
MonoclonalAntibody_I124,
/// (126753,DCM,"Nanocolloidal albumin ^89^Zr")
NanocolloidalAlbumin_89Zr,
/// (126714,DCM,"Nifene F^18^")
Nifene_F18,
/// (126721,DCM,"Obinituzimab ^89^Zr")
Obinituzimab_89Zr,
/// (126723,DCM,"Ocaratuzumab ^89^Zr")
Ocaratuzumab_89Zr,
/// (C-B1038,SRT,"Oxygen O^15^")
Oxygen_O15,
/// (C-B1039,SRT,"Oxygen-water O^15^")
OxygenWater_O15,
/// (C-B1044,SRT,"Palmitate C^11^")
Palmitate_C11,
/// (126736,DCM,"Panitumumab ^89^Zr")
Panitumumab_89Zr,
/// (126728,DCM,"Pegdinetanib ^89^Zr")
Pegdinetanib_89Zr,
/// (126725,DCM,"Pinatuzumab vedotin ^89^Zr")
PinatuzumabVedotin_89Zr,
/// (126500,DCM,"Pittsburgh compound B C^11^")
PittsburghCompoundB_C11,
/// (126726,DCM,"Polatuzumab vedotin ^89^Zr")
PolatuzumabVedotin_89Zr,
/// (C-B07E7,SRT,"PTSM Cu^62^")
PTSM_Cu62,
/// (126518,DCM,"R1507 ^89^Zr")
R1507_89Zr,
/// (C-B1042,SRT,"Raclopride C^11^")
Raclopride_C11,
/// (126742,DCM,"Ranibizumab ^89^Zr")
Ranibizumab_89Zr,
/// (126737,DCM,"Rituximab ^89^Zr")
Rituximab_89Zr,
/// (126755,DCM,"RO5323441 ^89^Zr")
RO5323441_89Zr,
/// (126756,DCM,"RO542908 ^89^Zr")
RO542908_89Zr,
/// (126733,DCM,"Roledumab ^89^Zr")
Roledumab_89Zr,
/// (C-B1037,SRT,"Rubidium chloride Rb^82^")
RubidiumChloride_Rb82,
/// (126741,DCM,"SAR3419 ^89^Zr")
SAR3419_89Zr,
/// (C-B1032,SRT,"Sodium fluoride F^18^")
SodiumFluoride_F18,
/// (C-B07E8,SRT,"Sodium iodide I^124^")
SodiumIodide_I124,
/// (C-B1047,SRT,"Sodium Na^22^")
Sodium_Na22,
/// (C-B1033,SRT,"Spiperone F^18^")
Spiperone_F18,
/// (126502,DCM,"T807 F^18^")
T807_F18,
/// (C-B1036,SRT,"Thymidine (FLT) F^18^")
ThymidineFLT_F18,
/// (126512,DCM,"Trastuzumab ^89^Zr")
Trastuzumab_89Zr,
/// (126749,DCM,"TRC105 ^89^Zr")
TRC105_89Zr,
/// (C1742831,UMLS,"tyrosine-3-octreotate Ga^68^")
Tyrosine3Octreotate_Ga68,
/// (126739,DCM,"Ublituximab ^89^Zr")
Ublituximab_89Zr,
/// (126734,DCM,"XmAb5574 ^89^Zr")
XmAb5574_89Zr
};
/** (default) constructor
** @param selectedValue coded entry to be selected as the current value (optional).
* Should be a valid code according to the DICOM definitions
* for this context group, i.e. no checks are performed.
* Call DSRContextGroup::checkSelectedValue() if needed.
*/
CID4021_PETRadiopharmaceutical(const DSRCodedEntryValue &selectedValue = DSRCodedEntryValue());
/** constructor
** @param selectedValue type mapped to a coded entry that is selected as the
* current value
** @param enhancedEncodingMode set enhanced encoding mode for coded entry (if enabled)
*/
CID4021_PETRadiopharmaceutical(const EnumType selectedValue,
const OFBool enhancedEncodingMode = OFFalse);
/** select a coded entry given by its type as the current value
** @param selectedValue type mapped to a coded entry that is selected as the
* current value
* @param enhancedEncodingMode set enhanced encoding mode for coded entry (if enabled)
** @return status, EC_Normal if successful, an error code otherwise
*/
virtual OFCondition selectValue(const EnumType selectedValue,
const OFBool enhancedEncodingMode = OFFalse);
// --- static helper functions ---
/** initialize this context group explicitly. Internally, the list of standard coded
* entries is created and initialized by calling getCodes().
** @note This function can be called multiple times but in case of multi-threaded
* applications should be called at least once before any instance of this class
* is actually used. For single-threaded applications, there is no need to call
* it since the initialization is done implicitly.
*/
static void initialize();
/** cleanup this context group, i.e.\ delete the internal list of standard coded entries.
* Usually, there is no need to call this method, but it might be useful in order to
* explicitly free the associated memory, e.g. when checking for memory leaks. The list
* will be recreated automatically when needed (or when initialize() is called).
*/
static void cleanup();
/** map a given type to the associated coded entry
** @param value type that should be mapped to a coded entry
* @param enhancedEncodingMode set enhanced encoding mode for coded entry (if enabled)
** @return coded entry that is associated with the given type
*/
static DSRCodedEntryValue getCodedEntry(const EnumType value,
const OFBool enhancedEncodingMode = OFFalse);
// --- reintroduce methods from base class
using DSRContextGroup::selectValue;
using DSRContextGroup::findCodedEntry;
protected:
/// type used for storing and managing the coded entries
typedef OFMap<EnumType, DSRBasicCodedEntry> CodeList;
/** print details on coded entries that are contained in this context group.
* See DSRCodedEntryValue::print() for details of the coded entry output.
** @param stream stream to which the output should be printed
*/
virtual void printCodes(STD_NAMESPACE ostream &stream) const;
/** search for a given coded entry in this context group
** @param searchForCodedEntry coded entry to be searched for
* @param foundCodedEntry pointer to variable that will store the coded entry
* (if found and pointer is not NULL)
* @param enhancedEncodingMode set enhanced encoding mode for coded entry (if enabled)
** @return result of the search process, also defines the type of the entry
*/
virtual OFCondition findCodedEntry(const DSRCodedEntryValue &searchForCodedEntry,
DSRCodedEntryValue *foundCodedEntry,
const OFBool enhancedEncodingMode = OFFalse) const;
// --- static helper function ---
/** get list of standard coded entries that are managed by this context group.
* Internally, the singleton pattern is used, so the list is initialized only once.
* Please note that this function is not thread-safe. Therefore, the initialize()
* function can be called before any instance of this class is actually used.
** @return reference to list of coded entries managed by this context group
*/
static CodeList &getCodes();
/** set the "Enhanced Encoding Mode" for a given coded entry
** @param codedEntryValue coded entry for which the enhanced encoding mode is set
** @return status, EC_Normal if successful, an error code otherwise
*/
static OFCondition setEnhancedEncodingMode(DSRCodedEntryValue &codedEntryValue);
private:
/// pointer to internal code list (use a static variable for singleton pattern)
static CodeList *Codes;
};
/*-------------------*
* type definition *
*-------------------*/
// define short name for the context group class
typedef CID4021_PETRadiopharmaceutical CMR_CID4021;
#endif