| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

In This Package:

Gaudi::Math::detail::_Digit< TYPE, N > Struct Template Reference

Helper structure to geth Nth decimal digits from the integral type. More...

#include <Digit.h>

Inheritance diagram for Gaudi::Math::detail::_Digit< TYPE, N >:

[legend]
List of all members.

Public Types

 value = Gaudi::Math::IPower<unsigned long long
enum  { value = Gaudi::Math::IPower<unsigned long long, value = Gaudi::Math::IPower<unsigned long long }

Public Member Functions

 BOOST_STATIC_ASSERT (boost::integer_traits< TYPE >::is_specialized)
 BOOST_STATIC_ASSERT (boost::integer_traits< TYPE >::is_integral)
 BOOST_STATIC_ASSERT (!boost::integer_traits< TYPE >::is_signed)
int operator() (const TYPE v) const

Private Types

 _imax10 = boost::integer_traits<TYPE>::digits10
enum  { _imax10 = boost::integer_traits<TYPE>::digits10 }

Private Member Functions

 BOOST_STATIC_ASSERT (N<=_imax10)

Detailed Description

template<class TYPE, unsigned int N>
struct Gaudi::Math::detail::_Digit< TYPE, N >

Helper structure to geth Nth decimal digits from the integral type.

Attention:
the least significat decimal digit is numbered as #0
Author:
Vanya BELYAEV Ivan.Belyaev@nilkhef.nl
Date:
2008-07-31

Definition at line 189 of file Digit.h.


Member Enumeration Documentation

template<class TYPE, unsigned int N>
anonymous enum

Enumerator:
value 
value 

Definition at line 196 of file Digit.h.

00196 { value = Gaudi::Math::IPower<unsigned long long,10,N>::value } ;

template<class TYPE, unsigned int N>
anonymous enum [private]

Enumerator:
_imax10 

Definition at line 202 of file Digit.h.

00202              {
00203           _imax10 = boost::integer_traits<TYPE>::digits10 
00204         } ;


Member Function Documentation

template<class TYPE, unsigned int N>
Gaudi::Math::detail::_Digit< TYPE, N >::BOOST_STATIC_ASSERT ( boost::integer_traits< TYPE >::is_specialized   ) 

Reimplemented in Gaudi::Math::Digit< TYPE, N >.

template<class TYPE, unsigned int N>
Gaudi::Math::detail::_Digit< TYPE, N >::BOOST_STATIC_ASSERT ( boost::integer_traits< TYPE >::is_integral   ) 

Reimplemented in Gaudi::Math::Digit< TYPE, N >.

template<class TYPE, unsigned int N>
Gaudi::Math::detail::_Digit< TYPE, N >::BOOST_STATIC_ASSERT ( !boost::integer_traits< TYPE >::is_signed   ) 

Reimplemented in Gaudi::Math::Digit< TYPE, N >.

template<class TYPE, unsigned int N>
int Gaudi::Math::detail::_Digit< TYPE, N >::operator() ( const TYPE  v  )  const [inline]

Definition at line 198 of file Digit.h.

00198 { return (v/value)%10 ; }

template<class TYPE, unsigned int N>
Gaudi::Math::detail::_Digit< TYPE, N >::BOOST_STATIC_ASSERT ( N<=  _imax10  )  [private]


The documentation for this struct was generated from the following file:
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

Generated on Mon Apr 11 20:02:58 2011 for LHCbMath by doxygen 1.4.7