open_io_channelT_open_io_channelOpenIoChannelOpenIoChannel (Operator)

Name

open_io_channelT_open_io_channelOpenIoChannelOpenIoChannel — Öffnen und Konfigurieren von I/O-Übertragungskanälen.

Signatur

open_io_channel( : : IODeviceHandle, IOChannelName, GenParamName, GenParamValue : IOChannelHandle)

Herror T_open_io_channel(const Htuple IODeviceHandle, const Htuple IOChannelName, const Htuple GenParamName, const Htuple GenParamValue, Htuple* IOChannelHandle)

void OpenIoChannel(const HTuple& IODeviceHandle, const HTuple& IOChannelName, const HTuple& GenParamName, const HTuple& GenParamValue, HTuple* IOChannelHandle)

HIOChannelArray HIODevice::OpenIoChannel(const HTuple& IOChannelName, const HTuple& GenParamName, const HTuple& GenParamValue) const

HIOChannel HIODevice::OpenIoChannel(const HString& IOChannelName, const HTuple& GenParamName, const HTuple& GenParamValue) const

HIOChannel HIODevice::OpenIoChannel(const char* IOChannelName, const HTuple& GenParamName, const HTuple& GenParamValue) const

HIOChannel HIODevice::OpenIoChannel(const wchar_t* IOChannelName, const HTuple& GenParamName, const HTuple& GenParamValue) const   (Nur Windows)

void HIOChannel::HIOChannel(const HIODevice& IODeviceHandle, const HString& IOChannelName, const HTuple& GenParamName, const HTuple& GenParamValue)

void HIOChannel::HIOChannel(const HIODevice& IODeviceHandle, const char* IOChannelName, const HTuple& GenParamName, const HTuple& GenParamValue)

void HIOChannel::HIOChannel(const HIODevice& IODeviceHandle, const wchar_t* IOChannelName, const HTuple& GenParamName, const HTuple& GenParamValue)   (Nur Windows)

static HIOChannelArray HIOChannel::OpenIoChannel(const HIODevice& IODeviceHandle, const HTuple& IOChannelName, const HTuple& GenParamName, const HTuple& GenParamValue)

void HIOChannel::OpenIoChannel(const HIODevice& IODeviceHandle, const HString& IOChannelName, const HTuple& GenParamName, const HTuple& GenParamValue)

void HIOChannel::OpenIoChannel(const HIODevice& IODeviceHandle, const char* IOChannelName, const HTuple& GenParamName, const HTuple& GenParamValue)

void HIOChannel::OpenIoChannel(const HIODevice& IODeviceHandle, const wchar_t* IOChannelName, const HTuple& GenParamName, const HTuple& GenParamValue)   (Nur Windows)

static void HOperatorSet.OpenIoChannel(HTuple IODeviceHandle, HTuple IOChannelName, HTuple genParamName, HTuple genParamValue, out HTuple IOChannelHandle)

HIOChannel[] HIODevice.OpenIoChannel(HTuple IOChannelName, HTuple genParamName, HTuple genParamValue)

HIOChannel HIODevice.OpenIoChannel(string IOChannelName, HTuple genParamName, HTuple genParamValue)

public HIOChannel(HIODevice IODeviceHandle, string IOChannelName, HTuple genParamName, HTuple genParamValue)

static HIOChannel[] HIOChannel.OpenIoChannel(HIODevice IODeviceHandle, HTuple IOChannelName, HTuple genParamName, HTuple genParamValue)

void HIOChannel.OpenIoChannel(HIODevice IODeviceHandle, string IOChannelName, HTuple genParamName, HTuple genParamValue)

Beschreibung

Der Operator open_io_channelopen_io_channelOpenIoChannelOpenIoChannelOpenIoChannel öffnet und konfiguriert Übertragungskanäle einer geöffneten I/O-Geräteinstanz. Die Geräteinstanz muss zuvor von open_io_deviceopen_io_deviceOpenIoDeviceOpenIoDeviceOpenIoDevice erzeugt worden sein und wird dem Parameter IODeviceHandleIODeviceHandleIODeviceHandleIODeviceHandleIODeviceHandle übergeben. Die Übertragungskanäle selbst werden durch ihre Namen in IOChannelNameIOChannelNameIOChannelNameIOChannelNameIOChannelName adressiert. Die vom Gerät unterstützten Namen können mit Hilfe des Operators query_io_devicequery_io_deviceQueryIoDeviceQueryIoDeviceQueryIoDevice über den Parameter 'io_channel_name'"io_channel_name""io_channel_name""io_channel_name""io_channel_name" abgefragt werden. Die Kanäle können über die Parameter GenParamNameGenParamNameGenParamNameGenParamNamegenParamName und GenParamValueGenParamValueGenParamValueGenParamValuegenParamValue konfiguriert werden. Es wird eine Instanz jedes Übertragungskanals erzeugt, deren Referenzen in IOChannelHandleIOChannelHandleIOChannelHandleIOChannelHandleIOChannelHandle zurückgegeben werden. Falls die Instanz eines Kanals nicht mehr benötigt wird, sollte sie über den Operator close_io_channelclose_io_channelCloseIoChannelCloseIoChannelCloseIoChannel freigegeben und geschlossen werden. Sie wird automatisch geschlossen, wenn die mit dem Kanal zusammenhängende Geräteinstanz über close_io_deviceclose_io_deviceCloseIoDeviceCloseIoDeviceCloseIoDevice geschlossen wird.

Mit einem geöffneten Übertragungskanal können schließlich die Werte vom Gerät mit Hilfe der Operatoren read_io_channelread_io_channelReadIoChannelReadIoChannelReadIoChannel und write_io_channelwrite_io_channelWriteIoChannelWriteIoChannelWriteIoChannel gelesen und geschrieben werden.

Ein bereits geöffneter Kanal kann über die Operatoren set_io_channel_paramset_io_channel_paramSetIoChannelParamSetIoChannelParamSetIoChannelParam und get_io_channel_paramget_io_channel_paramGetIoChannelParamGetIoChannelParamGetIoChannelParam rekonfiguriert werden.

Eine ausführliche Beschreibung aller gerätespezifischen Parameter findet sich in der Dokumentation für die verwendete I/O-Schnittstelle im Verzeichnis 'doc/html/reference/io'"doc/html/reference/io""doc/html/reference/io""doc/html/reference/io""doc/html/reference/io".

Ausführungsinformationen

Dieser Operator liefert ein Handle zurück. Es ist zu beachten, dass der Zustand einer Instanz dieses Handletyps durch bestimmte Operatoren geändert werden kann, obwohl das Handle als Eingabeparameter in diesen Operatoren verwendet wird.

Parameter

IODeviceHandleIODeviceHandleIODeviceHandleIODeviceHandleIODeviceHandle (input_control)  io_device HIODevice, HTupleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

Referenz auf das geöffnete I/O-Gerät.

IOChannelNameIOChannelNameIOChannelNameIOChannelNameIOChannelName (input_control)  string(-array) HTupleHTupleHtuple (string) (string) (HString) (char*)

I/O-Kanalnamen.

GenParamNameGenParamNameGenParamNameGenParamNamegenParamName (input_control)  string-array HTupleHTupleHtuple (string) (string) (HString) (char*)

Generische Parameternamen.

Defaultwert: []

GenParamValueGenParamValueGenParamValueGenParamValuegenParamValue (input_control)  string-array HTupleHTupleHtuple (string / integer / real) (string / int / long / double) (HString / Hlong / double) (char* / Hlong / double)

Generische Parameterwerte.

Defaultwert: []

IOChannelHandleIOChannelHandleIOChannelHandleIOChannelHandleIOChannelHandle (output_control)  io_channel(-array) HIOChannel, HTupleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

Referenzen auf die geöffneten I/O-Übertragungskanäle.

Beispiel (HDevelop)

query_io_device (IODeviceHandle, [], 'io_channel_names.digital_output', ChannelOutputNames)
open_io_channel (IODeviceHandle, ChannelOutputNames[0], [], [], IOChannelHandle)
write_io_channel (IOChannelHandle, 1, Status)

Ergebnis

Der Operator open_io_channelopen_io_channelOpenIoChannelOpenIoChannelOpenIoChannel liefert den Wert 2 (H_MSG_TRUE), wenn die Parameterwerte gültig waren und die Kanäle für das Gerät geöffnet werden konnten. Ansonsten wird eine Fehlerbehandlung durchgeführt. In diesem Fall kann vom Interface eine zusätzliche Fehlerinformation gesetzt werden, die mit get_extended_error_infoget_extended_error_infoGetExtendedErrorInfoGetExtendedErrorInfoGetExtendedErrorInfo abgefragt werden kann.

Vorgänger

open_io_deviceopen_io_deviceOpenIoDeviceOpenIoDeviceOpenIoDevice, query_io_devicequery_io_deviceQueryIoDeviceQueryIoDeviceQueryIoDevice

Nachfolger

set_io_channel_paramset_io_channel_paramSetIoChannelParamSetIoChannelParamSetIoChannelParam, read_io_channelread_io_channelReadIoChannelReadIoChannelReadIoChannel, write_io_channelwrite_io_channelWriteIoChannelWriteIoChannelWriteIoChannel

Modul

Foundation