MyraMath
|
Type erasure class that wraps JobGraphBase, gives it value semantics. More...
#include <JobGraph.h>
Public Member Functions | |
JobGraph () | |
Default constructor, empty container. | |
JobGraph (const JobGraphBase &that) | |
Clone constructor (deep). TODO make this explicit. | |
JobGraph (const JobGraph &that) | |
Copy constructor (deep) | |
void | swap (JobGraph &that) |
Member swap. | |
JobGraph & | operator= (JobGraph that) |
Assignment operator, copy and swap idiom. | |
~JobGraph () | |
Frees internal resources. | |
uint64_t | n_work () const |
Total "work" over all Job's of this JobGraph. | |
std::string | name () const |
Returns a printable name for this JobGraph, for debugging. | |
void | begins (JobIDs &output) const |
Enumerates the JobIDs of Job's that have no parents (where execution begins) | |
void | ends (JobIDs &output) const |
Enumerates the JobIDs of Job's that have no children (where execution ends) | |
Job * | create (JobID j) const |
Constructs the Job corresponding to the given JobID. | |
std::vector< Job * > | create () const |
Constructs all Job's in an implementation-defined order. | |
uint64_t | size () const |
Returns maximum JobID. | |
Type erasure class that wraps JobGraphBase, gives it value semantics.