# Interface IProxyDevice

Namespace
  adas_core.module.ProxyDevices.Devices

Assembly
  adas-core.module.ProxyDevices.dll

Interface for a proxy device that can be used to process and stream data. This interface defines the methods that must be implemented by any class that wants to act as a proxy device. The Initialize method is used to set up the device with the necessary parameters, while the Process and Stream methods are used to handle data processing and streaming respectively.

    public interface IProxyDevice

Extension Methods
  NumberUtils.IsNumber(object)
  NumberUtils.ToDouble(object)
  ObjectUtils.ToStr(object?)

## Methods

### Initialize(Dictionary<string, object?>)

Initializes the proxy device with the given parameters. This method should be called before any processing or streaming is done. The parameters can include any necessary configuration settings for the device, such as connection details, authentication information, or other relevant data.

    void Initialize(Dictionary<string, object?> deviceParameters)

#### Parameters

`deviceParameters` Dictionary<string, object>

  A dictionary containing the parameters required to initialize the device.

### Process()

Processes the data received by the proxy device. This method should contain the logic for handling incoming data, performing any necessary transformations or computations, and preparing the data for further use.

    Task<HttpResponseMessage> Process()

#### Returns

Task<HttpResponseMessage>

  A task that represents the asynchronous operation. The task result contains the HttpResponseMessage returned by the device's Process method.

### Stream()

Streams data from the proxy device. This method should contain the logic for handling outgoing data, performing any necessary transformations or computations, and preparing the data for further use.

    Task<HttpResponseMessage> Stream()

#### Returns

Task<HttpResponseMessage>

  A task that represents the asynchronous operation. The task result contains the HttpResponseMessage returned by the device's Stream method.