// -*- c-basic-offset: 4 -*- #ifndef STATICTHREADSCHED_HH #define STATICTHREADSCHED_HH /* * =c * StaticThreadSched(ELEMENT THREAD, ...) * =s smpclick * specifies element and thread scheduling parameters * =d * Statically binds elements to threads. If more than one StaticThreadSched * is specified, they will all run. The one that runs later may override an * earlier run. * =a * ThreadMonitor, BalancedThreadSched */ #include #include class StaticThreadSched : public Element, public ThreadSched { public: StaticThreadSched(); ~StaticThreadSched(); const char *class_name() const { return "StaticThreadSched"; } int configure(Vector &, ErrorHandler *); int initial_home_thread_id(Task *, bool); private: Vector _thread_preferences; ThreadSched *_next_thread_sched; }; #endif