summaryrefslogtreecommitdiff
path: root/inc/Quantity_Convert.lxx
blob: 556c2f12e5732ebc3c9ad735a765781d4e66072a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
//-----------------------------------------------------------------------------
//
// inline methods for Convert from Quantity
//
// Author : M. MERCIEN
//-----------------------------------------------------------------------------
#include <Quantity_Array1OfCoefficient.hxx>


#ifndef __Quantity_API
# if defined(WNT) && !defined(HAVE_NO_DLL)
#  ifdef __Quantity_DLL
#   define __Quantity_API __declspec( dllexport )
#  else
#   define __Quantity_API __declspec( dllimport )
#  endif  // __Quantity_DLL
# else
#   define __Quantity_API
# endif  // WNT
#endif  // __Quantity_API 


extern __Quantity_API Quantity_Array1OfCoefficient ConvertTable;


//----------------------------------------------------------------------------
//  SetQuantity
//----------------------------------------------------------------------------
inline void Quantity_Convert::SetQuantity (const Quantity_PhysicalQuantity aQuantity,
                                const Quantity_Coefficient aCoef) {
// ...Update du coefficient de conversion
   if (aQuantity > 0 && aQuantity <= 68) ConvertTable(aQuantity) = aCoef;
}

//----------------------------------------------------------------------------
//  ConvertUserToSI
//----------------------------------------------------------------------------
inline Quantity_Coefficient Quantity_Convert::ConvertUserToSI 
        (const Quantity_PhysicalQuantity aQuantity ,
         const Standard_Real aVal) {
// ...Conversion de la valeur aVal, du Systeme Utilisateur en Systeme International
   if (aQuantity > 0 && aQuantity <= 68)   
      return (aVal*ConvertTable(aQuantity));
   else
     return aVal;
}

//----------------------------------------------------------------------------
//  ConvertSIToUser
//----------------------------------------------------------------------------
inline Quantity_Coefficient Quantity_Convert::ConvertSIToUser 
        (const Quantity_PhysicalQuantity aQuantity ,
         const Standard_Real aVal) {
// ...Conversion de la valeur aVal, du Systeme International au Systeme Utilisateur
   if (aQuantity > 0 && aQuantity <= 68)   
      return (aVal/ConvertTable(aQuantity));
   else
     return aVal;
}