x::vipobj
's first template parameter
specifies the type of the very important object.
x::vipobj
has three optional template
parameters:
The type of the parameter passed to the callback, reporting the
value of the very important object. The default value is
const
, and may be changed if
vipobj_type
&vipobj_type
can be type-converted to another class.
A bool
value. Setting this parameter to
true
catches any
x::exception
s thrown by a callback lambda,
which get logged. The default value of false
does not catch any exceptions, which propagate. Note that this
means that a thrown exception prevents any additional callbacks
from getting invoked, as a result of a very important object update.
The final template parameter specifies the type of the internal mutexes.