From 43aebb09438ff589a7be141a5af0aec2c27eaa95 Mon Sep 17 00:00:00 2001 From: "Matthias P. Braendli" Date: Sat, 18 Jul 2015 22:20:11 +0200 Subject: Add FIG0/2, fib0 scheduler --- src/fig/FIGCarousel.h | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) (limited to 'src/fig/FIGCarousel.h') diff --git a/src/fig/FIGCarousel.h b/src/fig/FIGCarousel.h index cbb6868..42b8d9c 100644 --- a/src/fig/FIGCarousel.h +++ b/src/fig/FIGCarousel.h @@ -30,20 +30,39 @@ #define __FIG_CAROUSEL_H_ #include "fig/FIG.h" +#include "fig/FIG0.h" #include +#include #include #include "MuxElements.h" +struct FIGCarouselElement { + IFIG* fig; + int deadline; + + void reduce_deadline(void); +}; + class FIGCarousel { public: FIGCarousel(boost::shared_ptr ensemble); void set_currentFrame(unsigned long currentFrame); + void allocate_fig_to_fib(int figtype, int extension, int fib); + + void fib0(int framephase); + private: FIGRuntimeInformation m_rti; - std::list m_figs; + std::map, IFIG*> m_figs_available; + + // Each FIB contains a list of carousel elements + std::map > m_fibs; + FIG0_0 m_fig0_0; + FIG0_1 m_fig0_1; + FIG0_2 m_fig0_2; }; #endif // __FIG_CAROUSEL_H_ -- cgit v1.2.3