HinawaFwFcp

HinawaFwFcp — A FCP transaction executor to a FireWire unit

Functions

Properties

guint timeout Read / Write / Construct

Object Hierarchy

    GObject
    ╰── HinawaFwResp
        ╰── HinawaFwFcp

Description

A HinawaFwFcp supports Function Control Protocol (FCP) in IEC 61883-1. Some types of transaction in 'AV/C Digital Interface Command Set General Specification Version 4.2' (Sep 1 2004, 1394TA) requires low layer support, thus this class has a code for them.

Any of transaction frames should be aligned to 8bit (byte). This class is an application of HinawaFwReq / HinawaFwResp.

Functions

hinawa_fw_fcp_new ()

HinawaFwFcp *
hinawa_fw_fcp_new (void);

Instantiate HinawaFwFcp object and return the instance.

Returns

an instance of HinawaFwFcp.

Since: 1.3.


hinawa_fw_fcp_listen ()

void
hinawa_fw_fcp_listen (HinawaFwFcp *self,
                      HinawaFwUnit *unit,
                      GError **exception);

hinawa_fw_fcp_listen has been deprecated since version 1.4 and should not be used in newly-written code.

Use hinawa_fw_fcp_bind() with an instance of HinawaFwNode, instead.

Start to listen to FCP responses.

Parameters

self

A HinawaFwFcp

 

unit

A HinawaFwUnit

 

exception

A GError

 

hinawa_fw_fcp_transaction ()

void
hinawa_fw_fcp_transaction (HinawaFwFcp *self,
                           const guint8 *req_frame,
                           guint req_frame_size,
                           guint8 *const *resp_frame,
                           guint *resp_frame_size,
                           GError **exception);

Execute FCP transaction.

Parameters

self

A HinawaFwFcp.

 

req_frame

An array with elements for request byte data. The value of this argument should point to the array and immutable.

[array length=req_frame_size][in]

req_frame_size

The size of array for request in byte unit.

 

resp_frame

An array with elements for response byte data. Callers should give it for buffer with enough space against the request since this library performs no reallocation. Due to the reason, the value of this argument should point to the pointer to the array and immutable. The content of array is mutable.

[array length=resp_frame_size][inout]

resp_frame_size

The size of array for response in byte unit. The value of this argument should point to the numerical number and mutable.

 

exception

A GError.

 

Since: 1.4.


hinawa_fw_fcp_bind ()

void
hinawa_fw_fcp_bind (HinawaFwFcp *self,
                    HinawaFwNode *node,
                    GError **exception);

Start to listen to FCP responses.

Parameters

self

A HinawaFwFcp.

 

node

A HinawaFwNode.

 

exception

A GError.

 

hinawa_fw_fcp_unbind ()

void
hinawa_fw_fcp_unbind (HinawaFwFcp *self);

Stop to listen to FCP responses.

Parameters

self

A HinawaFwFcp.

 

Since: 1.4.


hinawa_fw_fcp_transact ()

void
hinawa_fw_fcp_transact (HinawaFwFcp *self,
                        GByteArray *req_frame,
                        GByteArray *resp_frame,
                        GError **exception);

hinawa_fw_fcp_transact has been deprecated since version 1.4 and should not be used in newly-written code.

Use hinawa_fw_fcp_transaction() instead,

Execute fCP transaction.

Parameters

self

A HinawaFwFcp

 

req_frame

a byte frame for request.

[element-type guint8][array][in]

resp_frame

a byte frame for response.

[element-type guint8][array][out caller-allocates]

exception

A GError

 

hinawa_fw_fcp_unlisten ()

void
hinawa_fw_fcp_unlisten (HinawaFwFcp *self);

hinawa_fw_fcp_unlisten has been deprecated since version 1.4 and should not be used in newly-written code.

Use hinawa_fw_fcp_unbind(), instead.

Stop to listen to FCP responses.

Parameters

self

A HinawaFwFcp

 

Property Details

The “timeout” property

  “timeout”                  guint

An elapse to expire waiting for response by msec unit.

Owner: HinawaFwFcp

Flags: Read / Write / Construct

Allowed values: >= 10

Default value: 200