16 unsigned int nProducts(0);
17 for (
auto& thisAlgoDependencies : algosDependencies){
18 nProducts += thisAlgoDependencies.size();
28 unsigned int algoIndex=0;
29 long int productIndex=0;
30 for (
auto& thisAlgoDependencies : algosDependencies){
33 for (
auto& product : thisAlgoDependencies){
36 if (ret_val.second==
true) ++productIndex;
38 dependency_bits[ret_val.first->second] =
true;
66 for (
const auto& new_product : newProducts){
86 std::vector<std::string> products;
98 std::vector<std::string> deps;
boost::dynamic_bitset dependency_bitset
Type holding the dependencies for one single algorithm.
std::vector< std::vector< std::string > > algosDependenciesCollection
std::vector< std::string > content() const
Get the content of the catalog.
std::vector< std::string > dataDependencies(unsigned int iAlgo) const
Get the dependencies of a single algo;.
long int productName2index(const std::string &productName)
Simple helper method to convert the product name into an index.
static std::vector< dependency_bitset > m_algosRequirements
Requirements of algos. Static since the same for all events.
void updateDataObjectsCatalog(const std::vector< std::string > &newProducts)
Update the catalog of available products in the slot.
static std::unordered_map< std::string, long int > m_productName_index_map
Track the products, assigning an index to them. Static since the same for all events.
static std::vector< std::string > m_productName_vec
Track the products, assigning an index to them. Static since the same for all events.
void reset()
Reset to default values.
dependency_bitset m_dataObjectsCatalog
Catalog of the products in the whiteboard.
DataFlowManager(const std::list< IAlgorithm * > &)
Constructor.
bool canAlgorithmRun(unsigned int iAlgo)
Needed data products are available.