|
MADNESS
version 0.9
|
Apply an operation to a range of iterators. More...
#include <worldtask.h>


Public Member Functions | |
| ForEachRootTask (World &world, const rangeT range, const opT &op) | |
| Constructor. More... | |
| virtual | ~ForEachRootTask () |
| Virtual destructor. More... | |
| World & | world () const |
| World accessor. More... | |
| const Future< bool > & | result () const |
| Result accessor. More... | |
| void | complete (const int status) |
| Called by child tasks when they are complete. More... | |
| virtual void | run (const TaskThreadEnv &) |
| Task run work. More... | |
Public Member Functions inherited from madness::TaskInterface | |
| TaskInterface (int ndepend=0, const TaskAttributes attr=TaskAttributes()) | |
| Create a new task with ndepend dependencies (default 0) and given attributes. More... | |
| TaskInterface (const TaskAttributes &attr) | |
| Create a new task with zero dependencies and given attributes. More... | |
| virtual void | run (World &) |
| Runs a single-threaded task ... derived classes must implement this. More... | |
| virtual void | run (World &world, const TaskThreadEnv &env) |
| Runs a multi-threaded task. More... | |
| World * | get_world () const |
| virtual | ~TaskInterface () |
Public Member Functions inherited from madness::PoolTaskInterface | |
| PoolTaskInterface () | |
| PoolTaskInterface (const TaskAttributes &attr) | |
| void | set_nthread (int nthread) |
| Call this to reset the number of threads before the task is submitted. More... | |
| virtual | ~PoolTaskInterface () |
Public Member Functions inherited from madness::TaskAttributes | |
| TaskAttributes (unsigned long flags=0) | |
| TaskAttributes (const TaskAttributes &attr) | |
| virtual | ~TaskAttributes () |
| bool | is_generator () const |
| bool | is_stealable () const |
| bool | is_high_priority () const |
| void | set_generator (bool generator_hint) |
| void | set_stealable (bool stealable) |
| void | set_highpriority (bool hipri) |
| void | set_nthread (int nthread) |
| Are you sure this is what you want to call? More... | |
| int | get_nthread () const |
| template<typename Archive > | |
| void | serialize (Archive &ar) |
Public Member Functions inherited from madness::DependencyInterface | |
| DependencyInterface (int ndep=0) | |
| int | ndep () const |
| Returns the number of unsatisfied dependencies. More... | |
| bool | probe () const |
| Returns true if ndepend == 0. More... | |
| void | notify () |
| Invoked by callbacks to notifiy of dependencies being satisfied. More... | |
| void | register_callback (CallbackInterface *callback) |
Registers a callback for when ndepend==0 , immediately invoked if ndepend==0. More... | |
| void | inc () |
| Increment the number of dependencies. More... | |
| void | dec () |
| Decrement the number of dependencies and invoke callback if ndepend=0. More... | |
| virtual | ~DependencyInterface () |
Public Member Functions inherited from madness::CallbackInterface | |
| virtual | ~CallbackInterface () |
Additional Inherited Members | |
Static Public Member Functions inherited from madness::PoolTaskInterface | |
| static void | operator delete (void *p, std::size_t size) throw () |
| Destroy task object. More... | |
Static Public Member Functions inherited from madness::TaskAttributes | |
| static TaskAttributes | generator () |
| static TaskAttributes | hipri () |
| static TaskAttributes | multi_threaded (int nthread) |
Static Public Attributes inherited from madness::TaskInterface | |
| static bool | debug = false |
Static Public Attributes inherited from madness::TaskAttributes | |
| static const unsigned long | NTHREAD = 0xff |
| static const unsigned long | GENERATOR = 1ul<<8 |
| static const unsigned long | STEALABLE = GENERATOR<<1 |
| static const unsigned long | HIGHPRIORITY = GENERATOR<<2 |
Static Protected Member Functions inherited from madness::PoolTaskInterface | |
| template<typename fnT > | |
| static enable_if_c < detail::function_traits< fnT > ::value||detail::memfunc_traits < fnT >::value >::type | make_id (std::pair< void *, unsigned short > &id, fnT fn) |
| template<typename fnobjT > | |
| static disable_if_c < detail::function_traits < fnobjT >::value||detail::memfunc_traits < fnobjT >::value >::type | make_id (std::pair< void *, unsigned short > &id, const fnobjT &) |
Apply an operation to a range of iterators.
| rangeT | The range of iterators type |
| opT | The operation type This task spawns for each tasks and collects information on the results of those tasks. Once all tasks have completed it will set the result future. |
|
inline |
Constructor.
| world | The world where the tasks will run |
| range | The range of iterators |
| op | The oeration that will be applied to the range of iterators |
|
inlinevirtual |
Virtual destructor.
|
inline |
Called by child tasks when they are complete.
| status | The number of iterations that returned true |
References madness::DependencyInterface::notify().
Referenced by madness::detail::ForEachTask< rangeT, opT >::run().
|
inline |
Result accessor.
Referenced by madness::WorldTaskQueue::for_each().
|
inlinevirtual |
Task run work.
Sets the result future based on the status of all iterations
Reimplemented from madness::TaskInterface.
|
inline |
World accessor.
Referenced by madness::detail::ForEachTask< rangeT, opT >::run().
1.8.8