СИНТАКСИС
RTAPI_MP_INT(_var_, _description_);
RTAPI_MP_LONG(_var_, _description_);
RTAPI_MP_STRING(_var_, _description_);
RTAPI_MP_ARRAY_INT(_var_, _num_, _description_);
RTAPI_MP_ARRAY_LONG(_var_, _num_, _description_);
RTAPI_MP_ARRAY_STRING(_var_, _num_, _description_);
MODULE_LICENSE(_license_);
MODULE_AUTHOR(_author_);
MODULE_DESCRIPTION(_description_);
EXPORT_FUNCTION(_function_);
АРГУМЕНТИ
- var
-
Змінна, в якій слід зберігати параметр
- опис
-
Короткий опис параметра або модуля
- num
-
Максимальна кількість значень для параметра масиву
- ліцензія
-
Ліцензія модуля, наприклад, "GPL"
- автор
-
Автор модуля
- функція
-
Вказівник на функцію, яку потрібно експортувати
ОПИС
Ці макроси є портативними способами оголошення параметрів модуля ядра. Вони повинні використовуватися в глобальному просторі і не супроводжуються розділовим знаком крапкою з комою. Вони повинні використовуватися після визначення відповідної змінної або функції.
НОТАТКИ
EXPORT_FUNCTION робить символ доступним для використання наступним завантаженим компонентом. Це не пов’язано з функціями HAL, які описані в hal_export_funct(3)
Інтерпретація рядків ліцензії
MODULE_LICENSE follows the kernel’s definition of license strings. Notably, "GPL" indicates "GNU General Public License v2 or later". (emphasis ours).
- "GPL"
-
Загальна публічна ліцензія GNU версії 2 або пізнішої
- "GPL v2"
-
Загальна публічна ліцензія GNU v2
- "GPL та додаткові права"
-
Права та багато іншого за ліцензією GNU General Public License v2
- "Dual BSD/GPL"
-
Вибір ліцензії GNU General Public License v2 або BSD
- "Dual MIT/GPL"
-
Вибір ліцензії GNU General Public License v2 або ліцензії MIT
- "Dual MPL/GPL"
-
Вибір ліцензії GNU General Public License v2 або ліцензії Mozilla
- "Власник"
-
Небезкоштовні продукти
Як і раніше, гарною практикою є включення блоку ліцензії, який вказує автора, дату авторського права та відмову від гарантій, як рекомендовано GNU GPL.
МІРКУВАННЯ В РЕАЛЬНОМУ ЧАСІ
Недоступно в коді простору користувача.