cisst-saw
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
cmnUnits.h
Go to the documentation of this file.
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /* ex: set filetype=cpp softtabstop=4 shiftwidth=4 tabstop=4 cindent expandtab: */
3 
4 /*
5  Author(s): Anton Deguet
6  Created on: 2008-08-21
7 
8  (C) Copyright 2008-2015 Johns Hopkins University (JHU), All Rights Reserved.
9 
10 --- begin cisst license - do not edit ---
11 
12 This software is provided "as is" under an open source license, with
13 no warranty. The complete license can be found in license.txt and
14 http://www.cisst.org/cisst/license.txt.
15 
16 --- end cisst license ---
17 
18 */
19 
20 
47 #pragma once
48 
49 #ifndef _cmnUnits_h
50 #define _cmnUnits_h
51 
52 // To determine if we are using SI (m) or millimeters by default
53 #include <cisstConfig.h>
54 
55 // Always include last
56 #include <cisstCommon/cmnExport.h>
57 
58 
59 
63 
66 #if CISST_USE_SI_UNITS
67 const double cmn_mm = 0.001;
68 #else
69 const double cmn_mm = 1.0;
70 #endif
71 
73 inline double cmnInternalTo_mm(double valueInternalUnits) {
74  return valueInternalUnits / cmn_mm;
75 }
76 
79 const double cmn_um = cmn_mm / 1000.0;
80 
82 inline double cmnInternalTo_um(double valueInternalUnits) {
83  return valueInternalUnits / cmn_um;
84 }
85 
88 const double cmn_cm = 10.0 * cmn_mm;
89 
91 inline double cmnInternalTo_cm(double valueInternalUnits) {
92  return valueInternalUnits / cmn_cm;
93 }
94 
97 #if CISST_USE_SI_UNITS
98 const double cmn_m = 1.0;
99 #else
100 const double cmn_m = 1000.0;
101 #endif
102 
104 inline double cmnInternalTo_m(double valueInternalUnits) {
105  return valueInternalUnits / cmn_m;
106 }
107 
110 const double cmn_km = 1000.0 * cmn_m;
111 
113 inline double cmnInternalTo_km(double valueInternalUnits) {
114  return valueInternalUnits / cmn_km;
115 }
117 
118 
119 
123 
126 #if CISST_USE_SI_UNITS
127 const double cmn_g = 0.001;
128 #else
129 const double cmn_g = 1.0;
130 #endif
131 
133 inline double cmnInternalTo_g(double valueInternalUnits) {
134  return valueInternalUnits / cmn_g;
135 }
136 
139 const double cmn_mg = cmn_g / 1000.0;
140 
142 inline double cmnInternalTo_mg(double valueInternalUnits) {
143  return valueInternalUnits / cmn_mg;
144 }
145 
148 const double cmn_ug = cmn_mg / 1000.0;
149 
151 inline double cmnInternalTo_ug(double valueInternalUnits) {
152  return valueInternalUnits / cmn_ug;
153 }
154 
157 const double cmn_cg = cmn_g / 100.0;
158 
160 inline double cmnInternalTo_cg(double valueInternalUnits) {
161  return valueInternalUnits / cmn_cg;
162 }
163 
166 const double cmn_kg = 1000.0 * cmn_g;
167 
169 inline double cmnInternalTo_kg(double valueInternalUnits) {
170  return valueInternalUnits / cmn_kg;
171 }
173 
174 
175 
178 
181 const double cmn_s = 1.0;
182 
184 inline double cmnInternalTo_s(double valueInternalUnits) {
185  return valueInternalUnits / cmn_s;
186 }
187 
190 const double cmn_ms = cmn_s / 1000.0;
191 
193 inline double cmnInternalTo_ms(double valueInternalUnits) {
194  return valueInternalUnits / cmn_ms;
195 }
196 
199 const double cmn_us = cmn_ms / 1000.0;
200 
202 inline double cmnInternalTo_us(double valueInternalUnits) {
203  return valueInternalUnits / cmn_us;
204 }
205 
208 const double cmn_ns = cmn_us / 1000.0;
209 
211 inline double cmnInternalTo_ns(double valueInternalUnits) {
212  return valueInternalUnits / cmn_ns;
213 }
214 
217 const double cmn_minute = 60.0 * cmn_s;
218 
220 inline double cmnInternalTo_minute(double valueInternalUnits) {
221  return valueInternalUnits / cmn_minute;
222 }
223 
226 const double cmn_hour = 60.0 * cmn_minute;
227 
229 inline double cmnInternalTo_hour(double valueInternalUnits) {
230  return valueInternalUnits / cmn_hour;
231 }
232 
235 const double cmn_day = 24.0 * cmn_hour;
236 
238 inline double cmnInternalTo_day(double valueInternalUnits) {
239  return valueInternalUnits / cmn_day;
240 }
242 
243 
244 #endif // _cmnUnits_h
const double cmn_mg
Definition: cmnUnits.h:139
double cmnInternalTo_km(double valueInternalUnits)
Definition: cmnUnits.h:113
double cmnInternalTo_g(double valueInternalUnits)
Definition: cmnUnits.h:133
double cmnInternalTo_cm(double valueInternalUnits)
Definition: cmnUnits.h:91
const double cmn_hour
Definition: cmnUnits.h:226
const double cmn_ug
Definition: cmnUnits.h:148
double cmnInternalTo_m(double valueInternalUnits)
Definition: cmnUnits.h:104
double cmnInternalTo_um(double valueInternalUnits)
Definition: cmnUnits.h:82
const double cmn_us
Definition: cmnUnits.h:199
double cmnInternalTo_minute(double valueInternalUnits)
Definition: cmnUnits.h:220
double cmnInternalTo_ns(double valueInternalUnits)
Definition: cmnUnits.h:211
const double cmn_m
Definition: cmnUnits.h:100
double cmnInternalTo_cg(double valueInternalUnits)
Definition: cmnUnits.h:160
double cmnInternalTo_s(double valueInternalUnits)
Definition: cmnUnits.h:184
double cmnInternalTo_kg(double valueInternalUnits)
Definition: cmnUnits.h:169
const double cmn_g
Definition: cmnUnits.h:129
const double cmn_mm
Definition: cmnUnits.h:69
Macros to export the symbols of cisstCommon (in a Dll).
double cmnInternalTo_ms(double valueInternalUnits)
Definition: cmnUnits.h:193
const double cmn_s
Definition: cmnUnits.h:181
const double cmn_kg
Definition: cmnUnits.h:166
const double cmn_cg
Definition: cmnUnits.h:157
double cmnInternalTo_mg(double valueInternalUnits)
Definition: cmnUnits.h:142
const double cmn_um
Definition: cmnUnits.h:79
double cmnInternalTo_hour(double valueInternalUnits)
Definition: cmnUnits.h:229
double cmnInternalTo_day(double valueInternalUnits)
Definition: cmnUnits.h:238
double cmnInternalTo_us(double valueInternalUnits)
Definition: cmnUnits.h:202
const double cmn_ms
Definition: cmnUnits.h:190
double cmnInternalTo_mm(double valueInternalUnits)
Definition: cmnUnits.h:73
const double cmn_ns
Definition: cmnUnits.h:208
const double cmn_day
Definition: cmnUnits.h:235
const double cmn_cm
Definition: cmnUnits.h:88
double cmnInternalTo_ug(double valueInternalUnits)
Definition: cmnUnits.h:151
const double cmn_minute
Definition: cmnUnits.h:217
const double cmn_km
Definition: cmnUnits.h:110