00001 #ifndef __RANDOM_SHUFFLE_FIXER_HPP__ 00002 #define __RANDOM_SHUFFLE_FIXER_HPP__ 00003 00004 #include <functional> 00005 00010 namespace Sequence 00011 { 00012 template<typename uni01> 00013 struct randomShuffleAdaptor : public std::binary_function<int,uni01,int> 00089 { 00090 uni01 * uni; 00091 randomShuffleAdaptor( uni01 * u ) : uni(u) {} 00092 inline int operator()(const int & i) const 00093 { 00094 return int( (*uni)() * i); 00095 } 00096 }; 00097 } 00098 #endif
1.6.3