Mercurial > hg > tweakathon2ios
annotate algorithms.h @ 52:89944ab3e129 tip
fix oF linker errors ios8
author | Robert Tubb <rt300@eecs.qmul.ac.uk> |
---|---|
date | Tue, 03 Feb 2015 13:18:23 +0000 |
parents | 3af380769779 |
children |
rev | line source |
---|---|
rt300@22 | 1 #pragma once |
rt300@22 | 2 |
rt300@22 | 3 #include "ofMain.h" |
rt300@22 | 4 #include <functional> |
rt300@22 | 5 |
rt300@22 | 6 |
rt300@22 | 7 |
rt300@22 | 8 template <typename T> |
rt300@22 | 9 vector<T> makeVector(T a1, T a2,T a3,T a4,T a5,T a6, T a7, T a8){ |
rt300@22 | 10 |
rt300@22 | 11 vector<T> vec; |
rt300@22 | 12 vec.push_back(a1); |
rt300@22 | 13 vec.push_back(a2); |
rt300@22 | 14 vec.push_back(a3); |
rt300@22 | 15 vec.push_back(a4); |
rt300@22 | 16 vec.push_back(a5); |
rt300@22 | 17 vec.push_back(a6); |
rt300@22 | 18 vec.push_back(a7); |
rt300@22 | 19 vec.push_back(a8); |
rt300@22 | 20 return vec; |
rt300@22 | 21 } |
rt300@22 | 22 |
rt300@22 | 23 |
rt300@22 | 24 //------------------------------------------------------------- |
rt300@22 | 25 //------------------------------------------------------------- |
rt300@22 | 26 template <class T> |
rt300@22 | 27 class randomiseCCVal : public unary_function<T, T>{ |
rt300@22 | 28 public: |
rt300@22 | 29 T operator()(T a){ |
rt300@22 | 30 return ofRandom(0,127); |
rt300@22 | 31 |
rt300@22 | 32 }; |
rt300@22 | 33 }; |
rt300@22 | 34 template <class T> |
rt300@22 | 35 class randomiseCCValIf : public binary_function<T, bool, T>{ |
rt300@22 | 36 public: |
rt300@22 | 37 T operator()(T a, bool doit ){ |
rt300@22 | 38 if (doit) |
rt300@22 | 39 return ofRandom(0,127); |
rt300@22 | 40 return a; |
rt300@22 | 41 |
rt300@22 | 42 }; |
rt300@22 | 43 }; |
rt300@22 | 44 template <class T> |
rt300@22 | 45 class printThing : public unary_function<T, void>{ |
rt300@22 | 46 public: |
rt300@22 | 47 void operator()(T a){ |
rt300@22 | 48 cout << a << endl; |
rt300@22 | 49 |
rt300@22 | 50 }; |
rt300@22 | 51 }; |
rt300@22 | 52 |
rt300@22 | 53 template <class T> |
rt300@22 | 54 class difference : public binary_function<T, T, T>{ |
rt300@22 | 55 public: |
rt300@22 | 56 T operator()(T a, T b ){ |
rt300@22 | 57 return abs(a - b); |
rt300@22 | 58 }; |
rt300@22 | 59 }; |
rt300@22 | 60 template <class T> |
rt300@22 | 61 class squared : public unary_function<T, T>{ |
rt300@22 | 62 public: |
rt300@22 | 63 T operator()(T a ){ |
rt300@22 | 64 return a*a; |
rt300@22 | 65 }; |
rt300@22 | 66 }; |
rt300@34 | 67 |
rt300@34 | 68 float euclideanDistance(vector<int> v1, vector<int> v2); |