TRVConnectionProperties

Top  Previous  Next

Contains connection properties

Unit MRVType;

Syntax

TRVConnectionProperties = class(TPersistent);

hmtoggle_arrow1Hierarchy

Description

This class has the following properties:

VideoTimeout: Integer (default value = DefaultWaitForVideo)

AudioTimeout: Integer (default value = DefaultWaitForAudio)

CmdTimeout: Integer (default value = DefaultWaitForCmd)

DataTimeout: Integer (default value = DefaultWaitForData)

FileTimeout: Integer read (default value = DefaultWaitForFile)

UseBlockingSocketsForVideo: Boolean (default value = False)

UseBlockingSocketsForAudio: Boolean (default value = False)

UseBlockingSocketsForCmd: Boolean (default value = True)

UseBlockingSocketsForData: Boolean (default value = False)

UseBlockingSocketsForFile: Boolean (default value = True)

where

const
  DefaultWaitForVideo = 3000;
  DefaultWaitForAudio = 3000;
  DefaultWaitForCmd   = 15000;
  DefaultWaitForData  = 10000;
  DefaultWaitForFile  = 10000;

Timeout properties define a maximal waiting time (in ms) for non-blocking sockets for data of the specified type. As you can see, the largest waiting time if for commands, because they are the most important (and may be even critical for a stable working).

If UseBlockingSockets*=True

The component makes a request and waits for other party to respond (or to break the connection). There are no disconnects on timeout.

Pluses: all sent data will be received.

Minuses: stability; if one application hangs, other application hangs too.

If UseBlockingSockets*=False

The component makes a request and waits for other party to respond, or to break the connection, or for the time-out interval to elapse.

Pluses: stability; if one applications hangs, or it is too busy to process requests, other application breaks the connection after a time out, and so it can continue working.

Minuses: data could be lost if other application is busy, connection will be broken.

Use

The following properties have this type:

TRVCamSender.ConnectionProperties

TRVCamReceiver.ConnectionProperties

TRVMediaServer.SenderConnectionProperties and ReceiverConnectionProperties