LinuxCNC Documentation

SYNTAX

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_);

ARGUMENTE

var

Die Variable, die den Parameter speichern soll

description

Eine kurze Beschreibung des Parameters oder Moduls

num

Die maximale Anzahl von Werten für einen Array-Parameter

license

Die Lizenz des Moduls, zum Beispiel "GPL".

author

Der Autor des Moduls

function

Der Zeiger auf die zu exportierende Funktion

BESCHREIBUNG

Diese Makros sind portable Methoden zur Deklaration von Kernelmodulparametern. Sie müssen im globalen Bereich verwendet werden und werden nicht von einem abschließenden Semikolon gefolgt. Sie müssen verwendet werden, nachdem die zugehörige Variable oder Funktion definiert wurde.

ANMERKUNGEN

EXPORT_FUNCTION macht ein Symbol für die Verwendung durch eine später geladene Komponente verfügbar. Sie hat nichts mit den HAL-Funktionen zu tun, die in hal_export_funct(3) beschrieben sind

Interpretation von Lizenzstrings

MODULE_LICENSE follows the kernel’s definition of license strings. Notably, "GPL" indicates "GNU General Public License v2 or later". (emphasis ours).

"GPL"

GNU General Public License v2 oder höher

"GPL v2"

GNU General Public License v2

"GPL und zusätzliche Rechte"

Rechte der GNU General Public License v2 und weitere.

"Dual BSD/GPL"

Wahlweise GNU General Public License v2 oder BSD-Lizenz

"Dual MIT/GPL"

Wahlweise GNU General Public License v2 oder MIT-Lizenz

"Dual MPL/GPL"

GNU General Public License v2 oder Mozilla-Lizenz nach Wahl

"Proprietary"

Unfreie Produkte

Es ist immer noch gute Praxis, einen Lizenzblock einzufügen, der den Autor, das Copyright-Datum und den Haftungsausschluss angibt, wie von der GNU GPL empfohlen.

REALTIME CONSIDERATIONS

Im Userspace-Code nicht verfügbar.