00001 #ifndef ATLFAST_IKCONVERSION_H 00002 #define ATLFAST_IKCONVERSION_H 00005 00006 namespace Atlfast{ 00007 00009 template<class T, class U> 00010 class Cast{ 00011 U* operator()(T* t){return static_cast<U>(t);} 00012 }; 00013 00015 template<class T, class U> 00016 void ConvertVector(std::vector<T>& vin, std::vector<U>& vout){ 00017 std::transform(vin.begin(), vin.end(), back_inserter(vout), Cast<T,U>()); 00018 } 00019 }