00001
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #ifndef _Prefixes_h
00025 #define _Prefixes_h
00026
00027 #include <string>
00028
00029 namespace Units {
00030
00032
00038 template<class P> class Prefix
00039 {
00040 public:
00041
00043
00048 static const double factor;
00049
00051
00054 static const std::string Name;
00055
00057
00060 static const std::string Symbol;
00061 };
00062
00064
00066 class NoPrefix;
00067
00068 typedef Prefix<NoPrefix> No;
00069
00071
00073 class DeciPrefix;
00074
00075 typedef Prefix<DeciPrefix> Deci;
00076
00078
00080 class DeciPrefix;
00081 class CentiPrefix;
00082
00083 typedef Prefix<CentiPrefix> Centi;
00084
00086
00088 class MilliPrefix;
00089
00090 typedef Prefix<MilliPrefix> Milli;
00091
00093
00095 class MicroPrefix;
00096
00097 typedef Prefix<MicroPrefix> Micro;
00098
00100
00102 class NanoPrefix;
00103
00104 typedef Prefix<NanoPrefix> Nano;
00105
00107
00109 class PicoPrefix;
00110
00111 typedef Prefix<PicoPrefix> Pico;
00112
00114
00116 class FemtoPrefix;
00117
00118 typedef Prefix<FemtoPrefix> Femto;
00119
00121
00123 class AttoPrefix;
00124
00125 typedef Prefix<AttoPrefix> Atto;
00126
00128
00130 class ZeptoPrefix;
00131
00132 typedef Prefix<ZeptoPrefix> Zepto;
00133
00135
00137 class YoctoPrefix;
00138
00139 typedef Prefix<YoctoPrefix> Yocto;
00140
00142
00144 class DecaPrefix;
00145
00146 typedef Prefix<DecaPrefix> Deca;
00147
00149
00151 class HectoPrefix;
00152
00153 typedef Prefix<HectoPrefix> Hecto;
00154
00156
00158 class KiloPrefix;
00159
00160 typedef Prefix<KiloPrefix> Kilo;
00161
00163
00165 class MegaPrefix;
00166
00167 typedef Prefix<MegaPrefix> Mega;
00168
00170
00172 class GigaPrefix;
00173
00174 typedef Prefix<GigaPrefix> Giga;
00175
00177
00179 class TeraPrefix;
00180
00181 typedef Prefix<TeraPrefix> Tera;
00182
00184
00186 class PetaPrefix;
00187
00188 typedef Prefix<PetaPrefix> Peta;
00189
00191
00193 class ExaPrefix;
00194
00195 typedef Prefix<ExaPrefix> Exa;
00196
00198
00200 class ZettaPrefix;
00201
00202 typedef Prefix<ZettaPrefix> Zetta;
00203
00205
00207 class YottaPrefix;
00208
00209 typedef Prefix<YottaPrefix> Yotta;
00210
00211 }
00212
00213 #endif