nx_server_plugin_sdk 1.0 Server Plugin SDK

Public Types | Public Member Functions | List of all members
nxcip::BaseCameraManager3 Class Referenceabstract

Extends BaseCameraManager2 by adding editable parameters. More...

`#include <camera_plugin.h>`

Inheritance diagram for nxcip::BaseCameraManager3:

## Public Types
enum | CameraCapability3 { cameraParamsPersistentCapability = 0x0800 }
Public Types inherited from nxcip::BaseCameraManager2
enum | CameraCapability2 { searchByMotionMaskCapability = 0x1000, motionRegionCapability = 0x2000 }
| Enumeration of supported camera capabilities (bit flags) More...
Public Types inherited from nxcip::BaseCameraManager
enum | CameraCapability { hardwareMotionCapability = 0x0001, relayInputCapability = 0x0002, relayOutputCapability = 0x0004, ptzCapability = 0x0008, audioCapability = 0x0010, shareFpsCapability = 0x0020, sharePixelsCapability = 0x0040, shareIpCapability = 0x0080, dtsArchiveCapability = 0x0100, nativeMediaStreamCapability = 0x0200, primaryStreamSoftMotionCapability = 0x0400, cameraParamsPersistentCapability = 0x0800, searchByMotionMaskCapability = 0x1000, motionRegionCapability = 0x2000, needIFrameDetectionCapability = 0x4000, relativeTimestampCapability = 0x8000, customMediaUrlCapability = 0x10000, cameraTimeCapability = 0x20000, fixedQualityCapability = 0x40000, MulticastStreamCapability = 0x80000, ServerBoundCapability = 0x100000, dontAutoOpenCamera = 0x200000, noAnalytics = 0x400000, noVideo = 0x800000, ioDeviceCapability = 0x1000000 }
| Enumeration of supported camera capabilities (bit flags) More...

## Public Member Functions
virtual const char * | getParametersDescriptionXML () const =0
| Returns XML describing camera parameters. More...
virtual int | getParamValue (const char *paramName, char *valueBuf, int *valueBufSize) const =0
| Reads value of parameter paramName. More...
virtual int | setParamValue (const char *paramName, const char *value)=0
| Set value of parameter paramName to value. More...
Public Member Functions inherited from nxcip::BaseCameraManager2
virtual int | createDtsArchiveReader (DtsArchiveReader **dtsArchiveReader) const =0
| Returns not NULL if BaseCameraManager::dtsArchiveCapability is supported. More...
virtual int | find (ArchiveSearchOptions *searchOptions, TimePeriods **timePeriods) const =0
| Find regions of archive, satisfying given conditions. More...
virtual int | setMotionMask (Picture *motionMask)=0
| If camera plugin implements this method, it MUST report motion only on for region specified (motionMask) More...
Public Member Functions inherited from nxcip::BaseCameraManager
virtual int | getEncoderCount (int *encoderCount) const =0
| Provides maximum number of available encoders. More...
virtual int | getEncoder (int encoderIndex, CameraMediaEncoder **encoderPtr)=0
| Returns encoder by index. More...
virtual int | getCameraInfo (CameraInfo *info) const =0
| Fills info struct with camera data. More...
virtual int | getCameraCapabilities (unsigned int *capabilitiesMask) const =0
| Return bit set of camera capabilities (CameraCapability enumeration) More...
virtual void | setCredentials (const char *username, const char *password)=0
| Set credentials for camera access.
virtual int | setAudioEnabled (int audioEnabled)=0
| Turn on/off audio on ALL encoders. More...
virtual CameraPtzManager * | getPtzManager () const =0
| MUST return not-NULL if ptzCapability is present. More...
virtual CameraMotionDataProvider * | getCameraMotionDataProvider () const =0
| MUST return not-NULL if hardwareMotionCapability is present. More...
virtual CameraRelayIOManager * | getCameraRelayIOManager () const =0
| MUST return not-NULL if BaseCameraManager::relayInputCapability is present. More...
virtual void | getLastErrorString (char *errorString) const =0
| Returns text description of the last error. More...
Public Member Functions inherited from nxpl::PluginInterface
virtual void * | queryInterface (const nxpl::NX_GUID &interfaceID)=0
| Cast to type, specified by interfaceID. More...
virtual int | addRef () const =0
| Increment reference counter. More...
virtual int | releaseRef () const =0
| Decrement reference counter. More...

## Detailed Description

Extends BaseCameraManager2 by adding editable parameters.

- all parameters have type string
- parameter ids always start with 0

## Member Enumeration Documentation

## ◆ CameraCapability3

enum nxcip::BaseCameraManager3::CameraCapability3

Enumerator
cameraParamsPersistentCapability | Camera parameters can be read/set even if camera is not accessible at the moment.

## Member Function Documentation

## ◆ getParametersDescriptionXML()

virtual const char* nxcip::BaseCameraManager3::getParametersDescriptionXML | ( |  | ) | const
| pure virtual

Returns XML describing camera parameters.

XML MUST conform to camera_parameters.xsd which can be found in SDK. Sample XML also can be found there This XML describes parameters (types, possible values, etc..) accessible with getParamValue and setParamValue

## ◆ getParamValue()

virtual int nxcip::BaseCameraManager3::getParamValue | ( | const char * | paramName,
|  | char * | valueBuf,
|  | int * | valueBufSize
| ) |  | const
| pure virtual

Reads value of parameter paramName.

Parameters

  paramName | \0-terminated utf-8 string specifying unique id of the parameter.
  valueBufSize | IN: Length of valueBuf, OUT: length of string value not including \0-character

Returns
  - NX_NO_ERROR if value loaded to value buf. Value is always \0-terminated utf8 string
  - NX_UNKNOWN_PARAMETER if paramName specifies unknown parameter
  - NX_MORE_DATA if valueBuf has not enough space. In this case *valueBufSize is set to required buf size

## ◆ setParamValue()

virtual int nxcip::BaseCameraManager3::setParamValue | ( | const char * | paramName,
|  | const char * | value
| ) |  |
| pure virtual

Set value of parameter paramName to value.

Parameters

  paramName | \0-terminated utf-8 string specifying unique id of the parameter.
  value | \0-terminated utf8 string

Returns
  - NX_NO_ERROR if value successfully applied
  - NX_UNKNOWN_PARAMETER if paramName specifies unknown parameter
  - NX_PARAM_READ_ONLY if parameter is read only (check pfReadOnly flag)
  - NX_INVALID_PARAM_VALUE if parameter value does not pass validity check

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

- src/camera/camera_plugin.h