68 template <
class dataType>
132 unsigned int _ctrl_step_multiplier);
169 template <
class Type>
virtual dataType & operator[](const vertex &_a)
return the priority associated with the vertex.
This is a specialization based on mobility.
vertex2obj< dataType > priority_values
data structure storing the priority values.
const OpVertexSet & ready_nodes
set of ready vertices.
virtual dataType operator()(const vertex &_a) const
Return the priority associated with the vertex.
bool operator()(const vertex &a, const vertex &b) const
functor function used to compare two vertices with respect to the priority data structure.
Base class used to define the priority associated with each vertex of a list base scheduling problem...
Data structures used to manage set of vertexes.
priority_compare_functor(const refcount< priority_data< Type >> pri)
Constructor.
absl::flat_hash_map< T, U, Hash, Eq, Alloc > CustomUnorderedMapUnstable
redefinition of map to manage ordered/unordered structures
A set of operation vertices.
const refcount< priority_data< Type > > priority_values
copy of the priority values
unsigned int ctrl_step_multiplier
multiplier used to take into account chaining during asap/alap computation
boost::graph_traits< graph >::vertex_descriptor vertex
vertex definition.
bool update() override
This specialization does not update the priorities at the end of the control step.
Class managing ALAP and ASAP algorithms.
Functor used to compare two vertices with respect to a priority object.
This is a specialization based on mobility.
Template definition of refcount.
This is a specialization based on a given fixed priority value.
virtual bool update()=0
this function updates the value of the priority at the end of the control step analysis.
virtual ~priority_data()=default
Destructor.
priority_compare_functor & operator=(const priority_compare_functor &in)
Copy assignment.
Data structures used in operations graph.
Template borrowed from the ANTLR library by Terence Parr (http://www.jGuru.com - Software rights: htt...
bool update() override
This specialization does not update the priorities at the end of the control step.
priority_compare_functor(const priority_compare_functor &in)
Copy constructor.