1 #ifndef PARTITIONPROVIDER_H
2 #define PARTITIONPROVIDER_H
4 #include "../base/solutionprovider.h"
44 virtual unsigned int clustersize(
unsigned int solutionIndex,
unsigned int partitionIndex)
const = 0;
49 virtual T*
element(
unsigned int solutionIndex,
unsigned int partitionIndex,
unsigned int elementIndex)
const = 0;
55 virtual std::vector<T*>
cluster(
unsigned int solutionIndex,
unsigned int partitionIndex)
const = 0;
60 virtual std::vector<std::vector<T*> >
clustering(
unsigned int solutionIndex)
const = 0;
virtual T * element(unsigned int solutionIndex, unsigned int partitionIndex, unsigned int elementIndex) const =0
Returns a pointer to a particular element from the specified cluster and clustering.
virtual std::vector< T * > cluster(unsigned int solutionIndex, unsigned int partitionIndex) const =0
Returns a vector of pointers to the elements of a particular cluster from the specified clustering...
static PartitionProvider< T > * toPartitionProvider(SolutionProvider *s)
Does a dynamic cast of the given SolutionProvider to a PartitionProvider.
virtual std::vector< std::vector< T * > > clustering(unsigned int solutionIndex) const =0
Returns the specified clustering as a vector of vector of pointers to the elements.
Abstract base class to access results of partition based clustering algorithms.
virtual unsigned int number_of_solutions() const =0
returns the number of available solutions
virtual ~PartitionProvider()
virtual unsigned int size_of_solution(unsigned int index) const =0
returns the size of a particular solution
virtual unsigned int clustersize(unsigned int solutionIndex, unsigned int partitionIndex) const =0
Returns the cardinality of the specified cluster from the computed clustering.
Abstract base class for algorithm solutions.