#ifndef _TRISKELE_DEAL_THREADS_HPP #define _TRISKELE_DEAL_THREADS_HPP #ifdef INTEL_TBB_THREAD #include #endif #include #include "triskeleDebug.hpp" namespace triskele { template inline void dealThreadRange (const DimImg &maxId, const unsigned int &coreCount, const FunctId &functId/* functId (id) */); template inline void dealThreadThreadRange (const DimImg &maxId, const unsigned int &coreCount, const FunctThreadId &functThreadId/* functThreadId (threadId, id) */); template inline void dealThreadBound (const DimImg &maxId, const unsigned int &coreCount, const FunctMinMax &functMinMax/* functMinMax (minVal, maxVal) */); template inline std::vector getDealThreadBounds (const DimImg &maxId, const unsigned int &coreCount); template inline void dealThread (const DimImg &maxId, unsigned int coreCount, const FunctThreadMinMax &functThreadMinMax/* functThreadMinMax (threadId, minVal, maxVal) */); template inline void dealThreadFill_n (const DimImg &maxId, unsigned int coreCount, OutputIterator first, const T& val); template inline void callOnSortedSets (const std::vector &sizes, const WeightFunct &getWeight/* getWeight (vectId, itemId) */, CmpFunct isWeightInf/* isWeightInf (w1, w2) */, const CallFunct &callIdId/* callIdId (vectId, itemId) */); #include "triskeleDealThreads.tpp" } // triskele #endif // _TRISKELE_DEAL_THREADS_HPP