The interface Schedules is used to provide the class LoopPool with symbolic constants that represent different scheduling policies:
In the remaining of this paper, we focus on the implementation of three scheduling policies: block scheduling, cyclic scheduling, and guided-self scheduling. Other scheduling policies, however, can be easily incorporated in the framework.