12#ifndef ARCANE_CORE_RAWCOPY_H
13#define ARCANE_CORE_RAWCOPY_H
36 inline static void copy(T & dst,
const T & src) { dst = src; }
44 inline static void copy(T & dst,
const T & src) { dst = src; }
50 inline static void copy(T & dst,
const T & src) { dst = src; }
56 inline static void copy(T & dst,
const T & src) { dst = src; }
62 inline static void copy(T & dst,
const T & src) { dst = src; }
68 inline static void copy(
T & dst,
const T & src) { dst = src; }
75#ifndef NO_USER_WARNING
76#warning "Using RawCopy for compact Variables"
82 inline static void copy(T & dst,
const T & src) {
83 reinterpret_cast<Int64&
>(dst) =
reinterpret_cast<const Int64&
>(src);
88struct RawCopy<Real2> {
90 inline static void copy(T & dst,
const T & src) {
91 reinterpret_cast<Int64&
>(dst.x) =
reinterpret_cast<const Int64&
>(src.x);
92 reinterpret_cast<Int64&
>(dst.y) =
reinterpret_cast<const Int64&
>(src.y);
97struct RawCopy<Real3> {
99 inline static void copy(T & dst,
const T & src) {
100 reinterpret_cast<Int64&
>(dst.x) =
reinterpret_cast<const Int64&
>(src.x);
101 reinterpret_cast<Int64&
>(dst.y) =
reinterpret_cast<const Int64&
>(src.y);
102 reinterpret_cast<Int64&
>(dst.z) =
reinterpret_cast<const Int64&
>(src.z);
107struct RawCopy<Real2x2> {
109 inline static void copy(T & dst,
const T & src) {
110 reinterpret_cast<Int64&
>(dst.x.x) =
reinterpret_cast<const Int64&
>(src.x.x);
111 reinterpret_cast<Int64&
>(dst.x.y) =
reinterpret_cast<const Int64&
>(src.x.y);
112 reinterpret_cast<Int64&
>(dst.y.x) =
reinterpret_cast<const Int64&
>(src.y.x);
113 reinterpret_cast<Int64&
>(dst.y.y) =
reinterpret_cast<const Int64&
>(src.y.y);
118struct RawCopy<Real3x3> {
120 inline static void copy(T & dst,
const T & src) {
121 reinterpret_cast<Int64&
>(dst.x.x) =
reinterpret_cast<const Int64&
>(src.x.x);
122 reinterpret_cast<Int64&
>(dst.x.y) =
reinterpret_cast<const Int64&
>(src.x.y);
123 reinterpret_cast<Int64&
>(dst.x.z) =
reinterpret_cast<const Int64&
>(src.x.z);
124 reinterpret_cast<Int64&
>(dst.y.x) =
reinterpret_cast<const Int64&
>(src.y.x);
125 reinterpret_cast<Int64&
>(dst.y.y) =
reinterpret_cast<const Int64&
>(src.y.y);
126 reinterpret_cast<Int64&
>(dst.y.z) =
reinterpret_cast<const Int64&
>(src.y.z);
127 reinterpret_cast<Int64&
>(dst.z.x) =
reinterpret_cast<const Int64&
>(src.z.x);
128 reinterpret_cast<Int64&
>(dst.z.y) =
reinterpret_cast<const Int64&
>(src.z.y);
129 reinterpret_cast<Int64&
>(dst.z.z) =
reinterpret_cast<const Int64&
>(src.z.z);
138 inline static void copy(T & dst,
const T & src) { dst = src; }
144 inline static void copy(
T & dst,
const T & src) { dst = src; }
150 inline static void copy(
T & dst,
const T & src) { dst = src; }
156 inline static void copy(T & dst,
const T & src) { dst = src; }
163 inline static void copy(
T & dst,
const T & src) { dst = src; }
169 inline static void copy(
T & dst,
const T & src) { dst = src; }
175 inline static void copy(
T & dst,
const T & src) { dst = src; }
181 inline static void copy(
T & dst,
const T & src) { dst = src; }
Déclarations des types généraux de Arcane.
Classe gérant un vecteur de réel de dimension 2.
Classe gérant une matrice de réel de dimension 2x2.
Classe gérant un vecteur de réel de dimension 3.
Classe gérant une matrice de réel de dimension 3x3.
Type flottant demi-précision.
Chaîne de caractères unicode.
char * copy(char *to, const char *from)
Copie from dans to.
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
Arccore::Int8 Int8
Type représentant un entier sur 8 bits.
float Float32
Type flottant IEEE-753 simple précision (binary32)
unsigned char Byte
Type d'un octet.