![]() |
OpenSplice C# API
v6.x
OpenSplice C# Data Distribution Service Data-Centric Publish-Subscribe API
|
A IDataReader allows the application: to declare data it wishes to receive (i.e., make a subscription) to access data received by the associated ISubscriber. A IDataReader refers to exactly one ITopicDescription (either a ITopic, a IContentFilteredTopic or a IMultiTopic) that identifies the samples to be read. The IDataReader may give access to several instances of the data type, which are distinguished from each other by their key. IDataReader is an abstract class. It is specialized for each particular application data type. For a fictional application data type Space (defined in the module SPACE) the specialized class would be SPACE.SpaceDataReader. More...
Public Member Functions | |
IQueryCondition | CreateQueryCondition (string queryExpression, params string[] queryParameters) |
This operation creates a new IQueryCondition for the IDataReader. More... | |
IQueryCondition | CreateQueryCondition (SampleStateKind sampleStates, ViewStateKind viewStates, InstanceStateKind instanceStates, string queryExpression, params string[] queryParameters) |
This operation creates a new IQueryCondition for the IDataReader. More... | |
IReadCondition | CreateReadCondition () |
This operation creates a new IReadCondition for the IDataReader. More... | |
IReadCondition | CreateReadCondition (SampleStateKind sampleStates, ViewStateKind viewStates, InstanceStateKind instanceStates) |
This operation creates a new IReadCondition for the IDataReader. More... | |
ReturnCode | DeleteContainedEntities () |
This operation deletes all the IEntity objects that were created by means of one of the Create operations on the IDataReader. More... | |
ReturnCode | DeleteReadCondition (IReadCondition condition) |
This operation deletes a IReadCondition or IQueryCondition which is attached to the IDataReader. More... | |
ReturnCode | GetKeyValue (ref< data > key, InstanceHandle handle) |
This operation retrieves the key value of a specific instance (abstract). More... | |
ReturnCode | GetLivelinessChangedStatus (ref LivelinessChangedStatus status) |
This operation obtains the LivelinessChangedStatus struct of the IDataReader. More... | |
ReturnCode | GetMatchedPublicationData (ref PublicationBuiltinTopicData publicationData, InstanceHandle publicationHandle) |
This operation retrieves information on the specified publication that is currently “associated” with the IDataReader. More... | |
ReturnCode | GetMatchedPublications (ref InstanceHandle[] publicationHandles) |
This operation retrieves the list of publications currently "associated" with the DataReader. More... | |
ReturnCode | GetQos (ref DataReaderQos qos) |
This operation allows access to the existing set of QoS policies for a IDataReader. More... | |
ReturnCode | GetRequestedDeadlineMissedStatus (ref RequestedDeadlineMissedStatus status) |
This operation obtains the DDS.RequestedDeadlineMissedStatus struct of the IDataReader. More... | |
ReturnCode | GetRequestedIncompatibleQosStatus (ref RequestedIncompatibleQosStatus status) |
This operation obtains the DDS.RequestedIncompatibleQosStatus struct of the IDataReader. More... | |
ReturnCode | GetSampleLostStatus (ref SampleLostStatus status) |
This operation obtains the DDS.SampleLostStatus struct of the IDataReader. More... | |
ReturnCode | GetSampleRejectedStatus (ref SampleRejectedStatus status) |
This operation obtains the DDS.SampleRejectedStatus of the IDataReader. More... | |
ReturnCode | GetSubscriptionMatchedStatus (ref SubscriptionMatchedStatus status) |
This operation obtains the DDS.SubscriptionMatchedStatus struct of the IDataReader. More... | |
ITopicDescription | GetTopicDescription () |
This operation returns the DDS.ITopicDescription which is associated with the IDataReader. More... | |
InstanceHandle | LookupInstance (< data > instance) |
This operation returns the handle which corresponds to the instance data (abstract). More... | |
ReturnCode | Read (ref< data >[] dataValues, ref SampleInfo[] sampleInfos) |
This operation reads an array of typed samples from the DataReader (abstract). More... | |
ReturnCode | Read (ref< data > dataValues, ref SampleInfo[] sampleInfos, int maxSamples) |
This operation reads an array of typed samples from the DataReader (abstract). More... | |
ReturnCode | Read (ref< data >[] dataValues, ref SampleInfo[] sampleInfos, SampleStateKind sampleStates, ViewStateKind viewStates, InstanceStateKind instanceStates) |
This operation reads an array of typed samples from the DataReader (abstract). More... | |
ReturnCode | Read (ref< data >[] dataValues, ref SampleInfo[] sampleInfos, int maxSamples, SampleStateKind sampleStates, ViewStateKind viewStates, InstanceStateKind instanceStates) |
This operation reads an array of typed samples from the DataReader (abstract). More... | |
ReturnCode | ReadInstance (ref< data >[] dataValues, ref SampleInfo[] sampleInfos, InstanceHandle instanceHandle) |
This operation reads an array of typed samples from the DataReader (abstract). More... | |
ReturnCode | ReadInstance (ref< data >[] dataValues, ref SampleInfo[] sampleInfos, int maxSamples, InstanceHandle instanceHandle) |
This operation reads an array of typed samples from the DataReader (abstract). More... | |
ReturnCode | ReadInstance (ref< data >[] dataValues, ref SampleInfo[] sampleInfos, int maxSamples, InstanceHandle instanceHandle, SampleStateKind sampleStates, ViewStateKind viewStates, InstanceStateKind instanceStates) |
This operation reads an array of typed samples from the DataReader (abstract). More... | |
ReturnCode | ReadNextInstance (ref< data >[] dataValues, ref SampleInfo[] sampleInfos, InstanceHandle instanceHandle) |
This operation reads an array of typed samples from the DataReader (abstract). More... | |
ReturnCode | ReadNextInstance (ref< data >[] dataValues, ref SampleInfo[] sampleInfos, int maxSamples, InstanceHandle instanceHandle) |
This operation reads an array of typed samples from the DataReader (abstract). More... | |
ReturnCode | ReadNextInstance (ref< data >[] dataValues, ref SampleInfo[] sampleInfos, int maxSamples, InstanceHandle instanceHandle, SampleStateKind sampleStates, ViewStateKind viewStates, InstanceStateKind instanceStates) |
This operation reads an array of typed samples from the DataReader (abstract). More... | |
ReturnCode | ReadNextInstanceWithCondition (ref< data >[] dataValues, ref SampleInfo[] sampleInfos, InstanceHandle instanceHandle, IReadCondition readCondition) |
This operation reads an array of typed samples from the DataReader (abstract). More... | |
ReturnCode | ReadNextInstanceWithCondition (ref< data >[] dataValues, ref SampleInfo[] sampleInfos, int maxSamples, InstanceHandle instanceHandle, IReadCondition readCondition) |
This operation reads an array of typed samples from the DataReader (abstract). More... | |
ReturnCode | ReadNextSample (ref Space.Foo dataValue, ref SampleInfo sampleInfo) |
This operation reads an array of typed samples from the DataReader (abstract). More... | |
ReturnCode | ReadWithCondition (ref< data >[] dataValues, ref SampleInfo[] sampleInfos, IReadCondition readCondition) |
This operation reads an array of typed samples from the DataReader (abstract). More... | |
ReturnCode | ReadWithCondition (ref< data >[] dataValues, ref SampleInfo[] sampleInfos, int maxSamples, IReadCondition readCondition) |
This operation reads an array of typed samples from the DataReader (abstract). More... | |
ReturnCode | ReturnLoan (ref< data >[] dataValues, ref SampleInfo[] sampleInfos) |
This operation indicates to the DataReader that the application is done accessing the dataValues and sampleInfos arrays (abstract). More... | |
ReturnCode | SetListener (IDataReaderListener listener, StatusKind mask) |
This operation attaches a IDataReaderListener to the IDataReader. More... | |
ReturnCode | SetQos (DataReaderQos qos) |
This operation replaces the existing set of QosPolicy settings for a IDataReader. More... | |
ReturnCode | Take (ref< data >[] dataValues, ref SampleInfo[] sampleInfos) |
This operation takes an array of typed samples from the DataReader (abstract). More... | |
ReturnCode | Take (ref< data >[] dataValues, ref SampleInfo[] sampleInfos, int maxSamples) |
This operation takes an array of typed samples from the DataReader (abstract). More... | |
ReturnCode | Take (ref< data >[] dataValues, ref SampleInfo[] sampleInfos, SampleStateKind sampleStates, ViewStateKind viewStates, InstanceStateKind instanceStates) |
This operation takes an array of typed samples from the DataReader (abstract). More... | |
ReturnCode | Take (ref< data >[] dataValues, ref SampleInfo[] sampleInfos, int maxSamples, SampleStateKind sampleStates, ViewStateKind viewStates, InstanceStateKind instanceStates) |
This operation takes an array of typed samples from the DataReader (abstract). More... | |
ReturnCode | TakeInstance (ref< data >[] dataValues, ref SampleInfo[] sampleInfos, InstanceHandle instanceHandle) |
This operation takes an array of typed samples from the DataReader (abstract). More... | |
ReturnCode | TakeInstance (ref< data >[] dataValues, ref SampleInfo[] sampleInfos, int maxSamples, InstanceHandle instanceHandle) |
This operation takes an array of typed samples from the DataReader (abstract). More... | |
ReturnCode | TakeInstance (ref< data >[] dataValues, ref SampleInfo[] sampleInfos, int maxSamples, InstanceHandle instanceHandle, SampleStateKind sampleStates, ViewStateKind viewStates, InstanceStateKind instanceStates) |
This operation takes an array of typed samples from the DataReader (abstract). More... | |
ReturnCode | TakeNextInstance (ref< data >[] dataValues, ref SampleInfo[] sampleInfos, InstanceHandle instanceHandle) |
This operation takes an array of typed samples from the DataReader (abstract). More... | |
ReturnCode | TakeNextInstance (ref< data >[] dataValues, ref SampleInfo[] sampleInfos, int maxSamples, InstanceHandle instanceHandle) |
This operation takes an array of typed samples from the DataReader (abstract). More... | |
ReturnCode | TakeNextInstance (ref< data >[] dataValues, ref SampleInfo[] sampleInfos, int maxSamples, InstanceHandle instanceHandle, SampleStateKind sampleStates, ViewStateKind viewStates, InstanceStateKind instanceStates) |
This operation takes an array of typed samples from the DataReader (abstract). More... | |
ReturnCode | TakeNextInstanceWithCondition (ref< data >[] dataValues, ref SampleInfo[] sampleInfos, InstanceHandle instanceHandle, IReadCondition readCondition) |
This operation takes an array of typed samples from the DataReader (abstract). More... | |
ReturnCode | TakeNextInstanceWithCondition (ref< data >[] dataValues, ref SampleInfo[] sampleInfos, int maxSamples, InstanceHandle instanceHandle, IReadCondition readCondition) |
This operation takes an array of typed samples from the DataReader (abstract). More... | |
ReturnCode | TakeNextSample (ref Space.Foo dataValue, ref SampleInfo sampleInfo) |
This operation takes an array of typed samples from the DataReader (abstract). More... | |
ReturnCode | TakeWithCondition (ref< data >[] dataValues, ref SampleInfo[] sampleInfos, IReadCondition readCondition) |
This operation takes an array of typed samples from the DataReader (abstract). More... | |
ReturnCode | TakeWithCondition (ref< data >[] dataValues, ref SampleInfo[] sampleInfos, int maxSamples, IReadCondition readCondition) |
This operation takes an array of typed samples from the DataReader (abstract). More... | |
ReturnCode | WaitForHistoricalData (Duration maxWait) |
This operation will block the application thread until all historical data is received. More... | |
![]() | |
ReturnCode | Enable () |
This operation enables the IEntity on which it is being called when the IEntity was created with the EntityFactoryQosPolicy set to false. More... | |
Properties | |
IDataReaderListener | Listener [get] |
This property returns the IDataReaderListener currently attached to the IDataReader. More... | |
ISubscriber | Subscriber [get] |
This property returns the ISubscriber to which the IDataReader belongs. More... | |
![]() | |
InstanceHandle | InstanceHandle [get] |
This operation returns the InstanceHandle of the builtin topic sample that represents the specified IEntity. More... | |
StatusKind | StatusChanges [get] |
This operation returns a mask with the communication statuses in the IEntity that are triggered. More... | |
IStatusCondition | StatusCondition [get] |
This property allows access to the IStatusCondition associated with the IEntity. More... | |
A IDataReader allows the application: to declare data it wishes to receive (i.e., make a subscription) to access data received by the associated ISubscriber. A IDataReader refers to exactly one ITopicDescription (either a ITopic, a IContentFilteredTopic or a IMultiTopic) that identifies the samples to be read. The IDataReader may give access to several instances of the data type, which are distinguished from each other by their key. IDataReader is an abstract class. It is specialized for each particular application data type. For a fictional application data type Space (defined in the module SPACE) the specialized class would be SPACE.SpaceDataReader.
Definition at line 4562 of file DdsDcpsInterfaces.cs.
IQueryCondition DDS.IDataReader.CreateQueryCondition | ( | string | queryExpression, |
params string [] | queryParameters | ||
) |
This operation creates a new IQueryCondition for the IDataReader.
The returned IQueryCondition is attached (and belongs) to the IDataReader. When the operation fails, null is returned. To delete the IQueryCondition the operation DeleteReadCondition or DeleteContainedEntities must be used.
Samples with Any kind for SampleStates, ViewStates and InstanceStates will be read.
SQL Expression
The SQL query string is set by queryExpression which must be a subset of the SQL query language. In this query expression, parameters may be used, which must be set in the sequence of strings defined by the parameter queryParameters. A parameter is a string which can define an integer, float, string or enumeration. The number of values in queryParameters must be equal or greater than the highest referenced n token in the queryExpression (e.g. if %1 and %8 are used as parameters in the queryExpression , the queryParameters should at least contain n+1 = 9 values).
queryExpression | The query string, which must be a subset of the SQL query language. |
queryParameters | A sequence of strings which are the parameter values used in the SQL query string (i.e., the tokens in the expression). The number of values in queryParameters must be equal or greater than the highest referenced n token in the queryExpression (e.g.if %1 and %8 are used as parameters in the queryExpression, the queryParameters should at least contain n+1 = 9 values). |
IQueryCondition DDS.IDataReader.CreateQueryCondition | ( | SampleStateKind | sampleStates, |
ViewStateKind | viewStates, | ||
InstanceStateKind | instanceStates, | ||
string | queryExpression, | ||
params string [] | queryParameters | ||
) |
This operation creates a new IQueryCondition for the IDataReader.
The returned IQueryCondition is attached (and belongs) to the IDataReader. When the operation fails, null is returned. To delete the IQueryCondition the operation DeleteReadCondition or DeleteContainedEntities must be used.
State Masks
The result of the IQueryCondition also depends on the selection of samples determined by three masks:
SQL Expression
The SQL query string is set by queryExpression which must be a subset of the SQL query language. In this query expression, parameters may be used, which must be set in the sequence of strings defined by the parameter queryParameters. A parameter is a string which can define an integer, float, string or enumeration. The number of values in queryParameters must be equal or greater than the highest referenced n token in the queryExpression (e.g. if %1 and %8 are used as parameters in the queryExpression , the queryParameters should at least contain n+1 = 9 values).
sampleStates | A mask, which selects only those samples with the desired sample states. |
viewStates | A mask, which selects only those samples with the desired view states. |
instanceStates | A mask, which selects only those samples with the desired instance states. |
queryExpression | The query string, which must be a subset of the SQL query language. |
queryParameters | A sequence of strings which are the parameter values used in the SQL query string (i.e., the tokens in the expression). The number of values in queryParameters must be equal or greater than the highest referenced n token in the queryExpression (e.g.if %1 and %8 are used as parameters in the queryExpression, the queryParameters should at least contain n+1 = 9 values). |
IReadCondition DDS.IDataReader.CreateReadCondition | ( | ) |
This operation creates a new IReadCondition for the IDataReader.
The returned IReadCondition is attached (and belongs) to the IDataReader. When the operation fails, null is returned. To delete the IReadCondition the operation DeleteReadCondition or DeleteContainedEntities must be used.
Samples with Any kind for SampleStates, ViewStates and InstanceStates will be read.
IReadCondition DDS.IDataReader.CreateReadCondition | ( | SampleStateKind | sampleStates, |
ViewStateKind | viewStates, | ||
InstanceStateKind | instanceStates | ||
) |
This operation creates a new IReadCondition for the IDataReader.
The returned IReadCondition is attached (and belongs) to the IDataReader. When the operation fails, null is returned. To delete the IReadCondition the operation DeleteReadCondition or DeleteContainedEntities must be used.
State Masks
The result of the IReadCondition also depends on the selection of samples determined by three masks:
sampleStates | A mask, which selects only those samples with the desired sample states. |
viewStates | A mask, which selects only those samples with the desired view states. |
instanceStates | A mask, which selects only those samples with the desired instance states. |
ReturnCode DDS.IDataReader.DeleteContainedEntities | ( | ) |
This operation deletes all the IEntity objects that were created by means of one of the Create operations on the IDataReader.
This operation deletes all the IEntity objects that were created by means of one of the Create operations on the IDataReader. In other words, it deletes all IQueryCondition and IReadCondition objects contained by the IDataReader.
ReturnCode DDS.IDataReader.DeleteReadCondition | ( | IReadCondition | condition | ) |
This operation deletes a IReadCondition or IQueryCondition which is attached to the IDataReader.
This operation deletes a IReadCondition or IQueryCondition which is attached to the IDataReader. Since a IQueryCondition is a specialized IReadCondition, the operation can also be used to delete a IQueryCondition. A IReadCondition or IQueryCondition cannot be deleted when it is not attached to this IDataReader. When the operation is called on a IReadCondition or IQueryCondition which was not at t ached to this IDataReader, the operation returns PreconditionNotMet.
condition | The IReadCondition or IQueryCondition which is to be deleted. |
ReturnCode DDS.IDataReader.GetKeyValue | ( | ref< data > | key, |
InstanceHandle | handle | ||
) |
This operation retrieves the key value of a specific instance (abstract).
This abstract operation is defined as a generic operation, which is implemented by the <type>DataReader class. Therefore, to use this operation, the data type specific implementation of this operation in its respective derived class must be used.
For further explanation see the description for the fictional data type Space.Foo derived Space.FooDataReader class.
ReturnCode DDS.IDataReader.GetLivelinessChangedStatus | ( | ref LivelinessChangedStatus | status | ) |
This operation obtains the LivelinessChangedStatus struct of the IDataReader.
This obtains returns the LivelinessChangedStatus struct of the IDataReader. This struct contains the information whether the liveliness of one or more IDataWriter objects that were writing instances read by the IDataReader has changed. In other words, some IDataWriter have become alive or not alive. The LivelinessChangedStatus can also be monitored using a IDataReaderListener or by using the associated IStatusCondition.
status | A reference to LivelinessChangedStatus where the contents of the LivelinessChangedStatus of the IDataReader will be copied into. |
ReturnCode DDS.IDataReader.GetMatchedPublicationData | ( | ref PublicationBuiltinTopicData | publicationData, |
InstanceHandle | publicationHandle | ||
) |
This operation retrieves information on the specified publication that is currently “associated” with the IDataReader.
That is, a publication with a matching ITopic and compatible QoS that the application has not indicated should be “ignored” by means of the IgnorePublication operation on the IDomainParticipant.
The publicationHandle must correspond to a publication currently associated with the IDataReader, otherwise the operation will fail and return DDS.ReturnCode BadParameter. The operation IDataReader.GetMatchedPublications() can be used to find the publications that are currently matched with the DataReader.
The operation may also fail if the infrastructure does not hold the information necessary to fill in the publicationData. This is the case when OpenSplice is configured not to maintain discovery information in the Networking Service. (See the description for the NetworkingService/Discovery/enabled property in the Deployment Manual for more information about this subject.) In this case the operation will return DDS.ReturnCode Unsupported.
publicationData | The sample in which the information about the specified publication is to be stored. |
publicationHandle | A handle to the publication whose information needs to be retrieved. |
ReturnCode DDS.IDataReader.GetMatchedPublications | ( | ref InstanceHandle [] | publicationHandles | ) |
This operation retrieves the list of publications currently "associated" with the DataReader.
That is, publications that have a matching ITopic and compatible QoS that the application has not indicated should be “ignored” by means of the IgnorePublication operation on the IDomainParticipant.
The handles returned in the publicationHandles array are the ones that are used by the DDS implementation to locally identify the corresponding matched IDataWriter entities. You can access more detailed information about a particular publication by passing its publicationHandle to either the GetMatchedPublicationData() operation or to the ReadInstance() operation on the built-in reader for the “DCPSPublication” topic.
Be aware that since DDS.InstanceHandle is an opaque datatype, it does not necessarily mean that the handles obtained from the GetMatchedPublications() operation have the same value as the ones that appear in the InstanceHandle field of the SampleInfo when retrieving the publication info through corresponding "DCPSPublications" built-in reader. You can’t just compare two handles to determine whether they represent the same publication. If you want to know whether two handles actually do represent the same publication, use both handles to retrieve their corresponding PublicationBuiltinTopicData samples and then compare the key field of both samples.
The operation may fail if the infrastructure does not locally maintain the connectivity information. This is the case when OpenSplice is configured not to maintain discovery information in the Networking Service. (See the description for the NetworkingService/Discovery/enabled property in the Deployment Manual for more information about this subject.) In this case the operation will return DDS.ReturnCode Unsupported.
publicationHandles | An array which is used to pass the list of all associated publications. |
ReturnCode DDS.IDataReader.GetQos | ( | ref DataReaderQos | qos | ) |
This operation allows access to the existing set of QoS policies for a IDataReader.
This operation allows access to the existing set of QoS policies of a IDataReader on which this operation is used. This DDS.DataReaderQos is stored at the location pointed to by the qos parameter.
qos | a reference to DDS.DataReaderQos, where the QosPolicy settings of the IDataReader are to be copied into. |
ReturnCode DDS.IDataReader.GetRequestedDeadlineMissedStatus | ( | ref RequestedDeadlineMissedStatus | status | ) |
This operation obtains the DDS.RequestedDeadlineMissedStatus struct of the IDataReader.
This operation obtains the DDS.RequestedDeadlineMissedStatus struct of the IDataReader. This struct contains the information whether the deadline that the IDataReader was expecting through its DeadlineQosPolicy was not respected for a specific instance. The DDS.RequestedDeadlineMissedStatus can also be monitored using a IDataReaderListener or by using the associated IStatusCondition.
status | A reference to DDS.RequestedDeadlineMissedStatus where the contents of the DDS.RequestedDeadlineMissedStatus of the IDataReader will be copied into. |
ReturnCode DDS.IDataReader.GetRequestedIncompatibleQosStatus | ( | ref RequestedIncompatibleQosStatus | status | ) |
This operation obtains the DDS.RequestedIncompatibleQosStatus struct of the IDataReader.
This operation obtains the DDS.RequestedIncompatibleQosStatus struct of the IDataReader. This struct contains the information whether a QosPolicy setting was incompatible with the offered QosPolicy setting.
The Request/Offering mechanism is applicable between the IDataWriter and the IDataReader. If the QosPolicy settings between IDataWriter and IDataReader are inconsistent, no communication between them is established. In addition the IDataWriter will be informed via a RequestedIncompatibleQos DDS.StatusKind change and the IDataReader will be informed via an OfferedIncompatibleQos DDS.StatusKind change. The DDS.RequestedIncompatibleQosStatus can also be monitored using a IDataReaderListener or by using the associated IStatusCondition.
status | A reference to DDS.RequestedIncompatibleQosStatus where the contents of the DDS.RequestedIncompatibleQosStatus of the IDataReader will be copied into. |
ReturnCode DDS.IDataReader.GetSampleLostStatus | ( | ref SampleLostStatus | status | ) |
This operation obtains the DDS.SampleLostStatus struct of the IDataReader.
This struct contains information whether samples have been lost. This only applies when the DDS.ReliabilityQosPolicyKind is set to ReliableReliabilityQos. If the DDS.ReliabilityQosPolicyKind is set to BestEffortReliabilityQos the Data Distribution Service will not report the loss of samples.
The DDS.SampleLostStatus can also be monitored using a IDataReaderListener or by using the associated IStatusCondition.
status | reference to DDS.SampleLostStatus where the contents of the DDS.SampleLostStatus of the IDataReader will be copied into. |
ReturnCode DDS.IDataReader.GetSampleRejectedStatus | ( | ref SampleRejectedStatus | status | ) |
This operation obtains the DDS.SampleRejectedStatus of the IDataReader.
This operation obtains the DDS.SampleRejectedStatus struct of the IDataReader. This struct contains the information whether a received sample has been rejected. The DDS.SampleRejectedStatus can also be monitored using a IDataReaderListener or by using the associated IStatusCondition.
status | A reference to DDS.SampleRejectedStatus where the contents of the DDS.SampleRejectedStatus of the IDataReader will be copied into. |
ReturnCode DDS.IDataReader.GetSubscriptionMatchedStatus | ( | ref SubscriptionMatchedStatus | status | ) |
This operation obtains the DDS.SubscriptionMatchedStatus struct of the IDataReader.
This struct contains the information whether a new match has been discovered for the current subscription, or whether an existing match has ceased to exist.
This means that the status represents that either a IDataWriter object has been discovered by the IDataReader with the same Topic and a compatible Qos, or that a previously discovered DataWriter has ceased to be matched to the current IDataReader. A IDataWriter may cease to match when it gets deleted, when it changes its Qos to a value that is incompatible with the current IDataReader or when either the IDataReader or the IDataWriter has chosen to put its matching counterpart on its ignore-list using the IgnorePublication or IgnoreSubcription operations on the IDomainParticipant.
The operation may fail if the infrastructure does not hold the information necessary to fill in the SubscriptionMatchedStatus. This is the case when OpenSplice is configured not to maintain discovery information in the Networking Service. (See the description for the NetworkingService/Discovery/enabled property in the Deployment Manual for more information about this subject.) In this case the operation will return DDS.ReturnCode Unsupported.
The SubscriptionMatchedStatus can also be monitored using a IDataReaderListener or by using the associated StatusCondition.
status | reference to DDS.SubscriptionMatchedStatus where the contents of the DDS.SubscriptionMatchedStatus of the IDataReader will be copied into. |
ITopicDescription DDS.IDataReader.GetTopicDescription | ( | ) |
This operation returns the DDS.ITopicDescription which is associated with the IDataReader.
This operation returns the DDS.ITopicDescription which is associated with the IDataReader, thus the DDS.ITopicDescription with which the IDataReader is created. If the IDataReader is already deleted, null is returned.
InstanceHandle DDS.IDataReader.LookupInstance | ( | < data > | instance | ) |
This operation returns the handle which corresponds to the instance data (abstract).
This abstract operation is defined as a generic operation, which is implemented by the <type>DataReader class. Therefore, to use this operation, the data type specific implementation of this operation in its respective derived class must be used.
For further explanation see the description for the fictional data type Space.Foo derived Space.FooDataReader class.
ReturnCode DDS.IDataReader.Read | ( | ref< data > [] | dataValues, |
ref SampleInfo [] | sampleInfos | ||
) |
This operation reads an array of typed samples from the DataReader (abstract).
This abstract operation is defined as a generic operation, which is implemented by the <type>DataReader class. Therefore, to use this operation, the data type specific implementation of this operation in its respective derived class must be used.
For further explanation see the description for the fictional data type Space.Foo derived Space.FooDataReader class.
ReturnCode DDS.IDataReader.Read | ( | ref< data > | dataValues, |
ref SampleInfo [] | sampleInfos, | ||
int | maxSamples | ||
) |
This operation reads an array of typed samples from the DataReader (abstract).
This abstract operation is defined as a generic operation, which is implemented by the <type>DataReader class. Therefore, to use this operation, the data type specific implementation of this operation in its respective derived class must be used.
For further explanation see the description for the fictional data type Space.Foo derived Space.FooDataReader class.
ReturnCode DDS.IDataReader.Read | ( | ref< data > [] | dataValues, |
ref SampleInfo [] | sampleInfos, | ||
SampleStateKind | sampleStates, | ||
ViewStateKind | viewStates, | ||
InstanceStateKind | instanceStates | ||
) |
This operation reads an array of typed samples from the DataReader (abstract).
This abstract operation is defined as a generic operation, which is implemented by the <type>DataReader class. Therefore, to use this operation, the data type specific implementation of this operation in its respective derived class must be used.
For further explanation see the description for the fictional data type Space.Foo derived Space.FooDataReader class.
ReturnCode DDS.IDataReader.Read | ( | ref< data > [] | dataValues, |
ref SampleInfo [] | sampleInfos, | ||
int | maxSamples, | ||
SampleStateKind | sampleStates, | ||
ViewStateKind | viewStates, | ||
InstanceStateKind | instanceStates | ||
) |
This operation reads an array of typed samples from the DataReader (abstract).
This abstract operation is defined as a generic operation, which is implemented by the <type>DataReader class. Therefore, to use this operation, the data type specific implementation of this operation in its respective derived class must be used.
For further explanation see the description for the fictional data type Space.Foo derived Space.FooDataReader class.
ReturnCode DDS.IDataReader.ReadInstance | ( | ref< data > [] | dataValues, |
ref SampleInfo [] | sampleInfos, | ||
InstanceHandle | instanceHandle | ||
) |
This operation reads an array of typed samples from the DataReader (abstract).
This abstract operation is defined as a generic operation, which is implemented by the <type>DataReader class. Therefore, to use this operation, the data type specific implementation of this operation in its respective derived class must be used.
For further explanation see the description for the fictional data type Space.Foo derived Space.FooDataReader class.
ReturnCode DDS.IDataReader.ReadInstance | ( | ref< data > [] | dataValues, |
ref SampleInfo [] | sampleInfos, | ||
int | maxSamples, | ||
InstanceHandle | instanceHandle | ||
) |
This operation reads an array of typed samples from the DataReader (abstract).
This abstract operation is defined as a generic operation, which is implemented by the <type>DataReader class. Therefore, to use this operation, the data type specific implementation of this operation in its respective derived class must be used.
For further explanation see the description for the fictional data type Space.Foo derived Space.FooDataReader class.
ReturnCode DDS.IDataReader.ReadInstance | ( | ref< data > [] | dataValues, |
ref SampleInfo [] | sampleInfos, | ||
int | maxSamples, | ||
InstanceHandle | instanceHandle, | ||
SampleStateKind | sampleStates, | ||
ViewStateKind | viewStates, | ||
InstanceStateKind | instanceStates | ||
) |
This operation reads an array of typed samples from the DataReader (abstract).
This abstract operation is defined as a generic operation, which is implemented by the <type>DataReader class. Therefore, to use this operation, the data type specific implementation of this operation in its respective derived class must be used.
For further explanation see the description for the fictional data type Space.Foo derived Space.FooDataReader class.
ReturnCode DDS.IDataReader.ReadNextInstance | ( | ref< data > [] | dataValues, |
ref SampleInfo [] | sampleInfos, | ||
InstanceHandle | instanceHandle | ||
) |
This operation reads an array of typed samples from the DataReader (abstract).
This abstract operation is defined as a generic operation, which is implemented by the <type>DataReader class. Therefore, to use this operation, the data type specific implementation of this operation in its respective derived class must be used.
For further explanation see the description for the fictional data type Space.Foo derived Space.FooDataReader class.
ReturnCode DDS.IDataReader.ReadNextInstance | ( | ref< data > [] | dataValues, |
ref SampleInfo [] | sampleInfos, | ||
int | maxSamples, | ||
InstanceHandle | instanceHandle | ||
) |
This operation reads an array of typed samples from the DataReader (abstract).
This abstract operation is defined as a generic operation, which is implemented by the <type>DataReader class. Therefore, to use this operation, the data type specific implementation of this operation in its respective derived class must be used.
For further explanation see the description for the fictional data type Space.Foo derived Space.FooDataReader class.
ReturnCode DDS.IDataReader.ReadNextInstance | ( | ref< data > [] | dataValues, |
ref SampleInfo [] | sampleInfos, | ||
int | maxSamples, | ||
InstanceHandle | instanceHandle, | ||
SampleStateKind | sampleStates, | ||
ViewStateKind | viewStates, | ||
InstanceStateKind | instanceStates | ||
) |
This operation reads an array of typed samples from the DataReader (abstract).
This abstract operation is defined as a generic operation, which is implemented by the <type>DataReader class. Therefore, to use this operation, the data type specific implementation of this operation in its respective derived class must be used.
For further explanation see the description for the fictional data type Space.Foo derived Space.FooDataReader class.
ReturnCode DDS.IDataReader.ReadNextInstanceWithCondition | ( | ref< data > [] | dataValues, |
ref SampleInfo [] | sampleInfos, | ||
InstanceHandle | instanceHandle, | ||
IReadCondition | readCondition | ||
) |
This operation reads an array of typed samples from the DataReader (abstract).
This abstract operation is defined as a generic operation, which is implemented by the <type>DataReader class. Therefore, to use this operation, the data type specific implementation of this operation in its respective derived class must be used.
For further explanation see the description for the fictional data type Space.Foo derived Space.FooDataReader class.
ReturnCode DDS.IDataReader.ReadNextInstanceWithCondition | ( | ref< data > [] | dataValues, |
ref SampleInfo [] | sampleInfos, | ||
int | maxSamples, | ||
InstanceHandle | instanceHandle, | ||
IReadCondition | readCondition | ||
) |
This operation reads an array of typed samples from the DataReader (abstract).
This abstract operation is defined as a generic operation, which is implemented by the <type>DataReader class. Therefore, to use this operation, the data type specific implementation of this operation in its respective derived class must be used.
For further explanation see the description for the fictional data type Space.Foo derived Space.FooDataReader class.
ReturnCode DDS.IDataReader.ReadNextSample | ( | ref Space.Foo | dataValue, |
ref SampleInfo | sampleInfo | ||
) |
This operation reads an array of typed samples from the DataReader (abstract).
This abstract operation is defined as a generic operation, which is implemented by the <type>DataReader class. Therefore, to use this operation, the data type specific implementation of this operation in its respective derived class must be used.
For further explanation see the description for the fictional data type Space.Foo derived Space.FooDataReader class.
Implemented in Space.FooDataReader.
ReturnCode DDS.IDataReader.ReadWithCondition | ( | ref< data > [] | dataValues, |
ref SampleInfo [] | sampleInfos, | ||
IReadCondition | readCondition | ||
) |
This operation reads an array of typed samples from the DataReader (abstract).
This abstract operation is defined as a generic operation, which is implemented by the <type>DataReader class. Therefore, to use this operation, the data type specific implementation of this operation in its respective derived class must be used.
For further explanation see the description for the fictional data type Space.Foo derived Space.FooDataReader class.
ReturnCode DDS.IDataReader.ReadWithCondition | ( | ref< data > [] | dataValues, |
ref SampleInfo [] | sampleInfos, | ||
int | maxSamples, | ||
IReadCondition | readCondition | ||
) |
This operation reads an array of typed samples from the DataReader (abstract).
This abstract operation is defined as a generic operation, which is implemented by the <type>DataReader class. Therefore, to use this operation, the data type specific implementation of this operation in its respective derived class must be used.
For further explanation see the description for the fictional data type Space.Foo derived Space.FooDataReader class.
ReturnCode DDS.IDataReader.ReturnLoan | ( | ref< data > [] | dataValues, |
ref SampleInfo [] | sampleInfos | ||
) |
This operation indicates to the DataReader that the application is done accessing the dataValues and sampleInfos arrays (abstract).
This abstract operation is defined as a generic operation, which is implemented by the <type>DataReader class. Therefore, to use this operation, the data type specific implementation of this operation in its respective derived class must be used.
For further explanation see the description for the fictional data type Space.Foo derived Space.FooDataReader class.
ReturnCode DDS.IDataReader.SetListener | ( | IDataReaderListener | listener, |
StatusKind | mask | ||
) |
This operation attaches a IDataReaderListener to the IDataReader.
listener | The IDataReaderListener which will be attached to the IDataReader. |
mask | A bit mask in which each bit enables the invocation of the IDataReaderListener for a certain status. |
ReturnCode DDS.IDataReader.SetQos | ( | DataReaderQos | qos | ) |
This operation replaces the existing set of QosPolicy settings for a IDataReader.
This operation replaces the existing set of QosPolicy settings for a IDataReader. The parameter qos contains the QosPolicy settings which is checked for self-consistency and mutability. When the application tries to change a QosPolicy setting for an enabled IDataReader, which can only be set before the IDataReader is enabled, the operation will fail and a ImmutablePolicy is returned. In other words, the application must provide the presently set QosPolicy settings in case of the immutable QosPolicy settings. Only the mutable QosPolicy settings can be changed. When qos contains conflicting QosPolicy settings (not self-consistent), the operation will fail and a InconsistentPolicy is returned.
The set of QosPolicy settings specified by the qos parameter are applied on top of the existing QoS, replacing the values of any policies previously set (provided, the operation returned Ok).
qos | the new set of QosPolicy settings for the IDataReader. |
ReturnCode DDS.IDataReader.Take | ( | ref< data > [] | dataValues, |
ref SampleInfo [] | sampleInfos | ||
) |
This operation takes an array of typed samples from the DataReader (abstract).
This abstract operation is defined as a generic operation, which is implemented by the <type>DataReader class. Therefore, to use this operation, the data type specific implementation of this operation in its respective derived class must be used.
For further explanation see the description for the fictional data type Space.Foo derived Space.FooDataReader class.
ReturnCode DDS.IDataReader.Take | ( | ref< data > [] | dataValues, |
ref SampleInfo [] | sampleInfos, | ||
int | maxSamples | ||
) |
This operation takes an array of typed samples from the DataReader (abstract).
This abstract operation is defined as a generic operation, which is implemented by the <type>DataReader class. Therefore, to use this operation, the data type specific implementation of this operation in its respective derived class must be used.
For further explanation see the description for the fictional data type Space.Foo derived Space.FooDataReader class.
ReturnCode DDS.IDataReader.Take | ( | ref< data > [] | dataValues, |
ref SampleInfo [] | sampleInfos, | ||
SampleStateKind | sampleStates, | ||
ViewStateKind | viewStates, | ||
InstanceStateKind | instanceStates | ||
) |
This operation takes an array of typed samples from the DataReader (abstract).
This abstract operation is defined as a generic operation, which is implemented by the <type>DataReader class. Therefore, to use this operation, the data type specific implementation of this operation in its respective derived class must be used.
For further explanation see the description for the fictional data type Space.Foo derived Space.FooDataReader class.
ReturnCode DDS.IDataReader.Take | ( | ref< data > [] | dataValues, |
ref SampleInfo [] | sampleInfos, | ||
int | maxSamples, | ||
SampleStateKind | sampleStates, | ||
ViewStateKind | viewStates, | ||
InstanceStateKind | instanceStates | ||
) |
This operation takes an array of typed samples from the DataReader (abstract).
This abstract operation is defined as a generic operation, which is implemented by the <type>DataReader class. Therefore, to use this operation, the data type specific implementation of this operation in its respective derived class must be used.
For further explanation see the description for the fictional data type Space.Foo derived Space.FooDataReader class.
ReturnCode DDS.IDataReader.TakeInstance | ( | ref< data > [] | dataValues, |
ref SampleInfo [] | sampleInfos, | ||
InstanceHandle | instanceHandle | ||
) |
This operation takes an array of typed samples from the DataReader (abstract).
This abstract operation is defined as a generic operation, which is implemented by the <type>DataReader class. Therefore, to use this operation, the data type specific implementation of this operation in its respective derived class must be used.
For further explanation see the description for the fictional data type Space.Foo derived Space.FooDataReader class.
ReturnCode DDS.IDataReader.TakeInstance | ( | ref< data > [] | dataValues, |
ref SampleInfo [] | sampleInfos, | ||
int | maxSamples, | ||
InstanceHandle | instanceHandle | ||
) |
This operation takes an array of typed samples from the DataReader (abstract).
This abstract operation is defined as a generic operation, which is implemented by the <type>DataReader class. Therefore, to use this operation, the data type specific implementation of this operation in its respective derived class must be used.
For further explanation see the description for the fictional data type Space.Foo derived Space.FooDataReader class.
ReturnCode DDS.IDataReader.TakeInstance | ( | ref< data > [] | dataValues, |
ref SampleInfo [] | sampleInfos, | ||
int | maxSamples, | ||
InstanceHandle | instanceHandle, | ||
SampleStateKind | sampleStates, | ||
ViewStateKind | viewStates, | ||
InstanceStateKind | instanceStates | ||
) |
This operation takes an array of typed samples from the DataReader (abstract).
This abstract operation is defined as a generic operation, which is implemented by the <type>DataReader class. Therefore, to use this operation, the data type specific implementation of this operation in its respective derived class must be used.
For further explanation see the description for the fictional data type Space.Foo derived Space.FooDataReader class.
ReturnCode DDS.IDataReader.TakeNextInstance | ( | ref< data > [] | dataValues, |
ref SampleInfo [] | sampleInfos, | ||
InstanceHandle | instanceHandle | ||
) |
This operation takes an array of typed samples from the DataReader (abstract).
This abstract operation is defined as a generic operation, which is implemented by the <type>DataReader class. Therefore, to use this operation, the data type specific implementation of this operation in its respective derived class must be used.
For further explanation see the description for the fictional data type Space.Foo derived Space.FooDataReader class.
ReturnCode DDS.IDataReader.TakeNextInstance | ( | ref< data > [] | dataValues, |
ref SampleInfo [] | sampleInfos, | ||
int | maxSamples, | ||
InstanceHandle | instanceHandle | ||
) |
This operation takes an array of typed samples from the DataReader (abstract).
This abstract operation is defined as a generic operation, which is implemented by the <type>DataReader class. Therefore, to use this operation, the data type specific implementation of this operation in its respective derived class must be used.
For further explanation see the description for the fictional data type Space.Foo derived Space.FooDataReader class.
ReturnCode DDS.IDataReader.TakeNextInstance | ( | ref< data > [] | dataValues, |
ref SampleInfo [] | sampleInfos, | ||
int | maxSamples, | ||
InstanceHandle | instanceHandle, | ||
SampleStateKind | sampleStates, | ||
ViewStateKind | viewStates, | ||
InstanceStateKind | instanceStates | ||
) |
This operation takes an array of typed samples from the DataReader (abstract).
This abstract operation is defined as a generic operation, which is implemented by the <type>DataReader class. Therefore, to use this operation, the data type specific implementation of this operation in its respective derived class must be used.
For further explanation see the description for the fictional data type Space.Foo derived Space.FooDataReader class.
ReturnCode DDS.IDataReader.TakeNextInstanceWithCondition | ( | ref< data > [] | dataValues, |
ref SampleInfo [] | sampleInfos, | ||
InstanceHandle | instanceHandle, | ||
IReadCondition | readCondition | ||
) |
This operation takes an array of typed samples from the DataReader (abstract).
This abstract operation is defined as a generic operation, which is implemented by the <type>DataReader class. Therefore, to use this operation, the data type specific implementation of this operation in its respective derived class must be used.
For further explanation see the description for the fictional data type Space.Foo derived Space.FooDataReader class.
ReturnCode DDS.IDataReader.TakeNextInstanceWithCondition | ( | ref< data > [] | dataValues, |
ref SampleInfo [] | sampleInfos, | ||
int | maxSamples, | ||
InstanceHandle | instanceHandle, | ||
IReadCondition | readCondition | ||
) |
This operation takes an array of typed samples from the DataReader (abstract).
This abstract operation is defined as a generic operation, which is implemented by the <type>DataReader class. Therefore, to use this operation, the data type specific implementation of this operation in its respective derived class must be used.
For further explanation see the description for the fictional data type Space.Foo derived Space.FooDataReader class.
ReturnCode DDS.IDataReader.TakeNextSample | ( | ref Space.Foo | dataValue, |
ref SampleInfo | sampleInfo | ||
) |
This operation takes an array of typed samples from the DataReader (abstract).
This abstract operation is defined as a generic operation, which is implemented by the <type>DataReader class. Therefore, to use this operation, the data type specific implementation of this operation in its respective derived class must be used.
For further explanation see the description for the fictional data type Space.Foo derived Space.FooDataReader class.
Implemented in Space.FooDataReader.
ReturnCode DDS.IDataReader.TakeWithCondition | ( | ref< data > [] | dataValues, |
ref SampleInfo [] | sampleInfos, | ||
IReadCondition | readCondition | ||
) |
This operation takes an array of typed samples from the DataReader (abstract).
This abstract operation is defined as a generic operation, which is implemented by the <type>DataReader class. Therefore, to use this operation, the data type specific implementation of this operation in its respective derived class must be used.
For further explanation see the description for the fictional data type Space.Foo derived Space.FooDataReader class.
ReturnCode DDS.IDataReader.TakeWithCondition | ( | ref< data > [] | dataValues, |
ref SampleInfo [] | sampleInfos, | ||
int | maxSamples, | ||
IReadCondition | readCondition | ||
) |
This operation takes an array of typed samples from the DataReader (abstract).
This abstract operation is defined as a generic operation, which is implemented by the <type>DataReader class. Therefore, to use this operation, the data type specific implementation of this operation in its respective derived class must be used.
For further explanation see the description for the fictional data type Space.Foo derived Space.FooDataReader class.
ReturnCode DDS.IDataReader.WaitForHistoricalData | ( | Duration | maxWait | ) |
This operation will block the application thread until all historical data is received.
This operation behaves differently for IDataReader objects which have a non-VolatileDurabilityQos kind in the DurabilityQosPolicy and for IDataReader objects which have a VolatileDurabilityQos kind in the DurabilityQosPolicy.
As soon as an application enables a non-VolatileDurabilityQos IDataReader it will start receiving both historical data, i.e. the data that was written prior to the time the IDataReader joined the domain, as well as any new data written by the IDataWriter objects. There are situations where the application logic may require the application to wait until all historical data is received. This is the purpose of the WaitForHistoricalData operation.
As soon as an application enables a VolatileDurabilityQos IDataReader it will not start receiving historical data but only new data written by the IDataWriter objects. By calling WaitForHistoricalData the IDataReader explicitly requests the Data Distribution Service to start receiving also the historical data and to wait until either all historical data is received, or the duration specified by the maxWait parameter has elapsed, whichever happens first.
Thread Blocking
The operation wait_for_historical_data blocks the calling thread until either all “historical” data is received, or the duration specified by the maxWait parameter elapses, whichever happens first. A return value of DDS.ReturnCode Ok indicates that all the “historical” data was received a return value of DDS.ReturnCode Timeout indicates that maxWait elapsed before all the data was received.
maxWait | the maximum duration to block for the operation, after which the application thread is unblocked. The special constant Duration Infinite can be used when the maximum waiting time does not need to be bounded. |
|
get |
This property returns the IDataReaderListener currently attached to the IDataReader.
Only one listener can be attached to the IDataReader at any particular time. This property returns the listener that is currently attached to the IDataReader.
Definition at line 4794 of file DdsDcpsInterfaces.cs.
|
get |
This property returns the ISubscriber to which the IDataReader belongs.
Definition at line 4819 of file DdsDcpsInterfaces.cs.