KlassenKlassenKlassenKlassen | | | | Operatoren

fwrite_serialized_itemfwrite_serialized_itemFwriteSerializedItemfwrite_serialized_itemFwriteSerializedItemFwriteSerializedItem (Operator)

Name

fwrite_serialized_itemfwrite_serialized_itemFwriteSerializedItemfwrite_serialized_itemFwriteSerializedItemFwriteSerializedItem — Schreiben eines serialisierten Elements in eine Datei.

Signatur

fwrite_serialized_item( : : FileHandle, SerializedItemHandle : )

Herror fwrite_serialized_item(const Hlong FileHandle, const Hlong SerializedItemHandle)

Herror T_fwrite_serialized_item(const Htuple FileHandle, const Htuple SerializedItemHandle)

Herror fwrite_serialized_item(const HTuple& FileHandle, const HTuple& SerializedItemHandle)

void HSerializedItem::FwriteSerializedItem(const HFile& FileHandle) const

void FwriteSerializedItem(const HTuple& FileHandle, const HTuple& SerializedItemHandle)

void HSerializedItem::FwriteSerializedItem(const HFile& FileHandle) const

void HOperatorSetX.FwriteSerializedItem(
[in] VARIANT FileHandle, [in] VARIANT SerializedItemHandle)

void HSerializedItemX.FwriteSerializedItem([in] IHFileX* FileHandle)

static void HOperatorSet.FwriteSerializedItem(HTuple fileHandle, HTuple serializedItemHandle)

void HSerializedItem.FwriteSerializedItem(HFile fileHandle)

Beschreibung

fwrite_serialized_itemfwrite_serialized_itemFwriteSerializedItemfwrite_serialized_itemFwriteSerializedItemFwriteSerializedItem schreibt ein serialisiertes Element in die Ausgabedatei mit dem Datei-Handle FileHandleFileHandleFileHandleFileHandleFileHandlefileHandle. Das serialisierte Element wird durch das Handle SerializedItemHandleSerializedItemHandleSerializedItemHandleSerializedItemHandleSerializedItemHandleserializedItemHandle übergeben. Mit dem Operator open_fileopen_fileOpenFileopen_fileOpenFileOpenFile kann die Datei geöffnet werden. Zu beachten ist, dass sie im Binärdateiformat geöffnet werden muss. Um mehrere serialisierte Elemente in eine einzige Ausgabedatei zu schreiben, muss fwrite_serialized_itemfwrite_serialized_itemFwriteSerializedItemfwrite_serialized_itemFwriteSerializedItemFwriteSerializedItem mehrmals aufgerufen werden. Ein serialisiertes Element kann mit fread_serialized_itemfread_serialized_itemFreadSerializedItemfread_serialized_itemFreadSerializedItemFreadSerializedItem wieder aus der Datei eingelesen werden.

Grundlagen der Serialisierung und Deserialisierung

Um ikonische Objekte, Daten oder Modelle in einer Datei abspeichern zu können oder zu einem anderen HALCON-Prozess über die Socket-Verbindung schicken zu können müssen die ikonischen Objekte, Daten oder Modelle zunächst in serialisierte Elemente überführt werden. Zu diesem Zweck stehen eine Vielzahl Operatoren zur Verfügung. Beispielsweise gibt es für ein Formmodell den Operator serialize_shape_modelserialize_shape_modelSerializeShapeModelserialize_shape_modelSerializeShapeModelSerializeShapeModel, der die Serialisierung durchführt. Ein serialisiertes Element kann dann mit fwrite_serialized_itemfwrite_serialized_itemFwriteSerializedItemfwrite_serialized_itemFwriteSerializedItemFwriteSerializedItem in eine Datei geschrieben oder mit send_serialized_itemsend_serialized_itemSendSerializedItemsend_serialized_itemSendSerializedItemSendSerializedItem zu einem anderen HALCON-Prozess über die Socket-Verbindung übertragen werden.

Um ein serialisiertes Element zu deserialisieren wird zunächst ein serialisiertes Element aus einer Datei (siehe fread_serialized_itemfread_serialized_itemFreadSerializedItemfread_serialized_itemFreadSerializedItemFreadSerializedItem) eingelesen oder über die Socket-Verbindung von einem anderen HALCON-Prozess empfangen (siehe receive_serialized_itemreceive_serialized_itemReceiveSerializedItemreceive_serialized_itemReceiveSerializedItemReceiveSerializedItem). Um ein serialisiertes Element wieder in seine ursprüngliche Form, d.h. in das ikonische Objekt, die Daten oder das Modell zu überführen, gibt es ebenfalls Operatoren. Diese nehmen die Deserialisierung vor und erzeugen automatisch das jeweilige ikonische Objekt, die Daten oder das Modell. Beispielsweise gibt es für ein serialisiertes Formmodell den Operator deserialize_shape_modeldeserialize_shape_modelDeserializeShapeModeldeserialize_shape_modelDeserializeShapeModelDeserializeShapeModel, der die Deserialisierung durchführt.

Parallelisierung

Parameter

FileHandleFileHandleFileHandleFileHandleFileHandlefileHandle (input_control)  file HFile, HTupleHTupleHFile, HTupleHFileX, VARIANTHtuple (integer) (IntPtr) (Hlong) (Hlong) (Hlong) (Hlong)

Datei-Handle.

SerializedItemHandleSerializedItemHandleSerializedItemHandleSerializedItemHandleSerializedItemHandleserializedItemHandle (input_control)  serialized_item HSerializedItem, HTupleHTupleHSerializedItem, HTupleHSerializedItemX, VARIANTHtuple (integer) (IntPtr) (Hlong) (Hlong) (Hlong) (Hlong)

Handle des serialisierten Elements.

Ergebnis

Sind die Parameterwerte korrekt, dann liefert fwrite_serialized_itemfwrite_serialized_itemFwriteSerializedItemfwrite_serialized_itemFwriteSerializedItemFwriteSerializedItem den Wert 2 (H_MSG_TRUE). Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.

Vorgänger

open_fileopen_fileOpenFileopen_fileOpenFileOpenFile, serialize_shape_modelserialize_shape_modelSerializeShapeModelserialize_shape_modelSerializeShapeModelSerializeShapeModel, serialize_ncc_modelserialize_ncc_modelSerializeNccModelserialize_ncc_modelSerializeNccModelSerializeNccModel

Nachfolger

close_fileclose_fileCloseFileclose_fileCloseFileCloseFile, fread_serialized_itemfread_serialized_itemFreadSerializedItemfread_serialized_itemFreadSerializedItemFreadSerializedItem

Modul

Foundation


KlassenKlassenKlassenKlassen | | | | Operatoren