42 #ifndef _TEUCHOS_PROMOTION_TRAITS_HPP_ 
   43 #define _TEUCHOS_PROMOTION_TRAITS_HPP_ 
   49 template <
class A, 
class B>
 
   61 #define PT_SPEC(type1,type2,type3) \ 
   62 template <> class PromotionTraits< type1 , type2 > { \ 
   64     typedef type3 promote; \ 
   66 template <> class PromotionTraits< type2 , type1 > { \ 
   68     typedef type3 promote; \ 
   71 #ifdef HAVE_TEUCHOS_COMPLEX 
   72 PT_SPEC(
double,std::complex<float>,std::complex<double>)
 
   73 PT_SPEC(
float,std::complex<
double>,std::complex<
double>)
 
   74 PT_SPEC(
float,std::complex<
float>,std::complex<
float>)
 
   75 PT_SPEC(
double,std::complex<
double>,std::complex<
double>)
 
   76 #endif // HAVE_TEUCHOS_COMPLEX 
   89 #endif // _TEUCHOS_PROMOTION_TRAITS_HPP_ 
Teuchos header file which uses auto-configuration information to include necessary C++ headers...