RaftLib  0.3a
C++ Stream Processing Template Library
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
simple_schedule Class Reference
Inheritance diagram for simple_schedule:
[legend]
Collaboration diagram for simple_schedule:
[legend]

Public Member Functions

 simple_schedule (Map &map)
 
virtual ~simple_schedule ()
 
virtual void start ()
 
- Public Member Functions inherited from Schedule
 Schedule (Map &map)
 
virtual ~Schedule ()
 
virtual void init ()
 

Protected Member Functions

virtual bool scheduleKernel (raft::kernel *kernel)
 

Protected Attributes

std::vector< raft::kernel * > kernel_map
 
- Protected Attributes inherited from Schedule
SystemSignalHandler handlers
 

Additional Inherited Members

- Static Public Member Functions inherited from Schedule
static bool isActive (raft::kernel const *const kernel)
 
static void inactivate (raft::kernel *const kernel)
 
- Static Protected Member Functions inherited from Schedule
static raft::kstatus checkSystemSignal (raft::kernel *const kernel, void *data, SystemSignalHandler &handlers)
 
static raft::kstatus quitHandler (FIFO &fifo, raft::kernel *kernel, const raft::signal signal, void *data)
 
static void invalidateOutputPorts (raft::kernel *kernel)
 
static bool kernelHasInputData (raft::kernel *kernel)
 
static bool kernelHasNoInputPorts (raft::kernel *kernel)
 
static void kernelRun (raft::kernel *const kernel, volatile bool &finished)
 

Constructor & Destructor Documentation

simple_schedule::simple_schedule ( Map map)

simpleschedule.cpp -

Author
: Jonathan Beard
Version
: Thu Sep 11 15:49:57 2014

Copyright 2014 Jonathan Beard

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at:

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

nothing to do here

simple_schedule::~simple_schedule ( )
virtual

note: kernels are deleted by the map!

Member Function Documentation

bool simple_schedule::scheduleKernel ( raft::kernel kernel)
protectedvirtual

scheduleKernel - adds the kernel "kernel" to the schedule, ensures that it is run. Other than that there are no guarantees for its execution. It is purely virtual in its implementation.

Parameters
kernel- raft::kernel*
Returns
bool - returns false if the kernel is already scheduled.

does nothing

Reimplemented from Schedule.

void simple_schedule::start ( )
virtual

start - called to start execution of all kernels. Implementation specific so it is purely virtual.

Implements Schedule.

Here is the call graph for this function:

Member Data Documentation

std::vector< raft::kernel* > simple_schedule::kernel_map
protected

NOTE: for more complex schedules it'd behoove us to keep more information here for each scheduled kernel.


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