00001 // Software License for MTL 00002 // 00003 // Copyright (c) 2007 The Trustees of Indiana University. 00004 // 2008 Dresden University of Technology and the Trustees of Indiana University. 00005 // All rights reserved. 00006 // Authors: Peter Gottschling and Andrew Lumsdaine 00007 // 00008 // This file is part of the Matrix Template Library 00009 // 00010 // See also license.mtl.txt in the distribution. 00011 00012 #ifndef MTL_RAW_COPY_INCLUDE 00013 #define MTL_RAW_COPY_INCLUDE 00014 00015 namespace mtl { 00016 00017 // Copies range of values into elements 00018 // As name says it is a raw operation and to used with uttermost care 00019 template <typename Matrix, typename InputIterator> 00020 void raw_copy(InputIterator first, InputIterator last, Matrix& matrix) 00021 { 00022 using std::copy; 00023 copy(first, last, matrix.elements()); 00024 } 00025 00026 // Temporary solution 00027 // will be replaced by sequences and cursors generated by begin<all>(ma) and end<all>(ma) 00028 // Using segmented cursors, matrices with non-contigous element storing can be handled 00029 00030 } // namespace mtl 00031 00032 #endif // MTL_RAW_COPY_INCLUDE