text: // -*- C++ -*-
  // $Id$
  
  /**
   * Code generated by the The ACE ORB (TAO) IDL Compiler v2.2a_p7
   * TAO and the TAO IDL Compiler have been developed by:
   *       Center for Distributed Object Computing
   *       Washington University
   *       St. Louis, MO
   *       USA
   *       http://www.cs.wustl.edu/~schmidt/doc-center.html
   * and
   *       Distributed Object Computing Laboratory
   *       University of California at Irvine
   *       Irvine, CA
   *       USA
   * and
   *       Institute for Software Integrated Systems
   *       Vanderbilt University
   *       Nashville, TN
   *       USA
   *       http://www.isis.vanderbilt.edu/
   *
   * Information about TAO is available at:
   *     http://www.cs.wustl.edu/~schmidt/TAO.html
   **/
  
  // TAO_IDL - Generated from
  // be/be_codegen.cpp:376
  
  
  #include "monitorTypeSupportC.h"
  #include "tao/CDR.h"
  #include "ace/OS_NS_string.h"
  
  #if !defined (__ACE_INLINE__)
  #include "monitorTypeSupportC.inl"
  #endif /* !defined INLINE */
  
  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_cs.cpp:51
  
  // Traits specializations for OpenDDS::DCPS::ServiceParticipantReportTypeSupport.
  
  OpenDDS::DCPS::ServiceParticipantReportTypeSupport_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::ServiceParticipantReportTypeSupport>::duplicate (
      OpenDDS::DCPS::ServiceParticipantReportTypeSupport_ptr p)
  {
    return OpenDDS::DCPS::ServiceParticipantReportTypeSupport::_duplicate (p);
  }
  
  void
  TAO::Objref_Traits<OpenDDS::DCPS::ServiceParticipantReportTypeSupport>::release (
      OpenDDS::DCPS::ServiceParticipantReportTypeSupport_ptr p)
  {
    ::CORBA::release (p);
  }
  
  OpenDDS::DCPS::ServiceParticipantReportTypeSupport_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::ServiceParticipantReportTypeSupport>::nil (void)
  {
    return OpenDDS::DCPS::ServiceParticipantReportTypeSupport::_nil ();
  }
  
  ::CORBA::Boolean
  TAO::Objref_Traits<OpenDDS::DCPS::ServiceParticipantReportTypeSupport>::marshal (
      const OpenDDS::DCPS::ServiceParticipantReportTypeSupport_ptr p,
      TAO_OutputCDR & cdr)
  {
    return ::CORBA::Object::marshal (p, cdr);
  }
  
  OpenDDS::DCPS::ServiceParticipantReportTypeSupport::ServiceParticipantReportTypeSupport (void)
  {}
  
  OpenDDS::DCPS::ServiceParticipantReportTypeSupport::~ServiceParticipantReportTypeSupport (void)
  {
  }
  
  OpenDDS::DCPS::ServiceParticipantReportTypeSupport_ptr
  OpenDDS::DCPS::ServiceParticipantReportTypeSupport::_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return ServiceParticipantReportTypeSupport::_duplicate (
        dynamic_cast<ServiceParticipantReportTypeSupport_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::ServiceParticipantReportTypeSupport_ptr
  OpenDDS::DCPS::ServiceParticipantReportTypeSupport::_unchecked_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return ServiceParticipantReportTypeSupport::_duplicate (
        dynamic_cast<ServiceParticipantReportTypeSupport_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::ServiceParticipantReportTypeSupport_ptr
  OpenDDS::DCPS::ServiceParticipantReportTypeSupport::_nil (void)
  {
    return 0;
  }
  
  OpenDDS::DCPS::ServiceParticipantReportTypeSupport_ptr
  OpenDDS::DCPS::ServiceParticipantReportTypeSupport::_duplicate (ServiceParticipantReportTypeSupport_ptr obj)
  {
    if (! ::CORBA::is_nil (obj))
      {
        obj->_add_ref ();
      }
    return obj;
  }
  
  void
  OpenDDS::DCPS::ServiceParticipantReportTypeSupport::_tao_release (ServiceParticipantReportTypeSupport_ptr obj)
  {
    ::CORBA::release (obj);
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::ServiceParticipantReportTypeSupport::_is_a (const char *value)
  {
    if (
        ACE_OS::strcmp (
            value,
            "IDL:DDS/TypeSupport:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/TypeSupport:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/ServiceParticipantReportTypeSupport:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/LocalObject:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/Object:1.0"
          ) == 0
      )
      {
        return true; // success using local knowledge
      }
    else
      {
        return false;
      }
  }
  
  const char* OpenDDS::DCPS::ServiceParticipantReportTypeSupport::_interface_repository_id (void) const
  {
    return "IDL:OpenDDS/DCPS/ServiceParticipantReportTypeSupport:1.0";
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::ServiceParticipantReportTypeSupport::marshal (TAO_OutputCDR & /* cdr */)
  {
    return false;
  }
  
  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_cs.cpp:51
  
  // Traits specializations for OpenDDS::DCPS::ServiceParticipantReportDataWriter.
  
  OpenDDS::DCPS::ServiceParticipantReportDataWriter_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::ServiceParticipantReportDataWriter>::duplicate (
      OpenDDS::DCPS::ServiceParticipantReportDataWriter_ptr p)
  {
    return OpenDDS::DCPS::ServiceParticipantReportDataWriter::_duplicate (p);
  }
  
  void
  TAO::Objref_Traits<OpenDDS::DCPS::ServiceParticipantReportDataWriter>::release (
      OpenDDS::DCPS::ServiceParticipantReportDataWriter_ptr p)
  {
    ::CORBA::release (p);
  }
  
  OpenDDS::DCPS::ServiceParticipantReportDataWriter_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::ServiceParticipantReportDataWriter>::nil (void)
  {
    return OpenDDS::DCPS::ServiceParticipantReportDataWriter::_nil ();
  }
  
  ::CORBA::Boolean
  TAO::Objref_Traits<OpenDDS::DCPS::ServiceParticipantReportDataWriter>::marshal (
      const OpenDDS::DCPS::ServiceParticipantReportDataWriter_ptr p,
      TAO_OutputCDR & cdr)
  {
    return ::CORBA::Object::marshal (p, cdr);
  }
  
  OpenDDS::DCPS::ServiceParticipantReportDataWriter::ServiceParticipantReportDataWriter (void)
  {}
  
  OpenDDS::DCPS::ServiceParticipantReportDataWriter::~ServiceParticipantReportDataWriter (void)
  {
  }
  
  OpenDDS::DCPS::ServiceParticipantReportDataWriter_ptr
  OpenDDS::DCPS::ServiceParticipantReportDataWriter::_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return ServiceParticipantReportDataWriter::_duplicate (
        dynamic_cast<ServiceParticipantReportDataWriter_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::ServiceParticipantReportDataWriter_ptr
  OpenDDS::DCPS::ServiceParticipantReportDataWriter::_unchecked_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return ServiceParticipantReportDataWriter::_duplicate (
        dynamic_cast<ServiceParticipantReportDataWriter_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::ServiceParticipantReportDataWriter_ptr
  OpenDDS::DCPS::ServiceParticipantReportDataWriter::_nil (void)
  {
    return 0;
  }
  
  OpenDDS::DCPS::ServiceParticipantReportDataWriter_ptr
  OpenDDS::DCPS::ServiceParticipantReportDataWriter::_duplicate (ServiceParticipantReportDataWriter_ptr obj)
  {
    if (! ::CORBA::is_nil (obj))
      {
        obj->_add_ref ();
      }
    return obj;
  }
  
  void
  OpenDDS::DCPS::ServiceParticipantReportDataWriter::_tao_release (ServiceParticipantReportDataWriter_ptr obj)
  {
    ::CORBA::release (obj);
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::ServiceParticipantReportDataWriter::_is_a (const char *value)
  {
    if (
        ACE_OS::strcmp (
            value,
            "IDL:DDS/Entity:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:DDS/DataWriter:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/ServiceParticipantReportDataWriter:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/LocalObject:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/Object:1.0"
          ) == 0
      )
      {
        return true; // success using local knowledge
      }
    else
      {
        return false;
      }
  }
  
  const char* OpenDDS::DCPS::ServiceParticipantReportDataWriter::_interface_repository_id (void) const
  {
    return "IDL:OpenDDS/DCPS/ServiceParticipantReportDataWriter:1.0";
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::ServiceParticipantReportDataWriter::marshal (TAO_OutputCDR & /* cdr */)
  {
    return false;
  }
  
  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_cs.cpp:51
  
  // Traits specializations for OpenDDS::DCPS::ServiceParticipantReportDataReader.
  
  OpenDDS::DCPS::ServiceParticipantReportDataReader_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::ServiceParticipantReportDataReader>::duplicate (
      OpenDDS::DCPS::ServiceParticipantReportDataReader_ptr p)
  {
    return OpenDDS::DCPS::ServiceParticipantReportDataReader::_duplicate (p);
  }
  
  void
  TAO::Objref_Traits<OpenDDS::DCPS::ServiceParticipantReportDataReader>::release (
      OpenDDS::DCPS::ServiceParticipantReportDataReader_ptr p)
  {
    ::CORBA::release (p);
  }
  
  OpenDDS::DCPS::ServiceParticipantReportDataReader_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::ServiceParticipantReportDataReader>::nil (void)
  {
    return OpenDDS::DCPS::ServiceParticipantReportDataReader::_nil ();
  }
  
  ::CORBA::Boolean
  TAO::Objref_Traits<OpenDDS::DCPS::ServiceParticipantReportDataReader>::marshal (
      const OpenDDS::DCPS::ServiceParticipantReportDataReader_ptr p,
      TAO_OutputCDR & cdr)
  {
    return ::CORBA::Object::marshal (p, cdr);
  }
  
  OpenDDS::DCPS::ServiceParticipantReportDataReader::ServiceParticipantReportDataReader (void)
  {}
  
  OpenDDS::DCPS::ServiceParticipantReportDataReader::~ServiceParticipantReportDataReader (void)
  {
  }
  
  OpenDDS::DCPS::ServiceParticipantReportDataReader_ptr
  OpenDDS::DCPS::ServiceParticipantReportDataReader::_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return ServiceParticipantReportDataReader::_duplicate (
        dynamic_cast<ServiceParticipantReportDataReader_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::ServiceParticipantReportDataReader_ptr
  OpenDDS::DCPS::ServiceParticipantReportDataReader::_unchecked_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return ServiceParticipantReportDataReader::_duplicate (
        dynamic_cast<ServiceParticipantReportDataReader_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::ServiceParticipantReportDataReader_ptr
  OpenDDS::DCPS::ServiceParticipantReportDataReader::_nil (void)
  {
    return 0;
  }
  
  OpenDDS::DCPS::ServiceParticipantReportDataReader_ptr
  OpenDDS::DCPS::ServiceParticipantReportDataReader::_duplicate (ServiceParticipantReportDataReader_ptr obj)
  {
    if (! ::CORBA::is_nil (obj))
      {
        obj->_add_ref ();
      }
    return obj;
  }
  
  void
  OpenDDS::DCPS::ServiceParticipantReportDataReader::_tao_release (ServiceParticipantReportDataReader_ptr obj)
  {
    ::CORBA::release (obj);
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::ServiceParticipantReportDataReader::_is_a (const char *value)
  {
    if (
        ACE_OS::strcmp (
            value,
            "IDL:DDS/Entity:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:DDS/DataReader:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/DataReaderEx:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/ServiceParticipantReportDataReader:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/LocalObject:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/Object:1.0"
          ) == 0
      )
      {
        return true; // success using local knowledge
      }
    else
      {
        return false;
      }
  }
  
  const char* OpenDDS::DCPS::ServiceParticipantReportDataReader::_interface_repository_id (void) const
  {
    return "IDL:OpenDDS/DCPS/ServiceParticipantReportDataReader:1.0";
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::ServiceParticipantReportDataReader::marshal (TAO_OutputCDR & /* cdr */)
  {
    return false;
  }
  
  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_cs.cpp:51
  
  // Traits specializations for OpenDDS::DCPS::DomainParticipantReportTypeSupport.
  
  OpenDDS::DCPS::DomainParticipantReportTypeSupport_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::DomainParticipantReportTypeSupport>::duplicate (
      OpenDDS::DCPS::DomainParticipantReportTypeSupport_ptr p)
  {
    return OpenDDS::DCPS::DomainParticipantReportTypeSupport::_duplicate (p);
  }
  
  void
  TAO::Objref_Traits<OpenDDS::DCPS::DomainParticipantReportTypeSupport>::release (
      OpenDDS::DCPS::DomainParticipantReportTypeSupport_ptr p)
  {
    ::CORBA::release (p);
  }
  
  OpenDDS::DCPS::DomainParticipantReportTypeSupport_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::DomainParticipantReportTypeSupport>::nil (void)
  {
    return OpenDDS::DCPS::DomainParticipantReportTypeSupport::_nil ();
  }
  
  ::CORBA::Boolean
  TAO::Objref_Traits<OpenDDS::DCPS::DomainParticipantReportTypeSupport>::marshal (
      const OpenDDS::DCPS::DomainParticipantReportTypeSupport_ptr p,
      TAO_OutputCDR & cdr)
  {
    return ::CORBA::Object::marshal (p, cdr);
  }
  
  OpenDDS::DCPS::DomainParticipantReportTypeSupport::DomainParticipantReportTypeSupport (void)
  {}
  
  OpenDDS::DCPS::DomainParticipantReportTypeSupport::~DomainParticipantReportTypeSupport (void)
  {
  }
  
  OpenDDS::DCPS::DomainParticipantReportTypeSupport_ptr
  OpenDDS::DCPS::DomainParticipantReportTypeSupport::_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return DomainParticipantReportTypeSupport::_duplicate (
        dynamic_cast<DomainParticipantReportTypeSupport_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::DomainParticipantReportTypeSupport_ptr
  OpenDDS::DCPS::DomainParticipantReportTypeSupport::_unchecked_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return DomainParticipantReportTypeSupport::_duplicate (
        dynamic_cast<DomainParticipantReportTypeSupport_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::DomainParticipantReportTypeSupport_ptr
  OpenDDS::DCPS::DomainParticipantReportTypeSupport::_nil (void)
  {
    return 0;
  }
  
  OpenDDS::DCPS::DomainParticipantReportTypeSupport_ptr
  OpenDDS::DCPS::DomainParticipantReportTypeSupport::_duplicate (DomainParticipantReportTypeSupport_ptr obj)
  {
    if (! ::CORBA::is_nil (obj))
      {
        obj->_add_ref ();
      }
    return obj;
  }
  
  void
  OpenDDS::DCPS::DomainParticipantReportTypeSupport::_tao_release (DomainParticipantReportTypeSupport_ptr obj)
  {
    ::CORBA::release (obj);
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::DomainParticipantReportTypeSupport::_is_a (const char *value)
  {
    if (
        ACE_OS::strcmp (
            value,
            "IDL:DDS/TypeSupport:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/TypeSupport:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/DomainParticipantReportTypeSupport:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/LocalObject:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/Object:1.0"
          ) == 0
      )
      {
        return true; // success using local knowledge
      }
    else
      {
        return false;
      }
  }
  
  const char* OpenDDS::DCPS::DomainParticipantReportTypeSupport::_interface_repository_id (void) const
  {
    return "IDL:OpenDDS/DCPS/DomainParticipantReportTypeSupport:1.0";
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::DomainParticipantReportTypeSupport::marshal (TAO_OutputCDR & /* cdr */)
  {
    return false;
  }
  
  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_cs.cpp:51
  
  // Traits specializations for OpenDDS::DCPS::DomainParticipantReportDataWriter.
  
  OpenDDS::DCPS::DomainParticipantReportDataWriter_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::DomainParticipantReportDataWriter>::duplicate (
      OpenDDS::DCPS::DomainParticipantReportDataWriter_ptr p)
  {
    return OpenDDS::DCPS::DomainParticipantReportDataWriter::_duplicate (p);
  }
  
  void
  TAO::Objref_Traits<OpenDDS::DCPS::DomainParticipantReportDataWriter>::release (
      OpenDDS::DCPS::DomainParticipantReportDataWriter_ptr p)
  {
    ::CORBA::release (p);
  }
  
  OpenDDS::DCPS::DomainParticipantReportDataWriter_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::DomainParticipantReportDataWriter>::nil (void)
  {
    return OpenDDS::DCPS::DomainParticipantReportDataWriter::_nil ();
  }
  
  ::CORBA::Boolean
  TAO::Objref_Traits<OpenDDS::DCPS::DomainParticipantReportDataWriter>::marshal (
      const OpenDDS::DCPS::DomainParticipantReportDataWriter_ptr p,
      TAO_OutputCDR & cdr)
  {
    return ::CORBA::Object::marshal (p, cdr);
  }
  
  OpenDDS::DCPS::DomainParticipantReportDataWriter::DomainParticipantReportDataWriter (void)
  {}
  
  OpenDDS::DCPS::DomainParticipantReportDataWriter::~DomainParticipantReportDataWriter (void)
  {
  }
  
  OpenDDS::DCPS::DomainParticipantReportDataWriter_ptr
  OpenDDS::DCPS::DomainParticipantReportDataWriter::_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return DomainParticipantReportDataWriter::_duplicate (
        dynamic_cast<DomainParticipantReportDataWriter_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::DomainParticipantReportDataWriter_ptr
  OpenDDS::DCPS::DomainParticipantReportDataWriter::_unchecked_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return DomainParticipantReportDataWriter::_duplicate (
        dynamic_cast<DomainParticipantReportDataWriter_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::DomainParticipantReportDataWriter_ptr
  OpenDDS::DCPS::DomainParticipantReportDataWriter::_nil (void)
  {
    return 0;
  }
  
  OpenDDS::DCPS::DomainParticipantReportDataWriter_ptr
  OpenDDS::DCPS::DomainParticipantReportDataWriter::_duplicate (DomainParticipantReportDataWriter_ptr obj)
  {
    if (! ::CORBA::is_nil (obj))
      {
        obj->_add_ref ();
      }
    return obj;
  }
  
  void
  OpenDDS::DCPS::DomainParticipantReportDataWriter::_tao_release (DomainParticipantReportDataWriter_ptr obj)
  {
    ::CORBA::release (obj);
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::DomainParticipantReportDataWriter::_is_a (const char *value)
  {
    if (
        ACE_OS::strcmp (
            value,
            "IDL:DDS/Entity:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:DDS/DataWriter:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/DomainParticipantReportDataWriter:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/LocalObject:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/Object:1.0"
          ) == 0
      )
      {
        return true; // success using local knowledge
      }
    else
      {
        return false;
      }
  }
  
  const char* OpenDDS::DCPS::DomainParticipantReportDataWriter::_interface_repository_id (void) const
  {
    return "IDL:OpenDDS/DCPS/DomainParticipantReportDataWriter:1.0";
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::DomainParticipantReportDataWriter::marshal (TAO_OutputCDR & /* cdr */)
  {
    return false;
  }
  
  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_cs.cpp:51
  
  // Traits specializations for OpenDDS::DCPS::DomainParticipantReportDataReader.
  
  OpenDDS::DCPS::DomainParticipantReportDataReader_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::DomainParticipantReportDataReader>::duplicate (
      OpenDDS::DCPS::DomainParticipantReportDataReader_ptr p)
  {
    return OpenDDS::DCPS::DomainParticipantReportDataReader::_duplicate (p);
  }
  
  void
  TAO::Objref_Traits<OpenDDS::DCPS::DomainParticipantReportDataReader>::release (
      OpenDDS::DCPS::DomainParticipantReportDataReader_ptr p)
  {
    ::CORBA::release (p);
  }
  
  OpenDDS::DCPS::DomainParticipantReportDataReader_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::DomainParticipantReportDataReader>::nil (void)
  {
    return OpenDDS::DCPS::DomainParticipantReportDataReader::_nil ();
  }
  
  ::CORBA::Boolean
  TAO::Objref_Traits<OpenDDS::DCPS::DomainParticipantReportDataReader>::marshal (
      const OpenDDS::DCPS::DomainParticipantReportDataReader_ptr p,
      TAO_OutputCDR & cdr)
  {
    return ::CORBA::Object::marshal (p, cdr);
  }
  
  OpenDDS::DCPS::DomainParticipantReportDataReader::DomainParticipantReportDataReader (void)
  {}
  
  OpenDDS::DCPS::DomainParticipantReportDataReader::~DomainParticipantReportDataReader (void)
  {
  }
  
  OpenDDS::DCPS::DomainParticipantReportDataReader_ptr
  OpenDDS::DCPS::DomainParticipantReportDataReader::_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return DomainParticipantReportDataReader::_duplicate (
        dynamic_cast<DomainParticipantReportDataReader_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::DomainParticipantReportDataReader_ptr
  OpenDDS::DCPS::DomainParticipantReportDataReader::_unchecked_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return DomainParticipantReportDataReader::_duplicate (
        dynamic_cast<DomainParticipantReportDataReader_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::DomainParticipantReportDataReader_ptr
  OpenDDS::DCPS::DomainParticipantReportDataReader::_nil (void)
  {
    return 0;
  }
  
  OpenDDS::DCPS::DomainParticipantReportDataReader_ptr
  OpenDDS::DCPS::DomainParticipantReportDataReader::_duplicate (DomainParticipantReportDataReader_ptr obj)
  {
    if (! ::CORBA::is_nil (obj))
      {
        obj->_add_ref ();
      }
    return obj;
  }
  
  void
  OpenDDS::DCPS::DomainParticipantReportDataReader::_tao_release (DomainParticipantReportDataReader_ptr obj)
  {
    ::CORBA::release (obj);
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::DomainParticipantReportDataReader::_is_a (const char *value)
  {
    if (
        ACE_OS::strcmp (
            value,
            "IDL:DDS/Entity:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:DDS/DataReader:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/DataReaderEx:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/DomainParticipantReportDataReader:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/LocalObject:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/Object:1.0"
          ) == 0
      )
      {
        return true; // success using local knowledge
      }
    else
      {
        return false;
      }
  }
  
  const char* OpenDDS::DCPS::DomainParticipantReportDataReader::_interface_repository_id (void) const
  {
    return "IDL:OpenDDS/DCPS/DomainParticipantReportDataReader:1.0";
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::DomainParticipantReportDataReader::marshal (TAO_OutputCDR & /* cdr */)
  {
    return false;
  }
  
  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_cs.cpp:51
  
  // Traits specializations for OpenDDS::DCPS::TopicReportTypeSupport.
  
  OpenDDS::DCPS::TopicReportTypeSupport_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::TopicReportTypeSupport>::duplicate (
      OpenDDS::DCPS::TopicReportTypeSupport_ptr p)
  {
    return OpenDDS::DCPS::TopicReportTypeSupport::_duplicate (p);
  }
  
  void
  TAO::Objref_Traits<OpenDDS::DCPS::TopicReportTypeSupport>::release (
      OpenDDS::DCPS::TopicReportTypeSupport_ptr p)
  {
    ::CORBA::release (p);
  }
  
  OpenDDS::DCPS::TopicReportTypeSupport_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::TopicReportTypeSupport>::nil (void)
  {
    return OpenDDS::DCPS::TopicReportTypeSupport::_nil ();
  }
  
  ::CORBA::Boolean
  TAO::Objref_Traits<OpenDDS::DCPS::TopicReportTypeSupport>::marshal (
      const OpenDDS::DCPS::TopicReportTypeSupport_ptr p,
      TAO_OutputCDR & cdr)
  {
    return ::CORBA::Object::marshal (p, cdr);
  }
  
  OpenDDS::DCPS::TopicReportTypeSupport::TopicReportTypeSupport (void)
  {}
  
  OpenDDS::DCPS::TopicReportTypeSupport::~TopicReportTypeSupport (void)
  {
  }
  
  OpenDDS::DCPS::TopicReportTypeSupport_ptr
  OpenDDS::DCPS::TopicReportTypeSupport::_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return TopicReportTypeSupport::_duplicate (
        dynamic_cast<TopicReportTypeSupport_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::TopicReportTypeSupport_ptr
  OpenDDS::DCPS::TopicReportTypeSupport::_unchecked_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return TopicReportTypeSupport::_duplicate (
        dynamic_cast<TopicReportTypeSupport_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::TopicReportTypeSupport_ptr
  OpenDDS::DCPS::TopicReportTypeSupport::_nil (void)
  {
    return 0;
  }
  
  OpenDDS::DCPS::TopicReportTypeSupport_ptr
  OpenDDS::DCPS::TopicReportTypeSupport::_duplicate (TopicReportTypeSupport_ptr obj)
  {
    if (! ::CORBA::is_nil (obj))
      {
        obj->_add_ref ();
      }
    return obj;
  }
  
  void
  OpenDDS::DCPS::TopicReportTypeSupport::_tao_release (TopicReportTypeSupport_ptr obj)
  {
    ::CORBA::release (obj);
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::TopicReportTypeSupport::_is_a (const char *value)
  {
    if (
        ACE_OS::strcmp (
            value,
            "IDL:DDS/TypeSupport:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/TypeSupport:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/TopicReportTypeSupport:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/LocalObject:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/Object:1.0"
          ) == 0
      )
      {
        return true; // success using local knowledge
      }
    else
      {
        return false;
      }
  }
  
  const char* OpenDDS::DCPS::TopicReportTypeSupport::_interface_repository_id (void) const
  {
    return "IDL:OpenDDS/DCPS/TopicReportTypeSupport:1.0";
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::TopicReportTypeSupport::marshal (TAO_OutputCDR & /* cdr */)
  {
    return false;
  }
  
  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_cs.cpp:51
  
  // Traits specializations for OpenDDS::DCPS::TopicReportDataWriter.
  
  OpenDDS::DCPS::TopicReportDataWriter_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::TopicReportDataWriter>::duplicate (
      OpenDDS::DCPS::TopicReportDataWriter_ptr p)
  {
    return OpenDDS::DCPS::TopicReportDataWriter::_duplicate (p);
  }
  
  void
  TAO::Objref_Traits<OpenDDS::DCPS::TopicReportDataWriter>::release (
      OpenDDS::DCPS::TopicReportDataWriter_ptr p)
  {
    ::CORBA::release (p);
  }
  
  OpenDDS::DCPS::TopicReportDataWriter_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::TopicReportDataWriter>::nil (void)
  {
    return OpenDDS::DCPS::TopicReportDataWriter::_nil ();
  }
  
  ::CORBA::Boolean
  TAO::Objref_Traits<OpenDDS::DCPS::TopicReportDataWriter>::marshal (
      const OpenDDS::DCPS::TopicReportDataWriter_ptr p,
      TAO_OutputCDR & cdr)
  {
    return ::CORBA::Object::marshal (p, cdr);
  }
  
  OpenDDS::DCPS::TopicReportDataWriter::TopicReportDataWriter (void)
  {}
  
  OpenDDS::DCPS::TopicReportDataWriter::~TopicReportDataWriter (void)
  {
  }
  
  OpenDDS::DCPS::TopicReportDataWriter_ptr
  OpenDDS::DCPS::TopicReportDataWriter::_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return TopicReportDataWriter::_duplicate (
        dynamic_cast<TopicReportDataWriter_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::TopicReportDataWriter_ptr
  OpenDDS::DCPS::TopicReportDataWriter::_unchecked_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return TopicReportDataWriter::_duplicate (
        dynamic_cast<TopicReportDataWriter_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::TopicReportDataWriter_ptr
  OpenDDS::DCPS::TopicReportDataWriter::_nil (void)
  {
    return 0;
  }
  
  OpenDDS::DCPS::TopicReportDataWriter_ptr
  OpenDDS::DCPS::TopicReportDataWriter::_duplicate (TopicReportDataWriter_ptr obj)
  {
    if (! ::CORBA::is_nil (obj))
      {
        obj->_add_ref ();
      }
    return obj;
  }
  
  void
  OpenDDS::DCPS::TopicReportDataWriter::_tao_release (TopicReportDataWriter_ptr obj)
  {
    ::CORBA::release (obj);
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::TopicReportDataWriter::_is_a (const char *value)
  {
    if (
        ACE_OS::strcmp (
            value,
            "IDL:DDS/Entity:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:DDS/DataWriter:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/TopicReportDataWriter:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/LocalObject:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/Object:1.0"
          ) == 0
      )
      {
        return true; // success using local knowledge
      }
    else
      {
        return false;
      }
  }
  
  const char* OpenDDS::DCPS::TopicReportDataWriter::_interface_repository_id (void) const
  {
    return "IDL:OpenDDS/DCPS/TopicReportDataWriter:1.0";
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::TopicReportDataWriter::marshal (TAO_OutputCDR & /* cdr */)
  {
    return false;
  }
  
  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_cs.cpp:51
  
  // Traits specializations for OpenDDS::DCPS::TopicReportDataReader.
  
  OpenDDS::DCPS::TopicReportDataReader_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::TopicReportDataReader>::duplicate (
      OpenDDS::DCPS::TopicReportDataReader_ptr p)
  {
    return OpenDDS::DCPS::TopicReportDataReader::_duplicate (p);
  }
  
  void
  TAO::Objref_Traits<OpenDDS::DCPS::TopicReportDataReader>::release (
      OpenDDS::DCPS::TopicReportDataReader_ptr p)
  {
    ::CORBA::release (p);
  }
  
  OpenDDS::DCPS::TopicReportDataReader_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::TopicReportDataReader>::nil (void)
  {
    return OpenDDS::DCPS::TopicReportDataReader::_nil ();
  }
  
  ::CORBA::Boolean
  TAO::Objref_Traits<OpenDDS::DCPS::TopicReportDataReader>::marshal (
      const OpenDDS::DCPS::TopicReportDataReader_ptr p,
      TAO_OutputCDR & cdr)
  {
    return ::CORBA::Object::marshal (p, cdr);
  }
  
  OpenDDS::DCPS::TopicReportDataReader::TopicReportDataReader (void)
  {}
  
  OpenDDS::DCPS::TopicReportDataReader::~TopicReportDataReader (void)
  {
  }
  
  OpenDDS::DCPS::TopicReportDataReader_ptr
  OpenDDS::DCPS::TopicReportDataReader::_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return TopicReportDataReader::_duplicate (
        dynamic_cast<TopicReportDataReader_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::TopicReportDataReader_ptr
  OpenDDS::DCPS::TopicReportDataReader::_unchecked_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return TopicReportDataReader::_duplicate (
        dynamic_cast<TopicReportDataReader_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::TopicReportDataReader_ptr
  OpenDDS::DCPS::TopicReportDataReader::_nil (void)
  {
    return 0;
  }
  
  OpenDDS::DCPS::TopicReportDataReader_ptr
  OpenDDS::DCPS::TopicReportDataReader::_duplicate (TopicReportDataReader_ptr obj)
  {
    if (! ::CORBA::is_nil (obj))
      {
        obj->_add_ref ();
      }
    return obj;
  }
  
  void
  OpenDDS::DCPS::TopicReportDataReader::_tao_release (TopicReportDataReader_ptr obj)
  {
    ::CORBA::release (obj);
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::TopicReportDataReader::_is_a (const char *value)
  {
    if (
        ACE_OS::strcmp (
            value,
            "IDL:DDS/Entity:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:DDS/DataReader:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/DataReaderEx:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/TopicReportDataReader:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/LocalObject:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/Object:1.0"
          ) == 0
      )
      {
        return true; // success using local knowledge
      }
    else
      {
        return false;
      }
  }
  
  const char* OpenDDS::DCPS::TopicReportDataReader::_interface_repository_id (void) const
  {
    return "IDL:OpenDDS/DCPS/TopicReportDataReader:1.0";
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::TopicReportDataReader::marshal (TAO_OutputCDR & /* cdr */)
  {
    return false;
  }
  
  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_cs.cpp:51
  
  // Traits specializations for OpenDDS::DCPS::PublisherReportTypeSupport.
  
  OpenDDS::DCPS::PublisherReportTypeSupport_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::PublisherReportTypeSupport>::duplicate (
      OpenDDS::DCPS::PublisherReportTypeSupport_ptr p)
  {
    return OpenDDS::DCPS::PublisherReportTypeSupport::_duplicate (p);
  }
  
  void
  TAO::Objref_Traits<OpenDDS::DCPS::PublisherReportTypeSupport>::release (
      OpenDDS::DCPS::PublisherReportTypeSupport_ptr p)
  {
    ::CORBA::release (p);
  }
  
  OpenDDS::DCPS::PublisherReportTypeSupport_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::PublisherReportTypeSupport>::nil (void)
  {
    return OpenDDS::DCPS::PublisherReportTypeSupport::_nil ();
  }
  
  ::CORBA::Boolean
  TAO::Objref_Traits<OpenDDS::DCPS::PublisherReportTypeSupport>::marshal (
      const OpenDDS::DCPS::PublisherReportTypeSupport_ptr p,
      TAO_OutputCDR & cdr)
  {
    return ::CORBA::Object::marshal (p, cdr);
  }
  
  OpenDDS::DCPS::PublisherReportTypeSupport::PublisherReportTypeSupport (void)
  {}
  
  OpenDDS::DCPS::PublisherReportTypeSupport::~PublisherReportTypeSupport (void)
  {
  }
  
  OpenDDS::DCPS::PublisherReportTypeSupport_ptr
  OpenDDS::DCPS::PublisherReportTypeSupport::_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return PublisherReportTypeSupport::_duplicate (
        dynamic_cast<PublisherReportTypeSupport_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::PublisherReportTypeSupport_ptr
  OpenDDS::DCPS::PublisherReportTypeSupport::_unchecked_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return PublisherReportTypeSupport::_duplicate (
        dynamic_cast<PublisherReportTypeSupport_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::PublisherReportTypeSupport_ptr
  OpenDDS::DCPS::PublisherReportTypeSupport::_nil (void)
  {
    return 0;
  }
  
  OpenDDS::DCPS::PublisherReportTypeSupport_ptr
  OpenDDS::DCPS::PublisherReportTypeSupport::_duplicate (PublisherReportTypeSupport_ptr obj)
  {
    if (! ::CORBA::is_nil (obj))
      {
        obj->_add_ref ();
      }
    return obj;
  }
  
  void
  OpenDDS::DCPS::PublisherReportTypeSupport::_tao_release (PublisherReportTypeSupport_ptr obj)
  {
    ::CORBA::release (obj);
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::PublisherReportTypeSupport::_is_a (const char *value)
  {
    if (
        ACE_OS::strcmp (
            value,
            "IDL:DDS/TypeSupport:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/TypeSupport:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/PublisherReportTypeSupport:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/LocalObject:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/Object:1.0"
          ) == 0
      )
      {
        return true; // success using local knowledge
      }
    else
      {
        return false;
      }
  }
  
  const char* OpenDDS::DCPS::PublisherReportTypeSupport::_interface_repository_id (void) const
  {
    return "IDL:OpenDDS/DCPS/PublisherReportTypeSupport:1.0";
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::PublisherReportTypeSupport::marshal (TAO_OutputCDR & /* cdr */)
  {
    return false;
  }
  
  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_cs.cpp:51
  
  // Traits specializations for OpenDDS::DCPS::PublisherReportDataWriter.
  
  OpenDDS::DCPS::PublisherReportDataWriter_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::PublisherReportDataWriter>::duplicate (
      OpenDDS::DCPS::PublisherReportDataWriter_ptr p)
  {
    return OpenDDS::DCPS::PublisherReportDataWriter::_duplicate (p);
  }
  
  void
  TAO::Objref_Traits<OpenDDS::DCPS::PublisherReportDataWriter>::release (
      OpenDDS::DCPS::PublisherReportDataWriter_ptr p)
  {
    ::CORBA::release (p);
  }
  
  OpenDDS::DCPS::PublisherReportDataWriter_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::PublisherReportDataWriter>::nil (void)
  {
    return OpenDDS::DCPS::PublisherReportDataWriter::_nil ();
  }
  
  ::CORBA::Boolean
  TAO::Objref_Traits<OpenDDS::DCPS::PublisherReportDataWriter>::marshal (
      const OpenDDS::DCPS::PublisherReportDataWriter_ptr p,
      TAO_OutputCDR & cdr)
  {
    return ::CORBA::Object::marshal (p, cdr);
  }
  
  OpenDDS::DCPS::PublisherReportDataWriter::PublisherReportDataWriter (void)
  {}
  
  OpenDDS::DCPS::PublisherReportDataWriter::~PublisherReportDataWriter (void)
  {
  }
  
  OpenDDS::DCPS::PublisherReportDataWriter_ptr
  OpenDDS::DCPS::PublisherReportDataWriter::_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return PublisherReportDataWriter::_duplicate (
        dynamic_cast<PublisherReportDataWriter_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::PublisherReportDataWriter_ptr
  OpenDDS::DCPS::PublisherReportDataWriter::_unchecked_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return PublisherReportDataWriter::_duplicate (
        dynamic_cast<PublisherReportDataWriter_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::PublisherReportDataWriter_ptr
  OpenDDS::DCPS::PublisherReportDataWriter::_nil (void)
  {
    return 0;
  }
  
  OpenDDS::DCPS::PublisherReportDataWriter_ptr
  OpenDDS::DCPS::PublisherReportDataWriter::_duplicate (PublisherReportDataWriter_ptr obj)
  {
    if (! ::CORBA::is_nil (obj))
      {
        obj->_add_ref ();
      }
    return obj;
  }
  
  void
  OpenDDS::DCPS::PublisherReportDataWriter::_tao_release (PublisherReportDataWriter_ptr obj)
  {
    ::CORBA::release (obj);
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::PublisherReportDataWriter::_is_a (const char *value)
  {
    if (
        ACE_OS::strcmp (
            value,
            "IDL:DDS/Entity:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:DDS/DataWriter:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/PublisherReportDataWriter:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/LocalObject:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/Object:1.0"
          ) == 0
      )
      {
        return true; // success using local knowledge
      }
    else
      {
        return false;
      }
  }
  
  const char* OpenDDS::DCPS::PublisherReportDataWriter::_interface_repository_id (void) const
  {
    return "IDL:OpenDDS/DCPS/PublisherReportDataWriter:1.0";
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::PublisherReportDataWriter::marshal (TAO_OutputCDR & /* cdr */)
  {
    return false;
  }
  
  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_cs.cpp:51
  
  // Traits specializations for OpenDDS::DCPS::PublisherReportDataReader.
  
  OpenDDS::DCPS::PublisherReportDataReader_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::PublisherReportDataReader>::duplicate (
      OpenDDS::DCPS::PublisherReportDataReader_ptr p)
  {
    return OpenDDS::DCPS::PublisherReportDataReader::_duplicate (p);
  }
  
  void
  TAO::Objref_Traits<OpenDDS::DCPS::PublisherReportDataReader>::release (
      OpenDDS::DCPS::PublisherReportDataReader_ptr p)
  {
    ::CORBA::release (p);
  }
  
  OpenDDS::DCPS::PublisherReportDataReader_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::PublisherReportDataReader>::nil (void)
  {
    return OpenDDS::DCPS::PublisherReportDataReader::_nil ();
  }
  
  ::CORBA::Boolean
  TAO::Objref_Traits<OpenDDS::DCPS::PublisherReportDataReader>::marshal (
      const OpenDDS::DCPS::PublisherReportDataReader_ptr p,
      TAO_OutputCDR & cdr)
  {
    return ::CORBA::Object::marshal (p, cdr);
  }
  
  OpenDDS::DCPS::PublisherReportDataReader::PublisherReportDataReader (void)
  {}
  
  OpenDDS::DCPS::PublisherReportDataReader::~PublisherReportDataReader (void)
  {
  }
  
  OpenDDS::DCPS::PublisherReportDataReader_ptr
  OpenDDS::DCPS::PublisherReportDataReader::_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return PublisherReportDataReader::_duplicate (
        dynamic_cast<PublisherReportDataReader_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::PublisherReportDataReader_ptr
  OpenDDS::DCPS::PublisherReportDataReader::_unchecked_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return PublisherReportDataReader::_duplicate (
        dynamic_cast<PublisherReportDataReader_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::PublisherReportDataReader_ptr
  OpenDDS::DCPS::PublisherReportDataReader::_nil (void)
  {
    return 0;
  }
  
  OpenDDS::DCPS::PublisherReportDataReader_ptr
  OpenDDS::DCPS::PublisherReportDataReader::_duplicate (PublisherReportDataReader_ptr obj)
  {
    if (! ::CORBA::is_nil (obj))
      {
        obj->_add_ref ();
      }
    return obj;
  }
  
  void
  OpenDDS::DCPS::PublisherReportDataReader::_tao_release (PublisherReportDataReader_ptr obj)
  {
    ::CORBA::release (obj);
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::PublisherReportDataReader::_is_a (const char *value)
  {
    if (
        ACE_OS::strcmp (
            value,
            "IDL:DDS/Entity:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:DDS/DataReader:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/DataReaderEx:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/PublisherReportDataReader:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/LocalObject:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/Object:1.0"
          ) == 0
      )
      {
        return true; // success using local knowledge
      }
    else
      {
        return false;
      }
  }
  
  const char* OpenDDS::DCPS::PublisherReportDataReader::_interface_repository_id (void) const
  {
    return "IDL:OpenDDS/DCPS/PublisherReportDataReader:1.0";
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::PublisherReportDataReader::marshal (TAO_OutputCDR & /* cdr */)
  {
    return false;
  }
  
  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_cs.cpp:51
  
  // Traits specializations for OpenDDS::DCPS::SubscriberReportTypeSupport.
  
  OpenDDS::DCPS::SubscriberReportTypeSupport_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::SubscriberReportTypeSupport>::duplicate (
      OpenDDS::DCPS::SubscriberReportTypeSupport_ptr p)
  {
    return OpenDDS::DCPS::SubscriberReportTypeSupport::_duplicate (p);
  }
  
  void
  TAO::Objref_Traits<OpenDDS::DCPS::SubscriberReportTypeSupport>::release (
      OpenDDS::DCPS::SubscriberReportTypeSupport_ptr p)
  {
    ::CORBA::release (p);
  }
  
  OpenDDS::DCPS::SubscriberReportTypeSupport_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::SubscriberReportTypeSupport>::nil (void)
  {
    return OpenDDS::DCPS::SubscriberReportTypeSupport::_nil ();
  }
  
  ::CORBA::Boolean
  TAO::Objref_Traits<OpenDDS::DCPS::SubscriberReportTypeSupport>::marshal (
      const OpenDDS::DCPS::SubscriberReportTypeSupport_ptr p,
      TAO_OutputCDR & cdr)
  {
    return ::CORBA::Object::marshal (p, cdr);
  }
  
  OpenDDS::DCPS::SubscriberReportTypeSupport::SubscriberReportTypeSupport (void)
  {}
  
  OpenDDS::DCPS::SubscriberReportTypeSupport::~SubscriberReportTypeSupport (void)
  {
  }
  
  OpenDDS::DCPS::SubscriberReportTypeSupport_ptr
  OpenDDS::DCPS::SubscriberReportTypeSupport::_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return SubscriberReportTypeSupport::_duplicate (
        dynamic_cast<SubscriberReportTypeSupport_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::SubscriberReportTypeSupport_ptr
  OpenDDS::DCPS::SubscriberReportTypeSupport::_unchecked_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return SubscriberReportTypeSupport::_duplicate (
        dynamic_cast<SubscriberReportTypeSupport_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::SubscriberReportTypeSupport_ptr
  OpenDDS::DCPS::SubscriberReportTypeSupport::_nil (void)
  {
    return 0;
  }
  
  OpenDDS::DCPS::SubscriberReportTypeSupport_ptr
  OpenDDS::DCPS::SubscriberReportTypeSupport::_duplicate (SubscriberReportTypeSupport_ptr obj)
  {
    if (! ::CORBA::is_nil (obj))
      {
        obj->_add_ref ();
      }
    return obj;
  }
  
  void
  OpenDDS::DCPS::SubscriberReportTypeSupport::_tao_release (SubscriberReportTypeSupport_ptr obj)
  {
    ::CORBA::release (obj);
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::SubscriberReportTypeSupport::_is_a (const char *value)
  {
    if (
        ACE_OS::strcmp (
            value,
            "IDL:DDS/TypeSupport:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/TypeSupport:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/SubscriberReportTypeSupport:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/LocalObject:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/Object:1.0"
          ) == 0
      )
      {
        return true; // success using local knowledge
      }
    else
      {
        return false;
      }
  }
  
  const char* OpenDDS::DCPS::SubscriberReportTypeSupport::_interface_repository_id (void) const
  {
    return "IDL:OpenDDS/DCPS/SubscriberReportTypeSupport:1.0";
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::SubscriberReportTypeSupport::marshal (TAO_OutputCDR & /* cdr */)
  {
    return false;
  }
  
  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_cs.cpp:51
  
  // Traits specializations for OpenDDS::DCPS::SubscriberReportDataWriter.
  
  OpenDDS::DCPS::SubscriberReportDataWriter_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::SubscriberReportDataWriter>::duplicate (
      OpenDDS::DCPS::SubscriberReportDataWriter_ptr p)
  {
    return OpenDDS::DCPS::SubscriberReportDataWriter::_duplicate (p);
  }
  
  void
  TAO::Objref_Traits<OpenDDS::DCPS::SubscriberReportDataWriter>::release (
      OpenDDS::DCPS::SubscriberReportDataWriter_ptr p)
  {
    ::CORBA::release (p);
  }
  
  OpenDDS::DCPS::SubscriberReportDataWriter_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::SubscriberReportDataWriter>::nil (void)
  {
    return OpenDDS::DCPS::SubscriberReportDataWriter::_nil ();
  }
  
  ::CORBA::Boolean
  TAO::Objref_Traits<OpenDDS::DCPS::SubscriberReportDataWriter>::marshal (
      const OpenDDS::DCPS::SubscriberReportDataWriter_ptr p,
      TAO_OutputCDR & cdr)
  {
    return ::CORBA::Object::marshal (p, cdr);
  }
  
  OpenDDS::DCPS::SubscriberReportDataWriter::SubscriberReportDataWriter (void)
  {}
  
  OpenDDS::DCPS::SubscriberReportDataWriter::~SubscriberReportDataWriter (void)
  {
  }
  
  OpenDDS::DCPS::SubscriberReportDataWriter_ptr
  OpenDDS::DCPS::SubscriberReportDataWriter::_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return SubscriberReportDataWriter::_duplicate (
        dynamic_cast<SubscriberReportDataWriter_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::SubscriberReportDataWriter_ptr
  OpenDDS::DCPS::SubscriberReportDataWriter::_unchecked_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return SubscriberReportDataWriter::_duplicate (
        dynamic_cast<SubscriberReportDataWriter_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::SubscriberReportDataWriter_ptr
  OpenDDS::DCPS::SubscriberReportDataWriter::_nil (void)
  {
    return 0;
  }
  
  OpenDDS::DCPS::SubscriberReportDataWriter_ptr
  OpenDDS::DCPS::SubscriberReportDataWriter::_duplicate (SubscriberReportDataWriter_ptr obj)
  {
    if (! ::CORBA::is_nil (obj))
      {
        obj->_add_ref ();
      }
    return obj;
  }
  
  void
  OpenDDS::DCPS::SubscriberReportDataWriter::_tao_release (SubscriberReportDataWriter_ptr obj)
  {
    ::CORBA::release (obj);
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::SubscriberReportDataWriter::_is_a (const char *value)
  {
    if (
        ACE_OS::strcmp (
            value,
            "IDL:DDS/Entity:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:DDS/DataWriter:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/SubscriberReportDataWriter:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/LocalObject:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/Object:1.0"
          ) == 0
      )
      {
        return true; // success using local knowledge
      }
    else
      {
        return false;
      }
  }
  
  const char* OpenDDS::DCPS::SubscriberReportDataWriter::_interface_repository_id (void) const
  {
    return "IDL:OpenDDS/DCPS/SubscriberReportDataWriter:1.0";
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::SubscriberReportDataWriter::marshal (TAO_OutputCDR & /* cdr */)
  {
    return false;
  }
  
  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_cs.cpp:51
  
  // Traits specializations for OpenDDS::DCPS::SubscriberReportDataReader.
  
  OpenDDS::DCPS::SubscriberReportDataReader_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::SubscriberReportDataReader>::duplicate (
      OpenDDS::DCPS::SubscriberReportDataReader_ptr p)
  {
    return OpenDDS::DCPS::SubscriberReportDataReader::_duplicate (p);
  }
  
  void
  TAO::Objref_Traits<OpenDDS::DCPS::SubscriberReportDataReader>::release (
      OpenDDS::DCPS::SubscriberReportDataReader_ptr p)
  {
    ::CORBA::release (p);
  }
  
  OpenDDS::DCPS::SubscriberReportDataReader_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::SubscriberReportDataReader>::nil (void)
  {
    return OpenDDS::DCPS::SubscriberReportDataReader::_nil ();
  }
  
  ::CORBA::Boolean
  TAO::Objref_Traits<OpenDDS::DCPS::SubscriberReportDataReader>::marshal (
      const OpenDDS::DCPS::SubscriberReportDataReader_ptr p,
      TAO_OutputCDR & cdr)
  {
    return ::CORBA::Object::marshal (p, cdr);
  }
  
  OpenDDS::DCPS::SubscriberReportDataReader::SubscriberReportDataReader (void)
  {}
  
  OpenDDS::DCPS::SubscriberReportDataReader::~SubscriberReportDataReader (void)
  {
  }
  
  OpenDDS::DCPS::SubscriberReportDataReader_ptr
  OpenDDS::DCPS::SubscriberReportDataReader::_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return SubscriberReportDataReader::_duplicate (
        dynamic_cast<SubscriberReportDataReader_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::SubscriberReportDataReader_ptr
  OpenDDS::DCPS::SubscriberReportDataReader::_unchecked_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return SubscriberReportDataReader::_duplicate (
        dynamic_cast<SubscriberReportDataReader_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::SubscriberReportDataReader_ptr
  OpenDDS::DCPS::SubscriberReportDataReader::_nil (void)
  {
    return 0;
  }
  
  OpenDDS::DCPS::SubscriberReportDataReader_ptr
  OpenDDS::DCPS::SubscriberReportDataReader::_duplicate (SubscriberReportDataReader_ptr obj)
  {
    if (! ::CORBA::is_nil (obj))
      {
        obj->_add_ref ();
      }
    return obj;
  }
  
  void
  OpenDDS::DCPS::SubscriberReportDataReader::_tao_release (SubscriberReportDataReader_ptr obj)
  {
    ::CORBA::release (obj);
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::SubscriberReportDataReader::_is_a (const char *value)
  {
    if (
        ACE_OS::strcmp (
            value,
            "IDL:DDS/Entity:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:DDS/DataReader:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/DataReaderEx:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/SubscriberReportDataReader:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/LocalObject:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/Object:1.0"
          ) == 0
      )
      {
        return true; // success using local knowledge
      }
    else
      {
        return false;
      }
  }
  
  const char* OpenDDS::DCPS::SubscriberReportDataReader::_interface_repository_id (void) const
  {
    return "IDL:OpenDDS/DCPS/SubscriberReportDataReader:1.0";
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::SubscriberReportDataReader::marshal (TAO_OutputCDR & /* cdr */)
  {
    return false;
  }
  
  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_cs.cpp:51
  
  // Traits specializations for OpenDDS::DCPS::DataWriterReportTypeSupport.
  
  OpenDDS::DCPS::DataWriterReportTypeSupport_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::DataWriterReportTypeSupport>::duplicate (
      OpenDDS::DCPS::DataWriterReportTypeSupport_ptr p)
  {
    return OpenDDS::DCPS::DataWriterReportTypeSupport::_duplicate (p);
  }
  
  void
  TAO::Objref_Traits<OpenDDS::DCPS::DataWriterReportTypeSupport>::release (
      OpenDDS::DCPS::DataWriterReportTypeSupport_ptr p)
  {
    ::CORBA::release (p);
  }
  
  OpenDDS::DCPS::DataWriterReportTypeSupport_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::DataWriterReportTypeSupport>::nil (void)
  {
    return OpenDDS::DCPS::DataWriterReportTypeSupport::_nil ();
  }
  
  ::CORBA::Boolean
  TAO::Objref_Traits<OpenDDS::DCPS::DataWriterReportTypeSupport>::marshal (
      const OpenDDS::DCPS::DataWriterReportTypeSupport_ptr p,
      TAO_OutputCDR & cdr)
  {
    return ::CORBA::Object::marshal (p, cdr);
  }
  
  OpenDDS::DCPS::DataWriterReportTypeSupport::DataWriterReportTypeSupport (void)
  {}
  
  OpenDDS::DCPS::DataWriterReportTypeSupport::~DataWriterReportTypeSupport (void)
  {
  }
  
  OpenDDS::DCPS::DataWriterReportTypeSupport_ptr
  OpenDDS::DCPS::DataWriterReportTypeSupport::_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return DataWriterReportTypeSupport::_duplicate (
        dynamic_cast<DataWriterReportTypeSupport_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::DataWriterReportTypeSupport_ptr
  OpenDDS::DCPS::DataWriterReportTypeSupport::_unchecked_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return DataWriterReportTypeSupport::_duplicate (
        dynamic_cast<DataWriterReportTypeSupport_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::DataWriterReportTypeSupport_ptr
  OpenDDS::DCPS::DataWriterReportTypeSupport::_nil (void)
  {
    return 0;
  }
  
  OpenDDS::DCPS::DataWriterReportTypeSupport_ptr
  OpenDDS::DCPS::DataWriterReportTypeSupport::_duplicate (DataWriterReportTypeSupport_ptr obj)
  {
    if (! ::CORBA::is_nil (obj))
      {
        obj->_add_ref ();
      }
    return obj;
  }
  
  void
  OpenDDS::DCPS::DataWriterReportTypeSupport::_tao_release (DataWriterReportTypeSupport_ptr obj)
  {
    ::CORBA::release (obj);
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::DataWriterReportTypeSupport::_is_a (const char *value)
  {
    if (
        ACE_OS::strcmp (
            value,
            "IDL:DDS/TypeSupport:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/TypeSupport:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/DataWriterReportTypeSupport:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/LocalObject:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/Object:1.0"
          ) == 0
      )
      {
        return true; // success using local knowledge
      }
    else
      {
        return false;
      }
  }
  
  const char* OpenDDS::DCPS::DataWriterReportTypeSupport::_interface_repository_id (void) const
  {
    return "IDL:OpenDDS/DCPS/DataWriterReportTypeSupport:1.0";
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::DataWriterReportTypeSupport::marshal (TAO_OutputCDR & /* cdr */)
  {
    return false;
  }
  
  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_cs.cpp:51
  
  // Traits specializations for OpenDDS::DCPS::DataWriterReportDataWriter.
  
  OpenDDS::DCPS::DataWriterReportDataWriter_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::DataWriterReportDataWriter>::duplicate (
      OpenDDS::DCPS::DataWriterReportDataWriter_ptr p)
  {
    return OpenDDS::DCPS::DataWriterReportDataWriter::_duplicate (p);
  }
  
  void
  TAO::Objref_Traits<OpenDDS::DCPS::DataWriterReportDataWriter>::release (
      OpenDDS::DCPS::DataWriterReportDataWriter_ptr p)
  {
    ::CORBA::release (p);
  }
  
  OpenDDS::DCPS::DataWriterReportDataWriter_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::DataWriterReportDataWriter>::nil (void)
  {
    return OpenDDS::DCPS::DataWriterReportDataWriter::_nil ();
  }
  
  ::CORBA::Boolean
  TAO::Objref_Traits<OpenDDS::DCPS::DataWriterReportDataWriter>::marshal (
      const OpenDDS::DCPS::DataWriterReportDataWriter_ptr p,
      TAO_OutputCDR & cdr)
  {
    return ::CORBA::Object::marshal (p, cdr);
  }
  
  OpenDDS::DCPS::DataWriterReportDataWriter::DataWriterReportDataWriter (void)
  {}
  
  OpenDDS::DCPS::DataWriterReportDataWriter::~DataWriterReportDataWriter (void)
  {
  }
  
  OpenDDS::DCPS::DataWriterReportDataWriter_ptr
  OpenDDS::DCPS::DataWriterReportDataWriter::_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return DataWriterReportDataWriter::_duplicate (
        dynamic_cast<DataWriterReportDataWriter_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::DataWriterReportDataWriter_ptr
  OpenDDS::DCPS::DataWriterReportDataWriter::_unchecked_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return DataWriterReportDataWriter::_duplicate (
        dynamic_cast<DataWriterReportDataWriter_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::DataWriterReportDataWriter_ptr
  OpenDDS::DCPS::DataWriterReportDataWriter::_nil (void)
  {
    return 0;
  }
  
  OpenDDS::DCPS::DataWriterReportDataWriter_ptr
  OpenDDS::DCPS::DataWriterReportDataWriter::_duplicate (DataWriterReportDataWriter_ptr obj)
  {
    if (! ::CORBA::is_nil (obj))
      {
        obj->_add_ref ();
      }
    return obj;
  }
  
  void
  OpenDDS::DCPS::DataWriterReportDataWriter::_tao_release (DataWriterReportDataWriter_ptr obj)
  {
    ::CORBA::release (obj);
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::DataWriterReportDataWriter::_is_a (const char *value)
  {
    if (
        ACE_OS::strcmp (
            value,
            "IDL:DDS/Entity:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:DDS/DataWriter:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/DataWriterReportDataWriter:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/LocalObject:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/Object:1.0"
          ) == 0
      )
      {
        return true; // success using local knowledge
      }
    else
      {
        return false;
      }
  }
  
  const char* OpenDDS::DCPS::DataWriterReportDataWriter::_interface_repository_id (void) const
  {
    return "IDL:OpenDDS/DCPS/DataWriterReportDataWriter:1.0";
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::DataWriterReportDataWriter::marshal (TAO_OutputCDR & /* cdr */)
  {
    return false;
  }
  
  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_cs.cpp:51
  
  // Traits specializations for OpenDDS::DCPS::DataWriterReportDataReader.
  
  OpenDDS::DCPS::DataWriterReportDataReader_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::DataWriterReportDataReader>::duplicate (
      OpenDDS::DCPS::DataWriterReportDataReader_ptr p)
  {
    return OpenDDS::DCPS::DataWriterReportDataReader::_duplicate (p);
  }
  
  void
  TAO::Objref_Traits<OpenDDS::DCPS::DataWriterReportDataReader>::release (
      OpenDDS::DCPS::DataWriterReportDataReader_ptr p)
  {
    ::CORBA::release (p);
  }
  
  OpenDDS::DCPS::DataWriterReportDataReader_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::DataWriterReportDataReader>::nil (void)
  {
    return OpenDDS::DCPS::DataWriterReportDataReader::_nil ();
  }
  
  ::CORBA::Boolean
  TAO::Objref_Traits<OpenDDS::DCPS::DataWriterReportDataReader>::marshal (
      const OpenDDS::DCPS::DataWriterReportDataReader_ptr p,
      TAO_OutputCDR & cdr)
  {
    return ::CORBA::Object::marshal (p, cdr);
  }
  
  OpenDDS::DCPS::DataWriterReportDataReader::DataWriterReportDataReader (void)
  {}
  
  OpenDDS::DCPS::DataWriterReportDataReader::~DataWriterReportDataReader (void)
  {
  }
  
  OpenDDS::DCPS::DataWriterReportDataReader_ptr
  OpenDDS::DCPS::DataWriterReportDataReader::_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return DataWriterReportDataReader::_duplicate (
        dynamic_cast<DataWriterReportDataReader_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::DataWriterReportDataReader_ptr
  OpenDDS::DCPS::DataWriterReportDataReader::_unchecked_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return DataWriterReportDataReader::_duplicate (
        dynamic_cast<DataWriterReportDataReader_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::DataWriterReportDataReader_ptr
  OpenDDS::DCPS::DataWriterReportDataReader::_nil (void)
  {
    return 0;
  }
  
  OpenDDS::DCPS::DataWriterReportDataReader_ptr
  OpenDDS::DCPS::DataWriterReportDataReader::_duplicate (DataWriterReportDataReader_ptr obj)
  {
    if (! ::CORBA::is_nil (obj))
      {
        obj->_add_ref ();
      }
    return obj;
  }
  
  void
  OpenDDS::DCPS::DataWriterReportDataReader::_tao_release (DataWriterReportDataReader_ptr obj)
  {
    ::CORBA::release (obj);
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::DataWriterReportDataReader::_is_a (const char *value)
  {
    if (
        ACE_OS::strcmp (
            value,
            "IDL:DDS/Entity:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:DDS/DataReader:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/DataReaderEx:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/DataWriterReportDataReader:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/LocalObject:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/Object:1.0"
          ) == 0
      )
      {
        return true; // success using local knowledge
      }
    else
      {
        return false;
      }
  }
  
  const char* OpenDDS::DCPS::DataWriterReportDataReader::_interface_repository_id (void) const
  {
    return "IDL:OpenDDS/DCPS/DataWriterReportDataReader:1.0";
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::DataWriterReportDataReader::marshal (TAO_OutputCDR & /* cdr */)
  {
    return false;
  }
  
  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_cs.cpp:51
  
  // Traits specializations for OpenDDS::DCPS::DataWriterPeriodicReportTypeSupport.
  
  OpenDDS::DCPS::DataWriterPeriodicReportTypeSupport_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::DataWriterPeriodicReportTypeSupport>::duplicate (
      OpenDDS::DCPS::DataWriterPeriodicReportTypeSupport_ptr p)
  {
    return OpenDDS::DCPS::DataWriterPeriodicReportTypeSupport::_duplicate (p);
  }
  
  void
  TAO::Objref_Traits<OpenDDS::DCPS::DataWriterPeriodicReportTypeSupport>::release (
      OpenDDS::DCPS::DataWriterPeriodicReportTypeSupport_ptr p)
  {
    ::CORBA::release (p);
  }
  
  OpenDDS::DCPS::DataWriterPeriodicReportTypeSupport_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::DataWriterPeriodicReportTypeSupport>::nil (void)
  {
    return OpenDDS::DCPS::DataWriterPeriodicReportTypeSupport::_nil ();
  }
  
  ::CORBA::Boolean
  TAO::Objref_Traits<OpenDDS::DCPS::DataWriterPeriodicReportTypeSupport>::marshal (
      const OpenDDS::DCPS::DataWriterPeriodicReportTypeSupport_ptr p,
      TAO_OutputCDR & cdr)
  {
    return ::CORBA::Object::marshal (p, cdr);
  }
  
  OpenDDS::DCPS::DataWriterPeriodicReportTypeSupport::DataWriterPeriodicReportTypeSupport (void)
  {}
  
  OpenDDS::DCPS::DataWriterPeriodicReportTypeSupport::~DataWriterPeriodicReportTypeSupport (void)
  {
  }
  
  OpenDDS::DCPS::DataWriterPeriodicReportTypeSupport_ptr
  OpenDDS::DCPS::DataWriterPeriodicReportTypeSupport::_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return DataWriterPeriodicReportTypeSupport::_duplicate (
        dynamic_cast<DataWriterPeriodicReportTypeSupport_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::DataWriterPeriodicReportTypeSupport_ptr
  OpenDDS::DCPS::DataWriterPeriodicReportTypeSupport::_unchecked_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return DataWriterPeriodicReportTypeSupport::_duplicate (
        dynamic_cast<DataWriterPeriodicReportTypeSupport_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::DataWriterPeriodicReportTypeSupport_ptr
  OpenDDS::DCPS::DataWriterPeriodicReportTypeSupport::_nil (void)
  {
    return 0;
  }
  
  OpenDDS::DCPS::DataWriterPeriodicReportTypeSupport_ptr
  OpenDDS::DCPS::DataWriterPeriodicReportTypeSupport::_duplicate (DataWriterPeriodicReportTypeSupport_ptr obj)
  {
    if (! ::CORBA::is_nil (obj))
      {
        obj->_add_ref ();
      }
    return obj;
  }
  
  void
  OpenDDS::DCPS::DataWriterPeriodicReportTypeSupport::_tao_release (DataWriterPeriodicReportTypeSupport_ptr obj)
  {
    ::CORBA::release (obj);
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::DataWriterPeriodicReportTypeSupport::_is_a (const char *value)
  {
    if (
        ACE_OS::strcmp (
            value,
            "IDL:DDS/TypeSupport:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/TypeSupport:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/DataWriterPeriodicReportTypeSupport:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/LocalObject:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/Object:1.0"
          ) == 0
      )
      {
        return true; // success using local knowledge
      }
    else
      {
        return false;
      }
  }
  
  const char* OpenDDS::DCPS::DataWriterPeriodicReportTypeSupport::_interface_repository_id (void) const
  {
    return "IDL:OpenDDS/DCPS/DataWriterPeriodicReportTypeSupport:1.0";
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::DataWriterPeriodicReportTypeSupport::marshal (TAO_OutputCDR & /* cdr */)
  {
    return false;
  }
  
  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_cs.cpp:51
  
  // Traits specializations for OpenDDS::DCPS::DataWriterPeriodicReportDataWriter.
  
  OpenDDS::DCPS::DataWriterPeriodicReportDataWriter_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::DataWriterPeriodicReportDataWriter>::duplicate (
      OpenDDS::DCPS::DataWriterPeriodicReportDataWriter_ptr p)
  {
    return OpenDDS::DCPS::DataWriterPeriodicReportDataWriter::_duplicate (p);
  }
  
  void
  TAO::Objref_Traits<OpenDDS::DCPS::DataWriterPeriodicReportDataWriter>::release (
      OpenDDS::DCPS::DataWriterPeriodicReportDataWriter_ptr p)
  {
    ::CORBA::release (p);
  }
  
  OpenDDS::DCPS::DataWriterPeriodicReportDataWriter_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::DataWriterPeriodicReportDataWriter>::nil (void)
  {
    return OpenDDS::DCPS::DataWriterPeriodicReportDataWriter::_nil ();
  }
  
  ::CORBA::Boolean
  TAO::Objref_Traits<OpenDDS::DCPS::DataWriterPeriodicReportDataWriter>::marshal (
      const OpenDDS::DCPS::DataWriterPeriodicReportDataWriter_ptr p,
      TAO_OutputCDR & cdr)
  {
    return ::CORBA::Object::marshal (p, cdr);
  }
  
  OpenDDS::DCPS::DataWriterPeriodicReportDataWriter::DataWriterPeriodicReportDataWriter (void)
  {}
  
  OpenDDS::DCPS::DataWriterPeriodicReportDataWriter::~DataWriterPeriodicReportDataWriter (void)
  {
  }
  
  OpenDDS::DCPS::DataWriterPeriodicReportDataWriter_ptr
  OpenDDS::DCPS::DataWriterPeriodicReportDataWriter::_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return DataWriterPeriodicReportDataWriter::_duplicate (
        dynamic_cast<DataWriterPeriodicReportDataWriter_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::DataWriterPeriodicReportDataWriter_ptr
  OpenDDS::DCPS::DataWriterPeriodicReportDataWriter::_unchecked_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return DataWriterPeriodicReportDataWriter::_duplicate (
        dynamic_cast<DataWriterPeriodicReportDataWriter_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::DataWriterPeriodicReportDataWriter_ptr
  OpenDDS::DCPS::DataWriterPeriodicReportDataWriter::_nil (void)
  {
    return 0;
  }
  
  OpenDDS::DCPS::DataWriterPeriodicReportDataWriter_ptr
  OpenDDS::DCPS::DataWriterPeriodicReportDataWriter::_duplicate (DataWriterPeriodicReportDataWriter_ptr obj)
  {
    if (! ::CORBA::is_nil (obj))
      {
        obj->_add_ref ();
      }
    return obj;
  }
  
  void
  OpenDDS::DCPS::DataWriterPeriodicReportDataWriter::_tao_release (DataWriterPeriodicReportDataWriter_ptr obj)
  {
    ::CORBA::release (obj);
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::DataWriterPeriodicReportDataWriter::_is_a (const char *value)
  {
    if (
        ACE_OS::strcmp (
            value,
            "IDL:DDS/Entity:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:DDS/DataWriter:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/DataWriterPeriodicReportDataWriter:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/LocalObject:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/Object:1.0"
          ) == 0
      )
      {
        return true; // success using local knowledge
      }
    else
      {
        return false;
      }
  }
  
  const char* OpenDDS::DCPS::DataWriterPeriodicReportDataWriter::_interface_repository_id (void) const
  {
    return "IDL:OpenDDS/DCPS/DataWriterPeriodicReportDataWriter:1.0";
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::DataWriterPeriodicReportDataWriter::marshal (TAO_OutputCDR & /* cdr */)
  {
    return false;
  }
  
  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_cs.cpp:51
  
  // Traits specializations for OpenDDS::DCPS::DataWriterPeriodicReportDataReader.
  
  OpenDDS::DCPS::DataWriterPeriodicReportDataReader_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::DataWriterPeriodicReportDataReader>::duplicate (
      OpenDDS::DCPS::DataWriterPeriodicReportDataReader_ptr p)
  {
    return OpenDDS::DCPS::DataWriterPeriodicReportDataReader::_duplicate (p);
  }
  
  void
  TAO::Objref_Traits<OpenDDS::DCPS::DataWriterPeriodicReportDataReader>::release (
      OpenDDS::DCPS::DataWriterPeriodicReportDataReader_ptr p)
  {
    ::CORBA::release (p);
  }
  
  OpenDDS::DCPS::DataWriterPeriodicReportDataReader_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::DataWriterPeriodicReportDataReader>::nil (void)
  {
    return OpenDDS::DCPS::DataWriterPeriodicReportDataReader::_nil ();
  }
  
  ::CORBA::Boolean
  TAO::Objref_Traits<OpenDDS::DCPS::DataWriterPeriodicReportDataReader>::marshal (
      const OpenDDS::DCPS::DataWriterPeriodicReportDataReader_ptr p,
      TAO_OutputCDR & cdr)
  {
    return ::CORBA::Object::marshal (p, cdr);
  }
  
  OpenDDS::DCPS::DataWriterPeriodicReportDataReader::DataWriterPeriodicReportDataReader (void)
  {}
  
  OpenDDS::DCPS::DataWriterPeriodicReportDataReader::~DataWriterPeriodicReportDataReader (void)
  {
  }
  
  OpenDDS::DCPS::DataWriterPeriodicReportDataReader_ptr
  OpenDDS::DCPS::DataWriterPeriodicReportDataReader::_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return DataWriterPeriodicReportDataReader::_duplicate (
        dynamic_cast<DataWriterPeriodicReportDataReader_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::DataWriterPeriodicReportDataReader_ptr
  OpenDDS::DCPS::DataWriterPeriodicReportDataReader::_unchecked_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return DataWriterPeriodicReportDataReader::_duplicate (
        dynamic_cast<DataWriterPeriodicReportDataReader_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::DataWriterPeriodicReportDataReader_ptr
  OpenDDS::DCPS::DataWriterPeriodicReportDataReader::_nil (void)
  {
    return 0;
  }
  
  OpenDDS::DCPS::DataWriterPeriodicReportDataReader_ptr
  OpenDDS::DCPS::DataWriterPeriodicReportDataReader::_duplicate (DataWriterPeriodicReportDataReader_ptr obj)
  {
    if (! ::CORBA::is_nil (obj))
      {
        obj->_add_ref ();
      }
    return obj;
  }
  
  void
  OpenDDS::DCPS::DataWriterPeriodicReportDataReader::_tao_release (DataWriterPeriodicReportDataReader_ptr obj)
  {
    ::CORBA::release (obj);
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::DataWriterPeriodicReportDataReader::_is_a (const char *value)
  {
    if (
        ACE_OS::strcmp (
            value,
            "IDL:DDS/Entity:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:DDS/DataReader:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/DataReaderEx:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/DataWriterPeriodicReportDataReader:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/LocalObject:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/Object:1.0"
          ) == 0
      )
      {
        return true; // success using local knowledge
      }
    else
      {
        return false;
      }
  }
  
  const char* OpenDDS::DCPS::DataWriterPeriodicReportDataReader::_interface_repository_id (void) const
  {
    return "IDL:OpenDDS/DCPS/DataWriterPeriodicReportDataReader:1.0";
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::DataWriterPeriodicReportDataReader::marshal (TAO_OutputCDR & /* cdr */)
  {
    return false;
  }
  
  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_cs.cpp:51
  
  // Traits specializations for OpenDDS::DCPS::DataReaderReportTypeSupport.
  
  OpenDDS::DCPS::DataReaderReportTypeSupport_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::DataReaderReportTypeSupport>::duplicate (
      OpenDDS::DCPS::DataReaderReportTypeSupport_ptr p)
  {
    return OpenDDS::DCPS::DataReaderReportTypeSupport::_duplicate (p);
  }
  
  void
  TAO::Objref_Traits<OpenDDS::DCPS::DataReaderReportTypeSupport>::release (
      OpenDDS::DCPS::DataReaderReportTypeSupport_ptr p)
  {
    ::CORBA::release (p);
  }
  
  OpenDDS::DCPS::DataReaderReportTypeSupport_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::DataReaderReportTypeSupport>::nil (void)
  {
    return OpenDDS::DCPS::DataReaderReportTypeSupport::_nil ();
  }
  
  ::CORBA::Boolean
  TAO::Objref_Traits<OpenDDS::DCPS::DataReaderReportTypeSupport>::marshal (
      const OpenDDS::DCPS::DataReaderReportTypeSupport_ptr p,
      TAO_OutputCDR & cdr)
  {
    return ::CORBA::Object::marshal (p, cdr);
  }
  
  OpenDDS::DCPS::DataReaderReportTypeSupport::DataReaderReportTypeSupport (void)
  {}
  
  OpenDDS::DCPS::DataReaderReportTypeSupport::~DataReaderReportTypeSupport (void)
  {
  }
  
  OpenDDS::DCPS::DataReaderReportTypeSupport_ptr
  OpenDDS::DCPS::DataReaderReportTypeSupport::_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return DataReaderReportTypeSupport::_duplicate (
        dynamic_cast<DataReaderReportTypeSupport_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::DataReaderReportTypeSupport_ptr
  OpenDDS::DCPS::DataReaderReportTypeSupport::_unchecked_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return DataReaderReportTypeSupport::_duplicate (
        dynamic_cast<DataReaderReportTypeSupport_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::DataReaderReportTypeSupport_ptr
  OpenDDS::DCPS::DataReaderReportTypeSupport::_nil (void)
  {
    return 0;
  }
  
  OpenDDS::DCPS::DataReaderReportTypeSupport_ptr
  OpenDDS::DCPS::DataReaderReportTypeSupport::_duplicate (DataReaderReportTypeSupport_ptr obj)
  {
    if (! ::CORBA::is_nil (obj))
      {
        obj->_add_ref ();
      }
    return obj;
  }
  
  void
  OpenDDS::DCPS::DataReaderReportTypeSupport::_tao_release (DataReaderReportTypeSupport_ptr obj)
  {
    ::CORBA::release (obj);
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::DataReaderReportTypeSupport::_is_a (const char *value)
  {
    if (
        ACE_OS::strcmp (
            value,
            "IDL:DDS/TypeSupport:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/TypeSupport:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/DataReaderReportTypeSupport:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/LocalObject:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/Object:1.0"
          ) == 0
      )
      {
        return true; // success using local knowledge
      }
    else
      {
        return false;
      }
  }
  
  const char* OpenDDS::DCPS::DataReaderReportTypeSupport::_interface_repository_id (void) const
  {
    return "IDL:OpenDDS/DCPS/DataReaderReportTypeSupport:1.0";
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::DataReaderReportTypeSupport::marshal (TAO_OutputCDR & /* cdr */)
  {
    return false;
  }
  
  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_cs.cpp:51
  
  // Traits specializations for OpenDDS::DCPS::DataReaderReportDataWriter.
  
  OpenDDS::DCPS::DataReaderReportDataWriter_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::DataReaderReportDataWriter>::duplicate (
      OpenDDS::DCPS::DataReaderReportDataWriter_ptr p)
  {
    return OpenDDS::DCPS::DataReaderReportDataWriter::_duplicate (p);
  }
  
  void
  TAO::Objref_Traits<OpenDDS::DCPS::DataReaderReportDataWriter>::release (
      OpenDDS::DCPS::DataReaderReportDataWriter_ptr p)
  {
    ::CORBA::release (p);
  }
  
  OpenDDS::DCPS::DataReaderReportDataWriter_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::DataReaderReportDataWriter>::nil (void)
  {
    return OpenDDS::DCPS::DataReaderReportDataWriter::_nil ();
  }
  
  ::CORBA::Boolean
  TAO::Objref_Traits<OpenDDS::DCPS::DataReaderReportDataWriter>::marshal (
      const OpenDDS::DCPS::DataReaderReportDataWriter_ptr p,
      TAO_OutputCDR & cdr)
  {
    return ::CORBA::Object::marshal (p, cdr);
  }
  
  OpenDDS::DCPS::DataReaderReportDataWriter::DataReaderReportDataWriter (void)
  {}
  
  OpenDDS::DCPS::DataReaderReportDataWriter::~DataReaderReportDataWriter (void)
  {
  }
  
  OpenDDS::DCPS::DataReaderReportDataWriter_ptr
  OpenDDS::DCPS::DataReaderReportDataWriter::_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return DataReaderReportDataWriter::_duplicate (
        dynamic_cast<DataReaderReportDataWriter_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::DataReaderReportDataWriter_ptr
  OpenDDS::DCPS::DataReaderReportDataWriter::_unchecked_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return DataReaderReportDataWriter::_duplicate (
        dynamic_cast<DataReaderReportDataWriter_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::DataReaderReportDataWriter_ptr
  OpenDDS::DCPS::DataReaderReportDataWriter::_nil (void)
  {
    return 0;
  }
  
  OpenDDS::DCPS::DataReaderReportDataWriter_ptr
  OpenDDS::DCPS::DataReaderReportDataWriter::_duplicate (DataReaderReportDataWriter_ptr obj)
  {
    if (! ::CORBA::is_nil (obj))
      {
        obj->_add_ref ();
      }
    return obj;
  }
  
  void
  OpenDDS::DCPS::DataReaderReportDataWriter::_tao_release (DataReaderReportDataWriter_ptr obj)
  {
    ::CORBA::release (obj);
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::DataReaderReportDataWriter::_is_a (const char *value)
  {
    if (
        ACE_OS::strcmp (
            value,
            "IDL:DDS/Entity:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:DDS/DataWriter:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/DataReaderReportDataWriter:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/LocalObject:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/Object:1.0"
          ) == 0
      )
      {
        return true; // success using local knowledge
      }
    else
      {
        return false;
      }
  }
  
  const char* OpenDDS::DCPS::DataReaderReportDataWriter::_interface_repository_id (void) const
  {
    return "IDL:OpenDDS/DCPS/DataReaderReportDataWriter:1.0";
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::DataReaderReportDataWriter::marshal (TAO_OutputCDR & /* cdr */)
  {
    return false;
  }
  
  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_cs.cpp:51
  
  // Traits specializations for OpenDDS::DCPS::DataReaderReportDataReader.
  
  OpenDDS::DCPS::DataReaderReportDataReader_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::DataReaderReportDataReader>::duplicate (
      OpenDDS::DCPS::DataReaderReportDataReader_ptr p)
  {
    return OpenDDS::DCPS::DataReaderReportDataReader::_duplicate (p);
  }
  
  void
  TAO::Objref_Traits<OpenDDS::DCPS::DataReaderReportDataReader>::release (
      OpenDDS::DCPS::DataReaderReportDataReader_ptr p)
  {
    ::CORBA::release (p);
  }
  
  OpenDDS::DCPS::DataReaderReportDataReader_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::DataReaderReportDataReader>::nil (void)
  {
    return OpenDDS::DCPS::DataReaderReportDataReader::_nil ();
  }
  
  ::CORBA::Boolean
  TAO::Objref_Traits<OpenDDS::DCPS::DataReaderReportDataReader>::marshal (
      const OpenDDS::DCPS::DataReaderReportDataReader_ptr p,
      TAO_OutputCDR & cdr)
  {
    return ::CORBA::Object::marshal (p, cdr);
  }
  
  OpenDDS::DCPS::DataReaderReportDataReader::DataReaderReportDataReader (void)
  {}
  
  OpenDDS::DCPS::DataReaderReportDataReader::~DataReaderReportDataReader (void)
  {
  }
  
  OpenDDS::DCPS::DataReaderReportDataReader_ptr
  OpenDDS::DCPS::DataReaderReportDataReader::_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return DataReaderReportDataReader::_duplicate (
        dynamic_cast<DataReaderReportDataReader_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::DataReaderReportDataReader_ptr
  OpenDDS::DCPS::DataReaderReportDataReader::_unchecked_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return DataReaderReportDataReader::_duplicate (
        dynamic_cast<DataReaderReportDataReader_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::DataReaderReportDataReader_ptr
  OpenDDS::DCPS::DataReaderReportDataReader::_nil (void)
  {
    return 0;
  }
  
  OpenDDS::DCPS::DataReaderReportDataReader_ptr
  OpenDDS::DCPS::DataReaderReportDataReader::_duplicate (DataReaderReportDataReader_ptr obj)
  {
    if (! ::CORBA::is_nil (obj))
      {
        obj->_add_ref ();
      }
    return obj;
  }
  
  void
  OpenDDS::DCPS::DataReaderReportDataReader::_tao_release (DataReaderReportDataReader_ptr obj)
  {
    ::CORBA::release (obj);
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::DataReaderReportDataReader::_is_a (const char *value)
  {
    if (
        ACE_OS::strcmp (
            value,
            "IDL:DDS/Entity:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:DDS/DataReader:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/DataReaderEx:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/DataReaderReportDataReader:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/LocalObject:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/Object:1.0"
          ) == 0
      )
      {
        return true; // success using local knowledge
      }
    else
      {
        return false;
      }
  }
  
  const char* OpenDDS::DCPS::DataReaderReportDataReader::_interface_repository_id (void) const
  {
    return "IDL:OpenDDS/DCPS/DataReaderReportDataReader:1.0";
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::DataReaderReportDataReader::marshal (TAO_OutputCDR & /* cdr */)
  {
    return false;
  }
  
  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_cs.cpp:51
  
  // Traits specializations for OpenDDS::DCPS::DataReaderPeriodicReportTypeSupport.
  
  OpenDDS::DCPS::DataReaderPeriodicReportTypeSupport_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::DataReaderPeriodicReportTypeSupport>::duplicate (
      OpenDDS::DCPS::DataReaderPeriodicReportTypeSupport_ptr p)
  {
    return OpenDDS::DCPS::DataReaderPeriodicReportTypeSupport::_duplicate (p);
  }
  
  void
  TAO::Objref_Traits<OpenDDS::DCPS::DataReaderPeriodicReportTypeSupport>::release (
      OpenDDS::DCPS::DataReaderPeriodicReportTypeSupport_ptr p)
  {
    ::CORBA::release (p);
  }
  
  OpenDDS::DCPS::DataReaderPeriodicReportTypeSupport_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::DataReaderPeriodicReportTypeSupport>::nil (void)
  {
    return OpenDDS::DCPS::DataReaderPeriodicReportTypeSupport::_nil ();
  }
  
  ::CORBA::Boolean
  TAO::Objref_Traits<OpenDDS::DCPS::DataReaderPeriodicReportTypeSupport>::marshal (
      const OpenDDS::DCPS::DataReaderPeriodicReportTypeSupport_ptr p,
      TAO_OutputCDR & cdr)
  {
    return ::CORBA::Object::marshal (p, cdr);
  }
  
  OpenDDS::DCPS::DataReaderPeriodicReportTypeSupport::DataReaderPeriodicReportTypeSupport (void)
  {}
  
  OpenDDS::DCPS::DataReaderPeriodicReportTypeSupport::~DataReaderPeriodicReportTypeSupport (void)
  {
  }
  
  OpenDDS::DCPS::DataReaderPeriodicReportTypeSupport_ptr
  OpenDDS::DCPS::DataReaderPeriodicReportTypeSupport::_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return DataReaderPeriodicReportTypeSupport::_duplicate (
        dynamic_cast<DataReaderPeriodicReportTypeSupport_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::DataReaderPeriodicReportTypeSupport_ptr
  OpenDDS::DCPS::DataReaderPeriodicReportTypeSupport::_unchecked_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return DataReaderPeriodicReportTypeSupport::_duplicate (
        dynamic_cast<DataReaderPeriodicReportTypeSupport_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::DataReaderPeriodicReportTypeSupport_ptr
  OpenDDS::DCPS::DataReaderPeriodicReportTypeSupport::_nil (void)
  {
    return 0;
  }
  
  OpenDDS::DCPS::DataReaderPeriodicReportTypeSupport_ptr
  OpenDDS::DCPS::DataReaderPeriodicReportTypeSupport::_duplicate (DataReaderPeriodicReportTypeSupport_ptr obj)
  {
    if (! ::CORBA::is_nil (obj))
      {
        obj->_add_ref ();
      }
    return obj;
  }
  
  void
  OpenDDS::DCPS::DataReaderPeriodicReportTypeSupport::_tao_release (DataReaderPeriodicReportTypeSupport_ptr obj)
  {
    ::CORBA::release (obj);
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::DataReaderPeriodicReportTypeSupport::_is_a (const char *value)
  {
    if (
        ACE_OS::strcmp (
            value,
            "IDL:DDS/TypeSupport:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/TypeSupport:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/DataReaderPeriodicReportTypeSupport:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/LocalObject:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/Object:1.0"
          ) == 0
      )
      {
        return true; // success using local knowledge
      }
    else
      {
        return false;
      }
  }
  
  const char* OpenDDS::DCPS::DataReaderPeriodicReportTypeSupport::_interface_repository_id (void) const
  {
    return "IDL:OpenDDS/DCPS/DataReaderPeriodicReportTypeSupport:1.0";
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::DataReaderPeriodicReportTypeSupport::marshal (TAO_OutputCDR & /* cdr */)
  {
    return false;
  }
  
  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_cs.cpp:51
  
  // Traits specializations for OpenDDS::DCPS::DataReaderPeriodicReportDataWriter.
  
  OpenDDS::DCPS::DataReaderPeriodicReportDataWriter_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::DataReaderPeriodicReportDataWriter>::duplicate (
      OpenDDS::DCPS::DataReaderPeriodicReportDataWriter_ptr p)
  {
    return OpenDDS::DCPS::DataReaderPeriodicReportDataWriter::_duplicate (p);
  }
  
  void
  TAO::Objref_Traits<OpenDDS::DCPS::DataReaderPeriodicReportDataWriter>::release (
      OpenDDS::DCPS::DataReaderPeriodicReportDataWriter_ptr p)
  {
    ::CORBA::release (p);
  }
  
  OpenDDS::DCPS::DataReaderPeriodicReportDataWriter_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::DataReaderPeriodicReportDataWriter>::nil (void)
  {
    return OpenDDS::DCPS::DataReaderPeriodicReportDataWriter::_nil ();
  }
  
  ::CORBA::Boolean
  TAO::Objref_Traits<OpenDDS::DCPS::DataReaderPeriodicReportDataWriter>::marshal (
      const OpenDDS::DCPS::DataReaderPeriodicReportDataWriter_ptr p,
      TAO_OutputCDR & cdr)
  {
    return ::CORBA::Object::marshal (p, cdr);
  }
  
  OpenDDS::DCPS::DataReaderPeriodicReportDataWriter::DataReaderPeriodicReportDataWriter (void)
  {}
  
  OpenDDS::DCPS::DataReaderPeriodicReportDataWriter::~DataReaderPeriodicReportDataWriter (void)
  {
  }
  
  OpenDDS::DCPS::DataReaderPeriodicReportDataWriter_ptr
  OpenDDS::DCPS::DataReaderPeriodicReportDataWriter::_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return DataReaderPeriodicReportDataWriter::_duplicate (
        dynamic_cast<DataReaderPeriodicReportDataWriter_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::DataReaderPeriodicReportDataWriter_ptr
  OpenDDS::DCPS::DataReaderPeriodicReportDataWriter::_unchecked_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return DataReaderPeriodicReportDataWriter::_duplicate (
        dynamic_cast<DataReaderPeriodicReportDataWriter_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::DataReaderPeriodicReportDataWriter_ptr
  OpenDDS::DCPS::DataReaderPeriodicReportDataWriter::_nil (void)
  {
    return 0;
  }
  
  OpenDDS::DCPS::DataReaderPeriodicReportDataWriter_ptr
  OpenDDS::DCPS::DataReaderPeriodicReportDataWriter::_duplicate (DataReaderPeriodicReportDataWriter_ptr obj)
  {
    if (! ::CORBA::is_nil (obj))
      {
        obj->_add_ref ();
      }
    return obj;
  }
  
  void
  OpenDDS::DCPS::DataReaderPeriodicReportDataWriter::_tao_release (DataReaderPeriodicReportDataWriter_ptr obj)
  {
    ::CORBA::release (obj);
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::DataReaderPeriodicReportDataWriter::_is_a (const char *value)
  {
    if (
        ACE_OS::strcmp (
            value,
            "IDL:DDS/Entity:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:DDS/DataWriter:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/DataReaderPeriodicReportDataWriter:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/LocalObject:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/Object:1.0"
          ) == 0
      )
      {
        return true; // success using local knowledge
      }
    else
      {
        return false;
      }
  }
  
  const char* OpenDDS::DCPS::DataReaderPeriodicReportDataWriter::_interface_repository_id (void) const
  {
    return "IDL:OpenDDS/DCPS/DataReaderPeriodicReportDataWriter:1.0";
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::DataReaderPeriodicReportDataWriter::marshal (TAO_OutputCDR & /* cdr */)
  {
    return false;
  }
  
  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_cs.cpp:51
  
  // Traits specializations for OpenDDS::DCPS::DataReaderPeriodicReportDataReader.
  
  OpenDDS::DCPS::DataReaderPeriodicReportDataReader_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::DataReaderPeriodicReportDataReader>::duplicate (
      OpenDDS::DCPS::DataReaderPeriodicReportDataReader_ptr p)
  {
    return OpenDDS::DCPS::DataReaderPeriodicReportDataReader::_duplicate (p);
  }
  
  void
  TAO::Objref_Traits<OpenDDS::DCPS::DataReaderPeriodicReportDataReader>::release (
      OpenDDS::DCPS::DataReaderPeriodicReportDataReader_ptr p)
  {
    ::CORBA::release (p);
  }
  
  OpenDDS::DCPS::DataReaderPeriodicReportDataReader_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::DataReaderPeriodicReportDataReader>::nil (void)
  {
    return OpenDDS::DCPS::DataReaderPeriodicReportDataReader::_nil ();
  }
  
  ::CORBA::Boolean
  TAO::Objref_Traits<OpenDDS::DCPS::DataReaderPeriodicReportDataReader>::marshal (
      const OpenDDS::DCPS::DataReaderPeriodicReportDataReader_ptr p,
      TAO_OutputCDR & cdr)
  {
    return ::CORBA::Object::marshal (p, cdr);
  }
  
  OpenDDS::DCPS::DataReaderPeriodicReportDataReader::DataReaderPeriodicReportDataReader (void)
  {}
  
  OpenDDS::DCPS::DataReaderPeriodicReportDataReader::~DataReaderPeriodicReportDataReader (void)
  {
  }
  
  OpenDDS::DCPS::DataReaderPeriodicReportDataReader_ptr
  OpenDDS::DCPS::DataReaderPeriodicReportDataReader::_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return DataReaderPeriodicReportDataReader::_duplicate (
        dynamic_cast<DataReaderPeriodicReportDataReader_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::DataReaderPeriodicReportDataReader_ptr
  OpenDDS::DCPS::DataReaderPeriodicReportDataReader::_unchecked_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return DataReaderPeriodicReportDataReader::_duplicate (
        dynamic_cast<DataReaderPeriodicReportDataReader_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::DataReaderPeriodicReportDataReader_ptr
  OpenDDS::DCPS::DataReaderPeriodicReportDataReader::_nil (void)
  {
    return 0;
  }
  
  OpenDDS::DCPS::DataReaderPeriodicReportDataReader_ptr
  OpenDDS::DCPS::DataReaderPeriodicReportDataReader::_duplicate (DataReaderPeriodicReportDataReader_ptr obj)
  {
    if (! ::CORBA::is_nil (obj))
      {
        obj->_add_ref ();
      }
    return obj;
  }
  
  void
  OpenDDS::DCPS::DataReaderPeriodicReportDataReader::_tao_release (DataReaderPeriodicReportDataReader_ptr obj)
  {
    ::CORBA::release (obj);
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::DataReaderPeriodicReportDataReader::_is_a (const char *value)
  {
    if (
        ACE_OS::strcmp (
            value,
            "IDL:DDS/Entity:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:DDS/DataReader:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/DataReaderEx:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/DataReaderPeriodicReportDataReader:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/LocalObject:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/Object:1.0"
          ) == 0
      )
      {
        return true; // success using local knowledge
      }
    else
      {
        return false;
      }
  }
  
  const char* OpenDDS::DCPS::DataReaderPeriodicReportDataReader::_interface_repository_id (void) const
  {
    return "IDL:OpenDDS/DCPS/DataReaderPeriodicReportDataReader:1.0";
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::DataReaderPeriodicReportDataReader::marshal (TAO_OutputCDR & /* cdr */)
  {
    return false;
  }
  
  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_cs.cpp:51
  
  // Traits specializations for OpenDDS::DCPS::TransportReportTypeSupport.
  
  OpenDDS::DCPS::TransportReportTypeSupport_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::TransportReportTypeSupport>::duplicate (
      OpenDDS::DCPS::TransportReportTypeSupport_ptr p)
  {
    return OpenDDS::DCPS::TransportReportTypeSupport::_duplicate (p);
  }
  
  void
  TAO::Objref_Traits<OpenDDS::DCPS::TransportReportTypeSupport>::release (
      OpenDDS::DCPS::TransportReportTypeSupport_ptr p)
  {
    ::CORBA::release (p);
  }
  
  OpenDDS::DCPS::TransportReportTypeSupport_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::TransportReportTypeSupport>::nil (void)
  {
    return OpenDDS::DCPS::TransportReportTypeSupport::_nil ();
  }
  
  ::CORBA::Boolean
  TAO::Objref_Traits<OpenDDS::DCPS::TransportReportTypeSupport>::marshal (
      const OpenDDS::DCPS::TransportReportTypeSupport_ptr p,
      TAO_OutputCDR & cdr)
  {
    return ::CORBA::Object::marshal (p, cdr);
  }
  
  OpenDDS::DCPS::TransportReportTypeSupport::TransportReportTypeSupport (void)
  {}
  
  OpenDDS::DCPS::TransportReportTypeSupport::~TransportReportTypeSupport (void)
  {
  }
  
  OpenDDS::DCPS::TransportReportTypeSupport_ptr
  OpenDDS::DCPS::TransportReportTypeSupport::_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return TransportReportTypeSupport::_duplicate (
        dynamic_cast<TransportReportTypeSupport_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::TransportReportTypeSupport_ptr
  OpenDDS::DCPS::TransportReportTypeSupport::_unchecked_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return TransportReportTypeSupport::_duplicate (
        dynamic_cast<TransportReportTypeSupport_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::TransportReportTypeSupport_ptr
  OpenDDS::DCPS::TransportReportTypeSupport::_nil (void)
  {
    return 0;
  }
  
  OpenDDS::DCPS::TransportReportTypeSupport_ptr
  OpenDDS::DCPS::TransportReportTypeSupport::_duplicate (TransportReportTypeSupport_ptr obj)
  {
    if (! ::CORBA::is_nil (obj))
      {
        obj->_add_ref ();
      }
    return obj;
  }
  
  void
  OpenDDS::DCPS::TransportReportTypeSupport::_tao_release (TransportReportTypeSupport_ptr obj)
  {
    ::CORBA::release (obj);
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::TransportReportTypeSupport::_is_a (const char *value)
  {
    if (
        ACE_OS::strcmp (
            value,
            "IDL:DDS/TypeSupport:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/TypeSupport:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/TransportReportTypeSupport:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/LocalObject:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/Object:1.0"
          ) == 0
      )
      {
        return true; // success using local knowledge
      }
    else
      {
        return false;
      }
  }
  
  const char* OpenDDS::DCPS::TransportReportTypeSupport::_interface_repository_id (void) const
  {
    return "IDL:OpenDDS/DCPS/TransportReportTypeSupport:1.0";
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::TransportReportTypeSupport::marshal (TAO_OutputCDR & /* cdr */)
  {
    return false;
  }
  
  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_cs.cpp:51
  
  // Traits specializations for OpenDDS::DCPS::TransportReportDataWriter.
  
  OpenDDS::DCPS::TransportReportDataWriter_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::TransportReportDataWriter>::duplicate (
      OpenDDS::DCPS::TransportReportDataWriter_ptr p)
  {
    return OpenDDS::DCPS::TransportReportDataWriter::_duplicate (p);
  }
  
  void
  TAO::Objref_Traits<OpenDDS::DCPS::TransportReportDataWriter>::release (
      OpenDDS::DCPS::TransportReportDataWriter_ptr p)
  {
    ::CORBA::release (p);
  }
  
  OpenDDS::DCPS::TransportReportDataWriter_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::TransportReportDataWriter>::nil (void)
  {
    return OpenDDS::DCPS::TransportReportDataWriter::_nil ();
  }
  
  ::CORBA::Boolean
  TAO::Objref_Traits<OpenDDS::DCPS::TransportReportDataWriter>::marshal (
      const OpenDDS::DCPS::TransportReportDataWriter_ptr p,
      TAO_OutputCDR & cdr)
  {
    return ::CORBA::Object::marshal (p, cdr);
  }
  
  OpenDDS::DCPS::TransportReportDataWriter::TransportReportDataWriter (void)
  {}
  
  OpenDDS::DCPS::TransportReportDataWriter::~TransportReportDataWriter (void)
  {
  }
  
  OpenDDS::DCPS::TransportReportDataWriter_ptr
  OpenDDS::DCPS::TransportReportDataWriter::_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return TransportReportDataWriter::_duplicate (
        dynamic_cast<TransportReportDataWriter_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::TransportReportDataWriter_ptr
  OpenDDS::DCPS::TransportReportDataWriter::_unchecked_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return TransportReportDataWriter::_duplicate (
        dynamic_cast<TransportReportDataWriter_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::TransportReportDataWriter_ptr
  OpenDDS::DCPS::TransportReportDataWriter::_nil (void)
  {
    return 0;
  }
  
  OpenDDS::DCPS::TransportReportDataWriter_ptr
  OpenDDS::DCPS::TransportReportDataWriter::_duplicate (TransportReportDataWriter_ptr obj)
  {
    if (! ::CORBA::is_nil (obj))
      {
        obj->_add_ref ();
      }
    return obj;
  }
  
  void
  OpenDDS::DCPS::TransportReportDataWriter::_tao_release (TransportReportDataWriter_ptr obj)
  {
    ::CORBA::release (obj);
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::TransportReportDataWriter::_is_a (const char *value)
  {
    if (
        ACE_OS::strcmp (
            value,
            "IDL:DDS/Entity:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:DDS/DataWriter:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/TransportReportDataWriter:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/LocalObject:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/Object:1.0"
          ) == 0
      )
      {
        return true; // success using local knowledge
      }
    else
      {
        return false;
      }
  }
  
  const char* OpenDDS::DCPS::TransportReportDataWriter::_interface_repository_id (void) const
  {
    return "IDL:OpenDDS/DCPS/TransportReportDataWriter:1.0";
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::TransportReportDataWriter::marshal (TAO_OutputCDR & /* cdr */)
  {
    return false;
  }
  
  // TAO_IDL - Generated from
  // be/be_visitor_interface/interface_cs.cpp:51
  
  // Traits specializations for OpenDDS::DCPS::TransportReportDataReader.
  
  OpenDDS::DCPS::TransportReportDataReader_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::TransportReportDataReader>::duplicate (
      OpenDDS::DCPS::TransportReportDataReader_ptr p)
  {
    return OpenDDS::DCPS::TransportReportDataReader::_duplicate (p);
  }
  
  void
  TAO::Objref_Traits<OpenDDS::DCPS::TransportReportDataReader>::release (
      OpenDDS::DCPS::TransportReportDataReader_ptr p)
  {
    ::CORBA::release (p);
  }
  
  OpenDDS::DCPS::TransportReportDataReader_ptr
  TAO::Objref_Traits<OpenDDS::DCPS::TransportReportDataReader>::nil (void)
  {
    return OpenDDS::DCPS::TransportReportDataReader::_nil ();
  }
  
  ::CORBA::Boolean
  TAO::Objref_Traits<OpenDDS::DCPS::TransportReportDataReader>::marshal (
      const OpenDDS::DCPS::TransportReportDataReader_ptr p,
      TAO_OutputCDR & cdr)
  {
    return ::CORBA::Object::marshal (p, cdr);
  }
  
  OpenDDS::DCPS::TransportReportDataReader::TransportReportDataReader (void)
  {}
  
  OpenDDS::DCPS::TransportReportDataReader::~TransportReportDataReader (void)
  {
  }
  
  OpenDDS::DCPS::TransportReportDataReader_ptr
  OpenDDS::DCPS::TransportReportDataReader::_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return TransportReportDataReader::_duplicate (
        dynamic_cast<TransportReportDataReader_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::TransportReportDataReader_ptr
  OpenDDS::DCPS::TransportReportDataReader::_unchecked_narrow (
      ::CORBA::Object_ptr _tao_objref)
  {
    return TransportReportDataReader::_duplicate (
        dynamic_cast<TransportReportDataReader_ptr> (_tao_objref)
      );
  }
  
  OpenDDS::DCPS::TransportReportDataReader_ptr
  OpenDDS::DCPS::TransportReportDataReader::_nil (void)
  {
    return 0;
  }
  
  OpenDDS::DCPS::TransportReportDataReader_ptr
  OpenDDS::DCPS::TransportReportDataReader::_duplicate (TransportReportDataReader_ptr obj)
  {
    if (! ::CORBA::is_nil (obj))
      {
        obj->_add_ref ();
      }
    return obj;
  }
  
  void
  OpenDDS::DCPS::TransportReportDataReader::_tao_release (TransportReportDataReader_ptr obj)
  {
    ::CORBA::release (obj);
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::TransportReportDataReader::_is_a (const char *value)
  {
    if (
        ACE_OS::strcmp (
            value,
            "IDL:DDS/Entity:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:DDS/DataReader:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/DataReaderEx:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:OpenDDS/DCPS/TransportReportDataReader:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/LocalObject:1.0"
          ) == 0 ||
        ACE_OS::strcmp (
            value,
            "IDL:omg.org/CORBA/Object:1.0"
          ) == 0
      )
      {
        return true; // success using local knowledge
      }
    else
      {
        return false;
      }
  }
  
  const char* OpenDDS::DCPS::TransportReportDataReader::_interface_repository_id (void) const
  {
    return "IDL:OpenDDS/DCPS/TransportReportDataReader:1.0";
  }
  
  ::CORBA::Boolean
  OpenDDS::DCPS::TransportReportDataReader::marshal (TAO_OutputCDR & /* cdr */)
  {
    return false;
  }
  
  