![]() |
Protium
Math and Design Features
|
Encapsulates design patterns and policies. More...
Classes | |
struct | ConstructablePrototype |
struct | DerivedRegister |
struct | DimensionAdd |
Helper template to add dimensions on quantitites. More... | |
struct | DimensionSubtract |
Helper template to subtract dimensions on quantities. More... | |
class | EmptyType |
Empty class. To be used as header or footer. More... | |
class | FunctionMapped |
class | FunctionMappedPrototype |
struct | IndexOf |
Empty Astract Index class. Never Use directly. More... | |
struct | IndexOf< NullType, T > |
The Last element in a list is always NUllType at position -1. More... | |
struct | IndexOf< Typelist< Head, Tail >, T > |
Every item in typelist has index (typelist) + 1. More... | |
struct | IndexOf< Typelist< T, Tail >, T > |
Every Typelist has index of 0. More... | |
struct | IntType |
Maps type to integer. More... | |
struct | NullType |
Emmpty struct. To be used as header or footer. More... | |
struct | Quantity |
Defines a dimensionful quantities. More... | |
class | RefToValue |
Use to have local value that utilizes reference. More... | |
struct | SameType |
Maps to types to a new type. More... | |
struct | SameType< T, T > |
Specialization of SameType for identical types. More... | |
struct | Sequence |
Sequence of types. More... | |
struct | Sequence<> |
Specialization of empty sequence. More... | |
struct | Typelist |
General list of types. Points to Head and Tail. More... | |
struct | TypeType |
Maps type to another type. More... | |
struct | VirtualFactory |
Functions | |
template<class T > | |
RefToValue< T > | ByRef (T &t) |
Helper construct method. More... | |
template<class T , class D1 , class D2 > | |
Quantity< T, typename DimensionAdd< D1, D2 >::Type > | operator* (Quantity< T, D1 > x, Quantity< T, D2 > y) |
Defines dimensionful multiplication. More... | |
template<class T , class D > | |
Quantity< T, D > | operator+ (Quantity< T, D > x, Quantity< T, D > y) |
Defines dimensionful quantity addition. More... | |
template<class T , class D > | |
Quantity< T, D > | operator- (Quantity< T, D > x, Quantity< T, D > y) |
Defines dimensionful quantity subtraction. More... | |
template<class T , class D1 , class D2 > | |
Quantity< T, typename DimensionSubtract< D1, D2 > ::Type > | operator/ (Quantity< T, D1 > x, Quantity< T, D2 > y) |
Defines dimensionful Division. More... | |
bool | operator< (const EmptyType &, const EmptyType &) |
Empty types are always equal. More... | |
bool | operator== (const EmptyType &, const EmptyType &) |
Empty types are always equal. More... | |
bool | operator> (const EmptyType &, const EmptyType &) |
Empty types are always equal. More... | |
Encapsulates design patterns and policies.
typedef DimensionSubtract<velocity, time>::Type Protium::Design::acceleration |
Definition at line 51 of file Dimensions.h.
typedef DimensionAdd<energy, time>::Type Protium::Design::action |
Definition at line 55 of file Dimensions.h.
typedef Sequence<int, IntType<0>,IntType<0>,IntType<0>,IntType<0>,IntType<0>,IntType<0>,IntType<1> >::Type Protium::Design::angle |
Definition at line 45 of file Dimensions.h.
typedef Sequence<int, IntType<0>,IntType<0>,IntType<0>,IntType<1>,IntType<0>,IntType<0>,IntType<0> >::Type Protium::Design::charge |
Definition at line 39 of file Dimensions.h.
typedef DimensionSubtract<charge, time>::Type Protium::Design::current |
Definition at line 58 of file Dimensions.h.
typedef DimensionSubtract<scalar, DimensionAdd<magneticFluxDensity, DimensionAdd<velocity, velocity>::Type>::Type >::Type Protium::Design::electricFluxDensity |
Definition at line 63 of file Dimensions.h.
typedef DimensionAdd<force, length>::Type Protium::Design::energy |
Definition at line 54 of file Dimensions.h.
typedef DimensionSubtract< DimensionSubtract<scalar, energy>::Type, energy>::Type Protium::Design::fermiDimension |
Definition at line 57 of file Dimensions.h.
typedef DimensionAdd<acceleration, mass >::Type Protium::Design::force |
Definition at line 52 of file Dimensions.h.
typedef Sequence<int, IntType<0>,IntType<0>,IntType<0>,IntType<0>,IntType<0>,IntType<1>,IntType<0> >::Type Protium::Design::intensity |
Definition at line 44 of file Dimensions.h.
typedef Sequence<int, IntType<0>,IntType<1>,IntType<0>,IntType<0>,IntType<0>,IntType<0>,IntType<0> >::Type Protium::Design::length |
Definition at line 41 of file Dimensions.h.
typedef DimensionSubtract< DimensionSubtract<force, current>::Type, current>::Type Protium::Design::magneticFluxDensity |
Definition at line 60 of file Dimensions.h.
typedef Sequence<int, IntType<1>,IntType<0>,IntType<0>,IntType<0>,IntType<0>,IntType<0>,IntType<0> >::Type Protium::Design::mass |
Definition at line 40 of file Dimensions.h.
typedef DimensionAdd<mass, velocity>::Type Protium::Design::momentum |
Definition at line 53 of file Dimensions.h.
typedef DimensionSubtract<scalar, time>::Type Protium::Design::rate |
Definition at line 49 of file Dimensions.h.
typedef Sequence<int, IntType<0>,IntType<0>,IntType<0>,IntType<0>,IntType<0>,IntType<0>,IntType<0> >::Type Protium::Design::scalar |
Base dimensions
Definition at line 38 of file Dimensions.h.
typedef Sequence<int, IntType<0>,IntType<0>,IntType<0>,IntType<0>,IntType<1>,IntType<0>,IntType<0> >::Type Protium::Design::temperature |
Definition at line 43 of file Dimensions.h.
typedef Sequence<int, IntType<0>,IntType<0>,IntType<1>,IntType<0>,IntType<0>,IntType<0>,IntType<0> >::Type Protium::Design::time |
Definition at line 42 of file Dimensions.h.
typedef DimensionSubtract<length, time>::Type Protium::Design::velocity |
Definition at line 50 of file Dimensions.h.
|
inline |
Helper construct method.
Definition at line 35 of file RefToValue.h.
Quantity< T, typename DimensionAdd<D1,D2>::Type > Protium::Design::operator* | ( | Quantity< T, D1 > | x, |
Quantity< T, D2 > | y | ||
) |
Defines dimensionful multiplication.
Definition at line 48 of file Quantities.h.
Quantity<T,D> Protium::Design::operator+ | ( | Quantity< T, D > | x, |
Quantity< T, D > | y | ||
) |
Defines dimensionful quantity addition.
Definition at line 34 of file Quantities.h.
Quantity<T,D> Protium::Design::operator- | ( | Quantity< T, D > | x, |
Quantity< T, D > | y | ||
) |
Defines dimensionful quantity subtraction.
Definition at line 42 of file Quantities.h.
Quantity< T, typename DimensionSubtract<D1,D2>::Type > Protium::Design::operator/ | ( | Quantity< T, D1 > | x, |
Quantity< T, D2 > | y | ||
) |
Defines dimensionful Division.
Definition at line 55 of file Quantities.h.
|
inline |
|
inline |