13#ifndef DCM_TREE_DICT_H
14#define DCM_TREE_DICT_H
21 #pragma warning (push)
22 #pragma warning (disable : 4251 4350)
46 class LoadLibraryDelegate;
134 inline bool isTagNameKnown(
const std::string &tagName)
const {
return hasInfoForTagName(tagName); }
139 virtual std::vector<std::string>
allNormalTagNames()
const {
return std::vector<std::string>(); }
151 #pragma warning (pop)
static void setSingleton(Const_DictPtr singleton)
The concrete singleton is set by the implementing DLL.
virtual void postInitialize() const
Do some init after the implementing DLL was loaded.
bool isTagIdKnown(const TagId &tagIdParam) const
convenience methods which call hasInfoForTagId() or hasInfoForTagName()
virtual std::string transferSyntaxUID(TransferSyntax transfersyntax) const =0
convert the enum to its uid needs to be implemented by child classes
virtual TagId tagId(const std::string &name) const
get the tag id for the given name uses info from child classes
virtual TagInfo info(const std::string &name) const =0
method to be implemented by child-classes to provide information about a tag with the given name may ...
bool isTagNameKnown(const std::string &tagName) const
virtual Vr vr(const TagId &tagid) const
get the DICOM VR of the given tag uses info from child classes
virtual TagValueMultiplicity multiplicity(const TagId &tagid) const
get the multiplicity (min/max) of values of the given tag uses info from child classes
virtual TagInfo info(const TagId &tagid) const =0
method to be implemented by child-classes to provide information about a given tag may throw if an un...
static Const_DictPtr singleton(DCMTree_Utils::LoadLibraryDelegate *delegate=nullptr)
returns the singleton
virtual std::vector< std::string > allNormalTagNames() const
Returns a list of all known normal (non-repeating) tag names, e.g.
virtual ~Dict()
dtor, public for boost's sake
virtual bool hasInfoForTagId(const TagId &tagId) const =0
method to check if a TagInfo exists for the given tag id
virtual std::string name(const TagId &tagid) const =0
get the name of the given tag uses info from child classes
virtual bool hasInfoForTagName(const std::string &tagName) const =0
method to check if a TagInfo exists for the given tag name
Class to carry meta-information about a specific tag.
the delegate who is responsible for loading the specific DICOM library used in initialization,...
Target mlrange_cast(Source arg)
Generic version of checked ML casts.
dictionary class to provide dicom-meta information
class to dump a DCMTree dicom message into a human readable file this class could be used as a starte...
TransferSyntax
DICOM transfer syntaxes.
boost::shared_ptr< const Dict > Const_DictPtr
std::pair< unsigned, unsigned > TagValueMultiplicity
the multiplicity of a tag, first=min second=max
boost::shared_ptr< Dict > DictPtr
shared-pointer to a DCMTree::Dict