![]() |
OpenSplice C# API
v6.x
OpenSplice C# Data Distribution Service Data-Centric Publish-Subscribe API
|
Specialized class of ICondition, which allows accesss and to be triggered on the related communication statuses of an IEntity More...
Public Member Functions | |
StatusKind | GetEnabledStatuses () |
This operation returns the list of enabled communication statuses of the IStatusCondition. More... | |
IEntity | GetEntity () |
This operation returns the IEntity associated with the IStatusCondition or a null reference. More... | |
ReturnCode | SetEnabledStatuses (StatusKind mask) |
This operation sets the list of communication statuses that are taken into account to determine the TriggerValue of the IStatusCondition. More... | |
![]() | |
bool | GetTriggerValue () |
Each ICondition has a TriggerValue that can be true or false and is set by the DDS depending on the evaluation of the ICondition. More... | |
Specialized class of ICondition, which allows accesss and to be triggered on the related communication statuses of an IEntity
IEntity objects that have status attributes also have a StatusCondition, access is provided to the application by the GetStatusCondition operation. The communication statuses whose changes can be communicated to the application depend on the IEntity.
Entity | Status Kind | Status Name |
---|---|---|
ITopic | DDS.StatusKind InconsistentTopic | InconsistentTopicStatus |
DDS.StatusKind AllDataDisposed | ||
ISubscriber | DDS.StatusKind DataOnReaders | |
IDataReader | DDS.StatusKind SampleRejected | SampleRejectedStatus |
DDS.StatusKind LivelinessChanged | LivelinessChangedStatus | |
DDS.StatusKind RequestedDeadlineMissed | RequestedDeadlineMissedStatus | |
DDS.StatusKind RequestedIncompatibleQos | RequestedIncompatibleQosStatus | |
DDS.StatusKind DataAvailable | ||
DDS.StatusKind SampleLost | SampleLostStatus | |
DDS.StatusKind SubscriptionMatched | SubscriptionMatchedStatus | |
IDataWriter | DDS.StatusKind LivelinessLost | LivelinessLostStatus |
DDS.StatusKind OfferedDeadlineMissed | OfferedDeadlineMissedStatus | |
DDS.StatusKind OfferedIncompatibleQos | OfferedIncompatibleQosStatus | |
DDS.StatusKind PublicationMatched | PublicationMatchedStatus |
The TriggerValue of the IStatusCondition depends on the communication statuses of that IEntity (e.g., missed deadline) and also depends on the value of the IStatusCondition attribute mask (enabled statuses mask). An IStatusCondition can be attached to an IWaitSet in order to allow an application to suspend until the TriggerValue has become true.
The TriggerValue of an IStatusCondition will be true if one of the enabled StatusChangedFlags is set. That is, the TriggerValue is false only if all the values of the StatusChangedFlags are false. The sensitivity of the IStatusCondition to a particular communication status is controlled by the list of enabled statuses set on the condition by means of the IStatusCondition.SetEnabledStatuses operation.
When the enabled statuses are not changed by the IStatusCondition.SetEnabledStatuses operation, all statuses are enabled by default.
Definition at line 299 of file DdsDcpsInterfaces.cs.
StatusKind DDS.IStatusCondition.GetEnabledStatuses | ( | ) |
This operation returns the list of enabled communication statuses of the IStatusCondition.
The TriggerValue of the IStatusCondition depends on the communication status of that IEntity (e.g., missed deadline, loss of information, etc.), ‘filtered’ by the set of EnabledStatuses on the IStatusCondition.
This operation returns the list of communication statuses that are taken into account to determine the TriggerValue of the IStatusCondition. This operation returns the statuses that were explicitly set on the last cal l to IStatusCondition.SetEnabledStatuses or, if IStatusCondition.SetEnabledStatuses was never called, the default list.
The result value is a bit mask in which each bit shows which status is taken into account for the IStatusCondition. The relevant bits represents one of the following statuses:
Each status bit is declared as a constant and can be used in an AND operation to check the status bit against the result of type int. Not all statuses are relevant to all IEntity objects. See the respective Listener objects for each IEntity for more information.
IEntity DDS.IStatusCondition.GetEntity | ( | ) |
This operation returns the IEntity associated with the IStatusCondition or a null reference.
This operation returns the IEntity associated with the IStatusCondition. Note that there is exactly one IEntity associated with each IStatusCondition. When the IEntity was already deleted (there is no associated IEntity any more), the value null is returned.
ReturnCode DDS.IStatusCondition.SetEnabledStatuses | ( | StatusKind | mask | ) |
This operation sets the list of communication statuses that are taken into account to determine the TriggerValue of the IStatusCondition.
The TriggerValue of the IStatusCondition depends on the communication status of that IEntity (e.g., missed deadline, loss of information, etc.), ‘filtered’ by the set of enabled statuses on the IStatusCondition. This operation sets the list of communication statuses that are taken into account to determine the TriggerValue of the IStatusCondition. This operation may change the TriggerValue of the IStatusCondition.
IWaitSet objects behaviour depend on the changes of the TriggerValue of their attached IConditions. Therefore, any IWaitSet to which the IStatusCondition is attached is potentially affected by this operation. If this function is not invoked, the default list of enabled statuses includes all the statuses.
The parameter mask is a bit mask in which each bit shows which status is taken into account for the IStatusCondition. The relevant bits represents one of the following statuses:
Each status bit is declared as a constant and can be used in an OR operation to set the status bit in the parameter mask of type int. Not all statuses are relevant to all IEntity objects. See the respective Listener objects for each IEntity for more information.
mask | A bit mask in which each bit sets the status which is taken into account to determine the TriggerValue of the IStatusCondition |