#include <CombinationGenerator.h>
Public Types | |
typedef std::vector< T > | Collection |
typedef std::vector< Collection > | Combination |
typedef std::vector< Combination > | VectorOfCombinations |
Public Member Functions | |
std::vector< Combination > | combinations (const Collection &data, int numberOfCollections) const |
std::vector< Combination > | combinations (const Collection &data, const PartitionGenerator::Partition &partition) const |
std::vector< Combination > | combinations (const Collection &data) const |
Private Member Functions | |
std::vector< Combination > | separateOneElement (const Collection &data) const |
VectorOfCombinations | splitInTwoCollections (const Collection &data, int sizeFirst) const |
Class to compute all distinct Combinations of a collection 'data' of objects of type 'T'. A Combination is a set of collections, each collection containing one or more objects, with any object in 'data' assigned to exactly one collection.
Definition at line 18 of file CombinationGenerator.h.
typedef std::vector<T> CombinationGenerator< T >::Collection |
Definition at line 20 of file CombinationGenerator.h.
typedef std::vector<Collection> CombinationGenerator< T >::Combination |
Definition at line 22 of file CombinationGenerator.h.
typedef std::vector<Combination> CombinationGenerator< T >::VectorOfCombinations |
Definition at line 23 of file CombinationGenerator.h.
|
inline |
Create combinations obtained by dividing 'data' according to all partitions with 'numberOfCollections' collections.
Definition at line 28 of file CombinationGenerator.h.
References SplitLinear::begin, data, and PartitionGenerator::sortedPartitions().
Referenced by CombinationGenerator< T >::combinations(), CombinationGenerator< T >::separateOneElement(), and CombinationGenerator< T >::splitInTwoCollections().
|
inline |
Create all combinations obtained by dividing 'data' according to Partition 'partition'.
Definition at line 60 of file CombinationGenerator.h.
References bookConverter::comb, CombinationGenerator< T >::combinations(), data, isotrackApplyRegressor::k, isotrackNtupler::merged, findQualityFiles::size, and CombinationGenerator< T >::splitInTwoCollections().
|
inline |
Create all combinations of elements from 'data'.
Definition at line 153 of file CombinationGenerator.h.
References CombinationGenerator< T >::combinations(), data, and PartitionGenerator::partitions().
|
inlineprivate |
Create all combinations obtained by dividing 'data' in two collections, the second one having only one element.
Definition at line 239 of file CombinationGenerator.h.
References bookConverter::comb, CombinationGenerator< T >::combinations(), mps_fire::i, dqmiolumiharvest::j, and trackerHitRTTI::single.
Referenced by CombinationGenerator< T >::splitInTwoCollections().
|
inlineprivate |
Create all combinations obtained by dividing 'data' in two collections, the first one being of size 'sizeFirst'
Definition at line 182 of file CombinationGenerator.h.
References universalConfigTemplate::collection, bookConverter::comb, CombinationGenerator< T >::combinations(), edm::second(), CombinationGenerator< T >::separateOneElement(), and findQualityFiles::size.
Referenced by CombinationGenerator< T >::combinations().