VideoXpert SDK  2.0
A software development kit for third party vendors to integrate with the VideoXpert platform
VxSdk::IVxDataSource Struct Referenceabstract

Represents a data producer in the system hosted by a device. Each data source provides a list of data interfaces, which provide a particular protocol used to transmit and control the data produced by this data source. More...

#include <IVxDataSource.h>

Public Member Functions

virtual VxResult::Value CanPtz (bool &canPtz) const =0
 Gets a value indicating whether PTZ is enabled. More...
 
virtual VxResult::Value CreateMjpegDataSession (IVxDataSession *&dataSession) const =0
 Create a new MJPEG IVxDataSession. More...
 
virtual VxResult::Value Delete () const =0
 Deletes this instance. More...
 
virtual VxResult::Value GetAllDataStorages (VxCollection< IVxDataStorage ** > &dataStorageCollection) const =0
 Gets all data storages associated with this data source; includes edge and failover data storages. More...
 
virtual VxResult::Value GetAudioRelations (VxCollection< IVxResourceRel ** > &resourceRelCollection) const =0
 Gets all possible audio resource relations for this data source (both linked and non-linked). Each linked resource shall be considered to be associated to this data source while non-linked resources shall not be (they are available to be associated). More...
 
virtual VxResult::Value GetClips (VxCollection< IVxClip ** > &clipCollection) const =0
 Gets the clips associated with this data source. More...
 
virtual VxResult::Value GetDataStorages (VxCollection< IVxDataStorage ** > &dataStorageCollection) const =0
 Gets the data storages associated with this data source. More...
 
virtual VxResult::Value GetEdgeClips (VxCollection< IVxClip ** > &clipCollection) const =0
 Gets the edge clips associated with this data source; may take a long time (minutes). More...
 
virtual VxResult::Value GetHostDevice (IVxDevice *&hostDevice) const =0
 Gets the IVxDevice that hosts this data source. More...
 
virtual VxResult::Value GetMultiviewInfo (VxCollection< IVxUserInfo ** > &userInfoCollection) const =0
 Gets the multiple viewer information for this data source. This information contains details on the current viewers of this data source. More...
 
virtual VxResult::Value GetPtzController (IVxPtzController *&ptzController) const =0
 Gets the IVxPtzController associated with this data source. More...
 
virtual VxResult::Value GetRtspEndpoint (char *endpoint, int &size) const =0
 Gets the RTSP stream endpoint URI. More...
 
virtual VxResult::Value GetVideoRelations (VxCollection< IVxResourceRel ** > &resourceRelCollection) const =0
 Gets all possible video resource relations for this data source (both linked and non-linked). Each linked resource shall be considered to be associated to this data source while non-linked resources shall not be (they are available to be associated). More...
 
virtual VxResult::Value Refresh ()=0
 Refreshes the member values for this object by retrieving its current information from the VideoXpert system. More...
 
virtual VxResult::Value SetName (char name[64])=0
 Sets the name property. More...
 
virtual VxResult::Value SetNumber (int number)=0
 Sets the number property. More...
 

Public Attributes

bool isCapturing
 Indicates whether this data source is currently being captured by a recorder. More...
 
bool isRecording
 Indicates whether the data source is currently recording. More...
 
bool hasLive
 Indicates whether the live stream is available. More...
 
bool hasRecorded
 Indicates whether the recorded video is available. More...
 
char id [64]
 The unique identifier of the data source. More...
 
char ip [64]
 The IP of this data source. More...
 
char name [64]
 The friendly name of this data source. More...
 
char snapshotUri [512]
 The URI to retrieve the current live frame. More...
 
int dataInterfaceSize
 The size of dataInterfaces. More...
 
int index
 The zero-based index (per host device) indicating the "position" of the data source (per data source type) within the host device. More...
 
int number
 The number used to designate the data source. More...
 
IVxDataInterface ** dataInterfaces
 The data interfaces available for retrieval of data from this data source. More...
 
VxDataSourceType::Value type
 The type of media this data source contains. More...
 
VxDeviceState::Value state
 The current operational state of the associated device. More...
 

Protected Member Functions

void Clear ()
 Clears this instance. More...
 

Detailed Description

Represents a data producer in the system hosted by a device. Each data source provides a list of data interfaces, which provide a particular protocol used to transmit and control the data produced by this data source.

Definition at line 23 of file IVxDataSource.h.

Member Function Documentation

virtual VxResult::Value VxSdk::IVxDataSource::CanPtz ( bool &  canPtz) const
pure virtual

Gets a value indicating whether PTZ is enabled.

Parameters
canPtztrue if PTZ is enabled, false if not.
Returns
The Result of the request.
void VxSdk::IVxDataSource::Clear ( )
inlineprotected

Clears this instance.

Definition at line 191 of file IVxDataSource.h.

191  {
192  this->dataInterfaces = nullptr;
193  VxZeroArray(this->id);
194  VxZeroArray(this->ip);
195  VxZeroArray(this->name);
196  this->dataInterfaceSize = 0;
197  this->index = 0;
198  this->number = 0;
199  this->isCapturing = false;
200  this->isRecording = false;
201  this->hasLive = false;
202  this->hasRecorded = false;
205  }
bool hasRecorded
Indicates whether the recorded video is available.
bool isCapturing
Indicates whether this data source is currently being captured by a recorder.
int number
The number used to designate the data source.
#define VxZeroArray(src)
Definition: VxMacros.h:25
char ip[64]
The IP of this data source.
int index
The zero-based index (per host device) indicating the "position" of the data source (per data source ...
IVxDataInterface ** dataInterfaces
The data interfaces available for retrieval of data from this data source.
An error or unknown value was returned.
Definition: VxPrimitives.h:289
VxDeviceState::Value state
The current operational state of the associated device.
int dataInterfaceSize
The size of dataInterfaces.
bool isRecording
Indicates whether the data source is currently recording.
An error or unknown value was returned.
Definition: VxPrimitives.h:243
char name[64]
The friendly name of this data source.
bool hasLive
Indicates whether the live stream is available.
VxDataSourceType::Value type
The type of media this data source contains.
virtual VxResult::Value VxSdk::IVxDataSource::CreateMjpegDataSession ( IVxDataSession *&  dataSession) const
pure virtual

Create a new MJPEG IVxDataSession.

Parameters
dataSessionnullptr if it fails, else the new MJPEG streams IVxDataSession.
Returns
The Result of the request.
virtual VxResult::Value VxSdk::IVxDataSource::Delete ( ) const
pure virtual

Deletes this instance.

Returns
The Result of deleting this instance.
virtual VxResult::Value VxSdk::IVxDataSource::GetAllDataStorages ( VxCollection< IVxDataStorage ** > &  dataStorageCollection) const
pure virtual

Gets all data storages associated with this data source; includes edge and failover data storages.

Available filters: kId, kModifiedSince, kName, kType.

Parameters
dataStorageCollectionA VxCollection of data storages.
Returns
The Result of the request.
virtual VxResult::Value VxSdk::IVxDataSource::GetAudioRelations ( VxCollection< IVxResourceRel ** > &  resourceRelCollection) const
pure virtual

Gets all possible audio resource relations for this data source (both linked and non-linked). Each linked resource shall be considered to be associated to this data source while non-linked resources shall not be (they are available to be associated).

Available filters: kAllTags, kAllPrivateTags, kLinked.

Parameters
resourceRelCollectionA VxCollection of related resources.
Returns
The Result of the request.
virtual VxResult::Value VxSdk::IVxDataSource::GetClips ( VxCollection< IVxClip ** > &  clipCollection) const
pure virtual

Gets the clips associated with this data source.

Available filters: kDataSourceId, kEndTime, kEvent, kFramerate, kPriority, kSearchEndTime, kSearchStartTime, kStartTime.

Parameters
clipCollectionA VxCollection of the associated clips.
Returns
The Result of the request.
virtual VxResult::Value VxSdk::IVxDataSource::GetDataStorages ( VxCollection< IVxDataStorage ** > &  dataStorageCollection) const
pure virtual

Gets the data storages associated with this data source.

Available filters: kId, kModifiedSince, kName, kType.

Parameters
dataStorageCollectionA VxCollection of data storages.
Returns
The Result of the request.
virtual VxResult::Value VxSdk::IVxDataSource::GetEdgeClips ( VxCollection< IVxClip ** > &  clipCollection) const
pure virtual

Gets the edge clips associated with this data source; may take a long time (minutes).

Available filters: kDataSourceId, kEndTime, kEvent, kFramerate, kPriority, kSearchEndTime, kSearchStartTime, kStartTime.

Parameters
clipCollectionA VxCollection of the associated edge clips.
Returns
The Result of the request.
virtual VxResult::Value VxSdk::IVxDataSource::GetHostDevice ( IVxDevice *&  hostDevice) const
pure virtual

Gets the IVxDevice that hosts this data source.

Parameters
hostDeviceThe host IVxDevice.
Returns
The Result of the request.
virtual VxResult::Value VxSdk::IVxDataSource::GetMultiviewInfo ( VxCollection< IVxUserInfo ** > &  userInfoCollection) const
pure virtual

Gets the multiple viewer information for this data source. This information contains details on the current viewers of this data source.

Parameters
userInfoCollectionA VxCollection of user information for all viewers of this data source.
Returns
The Result of the request.
virtual VxResult::Value VxSdk::IVxDataSource::GetPtzController ( IVxPtzController *&  ptzController) const
pure virtual

Gets the IVxPtzController associated with this data source.

Parameters
ptzControllernullptr if PTZ is not supported on the device, else the IVxPtzController.
Returns
The Result of the request.
virtual VxResult::Value VxSdk::IVxDataSource::GetRtspEndpoint ( char *  endpoint,
int &  size 
) const
pure virtual

Gets the RTSP stream endpoint URI.

Parameters
endpointThe RTSP endpoint.
sizeThe size of endpoint .
Returns
The Result of the request.
virtual VxResult::Value VxSdk::IVxDataSource::GetVideoRelations ( VxCollection< IVxResourceRel ** > &  resourceRelCollection) const
pure virtual

Gets all possible video resource relations for this data source (both linked and non-linked). Each linked resource shall be considered to be associated to this data source while non-linked resources shall not be (they are available to be associated).

Available filters: kAllTags, kAllPrivateTags, kLinked.

Parameters
resourceRelCollectionA VxCollection of related resources.
Returns
The Result of the request.
virtual VxResult::Value VxSdk::IVxDataSource::Refresh ( )
pure virtual

Refreshes the member values for this object by retrieving its current information from the VideoXpert system.

Returns
The Result of refreshing the member values for this object.
virtual VxResult::Value VxSdk::IVxDataSource::SetName ( char  name[64])
pure virtual

Sets the name property.

Parameters
nameThe new name value.
Returns
The Result of setting the property.
virtual VxResult::Value VxSdk::IVxDataSource::SetNumber ( int  number)
pure virtual

Sets the number property.

Parameters
numberThe new number value.
Returns
The Result of setting the property.

Member Data Documentation

IVxDataInterface** VxSdk::IVxDataSource::dataInterfaces

The data interfaces available for retrieval of data from this data source.

Definition at line 177 of file IVxDataSource.h.

int VxSdk::IVxDataSource::dataInterfaceSize

The size of dataInterfaces.

Definition at line 165 of file IVxDataSource.h.

bool VxSdk::IVxDataSource::hasLive

Indicates whether the live stream is available.

Definition at line 141 of file IVxDataSource.h.

bool VxSdk::IVxDataSource::hasRecorded

Indicates whether the recorded video is available.

Definition at line 145 of file IVxDataSource.h.

char VxSdk::IVxDataSource::id[64]

The unique identifier of the data source.

Definition at line 149 of file IVxDataSource.h.

int VxSdk::IVxDataSource::index

The zero-based index (per host device) indicating the "position" of the data source (per data source type) within the host device.

Definition at line 169 of file IVxDataSource.h.

char VxSdk::IVxDataSource::ip[64]

The IP of this data source.

Definition at line 153 of file IVxDataSource.h.

bool VxSdk::IVxDataSource::isCapturing

Indicates whether this data source is currently being captured by a recorder.

Definition at line 133 of file IVxDataSource.h.

bool VxSdk::IVxDataSource::isRecording

Indicates whether the data source is currently recording.

Definition at line 137 of file IVxDataSource.h.

char VxSdk::IVxDataSource::name[64]

The friendly name of this data source.

Definition at line 157 of file IVxDataSource.h.

int VxSdk::IVxDataSource::number

The number used to designate the data source.

Definition at line 173 of file IVxDataSource.h.

char VxSdk::IVxDataSource::snapshotUri[512]

The URI to retrieve the current live frame.

Definition at line 161 of file IVxDataSource.h.

VxDeviceState::Value VxSdk::IVxDataSource::state

The current operational state of the associated device.

Definition at line 185 of file IVxDataSource.h.

VxDataSourceType::Value VxSdk::IVxDataSource::type

The type of media this data source contains.

Definition at line 181 of file IVxDataSource.h.


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