![]() |
OpenSplice C# API
v6.x
OpenSplice C# Data Distribution Service Data-Centric Publish-Subscribe API
|
Since a Subscriber is an Entity, it has the ability to have a Listener associated with it. In this case, the associated Listener should be of type ISubscriberListener. This interface must be implemented by the application. A user-defined class must be provided by the application which must extend from the SubscriberListener class. All operations for this interface must be implemented in the user-defined class, it is up to the application whether an operation is empty or contains some functionality. The ISubscriberListener provides a generic mechanism (actually a callback function) for the Data Distribution Service to notify the application of relevant asynchronous status change events, such as a missed deadline, violation of a QosPolicy setting, etc. The ISubscriberListener is related to changes in communication status StatusConditions. More...
Public Member Functions | |
void | OnDataOnReaders (ISubscriber entityInterface) |
This operation called by the Data Distribution Service when new data is available for this Subscriber. More... | |
![]() | |
void | OnDataAvailable (IDataReader entityInterface) |
This operation is called by the Data Distribution Service when new data is available for this IDataReader. More... | |
void | OnLivelinessChanged (IDataReader entityInterface, LivelinessChangedStatus status) |
This operation is called by the Data Distribution Service when the liveliness of one or more IDataWriter objects that were writing instances read through this IDataReader has changed. More... | |
void | OnRequestedDeadlineMissed (IDataReader entityInterface, RequestedDeadlineMissedStatus status) |
This operation called by the Data Distribution Service when the deadline that the IDataReader was expecting through its DeadlineQosPolicy was not respected for a specific instance. More... | |
void | OnRequestedIncompatibleQos (IDataReader entityInterface, RequestedIncompatibleQosStatus status) |
This operation is called by the Data Distribution Service when the DDS.StatusKind.RequestedIncompatibleQos changes. More... | |
void | OnSampleLost (IDataReader entityInterface, SampleLostStatus status) |
NOTE: This operation is not yet implemented. It is scheduled for a future release. More... | |
void | OnSampleRejected (IDataReader entityInterface, SampleRejectedStatus status) |
This operation called by the Data Distribution Service when a (received) sample has been rejected. More... | |
void | OnSubscriptionMatched (IDataReader entityInterface, SubscriptionMatchedStatus status) |
This operation is called by the Data Distribution Service when a new match has been discovered for the current subscription, or when an existing match has ceased to exist. More... | |
Since a Subscriber is an Entity, it has the ability to have a Listener associated with it. In this case, the associated Listener should be of type ISubscriberListener. This interface must be implemented by the application. A user-defined class must be provided by the application which must extend from the SubscriberListener class. All operations for this interface must be implemented in the user-defined class, it is up to the application whether an operation is empty or contains some functionality. The ISubscriberListener provides a generic mechanism (actually a callback function) for the Data Distribution Service to notify the application of relevant asynchronous status change events, such as a missed deadline, violation of a QosPolicy setting, etc. The ISubscriberListener is related to changes in communication status StatusConditions.
Definition at line 6310 of file DdsDcpsInterfaces.cs.
void DDS.ISubscriberListener.OnDataOnReaders | ( | ISubscriber | entityInterface | ) |
This operation called by the Data Distribution Service when new data is available for this Subscriber.
The implementation may be left empty when this functionality is not needed. This operation will only be called when the relevant ISubscriberListener is installed and enabled with the DDS.StatusKind.DataOnReaders. The statuses OnDataOnReaders() and OnDataAvailable() will occur together. In case these status changes occur, the Data Distribution Service will look for an attached and activated ISubscriberListener or IDomainParticipantListener (in that order) for the enabled DDS.StatusKind.DataOnReaders. In case the DDS.StatusKind.DataOnReaders can not be handled, the Data Distribution Service will look for an attached and activated IDataReaderListener, ISubscriberListener or IDomainParticipantListener for the enabled DDS.StatusKind.DataAvailable (in that order). Note that if OnDataOnReaders is called, then the Data Distribution Service will not try to call OnDataAvailable, however, the application can force a call to the callback function OnDataAvailable of IDataReaderListener objects that have data by means of the Subscriber.NotifyDatareaders() operation.
entityInterface | contain a pointer to the ISubscriber for which data is available (this is an input to the application provided by the Data Distribution Service). |