TBCI Numerical high perf. C++ Library 2.8.0
tbci_traits.h
Go to the documentation of this file.
1
10
11#ifndef H_TBCI_TRAITS_H
12#define H_TBCI_TRAITS_H
13
14#include "tbci/basics.h"
15
17
43template <typename T>
44class tbci_traits NOINST
45{
46 public:
47 typedef T& refval_type;
48 typedef const T& const_refval_type;
50 typedef const T& loop_const_refval_type;
51};
52
56#define SPEC_TBCI_TRAITS_ALWAYS_COPY(TYPE) \
57template <> \
58class tbci_traits< TYPE > NOINST \
59{ \
60 public: \
61 typedef TYPE refval_type; \
62 typedef TYPE /*const*/ const_refval_type; \
63 typedef TYPE loop_refval_type; \
64 typedef TYPE /*const*/ loop_const_refval_type; \
65}
66
71#define SPEC_TBCI_TRAITS_LOOP_COPY(TYPE) \
72template <> \
73class tbci_traits< TYPE > NOINST \
74{ \
75 public: \
76 typedef TYPE& refval_type; \
77 typedef const TYPE& const_refval_type; \
78 typedef TYPE loop_refval_type; \
79 typedef TYPE /*const*/ loop_const_refval_type; \
80}
81
82
93
105
107
108#ifdef HAVE_LONG_DOUBLE
110SPEC_TBCI_TRAITS_ALWAYS_COPY(long double*);
111#endif
112#ifdef HAVE_LONG_LONG
115#endif
116// do_vv_comp
118
120
121#endif /* H_TBCI_TRAITS_H */
#define NAMESPACE_END
Definition basics.h:323
#define NAMESPACE_TBCI
Definition basics.h:317
#define T
Definition bdmatlib.cc:20
const T & loop_const_refval_type
Definition tbci_traits.h:50
T & loop_refval_type
Definition tbci_traits.h:49
const T & const_refval_type
Definition tbci_traits.h:48
T & refval_type
Definition tbci_traits.h:47
#define SPEC_TBCI_TRAITS_ALWAYS_COPY(TYPE)
Definition tbci_traits.h:56