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

Represents a new situation configuration that specifies how corresponding events shall be generated and handled when the situation is detected. More...

#include <VxNewSituation.h>

Public Member Functions

 VxNewSituation ()
 Initializes a new instance of the VxNewSituation struct. More...
 
 VxNewSituation (const VxNewSituation &ref)
 Initializes a new instance of the VxNewSituation struct. More...
 
 ~VxNewSituation ()
 Finalizes an instance of the VxNewSituation class. More...
 
void Clear ()
 Clears this instance. More...
 
void Default ()
 Defaults this instance. More...
 

Public Attributes

bool isAckNeeded
 Indicates whether the generated events shall have an initial state of AckNeeded or NoAckNeeded. More...
 
bool shouldAudiblyNotify
 Indicates whether a notification sound should play on supporting clients when an event is received. More...
 
bool shouldExpandBanner
 Indicates whether the notification banner on clients should be expanded by default. More...
 
bool shouldLog
 Indicates whether events generated from this situation shall be persisted or immediately be discarded. More...
 
bool shouldNotify
 Indicates whether an event generated from the situation shall generate notifications. More...
 
char name [64]
 The situation friendly name; forward slashes are not allowed. More...
 
char sourceDeviceId [64]
 The unique source identifier. This field acts an optional constraint on the source of events for this situation. If specified, any events matching the situation type must also match this SourceDeviceId in order for the situation to apply. More...
 
char type [128]
 The situation type. The type must be of the form external/<company>/<event> where <company> and <event> are strings no greater than 64 characters each; forward slashes are not allowed. These strings describe the <company> that manufactured the device that was the source of the <event>. More...
 
int audibleLoopDelay
 The seconds to wait between audible notifications. More...
 
int audiblePlayCount
 The amount of times to play audible notifications. More...
 
int autoAcknowledge
 The number of seconds after which a generated event state will be set to AutoAcked. If less than 0, a generated event must be manually acknowledged. If 0, a generated event is set to AutoAcked immediately. More...
 
int severity
 The severity of the generated event, from 1 (highest) to 10 (lowest). More...
 
int snoozeIntervalSize
 The size of snoozeIntervals. More...
 
int * snoozeIntervals
 The default snooze intervals, in seconds, for a generated event. More...
 

Detailed Description

Represents a new situation configuration that specifies how corresponding events shall be generated and handled when the situation is detected.

Definition at line 13 of file VxNewSituation.h.

Constructor & Destructor Documentation

VxSdk::VxNewSituation::VxNewSituation ( )
inline

Initializes a new instance of the VxNewSituation struct.

Definition at line 18 of file VxNewSituation.h.

18  {
19  Clear();
20  }
void Clear()
Clears this instance.
VxSdk::VxNewSituation::VxNewSituation ( const VxNewSituation ref)
inline

Initializes a new instance of the VxNewSituation struct.

Parameters
refThe reference.

Definition at line 26 of file VxNewSituation.h.

26  {
27  this->isAckNeeded = ref.isAckNeeded;
28  this->shouldAudiblyNotify = ref.shouldAudiblyNotify;
29  this->shouldExpandBanner = ref.shouldExpandBanner;
30  this->shouldLog = ref.shouldLog;
31  this->shouldNotify = ref.shouldNotify;
32  Utilities::StrCopySafe(this->name, ref.name);
33  Utilities::StrCopySafe(this->sourceDeviceId, ref.sourceDeviceId);
34  Utilities::StrCopySafe(this->type, ref.type);
35  this->audibleLoopDelay = ref.audibleLoopDelay;
36  this->audiblePlayCount = ref.audiblePlayCount;
37  this->autoAcknowledge = ref.autoAcknowledge;
38  this->severity = ref.severity;
39  this->snoozeIntervalSize = ref.snoozeIntervalSize;
40  this->snoozeIntervals = ref.snoozeIntervals;
41  }
int snoozeIntervalSize
The size of snoozeIntervals.
int audibleLoopDelay
The seconds to wait between audible notifications.
int autoAcknowledge
The number of seconds after which a generated event state will be set to AutoAcked. If less than 0, a generated event must be manually acknowledged. If 0, a generated event is set to AutoAcked immediately.
static void StrCopySafe(char(&dst)[dstSize], const char *src)
Performs a safe string copy.
Definition: VxUtilities.h:15
bool shouldExpandBanner
Indicates whether the notification banner on clients should be expanded by default.
char type[128]
The situation type. The type must be of the form external/<company>/<event> where <company> and <even...
bool shouldNotify
Indicates whether an event generated from the situation shall generate notifications.
bool shouldLog
Indicates whether events generated from this situation shall be persisted or immediately be discarded...
char name[64]
The situation friendly name; forward slashes are not allowed.
char sourceDeviceId[64]
The unique source identifier. This field acts an optional constraint on the source of events for this...
bool shouldAudiblyNotify
Indicates whether a notification sound should play on supporting clients when an event is received...
int severity
The severity of the generated event, from 1 (highest) to 10 (lowest).
int * snoozeIntervals
The default snooze intervals, in seconds, for a generated event.
bool isAckNeeded
Indicates whether the generated events shall have an initial state of AckNeeded or NoAckNeeded...
int audiblePlayCount
The amount of times to play audible notifications.
VxSdk::VxNewSituation::~VxNewSituation ( )
inline

Finalizes an instance of the VxNewSituation class.

Definition at line 46 of file VxNewSituation.h.

46  {
47  Clear();
48  }
void Clear()
Clears this instance.

Member Function Documentation

void VxSdk::VxNewSituation::Clear ( )
inline

Clears this instance.

Definition at line 53 of file VxNewSituation.h.

53  {
54  this->isAckNeeded = false;
55  this->shouldAudiblyNotify = false;
56  this->shouldExpandBanner = false;
57  this->shouldLog = false;
58  this->shouldNotify = false;
59  VxZeroArray(this->name);
61  VxZeroArray(this->type);
62  this->audibleLoopDelay = 0;
63  this->audiblePlayCount = 0;
64  this->autoAcknowledge = 0;
65  this->severity = 0;
66  this->snoozeIntervalSize = 0;
67  this->snoozeIntervals = nullptr;
68  }
int snoozeIntervalSize
The size of snoozeIntervals.
#define VxZeroArray(src)
Definition: VxMacros.h:25
int audibleLoopDelay
The seconds to wait between audible notifications.
int autoAcknowledge
The number of seconds after which a generated event state will be set to AutoAcked. If less than 0, a generated event must be manually acknowledged. If 0, a generated event is set to AutoAcked immediately.
bool shouldExpandBanner
Indicates whether the notification banner on clients should be expanded by default.
char type[128]
The situation type. The type must be of the form external/<company>/<event> where <company> and <even...
bool shouldNotify
Indicates whether an event generated from the situation shall generate notifications.
bool shouldLog
Indicates whether events generated from this situation shall be persisted or immediately be discarded...
char name[64]
The situation friendly name; forward slashes are not allowed.
char sourceDeviceId[64]
The unique source identifier. This field acts an optional constraint on the source of events for this...
bool shouldAudiblyNotify
Indicates whether a notification sound should play on supporting clients when an event is received...
int severity
The severity of the generated event, from 1 (highest) to 10 (lowest).
int * snoozeIntervals
The default snooze intervals, in seconds, for a generated event.
bool isAckNeeded
Indicates whether the generated events shall have an initial state of AckNeeded or NoAckNeeded...
int audiblePlayCount
The amount of times to play audible notifications.
void VxSdk::VxNewSituation::Default ( )
inline

Defaults this instance.

Careful, this allocates snoozeIntervals so ensure to manage the memory

Definition at line 74 of file VxNewSituation.h.

74  {
75  this->isAckNeeded = false;
76  this->shouldAudiblyNotify = false;
77  this->shouldExpandBanner = true;
78  this->shouldLog = true;
79  this->shouldNotify = false;
80  VxZeroArray(this->name);
82  VxZeroArray(this->type);
83  this->audibleLoopDelay = 0;
84  this->audiblePlayCount = 1;
85  this->autoAcknowledge = -1;
86  this->severity = 5;
87  this->snoozeIntervalSize = 3;
88  this->snoozeIntervals = new int[3];
89  this->snoozeIntervals[0] = 60;
90  this->snoozeIntervals[1] = 300;
91  this->snoozeIntervals[2] = 600;
92  }
int snoozeIntervalSize
The size of snoozeIntervals.
#define VxZeroArray(src)
Definition: VxMacros.h:25
int audibleLoopDelay
The seconds to wait between audible notifications.
int autoAcknowledge
The number of seconds after which a generated event state will be set to AutoAcked. If less than 0, a generated event must be manually acknowledged. If 0, a generated event is set to AutoAcked immediately.
bool shouldExpandBanner
Indicates whether the notification banner on clients should be expanded by default.
char type[128]
The situation type. The type must be of the form external/<company>/<event> where <company> and <even...
bool shouldNotify
Indicates whether an event generated from the situation shall generate notifications.
bool shouldLog
Indicates whether events generated from this situation shall be persisted or immediately be discarded...
char name[64]
The situation friendly name; forward slashes are not allowed.
char sourceDeviceId[64]
The unique source identifier. This field acts an optional constraint on the source of events for this...
bool shouldAudiblyNotify
Indicates whether a notification sound should play on supporting clients when an event is received...
int severity
The severity of the generated event, from 1 (highest) to 10 (lowest).
int * snoozeIntervals
The default snooze intervals, in seconds, for a generated event.
bool isAckNeeded
Indicates whether the generated events shall have an initial state of AckNeeded or NoAckNeeded...
int audiblePlayCount
The amount of times to play audible notifications.

Member Data Documentation

int VxSdk::VxNewSituation::audibleLoopDelay

The seconds to wait between audible notifications.

Definition at line 134 of file VxNewSituation.h.

int VxSdk::VxNewSituation::audiblePlayCount

The amount of times to play audible notifications.

Definition at line 138 of file VxNewSituation.h.

int VxSdk::VxNewSituation::autoAcknowledge

The number of seconds after which a generated event state will be set to AutoAcked. If less than 0, a generated event must be manually acknowledged. If 0, a generated event is set to AutoAcked immediately.

Definition at line 143 of file VxNewSituation.h.

bool VxSdk::VxNewSituation::isAckNeeded

Indicates whether the generated events shall have an initial state of AckNeeded or NoAckNeeded.

Definition at line 98 of file VxNewSituation.h.

char VxSdk::VxNewSituation::name[64]

The situation friendly name; forward slashes are not allowed.

Definition at line 118 of file VxNewSituation.h.

int VxSdk::VxNewSituation::severity

The severity of the generated event, from 1 (highest) to 10 (lowest).

Definition at line 147 of file VxNewSituation.h.

bool VxSdk::VxNewSituation::shouldAudiblyNotify

Indicates whether a notification sound should play on supporting clients when an event is received.

Definition at line 102 of file VxNewSituation.h.

bool VxSdk::VxNewSituation::shouldExpandBanner

Indicates whether the notification banner on clients should be expanded by default.

Definition at line 106 of file VxNewSituation.h.

bool VxSdk::VxNewSituation::shouldLog

Indicates whether events generated from this situation shall be persisted or immediately be discarded.

Definition at line 110 of file VxNewSituation.h.

bool VxSdk::VxNewSituation::shouldNotify

Indicates whether an event generated from the situation shall generate notifications.

Definition at line 114 of file VxNewSituation.h.

int* VxSdk::VxNewSituation::snoozeIntervals

The default snooze intervals, in seconds, for a generated event.

Definition at line 155 of file VxNewSituation.h.

int VxSdk::VxNewSituation::snoozeIntervalSize

The size of snoozeIntervals.

Definition at line 151 of file VxNewSituation.h.

char VxSdk::VxNewSituation::sourceDeviceId[64]

The unique source identifier. This field acts an optional constraint on the source of events for this situation. If specified, any events matching the situation type must also match this SourceDeviceId in order for the situation to apply.

Definition at line 124 of file VxNewSituation.h.

char VxSdk::VxNewSituation::type[128]

The situation type. The type must be of the form external/<company>/<event> where <company> and <event> are strings no greater than 64 characters each; forward slashes are not allowed. These strings describe the <company> that manufactured the device that was the source of the <event>.

Definition at line 130 of file VxNewSituation.h.


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