00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef TOOL_LINEAR_REGRESSION_HH_
00023 # define TOOL_LINEAR_REGRESSION_HH_
00024
00025 # include <utility>
00026
00027 namespace wpl
00028 {
00029
00030 namespace tool
00031 {
00032
00034 namespace lr
00035 {
00036
00046 template <class ImplType>
00047 struct pair
00048 {
00050 template <class T1, class T2>
00051 ImplType
00052 x(const std::pair<T1, T2>& p) const;
00053
00055 template <class T1, class T2>
00056 ImplType
00057 y(const std::pair<T1, T2>& p) const;
00058 };
00059
00070 template <class ImplType>
00071 struct pair_with_microseconds
00072 {
00074 template <class T1, class T2>
00075 ImplType
00076 x(const std::pair<T1, T2>& p) const;
00077
00079 template <class T1, class T2>
00080 ImplType
00081 y(const std::pair<T1, T2>& p) const;
00082 };
00083
00084 }
00085
00098 template <class ImplType,
00099 class Adapter,
00100 class InputIterator>
00101 std::pair<ImplType, ImplType>
00102 linear_regression(const InputIterator& start,
00103 const InputIterator& last,
00104 Adapter adapt = Adapter ());
00105
00106 }
00107
00108 }
00109
00110 # include "linear_regression.hxx"
00111
00112 #endif // ! TOOL_LINEAR_REGRESSION_HH_