vega
Public Types | Public Member Functions | Static Public Attributes | Friends | List of all members
vega::Tag Class Reference

Class for working with DICOM data element tags. More...

#include <vega/tag.h>

Collaboration diagram for vega::Tag:
Collaboration graph
[legend]

Public Types

typedef uint16_t group_type
 
typedef uint16_t element_type
 
typedef uint32_t tag_type
 

Public Member Functions

constexpr Tag ()
 
constexpr Tag (tag_type tag)
 
constexpr Tag (group_type group, element_type element)
 
const group_typegroup () const
 
group_typegroup ()
 
const element_typeelement () const
 
element_typeelement ()
 
tag_type tag () const
 
std::string str () const
 
bool is_file_meta () const
 
bool operator== (const Tag &other) const
 
bool operator!= (const Tag &other) const
 
bool operator< (const Tag &other) const
 
bool is_item_tag () const
 
bool is_item_delimitation_tag () const
 
bool is_sequence_delimitation_tag () const
 
bool is_private () const
 
bool is_private_owner () const
 

Static Public Attributes

static const tag_type ITEM_TAG
 
static const tag_type ITEM_DELIMITATION_TAG
 
static const tag_type SEQ_DELIMITATION_TAG
 
static const tag_type PIXEL_DATA_TAG
 
static const Tag ITEM
 
static const Tag ITEM_DELIMITATION
 
static const Tag SEQ_DELIMITATION
 
static const Tag PIXEL_DATA
 

Friends

std::ostream & operator<< (std::ostream &os, const Tag &tag)
 

Detailed Description

Class for working with DICOM data element tags.

A DICOM tag is made of two 16 bit unsigned integers called group() and element(). These are usually written as 4 character hexadecimal numbers, with the group number coming before the element number, e.g. (0x1234,0xff00).

Member Typedef Documentation

◆ element_type

typedef uint16_t vega::Tag::element_type

◆ group_type

typedef uint16_t vega::Tag::group_type

◆ tag_type

typedef uint32_t vega::Tag::tag_type

Constructor & Destructor Documentation

◆ Tag() [1/3]

constexpr vega::Tag::Tag ( )
inline

◆ Tag() [2/3]

constexpr vega::Tag::Tag ( tag_type  tag)
inlineexplicit

◆ Tag() [3/3]

constexpr vega::Tag::Tag ( group_type  group,
element_type  element 
)
inlineexplicit

Member Function Documentation

◆ element() [1/2]

const element_type& vega::Tag::element ( ) const
Returns
a reference to the element part of this Tag.

◆ element() [2/2]

element_type& vega::Tag::element ( )
Returns
a reference to the element part of this Tag.

◆ group() [1/2]

const group_type& vega::Tag::group ( ) const
Returns
a reference to the group part of this Tag.

◆ group() [2/2]

group_type& vega::Tag::group ( )
Returns
a reference to the group part of this Tag.

◆ is_file_meta()

bool vega::Tag::is_file_meta ( ) const

◆ is_item_delimitation_tag()

bool vega::Tag::is_item_delimitation_tag ( ) const

◆ is_item_tag()

bool vega::Tag::is_item_tag ( ) const

◆ is_private()

bool vega::Tag::is_private ( ) const

◆ is_private_owner()

bool vega::Tag::is_private_owner ( ) const

◆ is_sequence_delimitation_tag()

bool vega::Tag::is_sequence_delimitation_tag ( ) const

◆ operator!=()

bool vega::Tag::operator!= ( const Tag other) const

◆ operator<()

bool vega::Tag::operator< ( const Tag other) const

◆ operator==()

bool vega::Tag::operator== ( const Tag other) const

◆ str()

std::string vega::Tag::str ( ) const

◆ tag()

tag_type vega::Tag::tag ( ) const

Friends And Related Function Documentation

◆ operator<<

std::ostream& operator<< ( std::ostream &  os,
const Tag tag 
)
friend

Member Data Documentation

◆ ITEM

const Tag vega::Tag::ITEM
static

◆ ITEM_DELIMITATION

const Tag vega::Tag::ITEM_DELIMITATION
static

◆ ITEM_DELIMITATION_TAG

const tag_type vega::Tag::ITEM_DELIMITATION_TAG
static

◆ ITEM_TAG

const tag_type vega::Tag::ITEM_TAG
static

◆ PIXEL_DATA

const Tag vega::Tag::PIXEL_DATA
static

◆ PIXEL_DATA_TAG

const tag_type vega::Tag::PIXEL_DATA_TAG
static

◆ SEQ_DELIMITATION

const Tag vega::Tag::SEQ_DELIMITATION
static

◆ SEQ_DELIMITATION_TAG

const tag_type vega::Tag::SEQ_DELIMITATION_TAG
static

The documentation for this class was generated from the following file: