# HdfDriverEntry

## Overview

Related Modules:

Core

Description:

Defines the entry structure of the driver in the HDF.

This structure must be used as the entry for the driver to use the HDF mechanism.

Since:

1.0

## Data Fields

Variable Name

Description

int32_t

const char

Bind )(struct HdfDeviceObject deviceObject)

int32_t(

Binds the external service interface of a driver to the HDF. This function is implemented by the driver developer and called by the HDF.

Init )(struct HdfDeviceObject deviceObject)

int32_t(

Initializes the driver. This function is implemented by the driver developer and called by the HDF.

Release )(struct HdfDeviceObject deviceObject)

void(*

Releases driver resources. This function is implemented by the driver developer. When an exception occurs during driver loading or the driver is uninstalled, the HDF calls this function to release the driver resources.

int32_t(* HdfDriverEntry::Bind) (struct [HdfDeviceObject]($api-api-SmartVision-Devices-HdfDeviceObject.md) *deviceObject) Description: Binds the external service interface of a driver to the HDF. This function is implemented by the driver developer and called by the HDF. Parameters: Name Description deviceObject Indicates the pointer to the variable of the HdfDeviceObject type. This variable is generated by the HDF and passed to the driver. Then, the service object of the driver is bound to the service parameter of deviceObject. Returns: Returns 0 if the operation is successful; returns a non-zero value otherwise. ## Init int32_t(* HdfDriverEntry::Init) (struct [HdfDeviceObject]($api-api-SmartVision-Devices-HdfDeviceObject.md) *deviceObject)

Description:

Initializes the driver. This function is implemented by the driver developer and called by the HDF.

Parameters:

Name

Description

deviceObject Indicates the pointer to the variable of the HdfDeviceObject type. It is the same as the parameter of Bind.

Returns:

Returns 0 if the operation is successful; returns a non-zero value otherwise.

## moduleName

const char* HdfDriverEntry::moduleName

Description:

Driver module name, which is used to match the driver information in the configuration file.

## moduleVersion

int32_t HdfDriverEntry::moduleVersion

Description:

Driver version

## Release

void(* HdfDriverEntry::Release) (struct [HdfDeviceObject](\$api-api-SmartVision-Devices-HdfDeviceObject.md) *deviceObject)

Description:

Releases driver resources. This function is implemented by the driver developer. When an exception occurs during driver loading or the driver is uninstalled, the HDF calls this function to release the driver resources.

Parameters:

Name

Description

deviceObject Indicates the pointer to the variable of the HdfDeviceObject type. It is the same as the parameter of Bind.