Да
Подскажите, пожалуйста, как лучше всего реализовать! Есть несколько модулей (драйвер устройства, классы), выполняющих одинаковые операции, но требующих разные конфигурационные данные. Есть модуль (ядро (не linux)) который работает с этими драйверами. Пример использования драйвера: // Интерфейс драйвера 'class Driver { init(); handler(); getValue(); } // Драйверы и контейнер для хранения Driver * D1 = new Driver_var1(init_context_D_var1); Driver * D2 = new Driver_var2(init_context_D_var2); container drivers = {D1, D2}; // Контекст для драйверов и контест context_driver * context_D_var1 = new Driver_var1_context(); context_driver * context_D_var1 = new Driver_var1_context(); container drivers_contexts = {context_D_var1, context_D_var2}; for(d : drivers, context : drivers_contexts) { d.init(contextcontext); } for(d : drivers, context : drivers_contexts) { d.handler(context); } for(i, d : drivers, context : drivers_contexts) { res[i] = d.getValue(context); }' У каждого драйвера свой контектс, возможно даже разный контекст для каждого метода. Как лучше всего орагнизовать интерфейс, конкретные драйверы и их сипользование?
Обсуждают сегодня