FreeRDP
camera_device_enum_main.c File Reference
#include <winpr/assert.h>
#include "camera.h"

Macros

#define TAG   CHANNELS_TAG("rdpecam-enum.client")
 

Functions

UINT ecam_channel_send_error_response (CameraPlugin *ecam, GENERIC_CHANNEL_CALLBACK *hchannel, CAM_ERROR_CODE code)
 
UINT ecam_channel_send_generic_msg (CameraPlugin *ecam, GENERIC_CHANNEL_CALLBACK *hchannel, CAM_MSG_ID msg)
 
UINT ecam_channel_write (CameraPlugin *ecam, GENERIC_CHANNEL_CALLBACK *hchannel, CAM_MSG_ID msg, wStream *out, BOOL freeStream)
 
static UINT ecam_send_device_added_notification (CameraPlugin *ecam, GENERIC_CHANNEL_CALLBACK *hchannel, const char *deviceName, const char *channelName)
 
static UINT ecam_ihal_device_added_callback (CameraPlugin *ecam, GENERIC_CHANNEL_CALLBACK *hchannel, const char *deviceId, const char *deviceName)
 
static UINT ecam_enumerate_devices (CameraPlugin *ecam, GENERIC_CHANNEL_CALLBACK *hchannel)
 
static UINT ecam_process_select_version_response (CameraPlugin *ecam, GENERIC_CHANNEL_CALLBACK *hchannel, wStream *s, BYTE serverVersion)
 
static UINT ecam_on_data_received (IWTSVirtualChannelCallback *pChannelCallback, wStream *data)
 
static UINT ecam_on_open (IWTSVirtualChannelCallback *pChannelCallback)
 
static UINT ecam_on_close (IWTSVirtualChannelCallback *pChannelCallback)
 
static UINT ecam_on_new_channel_connection (IWTSListenerCallback *pListenerCallback, IWTSVirtualChannel *pChannel, BYTE *Data, BOOL *pbAccept, IWTSVirtualChannelCallback **ppCallback)
 
static UINT ecam_plugin_initialize (IWTSPlugin *pPlugin, IWTSVirtualChannelManager *pChannelMgr)
 
static UINT ecam_plugin_terminated (IWTSPlugin *pPlugin)
 
static UINT ecam_plugin_attached (IWTSPlugin *pPlugin)
 
static UINT ecam_plugin_detached (IWTSPlugin *pPlugin)
 
static UINT ecam_register_hal_plugin (IWTSPlugin *pPlugin, ICamHal *ihal)
 
static UINT ecam_load_hal_plugin (CameraPlugin *ecam, const char *name, const ADDIN_ARGV *args)
 
 WINPR_ASSERT (pEntryPoints)
 
 WINPR_ASSERT (pEntryPoints->GetPlugin)
 
 if (ecam !=NULL)
 
 if (ecam->subsystem)
 

Variables

CameraPluginecam = (CameraPlugin*)pEntryPoints->GetPlugin(pEntryPoints, RDPECAM_CHANNEL_NAME)
 
ecam attached = TRUE
 
ecam iface Initialize = ecam_plugin_initialize
 
ecam iface Connected = NULL
 
ecam iface Disconnected = NULL
 
ecam iface Terminated = ecam_plugin_terminated
 
ecam iface Attached = ecam_plugin_attached
 
ecam iface Detached = ecam_plugin_detached
 
ecam subsystem = NULL
 
 error = pEntryPoints->RegisterPlugin(pEntryPoints, RDPECAM_CHANNEL_NAME, &ecam->iface)
 

Macro Definition Documentation

◆ TAG

#define TAG   CHANNELS_TAG("rdpecam-enum.client")

FreeRDP: A Remote Desktop Protocol Implementation MS-RDPECAM Implementation, Device Enumeration Channel

Copyright 2024 Oleg Turovski oleg2.nosp@m.104@.nosp@m.hotma.nosp@m.il.c.nosp@m.om

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Function Documentation

◆ ecam_channel_send_error_response()

UINT ecam_channel_send_error_response ( CameraPlugin ecam,
GENERIC_CHANNEL_CALLBACK hchannel,
CAM_ERROR_CODE  code 
)

Function description

Returns
0 on success, otherwise a Win32 error code
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ecam_channel_send_generic_msg()

UINT ecam_channel_send_generic_msg ( CameraPlugin ecam,
GENERIC_CHANNEL_CALLBACK hchannel,
CAM_MSG_ID  msg 
)

Function description

Returns
0 on success, otherwise a Win32 error code
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ecam_channel_write()

UINT ecam_channel_write ( CameraPlugin ecam,
GENERIC_CHANNEL_CALLBACK hchannel,
CAM_MSG_ID  msg,
wStream out,
BOOL  freeStream 
)

Function description

Returns
0 on success, otherwise a Win32 error code
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ecam_enumerate_devices()

static UINT ecam_enumerate_devices ( CameraPlugin ecam,
GENERIC_CHANNEL_CALLBACK hchannel 
)
static

Function description

Returns
0 on success, otherwise a Win32 error code
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ecam_ihal_device_added_callback()

static UINT ecam_ihal_device_added_callback ( CameraPlugin ecam,
GENERIC_CHANNEL_CALLBACK hchannel,
const char *  deviceId,
const char *  deviceName 
)
static

Function description

Returns
0 on success, otherwise a Win32 error code
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ecam_load_hal_plugin()

static UINT ecam_load_hal_plugin ( CameraPlugin ecam,
const char *  name,
const ADDIN_ARGV args 
)
static

Function description

Returns
0 on success, otherwise a Win32 error code
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ecam_on_close()

static UINT ecam_on_close ( IWTSVirtualChannelCallback *  pChannelCallback)
static

Function description

Returns
0 on success, otherwise a Win32 error code
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ecam_on_data_received()

static UINT ecam_on_data_received ( IWTSVirtualChannelCallback *  pChannelCallback,
wStream data 
)
static

Function description

Returns
0 on success, otherwise a Win32 error code
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ecam_on_new_channel_connection()

static UINT ecam_on_new_channel_connection ( IWTSListenerCallback *  pListenerCallback,
IWTSVirtualChannel *  pChannel,
BYTE Data,
BOOL *  pbAccept,
IWTSVirtualChannelCallback **  ppCallback 
)
static

Function description

Returns
0 on success, otherwise a Win32 error code
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ecam_on_open()

static UINT ecam_on_open ( IWTSVirtualChannelCallback *  pChannelCallback)
static

Function description

Returns
0 on success, otherwise a Win32 error code
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ecam_plugin_attached()

static UINT ecam_plugin_attached ( IWTSPlugin *  pPlugin)
static

Function description

Returns
0 on success, otherwise a Win32 error code
Here is the call graph for this function:

◆ ecam_plugin_detached()

static UINT ecam_plugin_detached ( IWTSPlugin *  pPlugin)
static

Function description

Returns
0 on success, otherwise a Win32 error code
Here is the call graph for this function:

◆ ecam_plugin_initialize()

static UINT ecam_plugin_initialize ( IWTSPlugin *  pPlugin,
IWTSVirtualChannelManager *  pChannelMgr 
)
static

Function description

Returns
0 on success, otherwise a Win32 error code
Here is the call graph for this function:

◆ ecam_plugin_terminated()

static UINT ecam_plugin_terminated ( IWTSPlugin *  pPlugin)
static

Function description

Returns
0 on success, otherwise a Win32 error code
Here is the call graph for this function:

◆ ecam_process_select_version_response()

static UINT ecam_process_select_version_response ( CameraPlugin ecam,
GENERIC_CHANNEL_CALLBACK hchannel,
wStream s,
BYTE  serverVersion 
)
static

Function description

Returns
0 on success, otherwise a Win32 error code
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ecam_register_hal_plugin()

static UINT ecam_register_hal_plugin ( IWTSPlugin *  pPlugin,
ICamHal *  ihal 
)
static

Function description

Returns
0 on success, otherwise a Win32 error code
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ecam_send_device_added_notification()

static UINT ecam_send_device_added_notification ( CameraPlugin ecam,
GENERIC_CHANNEL_CALLBACK hchannel,
const char *  deviceName,
const char *  channelName 
)
static

Function description

Returns
0 on success, otherwise a Win32 error code
Here is the call graph for this function:
Here is the caller graph for this function:

◆ if() [1/2]

if ( ecam = NULL)
Here is the caller graph for this function:

◆ if() [2/2]

if ( ecam->  subsystem)
Here is the call graph for this function:

◆ WINPR_ASSERT() [1/2]

WINPR_ASSERT ( pEntryPoints  )

Function description

Returns
0 on success, otherwise a Win32 error code
Here is the caller graph for this function:

◆ WINPR_ASSERT() [2/2]

WINPR_ASSERT ( pEntryPoints->  GetPlugin)

Variable Documentation

◆ attached

ecam attached = TRUE

◆ Attached

ecam iface Attached = ecam_plugin_attached

◆ Connected

ecam iface Connected = NULL

◆ Detached

ecam iface Detached = ecam_plugin_detached

◆ Disconnected

ecam iface Disconnected = NULL

◆ ecam

CameraPlugin* ecam = (CameraPlugin*)pEntryPoints->GetPlugin(pEntryPoints, RDPECAM_CHANNEL_NAME)

◆ error

error = pEntryPoints->RegisterPlugin(pEntryPoints, RDPECAM_CHANNEL_NAME, &ecam->iface)

◆ Initialize

ecam iface Initialize = ecam_plugin_initialize

◆ subsystem

ecam subsystem = NULL

◆ Terminated

ecam iface Terminated = ecam_plugin_terminated