00001
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027 #ifndef _ElementaryCharge_h
00028 #define _ElementaryCharge_h
00029
00030
00031 #include "Quantity/UniqueConstant.h"
00032 #include "PhysicalQuantities/ElectricCharge.h"
00033
00034 namespace quantity {
00035 namespace elementaryCharge {
00036
00037 typedef electricCharge::Quantity Quantity;
00038
00039 class DerivedElementaryCharge;
00040
00041 }
00042
00043
00044 template<>
00045 struct DerivedQuantityTraits<electricCharge::Class, elementaryCharge::DerivedElementaryCharge>
00046 {
00047 static const bool OverwriteName = true;
00048 static const bool OverwriteSymbol = true;
00049
00050 static const std::string NameString;
00051 static const std::string SymbolString;
00052
00053 };
00054
00055 typedef Loki::SingletonHolder<UniqueConstant <electricCharge::Quantity,
00056 DerivedQuantity<electricCharge::Class, electricCharge::Coulomb,
00057 elementaryCharge::DerivedElementaryCharge> > > ElementaryCharge;
00058
00059 #define ELEMENTARYCHARGE ElementaryCharge::Instance()
00060
00061 }
00062
00063 #endif