BICO  1.0
 All Classes Namespaces Files Functions Variables Typedefs Pages
proxyprovider.h
Go to the documentation of this file.
1 #ifndef PROXYPROVIDER_H
2 #define PROXYPROVIDER_H
3 
4 #include <string>
5 #include "../base/solutionprovider.h"
6 
7 namespace CluE {
8 
14 template<typename T> class ProxyProvider {
15 public:
16 
17  virtual ~ProxyProvider() {
18  }
19 
27  virtual unsigned int number_of_solutions() const = 0;
28 
35  virtual unsigned int size_of_solution(unsigned int index) const = 0;
36 
42  virtual T proxy(unsigned int solutionIndex, unsigned int proxyIndex) const = 0;
43 
49  virtual std::vector<T> proxies(unsigned int solutionIndex) const = 0;
50 
56  return dynamic_cast<ProxyProvider<T>*>(s);
57  }
58 };
59 
60 }
61 
62 #endif