-
- У меня такие штуки раскиданы по модулям. Можно сказать, у вас для
этого есть отдельный модуль, который как бы общий и ничей, как
социалистическая собственность. По сути, это протест против
модульной системы. КМК, надо раскидать по более локальным модулям,
даже если с некоторой натяжкой. - SciFi(28.04.2025 13:35)
- Нет, это не модуль. Хотя и существует файл main.c, функций в нём
для других модулей не определено. Просто в main.h вынесены общие
определения. Не функции, а просто дефайны. В крайнем случае,
переменная глобального состояния системы или её геттер. - Nikolay_Po(28.04.2025 13:37)
- У меня "система" с её "состоянием" была бы модулем. Но это уже
философическое. - SciFi(28.04.2025 13:39)
- У меня несколько подсистем. У каждой свой конечный автомат. Плюс
конечный автомат всей системы, главный. В одном модуле это будет
слишком громоздко. А как вы бы раздали приоритеты прерываний в
модулях? Лезть в каждый отдельно? - Nikolay_Po(28.04.2025 13:43)
- Возможно, собрал бы приоритеты в таблицу и сделал бы для неё
отдельный хедер. Или сделал приоритеты аргументами функций init()
различных модулей и вызывал бы их кучно из main(). Но не валил бы
это всё в кучу "общее всякое разное", у меня на это аллергия. - SciFi(28.04.2025 13:54)
- Хмм... Ну, таблицу прерываний понятно, можно вынести. Но у меня модули, по большей части, автономные. Смотрят на глобальное состояние системы и исполняют назначенное этому состоянию. Что нужно другим модулям - те забирают из структур, объявленных частными заголовками модулей. А вот общее состояние системы - оно действительно общее. Мне его что, в отдельный файл "общее состояние системы.h" вынести? Nikolay_Po(14 знак., 28.04.2025 14:03)
- Возможно, собрал бы приоритеты в таблицу и сделал бы для неё
отдельный хедер. Или сделал приоритеты аргументами функций init()
различных модулей и вызывал бы их кучно из main(). Но не валил бы
это всё в кучу "общее всякое разное", у меня на это аллергия. - SciFi(28.04.2025 13:54)
- У меня несколько подсистем. У каждой свой конечный автомат. Плюс
конечный автомат всей системы, главный. В одном модуле это будет
слишком громоздко. А как вы бы раздали приоритеты прерываний в
модулях? Лезть в каждый отдельно? - Nikolay_Po(28.04.2025 13:43)
- У меня "система" с её "состоянием" была бы модулем. Но это уже
философическое. - SciFi(28.04.2025 13:39)
- Нет, это не модуль. Хотя и существует файл main.c, функций в нём
для других модулей не определено. Просто в main.h вынесены общие
определения. Не функции, а просто дефайны. В крайнем случае,
переменная глобального состояния системы или её геттер. - Nikolay_Po(28.04.2025 13:37)
- У меня такие штуки раскиданы по модулям. Можно сказать, у вас для
этого есть отдельный модуль, который как бы общий и ничей, как
социалистическая собственность. По сути, это протест против
модульной системы. КМК, надо раскидать по более локальным модулям,
даже если с некоторой натяжкой. - SciFi(28.04.2025 13:35)