1 #ifndef __JMATH__JNUMBER__
2 #define __JMATH__JNUMBER__
20 namespace JPP {
using namespace JMATH; }
33 public JMath < JNumber<T> >,
59 inline operator const T&()
const
166 return in >> number.
value;
179 return out << number.
value;
Base class for data structures with artithmetic capabilities.
Definition of zero value for any class.
Auxiliary classes and methods for mathematical operations.
T getZero()
Get zero value for a given data type.
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
Template for generic class types.
JArgument< T >::argument_type argument_type
Template definition of auxiliary base class for comparison of data structures.
Auxiliary base class for aritmetic operations of derived class types.
Simple wrapper around template data type to ensure that zero is the default value.
JNumber & sub(const JNumber &number)
Subtract number.
JNumber(typename JClass< T >::argument_type value)
Constructor.
JNumber & div(const double factor)
Scale number.
bool less(const JNumber &number) const
Less than.
JNumber()
Default constructor.
JNumber & add(const JNumber &number)
Add number.
JNumber & negate()
Negate number.
JNumber & mul(const double factor)
Scale number.
friend std::ostream & operator<<(std::ostream &out, const JNumber &number)
Write number to output stream.
friend std::ostream & operator>>(std::ostream &in, JNumber &number)
Read number from input stream.