Main Page   Packages   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Search  

Double Class Reference

#include <Double.hh>

List of all members.

Public Methods

 Double (double d=0)
 Double (const char *s)
virtual ~Double ()
 Double (const Integer &i)
 operator double () const
const Double & operator= (double d)
const Double & operator= (const Double &d)
Double operator! ()
Double operator- ()
Double operator-- ()
Double operator-- (int)
Double operator++ ()
Double operator++ (int)
 Double ()
 Double (double v)
 Double (double v, enum MathState s)
 Double (const char *s)
 Double (const Double &D)
virtual ~Double ()
 operator double () const
Double operator~ ()

Private Attributes

double value

Friends

ostream & operator<< (ostream &os, Double &D)
Double operator<< (const Double &l, const Double &r)
Double operator>> (const Double &l, const Double &r)
Double operator| (const Double &l, const Double &r)
Double operator & (const Double &l, const Double &r)
Double operator^ (const Double &l, const Double &r)


Constructor & Destructor Documentation

Double::Double double    d = 0 [inline]
 

Definition at line 9 of file Double.hh.

00009 : value( d ) { }

Double::Double const char *    s [inline]
 

Definition at line 10 of file Double.hh.

00010 { value = atoi(s); }

virtual Double::~Double   [inline, virtual]
 

Definition at line 11 of file Double.hh.

00011 { }

Double::Double const Integer   d [inline]
 

Definition at line 12 of file Double.hh.

00012 { value = (double)i.value; }

Double::Double   [inline]
 

Definition at line 13 of file Double.hpp.

Referenced by operator &(), operator!(), operator++(), operator-(), operator--(), operator<<(), operator>>(), operator^(), operator|(), and operator~().

00013                     : value(0), status( Valid ) {
00014        verify();
00015     }

Double::Double double    v [inline]
 

Definition at line 17 of file Double.hpp.

00017                             : value(v), status( Valid ) { 
00018        verify();
00019     }

Double::Double double    v,
enum MathState    s
[inline]
 

Definition at line 21 of file Double.hpp.

00021                                               : value(v), status( s ) {
00022        verify();
00023     }

Double::Double const char *    s [inline]
 

Definition at line 25 of file Double.hpp.

00025                                  {
00026       status = getState( s );
00027       value  = atof( s );
00028 
00029       if ( (int)status < 3 ) { // Change state, only if not Invalid
00030         verify();       
00031       }
00032     }

Double::Double const Double &    D [inline]
 

Definition at line 34 of file Double.hpp.

00035       : value( D.value ), status( D.status ) { }

virtual Double::~Double   [inline, virtual]
 

Definition at line 37 of file Double.hpp.

00037 { }


Member Function Documentation

Double::operator double   const [inline]
 

Definition at line 55 of file Double.hpp.

00055                                    {
00056        return (double)value;
00057     }

Double::operator double   const [inline]
 

Definition at line 24 of file Double.hh.

00024 { return value; }

Double Double::operator!   [inline]
 

Definition at line 36 of file Double.hh.

00036                             {
00037     return Double(!value);
00038   }

Double Double::operator++ int    [inline]
 

Definition at line 56 of file Double.hh.

00056                                 {
00057    return Double(value++);
00058   }

Double Double::operator++   [inline]
 

Definition at line 52 of file Double.hh.

00052                              {
00053     return Double(++value);
00054   }

Double Double::operator-   [inline]
 

Definition at line 40 of file Double.hh.

00040                             {
00041     return Double(-value);
00042   }

Double Double::operator-- int    [inline]
 

Definition at line 48 of file Double.hh.

00048                                 {
00049     return Double(value--);
00050   }

Double Double::operator--   [inline]
 

Definition at line 44 of file Double.hh.

00044                              {
00045    return Double(--value);
00046   }

const Double& Double::operator= const Double &    d [inline]
 

Definition at line 31 of file Double.hh.

00031                                                   {
00032     value = d.value;
00033     return *this;
00034   }

const Double& Double::operator= double    d [inline]
 

Definition at line 26 of file Double.hh.

00026                                            {
00027     value = d;
00028     return *this;
00029   }

Double Double::operator~   [inline]
 

Definition at line 65 of file Double.hpp.

00065                               {
00066       return Double( ~value );
00067     }


Friends And Related Function Documentation

Double operator & const Double &    l,
const Double &    r
[friend]
 

Definition at line 112 of file Double.hpp.

00112                                                          {
00113     return Double(l.value&r.value);
00114 }

Double operator<< const Double &    l,
const Double &    r
[friend]
 

Definition at line 100 of file Double.hpp.

00100                                                           {
00101     return Double(l.value<<r.value);
00102 }

ostream& operator<< ostream &    os,
Double &    D
[friend]
 

Definition at line 39 of file Double.hpp.

00039                                                        {
00040       unsigned int state = (unsigned int)(D.status);
00041       if ( state < 3 ) {
00042         return os << D.value;
00043       } else if ( state < J2K_MAX_MathState ) {
00044         return os << MathStateTxt[ state ];
00045       }
00046 
00047       // Something weird occured, if this get executed !
00048       abort();  
00049       return os << "";
00050 
00051     }

Double operator>> const Double &    l,
const Double &    r
[friend]
 

Definition at line 104 of file Double.hpp.

00104                                                           {
00105     return Double(l.value>>r.value);
00106 }

Double operator^ const Double &    l,
const Double &    r
[friend]
 

Definition at line 116 of file Double.hpp.

00116                                                          {
00117     return Double(l.value^r.value);
00118 }

Double operator| const Double &    l,
const Double &    r
[friend]
 

Definition at line 108 of file Double.hpp.

00108                                                          {
00109     return Double(l.value|r.value);
00110 }


Member Data Documentation

double Double::value [private]
 

Definition at line 61 of file Double.hh.

Referenced by operator &(), operator *(), operator!=(), operator+(), operator-(), operator/(), operator<(), operator<<(), operator<<(), operator<=(), operator=(), operator==(), operator>(), operator>=(), operator>>(), operator^(), and operator|().


The documentation for this class was generated from the following files:
Generated on Sun Oct 14 18:48:33 2001 for Standard J2K Library by doxygen1.2.11.1 written by Dimitri van Heesch, © 1997-2001