#include <DCPS_IR_Subscription.h>
Collaboration diagram for DCPS_IR_Subscription:

| DCPS_IR_Subscription::DCPS_IR_Subscription | ( | OpenDDS::DCPS::RepoId | id, | |
| DCPS_IR_Participant * | participant, | |||
| DCPS_IR_Topic * | topic, | |||
| OpenDDS::DCPS::DataReaderRemote_ptr | reader, | |||
| DDS::DataReaderQos | qos, | |||
| const OpenDDS::DCPS::TransportLocatorSeq & | info, | |||
| DDS::SubscriberQos | subscriberQos, | |||
| const char * | filterExpression, | |||
| const DDS::StringSeq & | exprParams | |||
| ) |
| DCPS_IR_Subscription::~DCPS_IR_Subscription | ( | ) |
| int DCPS_IR_Subscription::add_associated_publication | ( | DCPS_IR_Publication * | pub, | |
| bool | active | |||
| ) |
Associate with the publication Adds the publication to the list of associated publications and notifies datareader if successfully added This method can mark the participant dead Returns 0 if added, 1 if already exists, -1 other failure
| void DCPS_IR_Subscription::association_complete | ( | const OpenDDS::DCPS::RepoId & | remote | ) |
The service participant that contains this Subscription has indicated that the assocation to peer "remote" is complete. This method will locate the Publication object for "remote" in order to inform it of the completed association.
| void DCPS_IR_Subscription::call_association_complete | ( | const OpenDDS::DCPS::RepoId & | remote | ) |
Invoke the DataWriterRemote::association_complete() callback, passing the "remote" parameter (Subscription) to the service participant.
| bool DCPS_IR_Subscription::compatibleQosChange | ( | const DDS::SubscriberQos & | qos | ) | [private] |
Check compatibility between provided Subscriber QoS and the QoS of this subscription associated DataWriters's Publishers.
| bool DCPS_IR_Subscription::compatibleQosChange | ( | const DDS::DataReaderQos & | qos | ) | [private] |
Check compatibility between provided DataReader QoS and the QoS of this subscription associated DataWriters.
| void DCPS_IR_Subscription::disassociate_participant | ( | OpenDDS::DCPS::RepoId | id, | |
| bool | reassociate = false | |||
| ) |
Remove any publications whose participant has the id.
| void DCPS_IR_Subscription::disassociate_publication | ( | OpenDDS::DCPS::RepoId | id, | |
| bool | reassociate = false | |||
| ) |
Remove any publications with id.
| void DCPS_IR_Subscription::disassociate_topic | ( | OpenDDS::DCPS::RepoId | id | ) |
Remove any publications whose topic has the id.
| const DDS::DataReaderQos * DCPS_IR_Subscription::get_datareader_qos | ( | ) |
Return pointer to the DataReader qos Subscription retains ownership
| DDS::StringSeq DCPS_IR_Subscription::get_expr_params | ( | ) | const |
| std::string DCPS_IR_Subscription::get_filter_expression | ( | ) | const |
| DDS::InstanceHandle_t DCPS_IR_Subscription::get_handle | ( | ) |
| OpenDDS::DCPS::RepoId DCPS_IR_Subscription::get_id | ( | ) |
| OpenDDS::DCPS::IncompatibleQosStatus * DCPS_IR_Subscription::get_incompatibleQosStatus | ( | ) |
Return pointer to the incompatible qos status Subscription retains ownership
| OpenDDS::DCPS::RepoId DCPS_IR_Subscription::get_participant_id | ( | ) |
| const DDS::SubscriberQos * DCPS_IR_Subscription::get_subscriber_qos | ( | ) |
Return pointer to the Subscriber qos Subscription retains ownership
| DCPS_IR_Topic * DCPS_IR_Subscription::get_topic | ( | ) |
| DCPS_IR_Topic_Description * DCPS_IR_Subscription::get_topic_description | ( | ) |
| OpenDDS::DCPS::RepoId DCPS_IR_Subscription::get_topic_id | ( | ) |
| OpenDDS::DCPS::TransportLocatorSeq DCPS_IR_Subscription::get_transportLocatorSeq | ( | ) | const |
| CORBA::Boolean DCPS_IR_Subscription::is_bit | ( | ) |
| CORBA::Boolean DCPS_IR_Subscription::is_publication_ignored | ( | OpenDDS::DCPS::RepoId | partId, | |
| OpenDDS::DCPS::RepoId | topicId, | |||
| OpenDDS::DCPS::RepoId | pubId | |||
| ) |
Check that none of the ids given are ones that this subscription should ignore. returns 1 if one of these ids is an ignored id
| OpenDDS::DCPS::DataReaderRemote_ptr DCPS_IR_Subscription::reader | ( | ) |
| bool DCPS_IR_Subscription::reevaluate_association | ( | DCPS_IR_Publication * | publication | ) |
| void DCPS_IR_Subscription::reevaluate_defunct_associations | ( | ) |
| void DCPS_IR_Subscription::reevaluate_existing_associations | ( | ) |
| int DCPS_IR_Subscription::remove_associated_publication | ( | DCPS_IR_Publication * | pub, | |
| CORBA::Boolean | sendNotify, | |||
| CORBA::Boolean | notify_lost, | |||
| bool | notify_both_side = false | |||
| ) |
Remove the associated publication Removes the publication from the list of associated publications if return successful sendNotify indicates whether to tell the datareader about removing the publication The notify_lost flag true indicates this remove_associations is called when the InfoRepo detects this subscription is lost because of the failure of invocation on this subscription. The notify_both_side parameter indicates if it needs call pub to remove association as well. This method can mark the participant dead Returns 0 if successful
| int DCPS_IR_Subscription::remove_associations | ( | CORBA::Boolean | notify_lost | ) |
Removes all the associated publications This method can mark the participant dead The notify_lost flag true indicates this remove_associations is called when the InfoRepo detects this subscription is lost because of the failure of invocation on this subscription. Returns 0 if successful
| void DCPS_IR_Subscription::set_bit_status | ( | CORBA::Boolean | isBIT | ) |
| void DCPS_IR_Subscription::set_handle | ( | DDS::InstanceHandle_t | handle | ) |
| void DCPS_IR_Subscription::set_qos | ( | const DDS::SubscriberQos & | qos | ) |
Update SubscriberQos only.
| void DCPS_IR_Subscription::set_qos | ( | const DDS::DataReaderQos & | qos | ) |
Update DataReaderQos only.
| bool DCPS_IR_Subscription::set_qos | ( | const DDS::DataReaderQos & | qos, | |
| const DDS::SubscriberQos & | subscriberQos, | |||
| Update::SpecificQos & | specificQos | |||
| ) |
Update the DataReader or Subscriber qos and also publish the qos changes to datereader BIT.
| void DCPS_IR_Subscription::update_expr_params | ( | const DDS::StringSeq & | params | ) |
Calls associated Publications.
| void DCPS_IR_Subscription::update_incompatible_qos | ( | ) |
Notify the reader of incompatible qos status and reset the status' count_since_last_send to 0
std::string DCPS_IR_Subscription::filterExpression_ [private] |
CORBA::Boolean DCPS_IR_Subscription::isBIT_ [private] |
DDS::DataReaderQos DCPS_IR_Subscription::qos_ [private] |
OpenDDS::DCPS::DataReaderRemote_var DCPS_IR_Subscription::reader_ [private] |
the corresponding DataReaderRemote object
DCPS_IR_Topic* DCPS_IR_Subscription::topic_ [private] |
1.4.7