Class CIsoMonitor#
Defined in File iso_monitor.h
Inheritance Relationships#
Base Types#
public sdv::IInterfaceAccess
(Struct IInterfaceAccess)public sdv::IObjectControl
(Struct IObjectControl)
Class Documentation#
-
class CIsoMonitor : public sdv::IInterfaceAccess, public sdv::IObjectControl#
Isolation object monitor. If shutdown is called, the application leaves the running loop.
Remark
Only valid when running in an isolated application.
Public Functions
-
CIsoMonitor(sdv::IInterfaceAccess *pObject)#
Constructor.
- Parameters:
pObject – [in] Pointer to the object to monitor
-
~CIsoMonitor()#
Destructor.
-
virtual void Initialize(const sdv::u8string &ssObjectConfig) override#
Initialize the object. Overload of sdv::IObjectControl::Initialize.
- Parameters:
ssObjectConfig – [in] Optional configuration string.
-
virtual sdv::EObjectStatus GetStatus() const override#
Get the current status of the object. Overload of sdv::IObjectControl::GetStatus.
- Returns:
Return the current status of the object.
-
virtual void SetOperationMode(sdv::EOperationMode eMode) override#
Set the component operation mode. Overload of sdv::IObjectControl::SetOperationMode.
- Parameters:
eMode – [in] The operation mode, the component should run in.
-
virtual void Shutdown() override#
Shutdown called before the object is destroyed. Overload of sdv::IObjectControl::Shutdown.
- Attention
Implement calls to other SDV objects here as this is no longer considered safe during the destructor of the object! After a call to shutdown any threads/callbacks/etc that could call other SDV objects need to have been stopped. The SDV object itself is to remain in a state where it can respond to calls to its interfaces as other objects may still call it during the shutdown sequence! Any subsequent call to GetStatus should return EObjectStatus::destruction_pending
-
sdv::IInterfaceAccess *GetContainedObject()#
Get the contained object from the isolation monitor.
- Returns:
The contained object.
-
CIsoMonitor(sdv::IInterfaceAccess *pObject)#