F_VN_ExportContainer

F_VN_ExportContainer 1:

Export the container elements into a buffer (e.g. an array). Only possible for containers with basic elements.

Syntax

Definition:

FUNCTION F_VN_ExportContainer : HRESULT
VAR_INPUT
    ipContainer : ITcVnContainer;
    pBuffer     : PVOID;
    nBufferSize : ULINT;
    hrPrev      : HRESULT;
END_VAR

F_VN_ExportContainer 2: Inputs

Name

Type

Description

ipContainer

ITcVnContainer

Container with basic elements

pBuffer

PVOID

Buffer to store the container elements (Make sure to allocate enough memory! The required size in bytes can be determined using the function F_VN_ExportContainerSize)

nBufferSize

ULINT

Size of the buffer memory in bytes

hrPrev

HRESULT

HRESULT indicating the result of previous operations (If SUCCEEDED(hrPrev) equals false, no operation is executed.)

F_VN_ExportContainer 3: Return value

HRESULT

Weiterführende Informationen

Die Funktion F_VN_ExportContainer exportiert einen Container in einen Datenbuffer. Stellen Sie sicher, dass an der Stelle des Pointers genügend Speicher allokiert ist, um die Daten des Containers hineinzuschreiben! Die benötigte Größe in Bytes kann mit der Funktion F_VN_ExportContainerSize festgestellt werden. Den Speicher können Sie z. B. allokieren, indem Sie ein Array mit entsprechender Größe anlegen.

Anwendung

Das Exportieren eines Containers des Typs Vector_REAL mit 10 Elementen sieht z. B. so aus:

VAR
    aArray: ARRAY [0..9] OF REAL;
    ipContainer: ITcVnContainer;
    nBufferSize: ULINT;
END_VAR

hr := F_VN_ExportContainerSize(ipContainer, nBufferSize, hr);
IF nBufferSize = SIZEOF(aArray) THEN
    hr := F_VN_ExportContainer(
        ipContainer:=ipContainer,
        pBuffer:=ADR(aArray),
        nBufferSize:=nBufferSize,
        hr
    );

END_IF

WARNUNG

Speicherzugriff

Es muss sichergestellt sein, dass der Typ und Länge des Containers mit der Größe des Speicherbereichs am Pointer übereinstimmen. Anderenfalls kann dies zu einem Systemabsturz oder invaliden Daten führen.

Verwandte Funktionen

Required License

TC3 Vision Base

System Requirements

Development environment

Target platform

PLC libraries to include

TwinCAT V3.1.4024.54 or later

PC or CX (x64) with PL50, e.g. Intel 4-core Atom CPU

Tc3_Vision