Rocstar  1.0
Rocstar multiphysics simulation application
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
UserScheduler Class Reference

#include <Scheduler.h>

Inheritance diagram for UserScheduler:
Collaboration diagram for UserScheduler:

Public Member Functions

virtual void add_action (Action *)
 
virtual void schedule ()
 
- Public Member Functions inherited from Scheduler
 Scheduler ()
 Scheduler. More...
 
virtual ~Scheduler ()
 
void reads (Action *, const char *attr, int idx)
 
void writes (Action *, const char *attr, int idx)
 
void init_actions (double t)
 
void restarting (double t)
 
void run_actions (double t, double dt)
 
void finalize_actions ()
 
void set_alpha (double alpha)
 
void print (const char *fname)
 
char * print (FILE *f, const char *container_name)
 
void printDDG (FILE *f)
 
bool isEmpty ()
 
const char * name ()
 
void set_name (const char *name)
 

Additional Inherited Members

- Protected Types inherited from Scheduler
typedef vector< ActionItem * > ActionList
 
- Protected Member Functions inherited from Scheduler
void buildDDG ()
 
- Protected Attributes inherited from Scheduler
std::string scheduler_name
 
ActionList actions
 
ActionList roots
 
ActionList sort
 
double alphaT
 
int scheduled
 
int inited
 

Detailed Description

Definition at line 97 of file Scheduler.h.

Member Function Documentation

void add_action ( Action action)
virtual

Reimplemented from Scheduler.

Definition at line 401 of file Scheduler.C.

References Scheduler::actions, Scheduler::add_action(), Scheduler::roots, and Scheduler::sort.

Referenced by Agent::add_bcaction(), Agent::add_bcinitaction(), Agent::add_gmaction(), Agent::add_icaction(), FluidAlone::FluidAlone(), and FluidBurnAlone::FluidBurnAlone().

402 {
403  Scheduler::add_action(action);
404  if (roots.size() == 0) roots.push_back(actions[actions.size()-1]);
405  sort.push_back(actions[actions.size()-1]);
406 }
ActionList roots
Definition: Scheduler.h:79
ActionList actions
Definition: Scheduler.h:78
ActionList sort
Definition: Scheduler.h:80
virtual void add_action(Action *)
Definition: Scheduler.C:41

Here is the call graph for this function:

Here is the caller graph for this function:

void schedule ( )
virtual

Reimplemented from Scheduler.

Definition at line 408 of file Scheduler.C.

References Scheduler::buildDDG(), and Scheduler::scheduled.

Referenced by UserSchedulerAction::schedule(), Coupling::schedule(), and Agent::schedule().

409 {
410 /*
411  for (unsigned int i=0; i<actions.size(); i++) {
412  if (i+1<actions.size()) {
413  actions[i]->output.push_back(actions[i+1]);
414  actions[i+1]->input.push_back(actions[i]);
415  }
416  }
417 */
418  buildDDG();
419  scheduled = 1;
420 }
void buildDDG()
Definition: Scheduler.C:79
int scheduled
Definition: Scheduler.h:84

Here is the call graph for this function:

Here is the caller graph for this function:


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