OPAL  Version 3.18.8
OpalH281Client Class Referenceabstract

#include <h281handler.h>

Inheritance diagram for OpalH281Client:
Collaboration diagram for OpalH281Client:

Data Structures

struct  Capability
 

Public Member Functions

 OpalH281Client ()
 
 ~OpalH281Client ()
 
 P_DECLARE_ENUM (VideoSourceIds, CurrentVideoSource, MainCameraId, AuxiliaryCameraId, DocumentCameraId, AuxiliaryDocumentCameraId, VideoPlaybackSourceId, UserDefinedSourceId1, UserDefinedSourceId2, UserDefinedSourceId3, UserDefinedSourceId4, UserDefinedSourceId5, UserDefinedSourceId6, UserDefinedSourceId7, UserDefinedSourceId8, UserDefinedSourceId9, UserDefinedSourceId10)
 
virtual BYTE GetClientID () const
 
virtual bool HasExtraCapabilities () const
 
virtual void OnReceivedExtraCapabilities (const BYTE *capabilities, PINDEX size)
 
virtual void OnReceivedMessage (const H224_Frame &message)
 
unsigned GetLocalNumberOfPresets () const
 
void SetLocalNumberOfPresets (unsigned presets)
 
unsigned GetRemoteNumberOfPresets () const
 
bool Action (PVideoControlInfo::Types type, int direction, const PTimeInterval &duration)
 
bool SelectVideoSource (const PString &source, H281_Frame::VideoMode mode=H281_Frame::MotionVideo)
 
void StoreAsPreset (BYTE presetNumber)
 
void ActivatePreset (BYTE presetNumber)
 
void SendExtraCapabilities () const
 
virtual void OnRemoteCapabilitiesChanged ()
 
virtual void OnStartAction (int directions[PVideoControlInfo::NumTypes])=0
 
virtual void OnStopAction ()=0
 
virtual void OnSelectVideoSource (const PString &source, H281_Frame::VideoMode videoMode)
 
virtual void OnStoreAsPreset (BYTE presetNumber)
 
virtual void OnActivatePreset (BYTE presetNumber)
 
void SetCapabilityChangedNotifier (const PNotifier &notifier)
 
void SetOnActionNotifier (const PNotifier &notifier)
 
void SetLocalCapability (VideoSourceIds sourceId, const Capability &capability)
 
const CapabilityGetRemoteCapability (VideoSourceIds sourceId) const
 
- Public Member Functions inherited from OpalH224Client
 OpalH224Client ()
 
 ~OpalH224Client ()
 
virtual BYTE GetExtendedClientID () const
 
virtual BYTE GetCountryCode () const
 
virtual BYTE GetCountryCodeExtension () const
 
virtual WORD GetManufacturerCode () const
 
virtual BYTE GetManufacturerClientID () const
 
virtual Comparison Compare (const PObject &obj)
 
void SetH224Handler (OpalH224Handler *handler)
 
void SetRemoteClientAvailable (bool remoteClientAvailable, bool remoteClientHasExtraCapabilities)
 
bool GetRemoteClientAvailable () const
 
bool GetRemoteClientHasExtraCapabilities () const
 

Static Public Member Functions

static const PConstString & MainCamera ()
 
static const PConstString & AuxiliaryCamera ()
 
static const PConstString & DocumentCamera ()
 
static const PConstString & AuxiliaryDocumentCamera ()
 
static const PConstString & VideoPlayback ()
 

Protected Member Functions

 PDECLARE_NOTIFIER (PTimer, OpalH281Client, ContinueAction)
 
 PDECLARE_NOTIFIER (PTimer, OpalH281Client, StopAction)
 
 PDECLARE_NOTIFIER (PTimer, OpalH281Client, ReceiveActionTimeout)
 
void SendStopAction ()
 
 PDECLARE_MUTEX (m_mutex)
 

Protected Attributes

PNotifier m_capabilityChanged
 
PNotifier m_onAction
 
VideoSourceIds m_localSourceId
 
Capability m_localCapability [NumVideoSourceIds]
 
unsigned m_localNumberOfPresets
 
PTimer m_receiveTimer
 
VideoSourceIds m_remoteSourceId
 
Capability m_remoteCapability [NumVideoSourceIds]
 
unsigned m_remoteNumberOfPresets
 
H281_Frame m_transmitFrame
 
PTimer m_continueTimer
 
PTimer m_stopTimer
 
- Protected Attributes inherited from OpalH224Client
bool m_remoteClientAvailable
 
bool m_remoteClientHasExtraCapabilities
 
OpalH224Handlerm_h224Handler
 

Additional Inherited Members

- Public Types inherited from OpalH224Client
enum  { CMEClientID = 0x00, H281ClientID = 0x01, ExtendedClientID = 0x7e, NonStandardClientID = 0x7f }
 

Detailed Description

This class implements a default H.281 handler

Constructor & Destructor Documentation

OpalH281Client::OpalH281Client ( )
OpalH281Client::~OpalH281Client ( )

Member Function Documentation

bool OpalH281Client::Action ( PVideoControlInfo::Types  type,
int  direction,
const PTimeInterval &  duration 
)

Causes the H.281 handler to start the desired action if duration os zero, then the action continues until an Action with direction of zero is executed.

void OpalH281Client::ActivatePreset ( BYTE  presetNumber)

Tells the remote side to activate the given preset

static const PConstString& OpalH281Client::AuxiliaryCamera ( )
static
static const PConstString& OpalH281Client::AuxiliaryDocumentCamera ( )
static
static const PConstString& OpalH281Client::DocumentCamera ( )
static
virtual BYTE OpalH281Client::GetClientID ( ) const
inlinevirtual

Overriding default OpalH224Client methods

Implements OpalH224Client.

References OpalH224Client::H281ClientID.

unsigned OpalH281Client::GetLocalNumberOfPresets ( ) const
inline
const Capability& OpalH281Client::GetRemoteCapability ( VideoSourceIds  sourceId) const
inline

Get remote video source capability.

Parameters
sourceIdFrom 1 to NumVideoSources

References m_remoteCapability, and m_remoteSourceId.

unsigned OpalH281Client::GetRemoteNumberOfPresets ( ) const
inline
virtual bool OpalH281Client::HasExtraCapabilities ( ) const
inlinevirtual

Return whether this client has extra capabilities. Default returns FALSE.

Reimplemented from OpalH224Client.

static const PConstString& OpalH281Client::MainCamera ( )
static
virtual void OpalH281Client::OnActivatePreset ( BYTE  presetNumber)
virtual

Indicates to activate the given preset number

virtual void OpalH281Client::OnReceivedExtraCapabilities ( const BYTE *  capabilities,
PINDEX  size 
)
virtual

Process incoming frames. Overrides from OpalH224Client

Reimplemented from OpalH224Client.

virtual void OpalH281Client::OnReceivedMessage ( const H224_Frame )
virtual

Called if a PDU for this client was received. Default does nothing.

Reimplemented from OpalH224Client.

virtual void OpalH281Client::OnRemoteCapabilitiesChanged ( )
virtual

Called each time a remote endpoint sends its capability list

virtual void OpalH281Client::OnSelectVideoSource ( const PString &  source,
H281_Frame::VideoMode  videoMode 
)
virtual

Indicates to select the desired video source

virtual void OpalH281Client::OnStartAction ( int  directions[PVideoControlInfo::NumTypes])
pure virtual

Indicates to start the action specified

Implemented in OpalFarEndCameraControl.

virtual void OpalH281Client::OnStopAction ( )
pure virtual

Indicates to stop the action stared with OnStartAction()

Implemented in OpalFarEndCameraControl.

virtual void OpalH281Client::OnStoreAsPreset ( BYTE  presetNumber)
virtual

Indicates to store the current camera settings as a preset

OpalH281Client::P_DECLARE_ENUM ( VideoSourceIds  ,
CurrentVideoSource  ,
MainCameraId  ,
AuxiliaryCameraId  ,
DocumentCameraId  ,
AuxiliaryDocumentCameraId  ,
VideoPlaybackSourceId  ,
UserDefinedSourceId1  ,
UserDefinedSourceId2  ,
UserDefinedSourceId3  ,
UserDefinedSourceId4  ,
UserDefinedSourceId5  ,
UserDefinedSourceId6  ,
UserDefinedSourceId7  ,
UserDefinedSourceId8  ,
UserDefinedSourceId9  ,
UserDefinedSourceId10   
)
OpalH281Client::PDECLARE_MUTEX ( m_mutex  )
protected
OpalH281Client::PDECLARE_NOTIFIER ( PTimer  ,
OpalH281Client  ,
ContinueAction   
)
protected
OpalH281Client::PDECLARE_NOTIFIER ( PTimer  ,
OpalH281Client  ,
StopAction   
)
protected
OpalH281Client::PDECLARE_NOTIFIER ( PTimer  ,
OpalH281Client  ,
ReceiveActionTimeout   
)
protected
bool OpalH281Client::SelectVideoSource ( const PString &  source,
H281_Frame::VideoMode  mode = H281_Frame::MotionVideo 
)

Tells the remote side to select the desired video source using the mode specified. Does nothing if either video source or mode aren't available

void OpalH281Client::SendExtraCapabilities ( ) const
virtual

Causes the H.281 handler to send its capabilities. Capabilities include the number of available cameras, (default one) the camera abilities (default none) and the number of presets that can be stored (default zero)

Reimplemented from OpalH224Client.

void OpalH281Client::SendStopAction ( )
protected
void OpalH281Client::SetCapabilityChangedNotifier ( const PNotifier &  notifier)

Set notifier for when remote camera capabilties change

void OpalH281Client::SetLocalCapability ( VideoSourceIds  sourceId,
const Capability capability 
)
inline

Set local video source capability

Parameters
sourceIdFrom 1 to NumVideoSources

References m_localCapability, and m_localSourceId.

void OpalH281Client::SetLocalNumberOfPresets ( unsigned  presets)
inline
void OpalH281Client::SetOnActionNotifier ( const PNotifier &  notifier)

Set notifier for when remote system sends action to local side. The notifier PINT_PTR parameter is actually a pointer to an array of integers, PVideoControlInfo::NumTypes long, with -1, 0 or 1 in them. A NULL pointer indicates that the action has stopped for all types.

void OpalH281Client::StoreAsPreset ( BYTE  presetNumber)

Tells the remote side to store the current camera settings as a preset with the preset number given

static const PConstString& OpalH281Client::VideoPlayback ( )
static

Field Documentation

PNotifier OpalH281Client::m_capabilityChanged
protected
PTimer OpalH281Client::m_continueTimer
protected
Capability OpalH281Client::m_localCapability[NumVideoSourceIds]
protected

Referenced by SetLocalCapability().

unsigned OpalH281Client::m_localNumberOfPresets
protected
VideoSourceIds OpalH281Client::m_localSourceId
protected

Referenced by SetLocalCapability().

PNotifier OpalH281Client::m_onAction
protected
PTimer OpalH281Client::m_receiveTimer
protected
Capability OpalH281Client::m_remoteCapability[NumVideoSourceIds]
protected

Referenced by GetRemoteCapability().

unsigned OpalH281Client::m_remoteNumberOfPresets
protected
VideoSourceIds OpalH281Client::m_remoteSourceId
protected

Referenced by GetRemoteCapability().

PTimer OpalH281Client::m_stopTimer
protected
H281_Frame OpalH281Client::m_transmitFrame
protected

The documentation for this class was generated from the following file: