All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
SVecDVecAddExprTrait.h
Go to the documentation of this file.
1 //=================================================================================================
20 //=================================================================================================
21 
22 #ifndef _BLAZE_MATH_TRAITS_SVECDVECADDEXPRTRAIT_H_
23 #define _BLAZE_MATH_TRAITS_SVECDVECADDEXPRTRAIT_H_
24 
25 
26 //*************************************************************************************************
27 // Includes
28 //*************************************************************************************************
29 
34 #include <blaze/util/InvalidType.h>
35 #include <blaze/util/SelectType.h>
41 
42 
43 namespace blaze {
44 
45 //=================================================================================================
46 //
47 // CLASS DEFINITION
48 //
49 //=================================================================================================
50 
51 //*************************************************************************************************
61 template< typename VT1 // Type of the left-hand side non-transpose sparse vector
62  , typename VT2 > // Type of the right-hand side non-transpose dense vector
64 {
65  private:
66  //**********************************************************************************************
71  //**********************************************************************************************
72 
73  //**********************************************************************************************
77  , DVecSVecAddExpr<VT2,VT1,false>, INVALID_TYPE > Tmp;
78 
79  typedef typename RemoveReference< typename RemoveCV<VT1>::Type >::Type Type1;
80  typedef typename RemoveReference< typename RemoveCV<VT2>::Type >::Type Type2;
82  //**********************************************************************************************
83 
84  public:
85  //**********************************************************************************************
87  typedef typename SelectType< qualified, SVecDVecAddExprTrait<Type1,Type2>, Tmp >::Type::Type Type;
89  //**********************************************************************************************
90 };
91 //*************************************************************************************************
92 
93 } // namespace blaze
94 
95 #endif