Re: ITL 4.0.0-1 with MTL 2.1.2-21

Lie-Quan Lee <[email protected]>
Newsgroups gmane.comp.lib.mtl.devel
Message-ID <[email protected]>
You are right -- Somehow the change made in the classical gram schmidt
class was accidentally mixed with function get_data() required in
itl_to_BLAS interface.

Well, one quick way to fix is have following function:

template <class Vector, class VecRef, class Indexer>
typename Vector::value_type* 
get_data(const mtl::oned_part<Vector,VecRef,Indexer>& v) 
{
  typedef mtl::oned_part<Vector,VecRef,Indexer> V;
  V& vref = const_cast<V& >(v);
  return &(vref.get_ref(0));
}



On Fri, 2003-06-13 at 10:28, Bryan Leppard wrote:
> I am trying to use ITL 4.0.0-1 with MTL 2.1.2-21. It looks like
> changes made in “itl\interface\detail\mtl_classical_gram_schmidt.h”
> are not compiling.
> 
>  
> 
> =========================================================
> 
> .\My Documents\Visual Studio
> Projects\ITL-4.0.0-1\itl\interface\detail\mtl_classical_gram_schmidt.h(146) : error C2039: 'data' : is not a member of 'mtl::oned_part<Vector,VecRef,Indexer>'
> 
>         with
> 
>         [
> 
>            
> Vector=mtl::matrix_implementation<mtl::generate_rect<itl::classical_gram_schmidt<DENSE_VECTOR>::value_type,mtl::column_major,mtl::dense<>,0,0>::storage_t,mtl::gen_rect_indexer<mtl::column_orien,0,0,mtl::generate_rect<itl::classical_gram_schmidt<DENSE_VECTOR>::value_type,mtl::column_major,mtl::dense<>,0,0>::size_type>>::OldOneD,
> 
>            
> VecRef=mtl::matrix_implementation<mtl::generate_rect<itl::classical_gram_schmidt<DENSE_VECTOR>::value_type,mtl::column_major,mtl::dense<>,0,0>::storage_t,mtl::gen_rect_indexer<mtl::column_orien,0,0,mtl::generate_rect<itl::classical_gram_schmidt<DENSE_VECTOR>::value_type,mtl::column_major,mtl::dense<>,0,0>::size_type>>::OldOneD,
> 
>            
> Indexer=mtl::rect_indexer<mtl::generate_rect<itl::classical_gram_schmidt<DENSE_VECTOR>::value_type,mtl::column_major,mtl::dense<>,0,0>::size_type,mtl::column_orien,0,0>::OneDIndexer
> 
>         ]
> 
> ===================================================================
> 
>  
> 
> To me, it looks like line 146 is using function get_data() to try and
> get a pointer to the internal data of an mtl::one_part<> object. This
> doesn’t compile because mtl::one_part<> does not have a data() member
> function. In this case, is doesn’t seem appropriate for the function
> to try and access the internal data. Can you confirm this? 
> 
>  
> 
> I am not quite sure how to fix this problem. Any suggestions?
> 
>  
> 
> Regards,
> 
>  
> 
> Bryan Leppard
> 
> Neotechnology Consultants Ltd.
> 
>  
> 
> 
> 
> ______________________________________________________________________
> _______________________________________________
> This list is archived at http://www.osl.iu.edu/MailArchives/mtl-devel/
-- 
Lie-Quan Lee  (AKA: Rich Lee)          Tel:   650-926-5356
Advanced Computations Department       Fax:   650-926-4603
Stanford Linear Accelerator Center     Email: [email protected]
_______________________________________________
This list is archived at http://www.osl.iu.edu/MailArchives/mtl-devel/
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.