+#ifndef CALIBREUR_F_CUDA_H_\r
+#define CALIBREUR_F_CUDA_H_\r
+\r
+#include "both_define.h"\r
+#include "IntervalF_GPU.h"\r
+\r
+namespace gpu\r
+ {\r
+\r
+ class CalibreurF\r
+ {\r
+ public:\r
+\r
+ /*--------------------------------------*\\r
+ |* Constructor *|\r
+ \*-------------------------------------*/\r
+\r
+ __BOTH__\r
+ CalibreurF(const IntervalF& input, const IntervalF& output)\r
+ {\r
+ this->pente = (output.b - output.a) / (input.b - input.a);\r
+ this->translation = output.a - pente * input.a;\r
+ }\r
+\r
+ // constructeur copie automatique car pas pointeur dans\r
+ // CalibreurF\r
+ // IntervalF\r
+\r
+// // TODO dangereux\r
+// __device__ __host__\r
+// CalibreurF(const CalibreurF& source)\r
+// {\r
+// }\r
+\r
+\r
+\r
+ /*--------------------------------------*\\r
+ |* Methodes *|\r
+ \*-------------------------------------*/\r
+\r
+ public:\r
+\r
+ __BOTH__\r
+ void calibrer(float& value)\r
+ {\r
+ value = value * pente + translation;\r
+ }\r
+\r
+ __BOTH__\r
+ float getPente()\r
+ {\r
+ return this->pente;\r
+ }\r
+\r
+ __BOTH__\r
+ float getTranslation()\r
+ {\r
+ return this->translation;\r
+ }\r
+\r
+ /*--------------------------------------*\\r
+ |* Attributs *|\r
+ \*-------------------------------------*/\r
+\r
+ private:\r
+\r
+ // Output\r
+ float pente;\r
+ float translation;\r
+\r
+ };\r
+\r
+ }\r
+#endif\r
+\r
+/*----------------------------------------------------------------------*\\r
+ |* End *|\r
+ \*---------------------------------------------------------------------*/\r