### Class

# Aravis Interface

#### Description [src]

    abstract class Aravis.Interface : GObject.Object
    {
      /* No available fields */
    }

`ArvInterface` is an abstract base class for camera discovery. It maintains a list of the available devices and helps to instantiate the corresponding `ArvDevice` objects. If the user already knows the device id of the device, he should not worry about this class and just use `arv_camera_new()` or arv_open_device().

#### Ancestors

- GObject

#### Descendants

- ArvFakeInterface
- ArvGvInterface
- ArvUvInterface

#### Instance methods

###### arv_interface_get_device_address

Queries the device address (IP address in the case of an ethernet camera). Useful for constructing manual connections to devices using `arv_gv_device_new`.

since: 0.2.0

###### arv_interface_get_device_id

Queries the unique device id corresponding to index. Prior to this call the `arv_interface_update_device_list()` function must be called.

since: 0.2.0

###### arv_interface_get_device_manufacturer_info

Queries the device manufacturer info.

since: 0.8.20

###### arv_interface_get_device_model

Queries the device model.

since: 0.6.0

###### arv_interface_get_device_physical_id

Queries the physical device id corresponding to index such as the MAC address for Ethernet based devices, bus id for PCI, USB or Firewire based devices.

since: 0.2.0

###### arv_interface_get_device_protocol

Queries the device protocol. Possible values are ‘USB3Vision’, ‘GigEVision’ and ‘Fake’.

since: 0.6.0

###### arv_interface_get_device_serial_nbr

Queries the device serial.

since: 0.6.0

###### arv_interface_get_device_vendor

Queries the device vendor.

since: 0.6.0

###### arv_interface_get_n_devices

Queries the number of available devices on this interface. Prior to this call the `arv_interface_update_device_list` function must be called. The list content will not change until the next call of the update function.

since: 0.2.0

###### arv_interface_open_device

Creates a new `ArvDevice` object corresponding to the given device id string. The first available device is returned if `device_id` is `NULL`.

since: 0.2.0

###### arv_interface_update_device_list

Updates the internal list of available devices. This may change the connection between a list index and a device ID.

since: 0.2.0

##### Methods inherited from GObject (43)

Please see GObject for a full list of methods.

#### Signals

##### Signals inherited from GObject (1)

###### GObject::notify

The notify signal is emitted on an object when one of its properties has its value set through g_object_set_property(), g_object_set(), et al.

#### Class structure

    struct AravisInterfaceClass {
      GObjectClass parent_class;
      void (* update_device_list) (
        ArvInterface* iface,
        GArray* device_ids
      );
      ArvDevice* (* open_device) (
        ArvInterface* iface,
        const char* device_id,
        GError** error
      );
      const char* protocol;

    }

No description available.

###### Class members

`parent_class: GObjectClass`

  No description available.

`update_device_list: void (* update_device_list) ( ArvInterface* iface, GArray* device_ids )`

  No description available.

`open_device: ArvDevice* (* open_device) ( ArvInterface* iface, const char* device_id, GError** error )`

  No description available.

`protocol: const char*`

  No description available.

#### Virtual methods

###### Aravis.InterfaceClass.open_device

Creates a new `ArvDevice` object corresponding to the given device id string. The first available device is returned if `device_id` is `NULL`.

since: 0.2.0

###### Aravis.InterfaceClass.update_device_list

No description available.