MADNESS  0.10.1
Public Member Functions | Public Attributes | Private Types | Private Attributes | List of all members
madness::MacroTask< taskT >::MacroTaskInternal Class Reference
Inheritance diagram for madness::MacroTask< taskT >::MacroTaskInternal:
Inheritance graph
[legend]
Collaboration diagram for madness::MacroTask< taskT >::MacroTaskInternal:
Collaboration graph
[legend]

Public Member Functions

 MacroTaskInternal (const taskT &task, const std::pair< Batch, double > &batch_prio, const recordlistT &inputrecords, const recordlistT &outputrecords, std::string name)
 
resultT get_output (World &subworld, Cloud &cloud, const argtupleT &argtuple)
 get the pointers to the output functions living in the universe More...
 
virtual void print_me (std::string s="") const
 
virtual void print_me_as_table (std::string s="") const
 
void run (World &subworld, Cloud &cloud, MacroTaskBase::taskqT &taskq, const long element, const bool debug)
 
- Public Member Functions inherited from madness::MacroTaskIntermediate< MacroTask >
 MacroTaskIntermediate ()
 
 ~MacroTaskIntermediate ()
 
void cleanup ()
 
- Public Member Functions inherited from madness::MacroTaskBase
 MacroTaskBase ()
 
virtual ~MacroTaskBase ()
 
double get_priority () const
 
bool is_complete () const
 
bool is_running () const
 
bool is_waiting () const
 
std::string print_priority_and_status_to_string () const
 
void set_complete ()
 
void set_priority (const double p)
 
void set_running ()
 
void set_waiting ()
 

Public Attributes

std::string name ="unknown_task"
 
taskT task
 
- Public Attributes inherited from madness::MacroTaskBase
double priority =1.0
 
enum madness::MacroTaskBase::Status stat =Unknown
 

Private Types

typedef decay_tuple< typename taskT::argtupleT > argtupleT
 
typedef taskT::resultT resultT
 

Private Attributes

recordlistT inputrecords
 
recordlistT outputrecords
 

Additional Inherited Members

- Public Types inherited from madness::MacroTaskBase
enum  Status { Running , Waiting , Complete , Unknown }
 
typedef std::vector< std::shared_ptr< MacroTaskBase > > taskqT
 

Member Typedef Documentation

◆ argtupleT

template<typename taskT >
typedef decay_tuple<typename taskT::argtupleT> madness::MacroTask< taskT >::MacroTaskInternal::argtupleT
private

◆ resultT

template<typename taskT >
typedef taskT::resultT madness::MacroTask< taskT >::MacroTaskInternal::resultT
private

Constructor & Destructor Documentation

◆ MacroTaskInternal()

template<typename taskT >
madness::MacroTask< taskT >::MacroTaskInternal::MacroTaskInternal ( const taskT &  task,
const std::pair< Batch, double > &  batch_prio,
const recordlistT inputrecords,
const recordlistT outputrecords,
std::string  name 
)
inline

Member Function Documentation

◆ get_output()

template<typename taskT >
resultT madness::MacroTask< taskT >::MacroTaskInternal::get_output ( World subworld,
Cloud cloud,
const argtupleT argtuple 
)
inline

get the pointers to the output functions living in the universe

the result of a task living in subworld will be accumulated into result living in the universe

References madness::Cloud::load(), MADNESS_EXCEPTION, madness::MacroTask< taskT >::MacroTaskInternal::outputrecords, and madness::set_impl().

Referenced by madness::MacroTask< taskT >::MacroTaskInternal::run().

◆ print_me()

template<typename taskT >
virtual void madness::MacroTask< taskT >::MacroTaskInternal::print_me ( std::string  s = "") const
inlinevirtual

◆ print_me_as_table()

template<typename taskT >
virtual void madness::MacroTask< taskT >::MacroTaskInternal::print_me_as_table ( std::string  s = "") const
inlinevirtual

◆ run()

template<typename taskT >
void madness::MacroTask< taskT >::MacroTaskInternal::run ( World subworld,
Cloud cloud,
MacroTaskBase::taskqT taskq,
const long  element,
const bool  debug 
)
inlinevirtual

Member Data Documentation

◆ inputrecords

template<typename taskT >
recordlistT madness::MacroTask< taskT >::MacroTaskInternal::inputrecords
private

◆ name

template<typename taskT >
std::string madness::MacroTask< taskT >::MacroTaskInternal::name ="unknown_task"

◆ outputrecords

template<typename taskT >
recordlistT madness::MacroTask< taskT >::MacroTaskInternal::outputrecords
private

◆ task

template<typename taskT >
taskT madness::MacroTask< taskT >::MacroTaskInternal::task

The documentation for this class was generated from the following file: