Тема: Библиотека пользовательских функций
Очень хочется иметь возможность подключать свои функции сразу в несколько проектов. На данный момент приходится копировать, но получаются стандартные проблемы при обновлении функций.
Добро пожаловать на форум компании 'Авионика и Софт'. Здесь вы можете найти информацию, задать вопрос или оставить отзыв о работе компании и её продуктах.
Вы не вошли. Пожалуйста, войдите или зарегистрируйтесь.
Изменения в новой версии САПР 'ПрагмаСофтСтудия 3.0':
- Добавлено создание пользовательских типов: перечислений и структур. Это новые типы данных основанные на 5 встроенных типах данных (bool, int, uint, float, string). Использование перечислений и структур значительно упростит и ускорит создание проектов САПР.
- Изменён механизм прорисовки обводки текста. Теперь обводка формируется как полноценная контурная линия, огибающая символы шрифтов.
- Выполнены работы по кодогенерации, улучшающие и исправляющие программный код. Также переработаны тестовые проекты кодогенерации.
- Переработаны демонстрационные проекты 'Engine 2' и 'Ball'. К их структуре по максимуму применены пользовательские типы, а также функции вычисления и прорисовки.
Предлагаем Вам ознакомиться с документацией для САПР ПрагмаСофтСтудия. При желании можете использовать её офлайн версию. В последнем обновлении появился обучающий раздел с описанием шагов по созданию небольшого индикационного элемента.
Если ранее Вы уже просматривали документацию, советуем Вам сделать очистку кэша Вашего браузера.
Авионика и Софт → Использование → Библиотека пользовательских функций
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Очень хочется иметь возможность подключать свои функции сразу в несколько проектов. На данный момент приходится копировать, но получаются стандартные проблемы при обновлении функций.
Пока у нас нет решения данной задачи. Как по Вашему мнению должен работать такой механизм?
Пока у нас нет решения данной задачи. Как по Вашему мнению должен работать такой механизм?
На языках программирования более низкого уровня это решается подключением модулей, в которых эти функции есть.
А вроде были варианты объединения в одном проекте нескольких? Может тогда бы мы держали один проект специально для функций?
Да, то, что находится на уровне проекта (а не задачи), т.е. в его ветви, доступно всем задачам. Это могут быть входные и выходные переменные, а также функции.
Т.е. Вы можете сделать один большой проект с множеством задач, каждая из которых будет отдельно кодогенериться. А функции общие для всех или нескольких задач перенести в окне Функции в ветвь проекта. При этом они станут доступны для вызова из всех задач в окне Прорисовка и в окне Функции.
Этот же принцип действует и для входных и выходных переменных. Если переменная создана в ветви проекта, то её область видимости распространяется на все задачи.
А также, локальные переменные, созданные в окне Прорисовка в корневой ветви проекта, доступны всем задачам.
Не забывайте хотя бы раз в день делать резервное копирование проекта.
А тогда не получится что та сотня входных переменных, которая нужна одному кадру, будет генерироваться во втором, которому нужны совсем другие?
Да, так может получиться. Поэтому на общий уровень проекта выносить необходимо только общие для всех задач переменные. Ну, или принять небольшие издержки по памяти.
Хотя, нам кажется, правильно было бы выносить не по принципу общности, а в окне Прорисовка в ветвь проекта выносить какие-то общие для всех задач механизмы и входные переменные нужные для них уже выносить на уровень проекта.
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Авионика и Софт → Использование → Библиотека пользовательских функций
| 2015-2025 © ООО 'Авионика и Софт'. Все права защищены. | Форум работает на PunBB, при поддержке Informer Technologies, Inc |