TAO_DDS_DCPSInfo_i::BIT_Cleanup_Handler Struct Reference

Inheritance diagram for TAO_DDS_DCPSInfo_i::BIT_Cleanup_Handler:
Inheritance graph
[legend]
Collaboration diagram for TAO_DDS_DCPSInfo_i::BIT_Cleanup_Handler:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 BIT_Cleanup_Handler (TAO_DDS_DCPSInfo_i *parent, DDS::DomainId_t domain)
int handle_exception (ACE_HANDLE fd)

Public Attributes

PortableServer::Servant_var
< TAO_DDS_DCPSInfo_i
parent_
DDS::DomainId_t domain_

Detailed Description

Definition at line 431 of file DCPSInfo_i.h.


Constructor & Destructor Documentation

TAO_DDS_DCPSInfo_i::BIT_Cleanup_Handler::BIT_Cleanup_Handler ( TAO_DDS_DCPSInfo_i parent,
DDS::DomainId_t  domain 
) [inline]

Definition at line 433 of file DCPSInfo_i.h.

References OpenDDS::DCPS::ENABLED.

00434       : parent_(parent), domain_(domain)
00435     {
00436       reference_counting_policy().value(Reference_Counting_Policy::ENABLED);
00437       parent->_add_ref();
00438     }


Member Function Documentation

int TAO_DDS_DCPSInfo_i::BIT_Cleanup_Handler::handle_exception ( ACE_HANDLE  fd  )  [virtual]

Reimplemented from ACE_Event_Handler.

Definition at line 1495 of file DCPSInfo_i.cpp.

References domain_, and parent_.

01496 {
01497   ACE_GUARD_RETURN(ACE_Recursive_Thread_Mutex, guard, parent_->lock_, 0);
01498 
01499   const DCPS_IR_Domain_Map::iterator where = parent_->domains_.find(domain_);
01500 
01501   if (where == parent_->domains_.end()) {
01502     return 0;
01503   }
01504 
01505   if (where->second->participants().size() == 1) {
01506     where->second->cleanup_built_in_topics();
01507   }
01508 
01509   return 0;
01510 }


Member Data Documentation

Definition at line 443 of file DCPSInfo_i.h.

Referenced by handle_exception().

Definition at line 442 of file DCPSInfo_i.h.

Referenced by handle_exception().


The documentation for this struct was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 10 Aug 2018 for OpenDDS by  doxygen 1.6.1