lift_helper< vector< C, V > > Struct Template Reference

#include <vector.hpp>

List of all members.

Static Public Member Functions


Detailed Description

template<typename C, typename V>
struct mmx::lift_helper< vector< C, V > >

Definition at line 1226 of file vector.hpp.


Member Function Documentation

static vector<typename unary_return_type_helper<lift_op, C >::RET> op ( const vector< C, V > &  v  )  [inline, static]

Definition at line 1242 of file vector.hpp.

References mmx::CF(), mmx::lift(), Lifted_vector, and lift_helper< C >::set_op().

01242                        {
01243     Lifted_vector w (lift (CF(v)));
01244     set_op (w, v);
01245     return w; }

static void set_op ( vector< T, W > &  w,
const vector< C, V > &  v 
) [inline, static]

Definition at line 1228 of file vector.hpp.

References mmx::CF(), mmx::get_sample(), mmx::is_a_scalar(), mmx::N(), n, mmx::seg(), mmx::set_lift(), and mmx::T.

01228                                            {
01229     typedef implementation<vector_linear,V> Vec;
01230     format<T> fm= CF(w);
01231     if (is_a_scalar (v)) {
01232       T a= get_sample (fm);
01233       set_lift (a, v.scalar());
01234       w= vector<T,W> (a, fm);
01235     } else {
01236       nat n= N(v);
01237       nat l= aligned_size<T,W> (n);
01238       T* r= mmx_formatted_new<T> (l, fm);
01239       Vec::template vec_unary<lift_op> (r, seg (v), n);
01240       w= vector<T,W> (r, n, l, fm); } }


The documentation for this struct was generated from the following file:

Generated on 6 Dec 2012 for basix by  doxygen 1.6.1