#include <glue_cube_metaprog.hpp>
Public Types | |
typedef T1::elem_type | elem_type |
Static Public Member Functions | |
static void | get_ptrs (const Cube< elem_type > **in_ptrs, bool *del, const GlueCube< T1, T2, glue_type > &X) |
Static Public Attributes | |
static const u32 | num = 1 + cube_ptrs<glue_type, T1>::num |
Definition at line 87 of file glue_cube_metaprog.hpp.
typedef T1::elem_type cube_ptrs< glue_type, GlueCube< T1, T2, glue_type > >::elem_type |
Definition at line 89 of file glue_cube_metaprog.hpp.
static void cube_ptrs< glue_type, GlueCube< T1, T2, glue_type > >::get_ptrs | ( | const Cube< elem_type > ** | in_ptrs, | |
bool * | del, | |||
const GlueCube< T1, T2, glue_type > & | X | |||
) | [inline, static] |
Definition at line 97 of file glue_cube_metaprog.hpp.
References GlueCube< T1, T2, glue_type >::A, GlueCube< T1, T2, glue_type >::B, cube_ptrs< glue_type, T1 >::get_ptrs(), and cube_ptrs< glue_type, T1 >::num.
00102 { 00103 isnt_same_type<typename T1::elem_type, typename T2::elem_type>::check(); 00104 00105 cube_ptrs<glue_type, T1>::get_ptrs(in_ptrs, del, X.A); 00106 00107 in_ptrs[num] = 00108 ( 00109 is_Cube<T2>::value ? 00110 reinterpret_cast<const Cube<elem_type>*>(&X.B) 00111 : 00112 new Cube<elem_type>(X.B) 00113 ); 00114 00115 del[num] = 00116 ( 00117 is_Cube<T2>::value ? 00118 false 00119 : 00120 true 00121 ); 00122 }