# kernelv_ch_axis_get_offsets()

## Prototyp

KERNELV_RETURN | kernelv_ch_axis_get_offsets(unsigned long int chanIndex, unsigned long int axisIndex, unsigned short int csIndex, signed long int *offsets, unsigned long int bufferSize,
unsigned long int *retBytes);

## Beschreibung

Liefert die achsspezifischen Verschiebungen in dem durch den Parameter csIndex angegebenen Koordinatensystems zurück.

Der Parameter axisIndex kennzeichnet dabei den Index der Achse innerhalb des durch ChanIndex angegebenen NC-Kanals.

Es wird ein Vektor mit acht Elementen zurückgegeben, in dem für die durch axisIndex definierte Achse die durch die unterschiedlichen NC-Befehle eingeführten Offsets aufgeführt sind.

Die Zuordnung des Index innerhalb des Vektors zu den unterschiedlichen Verschiebungstypen ist durch die Enumeration KERNELV_AXIS_OFFSET_TYPES gegeben.

## Parameter

Name | Typ | Bedeutung
chanIndex | unsigned long | Kanalindex des Kanals.
axisIndex | unsigned long | Index der Achse innerhalb des NC-Kanals.
csIndex | unsigned short | Index des Koordinatensystems im Koordinatensystem-Stack.
offsets | signed long* | Zeiger auf den Speicherplatz für den Offsetvektor.
nameLength | unsigned long | Länge des Speicherbereiches für die Rotationsmatrix muss mindestens 8 x sizeof (signed long int ) sein.
returnLength | unsigned long* | Zeiger auf den Wert, in den die tatsächlich zurückgegebene Anzahl Bytes geschrieben werden soll. Falls der übergebene Speicher zu klein für die Rückgabe des Wertes ist, wird der Rückgabewert ERR_CNC_RET_MEMORY zurückgegeben und es wird über diesen Parameter die benötigte Speichergröße zurückgegeben.

## Rückgabewerte

Symbol | Wert | Bedeutung
RET_FINISHED | 0 | Die Funktion wurde fehlerfrei durchgeführt.
ERR_INVALID_CHAN | -1 | Der übergebene Kanalindex ist größer als die Anzahl der konfigurierten Kanäle – 1
ERR_CNC_NOT_INIT | -3 | Der Simulations-CNC-Kern ist noch nicht initialisiert.
ERR_CNC_RET_MEMORY | -4 | Der oder die Rückgabewerte passen nicht in den bereitgestellten Speicher. In diesem Fall wird über returnLength die zur Rückgabe benötigte Mindestgröße zurückgegeben.
ERR_READ_ERR | -26 | Beim Lesen von Daten aus der kernelv-DLL ist ein Fehler aufgetreten.
ERR_CNC_NO_DATA | -28 | Die angeforderten Daten sind nicht verfügbar. An der durch den Aufrufparameter csIndex angegebenen Stelle im Koordinatensystem-Stack steht kein definiertes Koordinatensystem. Es wird ein Nullvektor zurückgegeben.
ERR_INVALID_PARAMETER | -30 | Es wurde ein ungültiger Parameter übergeben: Der in Parameter csIndex übergebene Koordinatensystemindex ist größer als der maximal mögliche Index im Koordinatensystem-Stack.