RaftLib  0.3a
C++ Stream Processing Template Library
Public Member Functions | Protected Member Functions | Friends | List of all members
Map Class Reference

#include <map.hpp>

Inheritance diagram for Map:
[legend]
Collaboration diagram for Map:
[legend]

Public Member Functions

 Map ()
 
virtual ~Map ()
 
template<class scheduler = pool_schedule, class allocator = dynalloc>
void exe ()
 
- Public Member Functions inherited from MapBase
 MapBase ()
 
virtual ~MapBase ()
 
template<order::spec t = order::in>
kernel_pair_t link (raft::kernel *a, raft::kernel *b)
 
template<order::spec t = order::in>
kernel_pair_t link (raft::kernel *a, const std::string a_port, raft::kernel *b)
 
template<order::spec t = order::in>
kernel_pair_t link (raft::kernel *a, raft::kernel *b, const std::string b_port)
 
template<order::spec t = order::in>
kernel_pair_t link (raft::kernel *a, const std::string a_port, raft::kernel *b, const std::string b_port)
 

Protected Member Functions

void checkEdges (std::set< raft::kernel * > &source_k)
 
void printEdges (std::set< raft::kernel * > &source_k)
 
- Protected Member Functions inherited from MapBase
void join (raft::kernel &a, const std::string name_a, PortInfo &a_info, raft::kernel &b, const std::string name_b, PortInfo &b_info)
 

Friends

class Schedule
 
class Allocate
 

Additional Inherited Members

- Protected Attributes inherited from MapBase
std::set< raft::kernel * > source_kernels
 
std::set< raft::kernel * > all_kernels
 

Detailed Description

map.hpp -

Author
: Jonathan Beard
Version
: Fri Sep 12 10:28:33 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.

Constructor & Destructor Documentation

Map::Map ( )

Map - constructor, really doesn't do too much at the monent and doesn't really need to.

map.cpp -

Author
: Jonathan Beard
Version
: Fri Sep 12 10:28:33 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.

Map::~Map ( )
virtual

default destructor

Member Function Documentation

void Map::checkEdges ( std::set< raft::kernel * > &  source_k)
protected

checkEdges - runs a breadth first search through the graph to look for disconnected edges.

Parameters
source_k- std::set< raft::kernel* >
Exceptions
PortException- thrown if an unconnected edge is found.

NOTE: will throw an error that we're not catching here if there are unconnected edges...this is something that a user will have to fix. Otherwise will return with no errors.

Here is the call graph for this function:

Here is the caller graph for this function:

template<class scheduler = pool_schedule, class allocator = dynalloc>
void Map::exe ( )
inline

launch allocator in a thread

launch scheduler in thread

join scheduler first

scheduler done, cleanup alloc

all fifo's deallocated when alloc goes out of scope

Here is the call graph for this function:

void Map::printEdges ( std::set< raft::kernel * > &  source_k)
protected

printEdges - print a nice pretty picture using graphviz of the current layout, future versions will pop up a window and display the topology as a 3-d graph, but we'll save that till everything is relatively stable.

Parameters
source_k,&std::set<raft::kernel* >

Here is the call graph for this function:


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