MyraMath
Classes | Public Member Functions | Friends | List of all members
myra::FusedJobGraph Class Reference

Contains multiple JobGraph's, fuses them together. More...

#include <FusedJobGraph.h>

Inheritance diagram for myra::FusedJobGraph:
[legend]
Collaboration diagram for myra::FusedJobGraph:
[legend]

Public Member Functions

 FusedJobGraph ()
 Default constructor, empty Graph.
 
int insert (const JobGraph &g)
 Adds a JobGraph to *this, returns a GraphID to refer to it in the future.
 
const JobGraphat (int g) const
 Accesses a contained JobGraph.
 
void add_edge (int g0, JobID j0, int g1, JobID j1)
 Adds a dependency, that g0.job(j0) must execute before g1.job(j1).
 
virtual JobGraphBaseclone () const
 Virtual copy-constructor.
 
virtual uint64_t n_work () const
 Total "work" over all Job's of this JobGraph.
 
virtual std::string name () const
 Returns a printable name for this JobGraph, for debugging.
 
virtual void begins (JobIDs &output) const
 Enumerates the JobIDs of Job's that have no parents (where execution begins)
 
virtual void ends (JobIDs &output) const
 Enumerates the JobIDs of Job's that have no children (where execution ends)
 
virtual ::myra::Jobcreate (JobID j)
 Constructs the Job corresponding to the given JobID.
 
virtual std::vector< Job * > create ()
 Constructs all Job's in an implementation-defined order.
 
uint64_t size () const
 Returns maximum JobID.
 
virtual ~FusedJobGraph ()
 Virtual destructor, so subtypes can release resources.
 
- Public Member Functions inherited from myra::JobGraphBase
virtual ~JobGraphBase ()
 Virtual destructor, so subtypes can release resources.
 

Friends

class FusedJob
 

Detailed Description

Contains multiple JobGraph's, fuses them together.


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