DATAKIT API  V2025.1
Dtk_Val Class Reference

Public Member Functions

Dtk_ErrorStatus _Store (void *)
 
 Dtk_Val ()
 
 Dtk_Val (const Dtk_Char8 val)
 
 Dtk_Val (const Dtk_dir &val)
 
 Dtk_Val (const Dtk_Double64 val)
 
 Dtk_Val (const Dtk_Int32 val)
 
 Dtk_Val (const Dtk_pnt &val)
 
 Dtk_Val (const Dtk_RGB &val)
 
 Dtk_Val (const Dtk_string &val)
 
 Dtk_Val (const Dtk_tab< Dtk_Int32 > &val)
 
 Dtk_Val (const Dtk_UUID &val)
 
 Dtk_Val (const Dtk_Val &val)
 
 Dtk_Val (Dtk_string &&)
 
 Dtk_Val (Dtk_tab< Dtk_Char8 > bd)
 
 Dtk_Val (Dtk_tab< Dtk_Int32 > &&)
 
 Dtk_Val (Dtk_Val &&) DTK_NOEXCEPT
 
template<typename T >
std::pair< bool, T > Get () const
 
Dtk_tab< Dtk_Char8GetBufferData (Dtk_status &st=Dtk_status::GetDefaultStatus()) const
 
char GetChar (Dtk_status &st=Dtk_status::GetDefaultStatus()) const
 
Dtk_dir GetDir (Dtk_status &st=Dtk_status::GetDefaultStatus()) const
 
double GetDouble (Dtk_status &st=Dtk_status::GetDefaultStatus()) const
 
template<typename T >
T * GetIf ()
 
template<typename T >
T const * GetIf () const
 
int GetInt (Dtk_status &st=Dtk_status::GetDefaultStatus()) const
 
Dtk_tab< Dtk_Int32GetIntArray (Dtk_status &st=Dtk_status::GetDefaultStatus()) const
 
Dtk_pnt GetPnt (Dtk_status &st=Dtk_status::GetDefaultStatus()) const
 
Dtk_RGB GetRgb (Dtk_status &st=Dtk_status::GetDefaultStatus()) const
 
Dtk_string GetString (Dtk_status &st=Dtk_status::GetDefaultStatus()) const
 
Dtk_UUID GetUuid (Dtk_status &st=Dtk_status::GetDefaultStatus()) const
 
Dtk_val_type GetValType () const
 
Dtk_Valoperator= (const Dtk_Val &s)
 
Dtk_Valoperator= (Dtk_Val &&) DTK_NOEXCEPT
 
 ~Dtk_Val ()
 

Protected Member Functions

void _copy (const Dtk_Val &s)
 
void _init () DTK_NOEXCEPT
 
void _move (Dtk_Val &&) DTK_NOEXCEPT
 
void _reset () DTK_NOEXCEPT
 

Protected Attributes

enum Dtk_val_type _type
 
union {
   Dtk_tab< Dtk_Char8 > *   buffer_val
 
   Dtk_Char8   char_val
 
   Dtk_dir *   dir_val
 
   Dtk_Double64   double_val
 
   Dtk_Int32   int_val
 
   Dtk_pnt *   pnt_val
 
   Dtk_RGB *   rgb_val
 
   Dtk_string *   string_val
 
   Dtk_tab< Dtk_Int32 > *   tab_val
 
   Dtk_UUID *   uuid_val
 
_val
 

Friends

std::ostream & operator<< (std::ostream &o, const Dtk_Val &d)
 

Constructor & Destructor Documentation

◆ Dtk_Val() [1/15]

Dtk_Val::Dtk_Val ( )

◆ Dtk_Val() [2/15]

Dtk_Val::Dtk_Val ( const Dtk_Int32  val)

◆ Dtk_Val() [3/15]

Dtk_Val::Dtk_Val ( const Dtk_Char8  val)

◆ Dtk_Val() [4/15]

Dtk_Val::Dtk_Val ( const Dtk_Double64  val)

◆ Dtk_Val() [5/15]

Dtk_Val::Dtk_Val ( const Dtk_Val val)

◆ Dtk_Val() [6/15]

Dtk_Val::Dtk_Val ( Dtk_Val &&  )

◆ Dtk_Val() [7/15]

Dtk_Val::Dtk_Val ( const Dtk_string val)

◆ Dtk_Val() [8/15]

Dtk_Val::Dtk_Val ( Dtk_string &&  )

◆ Dtk_Val() [9/15]

Dtk_Val::Dtk_Val ( const Dtk_RGB val)

◆ Dtk_Val() [10/15]

Dtk_Val::Dtk_Val ( const Dtk_pnt val)

◆ Dtk_Val() [11/15]

Dtk_Val::Dtk_Val ( const Dtk_dir val)

◆ Dtk_Val() [12/15]

Dtk_Val::Dtk_Val ( const Dtk_UUID val)

◆ Dtk_Val() [13/15]

Dtk_Val::Dtk_Val ( const Dtk_tab< Dtk_Int32 > &  val)

◆ Dtk_Val() [14/15]

Dtk_Val::Dtk_Val ( Dtk_tab< Dtk_Int32 > &&  )

◆ Dtk_Val() [15/15]

Dtk_Val::Dtk_Val ( Dtk_tab< Dtk_Char8 bd)

◆ ~Dtk_Val()

Dtk_Val::~Dtk_Val ( )

Member Function Documentation

◆ _copy()

void Dtk_Val::_copy ( const Dtk_Val s)
protected

◆ _init()

void Dtk_Val::_init ( )
protected

◆ _move()

void Dtk_Val::_move ( Dtk_Val &&  )
protected

◆ _reset()

void Dtk_Val::_reset ( )
protected

◆ _Store()

Dtk_ErrorStatus Dtk_Val::_Store ( void *  )

◆ Get()

template<typename T >
std::pair<bool, T> Dtk_Val::Get ( ) const
117  {
118  typedef Dtk_Detail_Val::Binder<T> Binded;
119  return ( _type == Binded::value )
120  ? std::make_pair( true, *Binded::GetPointer( &_val ) )
121  : std::make_pair( false, T() );
122  }

◆ GetBufferData()

Dtk_tab<Dtk_Char8> Dtk_Val::GetBufferData ( Dtk_status st = Dtk_status::GetDefaultStatus()) const

◆ GetChar()

char Dtk_Val::GetChar ( Dtk_status st = Dtk_status::GetDefaultStatus()) const

◆ GetDir()

Dtk_dir Dtk_Val::GetDir ( Dtk_status st = Dtk_status::GetDefaultStatus()) const

◆ GetDouble()

double Dtk_Val::GetDouble ( Dtk_status st = Dtk_status::GetDefaultStatus()) const

◆ GetIf() [1/2]

template<typename T >
T* Dtk_Val::GetIf ( )
124  {
125  typedef Dtk_Detail_Val::Binder<T> Binded;
126  return ( _type == Binded::value ) ? Binded::GetPointer( &_val ) : nullptr;
127  }

◆ GetIf() [2/2]

template<typename T >
T const* Dtk_Val::GetIf ( ) const
129  {
130  typedef Dtk_Detail_Val::Binder<T> Binded;
131  return ( _type == Binded::value ) ? Binded::GetPointer( &_val ) : nullptr;
132  }

◆ GetInt()

int Dtk_Val::GetInt ( Dtk_status st = Dtk_status::GetDefaultStatus()) const

◆ GetIntArray()

Dtk_tab< Dtk_Int32 > Dtk_Val::GetIntArray ( Dtk_status st = Dtk_status::GetDefaultStatus()) const

◆ GetPnt()

Dtk_pnt Dtk_Val::GetPnt ( Dtk_status st = Dtk_status::GetDefaultStatus()) const

◆ GetRgb()

Dtk_RGB Dtk_Val::GetRgb ( Dtk_status st = Dtk_status::GetDefaultStatus()) const

◆ GetString()

Dtk_string Dtk_Val::GetString ( Dtk_status st = Dtk_status::GetDefaultStatus()) const

◆ GetUuid()

Dtk_UUID Dtk_Val::GetUuid ( Dtk_status st = Dtk_status::GetDefaultStatus()) const

◆ GetValType()

Dtk_val_type Dtk_Val::GetValType ( ) const

◆ operator=() [1/2]

Dtk_Val& Dtk_Val::operator= ( const Dtk_Val s)

◆ operator=() [2/2]

Dtk_Val& Dtk_Val::operator= ( Dtk_Val &&  )

Friends And Related Function Documentation

◆ operator<<

std::ostream& operator<< ( std::ostream &  o,
const Dtk_Val d 
)
friend

Field Documentation

◆ _type

enum Dtk_val_type Dtk_Val::_type
protected

◆ _val

union { ... } Dtk_Val::_val

◆ buffer_val

Dtk_tab<Dtk_Char8>* Dtk_Val::buffer_val

◆ char_val

Dtk_Char8 Dtk_Val::char_val

◆ dir_val

Dtk_dir* Dtk_Val::dir_val

◆ double_val

Dtk_Double64 Dtk_Val::double_val

◆ int_val

Dtk_Int32 Dtk_Val::int_val

◆ pnt_val

Dtk_pnt* Dtk_Val::pnt_val

◆ rgb_val

Dtk_RGB* Dtk_Val::rgb_val

◆ string_val

Dtk_string* Dtk_Val::string_val

◆ tab_val

Dtk_tab< Dtk_Int32 >* Dtk_Val::tab_val

◆ uuid_val

Dtk_UUID* Dtk_Val::uuid_val
Dtk_Val::_type
enum Dtk_val_type _type
Definition: dtk_val.hpp:81
Dtk_Detail_Val::Binder
Definition: dtk_val.hpp:49
Dtk_Val::_val
union Dtk_Val::@0 _val