HinawaFwFcp

HinawaFwFcp — A FCP transaction executor to a FireWire unit

Functions

Properties

gboolean is-bound Read
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_transaction ()

void
hinawa_fw_fcp_transaction (HinawaFwFcp *self,
                           const guint8 *req_frame,
                           gsize req_frame_size,
                           guint8 *const *resp_frame,
                           gsize *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.

Property Details

The “is-bound” property

  “is-bound”                 gboolean

Whether this protocol is bound to any instance of HinawaFwNode.

Owner: HinawaFwFcp

Flags: Read

Default value: FALSE


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