Ariles
Namespaces | Macros | Functions
basic.h File Reference

Detailed Description

Author
Alexander Sherikov

Definition in file basic.h.

Go to the source code of this file.

#include "../internal/helpers.h"
#include "../visitors/count.h"

Namespaces

 ariles2
 
 ariles2::read
 
 ariles2::write
 
 ariles2::compare
 
 ariles2::defaults
 
 ariles2::process
 
 ariles2::copyfrom
 
 ariles2::copyto
 

Macros

#define ARILES2_BASIC_TYPE(type)
 
#define ARILES2_BASIC_TYPE(type)
 
#define ARILES2_BASIC_TYPE(type)
 
#define ARILES2_COMPARE_TYPES_LIST
 Generate compare methods for basic types. More...
 
#define ARILES2_BASIC_TYPE(type)
 
#define ARILES2_BASIC_TYPE(type)
 
#define ARILES2_BASIC_TYPE(type)
 

Functions

template<class t_Visitor , class t_Entry >
void ARILES2_VISIBILITY_ATTRIBUTE ariles2::read::apply_read (t_Visitor &visitor, t_Entry &entry, const typename t_Visitor::Parameters &parameters, ARILES2_IS_BASE_ENABLER(ariles2::read::Base, t_Entry))
 
template<class t_Visitor , typename t_Enumeration >
void ARILES2_VISIBILITY_ATTRIBUTE ariles2::read::apply_read (t_Visitor &visitor, t_Enumeration &entry, const typename t_Visitor::Parameters &, ARILES2_IS_ENUM_ENABLER(t_Enumeration))
 Read configuration entry (an enum) This function is necessary since an explicit casting to integer is needed. More...
 
template<class t_Visitor , class t_Entry >
void ARILES2_VISIBILITY_ATTRIBUTE ariles2::write::apply_write (t_Visitor &writer, const t_Entry &entry, const typename t_Visitor::Parameters &parameters, ARILES2_IS_BASE_ENABLER(ariles2::write::Base, t_Entry))
 
template<class t_Visitor , typename t_Enumeration >
void ARILES2_VISIBILITY_ATTRIBUTE ariles2::write::apply_write (t_Visitor &writer, const t_Enumeration entry, const typename t_Visitor::Parameters &param, ARILES2_IS_ENUM_ENABLER(t_Enumeration))
 
template<class t_Visitor , class t_Left , class t_Right >
void ARILES2_VISIBILITY_ATTRIBUTE ariles2::compare::apply_compare (t_Visitor &visitor, const t_Left &left, const t_Right &right, const typename t_Visitor::Parameters &param, ARILES2_IS_BASE_ENABLER(ariles2::Ariles, t_Left))
 
template<class t_Visitor , typename t_Enumeration >
void ARILES2_VISIBILITY_ATTRIBUTE ariles2::compare::apply_compare (t_Visitor &visitor, const t_Enumeration &left, const t_Enumeration &right, const typename t_Visitor::Parameters &, ARILES2_IS_ENUM_ENABLER(t_Enumeration))
 
template<class t_Visitor , class t_Scalar >
ARILES2_COMPARE_TYPES_LIST void ARILES2_VISIBILITY_ATTRIBUTE ariles2::compare::apply_compare (t_Visitor &visitor, const std::complex< t_Scalar > &left, const std::complex< t_Scalar > &right, const typename t_Visitor::Parameters &param)
 
template<class t_Visitor >
void ARILES2_VISIBILITY_ATTRIBUTE ariles2::compare::apply_compare (t_Visitor &visitor, const float &left, const float &right, const typename t_Visitor::Parameters &param)
 
template<class t_Visitor >
void ARILES2_VISIBILITY_ATTRIBUTE ariles2::compare::apply_compare (t_Visitor &visitor, const double &left, const double &right, const typename t_Visitor::Parameters &param)
 
template<class t_Visitor , class t_Entry >
void ARILES2_VISIBILITY_ATTRIBUTE ariles2::defaults::apply_defaults (const t_Visitor &visitor, t_Entry &entry, const typename t_Visitor::Parameters &param, ARILES2_IS_BASE_ENABLER(ariles2::defaults::Base, t_Entry))
 
template<class t_Visitor , typename t_Enumeration >
void ARILES2_VISIBILITY_ATTRIBUTE ariles2::defaults::apply_defaults (const t_Visitor &, t_Enumeration &, const typename t_Visitor::Parameters &, ARILES2_IS_ENUM_ENABLER(t_Enumeration))
 
template<class t_Visitor , typename t_Scalar >
void ARILES2_VISIBILITY_ATTRIBUTE ariles2::defaults::apply_defaults (const t_Visitor &, std::complex< t_Scalar > &entry, const typename t_Visitor::Parameters &param)
 
template<class t_Visitor , class t_Entry >
void ARILES2_VISIBILITY_ATTRIBUTE ariles2::process::apply_process (const t_Visitor &visitor, t_Entry &entry, const typename t_Visitor::Parameters &param, ARILES2_IS_BASE_ENABLER(ariles2::Ariles, t_Entry))
 
template<class t_Visitor , class t_Entry >
void ARILES2_VISIBILITY_ATTRIBUTE ariles2::process::apply_process (const t_Visitor &, t_Entry &, const typename t_Visitor::Parameters &, ARILES2_IS_BASE_DISABLER(ariles2::Ariles, t_Entry))
 
template<class t_Visitor , class t_Left , class t_Right >
void ARILES2_VISIBILITY_ATTRIBUTE ariles2::copyfrom::apply_copyfrom (t_Visitor &visitor, t_Left &left, const t_Right &right, const typename t_Visitor::Parameters &param, ARILES2_IS_BASE_ENABLER(ariles2::Ariles, t_Left))
 
template<class t_Visitor , typename t_Enumeration >
ARILES2_BASIC_TYPES_LIST ARILES2_COMPLEX_NUMBER_TYPES_LIST void ARILES2_VISIBILITY_ATTRIBUTE ariles2::copyfrom::apply_copyfrom (t_Visitor &, t_Enumeration &left, const t_Enumeration &right, const typename t_Visitor::Parameters &, ARILES2_IS_ENUM_ENABLER(t_Enumeration))
 
template<class t_Visitor , class t_Left , class t_Right >
void ARILES2_VISIBILITY_ATTRIBUTE ariles2::copyto::apply_copyto (t_Visitor &visitor, const t_Left &left, t_Right &right, const typename t_Visitor::Parameters &param, ARILES2_IS_BASE_ENABLER(ariles2::Ariles, t_Left))
 
template<class t_Visitor , typename t_Enumeration >
ARILES2_BASIC_TYPES_LIST ARILES2_COMPLEX_NUMBER_TYPES_LIST void ARILES2_VISIBILITY_ATTRIBUTE ariles2::copyto::apply_copyto (t_Visitor &, const t_Enumeration &left, t_Enumeration &right, const typename t_Visitor::Parameters &, ARILES2_IS_ENUM_ENABLER(t_Enumeration))
 

Macro Definition Documentation

◆ ARILES2_BASIC_TYPE [1/6]

#define ARILES2_BASIC_TYPE (   type)
Value:
template <class t_Visitor> \
t_Visitor &visitor, type &entry, const typename t_Visitor::Parameters &param) \
{ \
ARILES2_TRACE_FUNCTION; \
ARILES2_UNUSED_ARG(param); \
visitor.readElement(entry); \
}

Definition at line 384 of file basic.h.

◆ ARILES2_BASIC_TYPE [2/6]

#define ARILES2_BASIC_TYPE (   type)
Value:
template <class t_Visitor> \
t_Visitor &writer, const type &entry, const typename t_Visitor::Parameters &param) \
{ \
ARILES2_TRACE_FUNCTION; \
writer.writeElement(entry, param); \
}

Definition at line 384 of file basic.h.

◆ ARILES2_BASIC_TYPE [3/6]

#define ARILES2_BASIC_TYPE (   type)
Value:
template <class t_Visitor> \
t_Visitor &visitor, const type &left, const type &right, const typename t_Visitor::Parameters &) \
{ \
visitor.equal_ &= (left == right); \
}

Definition at line 384 of file basic.h.

◆ ARILES2_BASIC_TYPE [4/6]

#define ARILES2_BASIC_TYPE (   type)
Value:
template <class t_Visitor> \
const t_Visitor &, type &entry, const typename t_Visitor::Parameters &param) \
{ \
ARILES2_TRACE_FUNCTION; \
entry = param.template getDefault<type>(); \
}

Definition at line 384 of file basic.h.

◆ ARILES2_BASIC_TYPE [5/6]

#define ARILES2_BASIC_TYPE (   type)
Value:
template <class t_Visitor> \
t_Visitor &, type &left, const type &right, const typename t_Visitor::Parameters &) \
{ \
ARILES2_TRACE_FUNCTION; \
left = right; \
}

Definition at line 384 of file basic.h.

◆ ARILES2_BASIC_TYPE [6/6]

#define ARILES2_BASIC_TYPE (   type)
Value:
template <class t_Visitor> \
t_Visitor &, const type &left, type &right, const typename t_Visitor::Parameters &) \
{ \
ARILES2_TRACE_FUNCTION; \
right = left; \
}

Definition at line 384 of file basic.h.

◆ ARILES2_COMPARE_TYPES_LIST

#define ARILES2_COMPARE_TYPES_LIST
Value:
ARILES2_BASIC_TYPE(std::string)

Generate compare methods for basic types.

Definition at line 185 of file basic.h.

ariles2::copyto::apply_copyto
ARILES2_BASIC_TYPES_LIST ARILES2_COMPLEX_NUMBER_TYPES_LIST void ARILES2_VISIBILITY_ATTRIBUTE apply_copyto(t_Visitor &, const t_Enumeration &left, t_Enumeration &right, const typename t_Visitor::Parameters &, ARILES2_IS_ENUM_ENABLER(t_Enumeration))
Definition: basic.h:399
ariles2::defaults::apply_defaults
void ARILES2_VISIBILITY_ATTRIBUTE apply_defaults(const t_Visitor &, std::complex< t_Scalar > &entry, const typename t_Visitor::Parameters &param)
Definition: basic.h:260
ariles2::copyfrom::apply_copyfrom
ARILES2_BASIC_TYPES_LIST ARILES2_COMPLEX_NUMBER_TYPES_LIST void ARILES2_VISIBILITY_ATTRIBUTE apply_copyfrom(t_Visitor &, t_Enumeration &left, const t_Enumeration &right, const typename t_Visitor::Parameters &, ARILES2_IS_ENUM_ENABLER(t_Enumeration))
Definition: basic.h:353
ariles2::write::apply_write
void ARILES2_VISIBILITY_ATTRIBUTE apply_write(t_Visitor &writer, const t_Enumeration entry, const typename t_Visitor::Parameters &param, ARILES2_IS_ENUM_ENABLER(t_Enumeration))
Definition: basic.h:109
t_Visitor
ariles2::read::apply_read
void ARILES2_VISIBILITY_ATTRIBUTE apply_read(t_Visitor &visitor, t_Enumeration &entry, const typename t_Visitor::Parameters &, ARILES2_IS_ENUM_ENABLER(t_Enumeration))
Read configuration entry (an enum) This function is necessary since an explicit casting to integer is...
Definition: basic.h:48
ARILES2_VISIBILITY_ATTRIBUTE
#define ARILES2_VISIBILITY_ATTRIBUTE
Definition: helpers.h:138
ARILES2_BASIC_TYPE
#define ARILES2_BASIC_TYPE(type)
Definition: basic.h:384
ariles2::compare::apply_compare
void ARILES2_VISIBILITY_ATTRIBUTE apply_compare(t_Visitor &visitor, const double &left, const double &right, const typename t_Visitor::Parameters &param)
Definition: basic.h:220