// -*- C++ -*-
//
// $Id$

// ****  Code generated by the The ACE ORB (TAO) IDL Compiler ****
// 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
//       http://doc.ece.uci.edu/
// 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_visitor_interface/tie_si.cpp:96

#if defined (ACE_HAS_USING_KEYWORD)

template <class T> ACE_INLINE
POA_CosNotifyFilter::Filter_tie<T>::Filter_tie (T &t)
	: ptr_ (&t),
	  poa_ (PortableServer::POA::_nil ()),
	  rel_ (0)
{}

template <class T> ACE_INLINE
POA_CosNotifyFilter::Filter_tie<T>::Filter_tie (T &t, PortableServer::POA_ptr poa)
	: ptr_ (&t),
	  poa_ (PortableServer::POA::_duplicate (poa)),
	  rel_ (0)
{}

template <class T> ACE_INLINE
POA_CosNotifyFilter::Filter_tie<T>::Filter_tie (T *tp, CORBA::Boolean release)
	: ptr_ (tp),
	  poa_ (PortableServer::POA::_nil ()),
	  rel_ (release)
{}

template <class T> ACE_INLINE
POA_CosNotifyFilter::Filter_tie<T>::Filter_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release)
	: ptr_ (tp),
	  poa_ (PortableServer::POA::_duplicate (poa)),
	  rel_ (release)
{}

template <class T> ACE_INLINE
POA_CosNotifyFilter::Filter_tie<T>::~Filter_tie (void)
{
  if (this->rel_)
    {
      delete this->ptr_;
    }
}

template <class T> ACE_INLINE T *
POA_CosNotifyFilter::Filter_tie<T>::_tied_object (void)
{
  return this->ptr_;
}

template <class T> ACE_INLINE void
POA_CosNotifyFilter::Filter_tie<T>::_tied_object (T &obj)
{
  if (this->rel_)
    {
      delete this->ptr_;
    }
  
  this->ptr_ = &obj;
  this->rel_ = 0;
}

template <class T> ACE_INLINE void
POA_CosNotifyFilter::Filter_tie<T>::_tied_object (T *obj, CORBA::Boolean release)
{
  if (this->rel_)
    {
      delete this->ptr_;
    }
  
  this->ptr_ = obj;
  this->rel_ = release;
}

template <class T> ACE_INLINE CORBA::Boolean
POA_CosNotifyFilter::Filter_tie<T>::_is_owner (void)
{
  return this->rel_;
}

template <class T> ACE_INLINE void
POA_CosNotifyFilter::Filter_tie<T>::_is_owner (CORBA::Boolean b)
{
  this->rel_ = b;
}

template <class T> ACE_INLINE PortableServer::POA_ptr
POA_CosNotifyFilter::Filter_tie<T>::_default_POA (ACE_ENV_SINGLE_ARG_DECL)
{
  if (!CORBA::is_nil (this->poa_.in ()))
    {
      return PortableServer::POA::_duplicate (this->poa_.in ());
    }
  
  return this->Filter::_default_POA (ACE_ENV_SINGLE_ARG_PARAMETER);
}

// TAO_IDL - Generated from 
// be/be_visitor_operation/tie_si.cpp:68

template <class T> ACE_INLINE
char * POA_CosNotifyFilter::Filter_tie<T>::constraint_grammar  (
    ACE_ENV_SINGLE_ARG_DECL
  )
  ACE_THROW_SPEC ((
    CORBA::SystemException
  ))
{
  return this->ptr_->constraint_grammar (
    ACE_ENV_SINGLE_ARG_PARAMETER
  );
}

// TAO_IDL - Generated from 
// be/be_visitor_operation/tie_si.cpp:68

template <class T> ACE_INLINE
::CosNotifyFilter::ConstraintInfoSeq * POA_CosNotifyFilter::Filter_tie<T>::add_constraints  (
    const ::CosNotifyFilter::ConstraintExpSeq & constraint_list
    ACE_ENV_ARG_DECL
  )
  ACE_THROW_SPEC ((
    CORBA::SystemException,
    ::CosNotifyFilter::InvalidConstraint
  ))
{
  return this->ptr_->add_constraints (
    constraint_list
    ACE_ENV_ARG_PARAMETER
  );
}

// TAO_IDL - Generated from 
// be/be_visitor_operation/tie_si.cpp:68

template <class T> ACE_INLINE
void POA_CosNotifyFilter::Filter_tie<T>::modify_constraints  (
    const ::CosNotifyFilter::ConstraintIDSeq & del_list,
    const ::CosNotifyFilter::ConstraintInfoSeq & modify_list
    ACE_ENV_ARG_DECL
  )
  ACE_THROW_SPEC ((
    CORBA::SystemException,
    ::CosNotifyFilter::InvalidConstraint,
    ::CosNotifyFilter::ConstraintNotFound
  ))
{
  this->ptr_->modify_constraints (
    del_list,
    modify_list
    ACE_ENV_ARG_PARAMETER
  );
}

// TAO_IDL - Generated from 
// be/be_visitor_operation/tie_si.cpp:68

template <class T> ACE_INLINE
::CosNotifyFilter::ConstraintInfoSeq * POA_CosNotifyFilter::Filter_tie<T>::get_constraints  (
    const ::CosNotifyFilter::ConstraintIDSeq & id_list
    ACE_ENV_ARG_DECL
  )
  ACE_THROW_SPEC ((
    CORBA::SystemException,
    ::CosNotifyFilter::ConstraintNotFound
  ))
{
  return this->ptr_->get_constraints (
    id_list
    ACE_ENV_ARG_PARAMETER
  );
}

// TAO_IDL - Generated from 
// be/be_visitor_operation/tie_si.cpp:68

template <class T> ACE_INLINE
::CosNotifyFilter::ConstraintInfoSeq * POA_CosNotifyFilter::Filter_tie<T>::get_all_constraints  (
    ACE_ENV_SINGLE_ARG_DECL
  )
  ACE_THROW_SPEC ((
    CORBA::SystemException
  ))
{
  return this->ptr_->get_all_constraints (
    ACE_ENV_SINGLE_ARG_PARAMETER
  );
}

// TAO_IDL - Generated from 
// be/be_visitor_operation/tie_si.cpp:68

template <class T> ACE_INLINE
void POA_CosNotifyFilter::Filter_tie<T>::remove_all_constraints  (
    ACE_ENV_SINGLE_ARG_DECL
  )
  ACE_THROW_SPEC ((
    CORBA::SystemException
  ))
{
  this->ptr_->remove_all_constraints (
    ACE_ENV_SINGLE_ARG_PARAMETER
  );
}

// TAO_IDL - Generated from 
// be/be_visitor_operation/tie_si.cpp:68

template <class T> ACE_INLINE
void POA_CosNotifyFilter::Filter_tie<T>::destroy  (
    ACE_ENV_SINGLE_ARG_DECL
  )
  ACE_THROW_SPEC ((
    CORBA::SystemException
  ))
{
  this->ptr_->destroy (
    ACE_ENV_SINGLE_ARG_PARAMETER
  );
}

// TAO_IDL - Generated from 
// be/be_visitor_operation/tie_si.cpp:68

template <class T> ACE_INLINE
CORBA::Boolean POA_CosNotifyFilter::Filter_tie<T>::match  (
    const ::CORBA::Any & filterable_data
    ACE_ENV_ARG_DECL
  )
  ACE_THROW_SPEC ((
    CORBA::SystemException,
    ::CosNotifyFilter::UnsupportedFilterableData
  ))
{
  return this->ptr_->match (
    filterable_data
    ACE_ENV_ARG_PARAMETER
  );
}

// TAO_IDL - Generated from 
// be/be_visitor_operation/tie_si.cpp:68

template <class T> ACE_INLINE
CORBA::Boolean POA_CosNotifyFilter::Filter_tie<T>::match_structured  (
    const ::CosNotification::StructuredEvent & filterable_data
    ACE_ENV_ARG_DECL
  )
  ACE_THROW_SPEC ((
    CORBA::SystemException,
    ::CosNotifyFilter::UnsupportedFilterableData
  ))
{
  return this->ptr_->match_structured (
    filterable_data
    ACE_ENV_ARG_PARAMETER
  );
}

// TAO_IDL - Generated from 
// be/be_visitor_operation/tie_si.cpp:68

template <class T> ACE_INLINE
CORBA::Boolean POA_CosNotifyFilter::Filter_tie<T>::match_typed  (
    const ::CosNotification::PropertySeq & filterable_data
    ACE_ENV_ARG_DECL
  )
  ACE_THROW_SPEC ((
    CORBA::SystemException,
    ::CosNotifyFilter::UnsupportedFilterableData
  ))
{
  return this->ptr_->match_typed (
    filterable_data
    ACE_ENV_ARG_PARAMETER
  );
}

// TAO_IDL - Generated from 
// be/be_visitor_operation/tie_si.cpp:68

template <class T> ACE_INLINE
CosNotifyFilter::CallbackID POA_CosNotifyFilter::Filter_tie<T>::attach_callback  (
    ::CosNotifyComm::NotifySubscribe_ptr callback
    ACE_ENV_ARG_DECL
  )
  ACE_THROW_SPEC ((
    CORBA::SystemException
  ))
{
  return this->ptr_->attach_callback (
    callback
    ACE_ENV_ARG_PARAMETER
  );
}

// TAO_IDL - Generated from 
// be/be_visitor_operation/tie_si.cpp:68

template <class T> ACE_INLINE
void POA_CosNotifyFilter::Filter_tie<T>::detach_callback  (
    ::CosNotifyFilter::CallbackID callback
    ACE_ENV_ARG_DECL
  )
  ACE_THROW_SPEC ((
    CORBA::SystemException,
    ::CosNotifyFilter::CallbackNotFound
  ))
{
  this->ptr_->detach_callback (
    callback
    ACE_ENV_ARG_PARAMETER
  );
}

// TAO_IDL - Generated from 
// be/be_visitor_operation/tie_si.cpp:68

template <class T> ACE_INLINE
::CosNotifyFilter::CallbackIDSeq * POA_CosNotifyFilter::Filter_tie<T>::get_callbacks  (
    ACE_ENV_SINGLE_ARG_DECL
  )
  ACE_THROW_SPEC ((
    CORBA::SystemException
  ))
{
  return this->ptr_->get_callbacks (
    ACE_ENV_SINGLE_ARG_PARAMETER
  );
}

#endif /* ACE_HAS_USING_KEYWORD */

// TAO_IDL - Generated from
// be/be_visitor_interface/tie_si.cpp:96

#if defined (ACE_HAS_USING_KEYWORD)

template <class T> ACE_INLINE
POA_CosNotifyFilter::MappingFilter_tie<T>::MappingFilter_tie (T &t)
	: ptr_ (&t),
	  poa_ (PortableServer::POA::_nil ()),
	  rel_ (0)
{}

template <class T> ACE_INLINE
POA_CosNotifyFilter::MappingFilter_tie<T>::MappingFilter_tie (T &t, PortableServer::POA_ptr poa)
	: ptr_ (&t),
	  poa_ (PortableServer::POA::_duplicate (poa)),
	  rel_ (0)
{}

template <class T> ACE_INLINE
POA_CosNotifyFilter::MappingFilter_tie<T>::MappingFilter_tie (T *tp, CORBA::Boolean release)
	: ptr_ (tp),
	  poa_ (PortableServer::POA::_nil ()),
	  rel_ (release)
{}

template <class T> ACE_INLINE
POA_CosNotifyFilter::MappingFilter_tie<T>::MappingFilter_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release)
	: ptr_ (tp),
	  poa_ (PortableServer::POA::_duplicate (poa)),
	  rel_ (release)
{}

template <class T> ACE_INLINE
POA_CosNotifyFilter::MappingFilter_tie<T>::~MappingFilter_tie (void)
{
  if (this->rel_)
    {
      delete this->ptr_;
    }
}

template <class T> ACE_INLINE T *
POA_CosNotifyFilter::MappingFilter_tie<T>::_tied_object (void)
{
  return this->ptr_;
}

template <class T> ACE_INLINE void
POA_CosNotifyFilter::MappingFilter_tie<T>::_tied_object (T &obj)
{
  if (this->rel_)
    {
      delete this->ptr_;
    }
  
  this->ptr_ = &obj;
  this->rel_ = 0;
}

template <class T> ACE_INLINE void
POA_CosNotifyFilter::MappingFilter_tie<T>::_tied_object (T *obj, CORBA::Boolean release)
{
  if (this->rel_)
    {
      delete this->ptr_;
    }
  
  this->ptr_ = obj;
  this->rel_ = release;
}

template <class T> ACE_INLINE CORBA::Boolean
POA_CosNotifyFilter::MappingFilter_tie<T>::_is_owner (void)
{
  return this->rel_;
}

template <class T> ACE_INLINE void
POA_CosNotifyFilter::MappingFilter_tie<T>::_is_owner (CORBA::Boolean b)
{
  this->rel_ = b;
}

template <class T> ACE_INLINE PortableServer::POA_ptr
POA_CosNotifyFilter::MappingFilter_tie<T>::_default_POA (ACE_ENV_SINGLE_ARG_DECL)
{
  if (!CORBA::is_nil (this->poa_.in ()))
    {
      return PortableServer::POA::_duplicate (this->poa_.in ());
    }
  
  return this->MappingFilter::_default_POA (ACE_ENV_SINGLE_ARG_PARAMETER);
}

// TAO_IDL - Generated from 
// be/be_visitor_operation/tie_si.cpp:68

template <class T> ACE_INLINE
char * POA_CosNotifyFilter::MappingFilter_tie<T>::constraint_grammar  (
    ACE_ENV_SINGLE_ARG_DECL
  )
  ACE_THROW_SPEC ((
    CORBA::SystemException
  ))
{
  return this->ptr_->constraint_grammar (
    ACE_ENV_SINGLE_ARG_PARAMETER
  );
}

// TAO_IDL - Generated from 
// be/be_visitor_operation/tie_si.cpp:68

template <class T> ACE_INLINE
CORBA::TypeCode_ptr POA_CosNotifyFilter::MappingFilter_tie<T>::value_type  (
    ACE_ENV_SINGLE_ARG_DECL
  )
  ACE_THROW_SPEC ((
    CORBA::SystemException
  ))
{
  return this->ptr_->value_type (
    ACE_ENV_SINGLE_ARG_PARAMETER
  );
}

// TAO_IDL - Generated from 
// be/be_visitor_operation/tie_si.cpp:68

template <class T> ACE_INLINE
CORBA::Any * POA_CosNotifyFilter::MappingFilter_tie<T>::default_value  (
    ACE_ENV_SINGLE_ARG_DECL
  )
  ACE_THROW_SPEC ((
    CORBA::SystemException
  ))
{
  return this->ptr_->default_value (
    ACE_ENV_SINGLE_ARG_PARAMETER
  );
}

// TAO_IDL - Generated from 
// be/be_visitor_operation/tie_si.cpp:68

template <class T> ACE_INLINE
::CosNotifyFilter::MappingConstraintInfoSeq * POA_CosNotifyFilter::MappingFilter_tie<T>::add_mapping_constraints  (
    const ::CosNotifyFilter::MappingConstraintPairSeq & pair_list
    ACE_ENV_ARG_DECL
  )
  ACE_THROW_SPEC ((
    CORBA::SystemException,
    ::CosNotifyFilter::InvalidConstraint,
    ::CosNotifyFilter::InvalidValue
  ))
{
  return this->ptr_->add_mapping_constraints (
    pair_list
    ACE_ENV_ARG_PARAMETER
  );
}

// TAO_IDL - Generated from 
// be/be_visitor_operation/tie_si.cpp:68

template <class T> ACE_INLINE
void POA_CosNotifyFilter::MappingFilter_tie<T>::modify_mapping_constraints  (
    const ::CosNotifyFilter::ConstraintIDSeq & del_list,
    const ::CosNotifyFilter::MappingConstraintInfoSeq & modify_list
    ACE_ENV_ARG_DECL
  )
  ACE_THROW_SPEC ((
    CORBA::SystemException,
    ::CosNotifyFilter::InvalidConstraint,
    ::CosNotifyFilter::InvalidValue,
    ::CosNotifyFilter::ConstraintNotFound
  ))
{
  this->ptr_->modify_mapping_constraints (
    del_list,
    modify_list
    ACE_ENV_ARG_PARAMETER
  );
}

// TAO_IDL - Generated from 
// be/be_visitor_operation/tie_si.cpp:68

template <class T> ACE_INLINE
::CosNotifyFilter::MappingConstraintInfoSeq * POA_CosNotifyFilter::MappingFilter_tie<T>::get_mapping_constraints  (
    const ::CosNotifyFilter::ConstraintIDSeq & id_list
    ACE_ENV_ARG_DECL
  )
  ACE_THROW_SPEC ((
    CORBA::SystemException,
    ::CosNotifyFilter::ConstraintNotFound
  ))
{
  return this->ptr_->get_mapping_constraints (
    id_list
    ACE_ENV_ARG_PARAMETER
  );
}

// TAO_IDL - Generated from 
// be/be_visitor_operation/tie_si.cpp:68

template <class T> ACE_INLINE
::CosNotifyFilter::MappingConstraintInfoSeq * POA_CosNotifyFilter::MappingFilter_tie<T>::get_all_mapping_constraints  (
    ACE_ENV_SINGLE_ARG_DECL
  )
  ACE_THROW_SPEC ((
    CORBA::SystemException
  ))
{
  return this->ptr_->get_all_mapping_constraints (
    ACE_ENV_SINGLE_ARG_PARAMETER
  );
}

// TAO_IDL - Generated from 
// be/be_visitor_operation/tie_si.cpp:68

template <class T> ACE_INLINE
void POA_CosNotifyFilter::MappingFilter_tie<T>::remove_all_mapping_constraints  (
    ACE_ENV_SINGLE_ARG_DECL
  )
  ACE_THROW_SPEC ((
    CORBA::SystemException
  ))
{
  this->ptr_->remove_all_mapping_constraints (
    ACE_ENV_SINGLE_ARG_PARAMETER
  );
}

// TAO_IDL - Generated from 
// be/be_visitor_operation/tie_si.cpp:68

template <class T> ACE_INLINE
void POA_CosNotifyFilter::MappingFilter_tie<T>::destroy  (
    ACE_ENV_SINGLE_ARG_DECL
  )
  ACE_THROW_SPEC ((
    CORBA::SystemException
  ))
{
  this->ptr_->destroy (
    ACE_ENV_SINGLE_ARG_PARAMETER
  );
}

// TAO_IDL - Generated from 
// be/be_visitor_operation/tie_si.cpp:68

template <class T> ACE_INLINE
CORBA::Boolean POA_CosNotifyFilter::MappingFilter_tie<T>::match  (
    const ::CORBA::Any & filterable_data,
    ::CORBA::Any_out result_to_set
    ACE_ENV_ARG_DECL
  )
  ACE_THROW_SPEC ((
    CORBA::SystemException,
    ::CosNotifyFilter::UnsupportedFilterableData
  ))
{
  return this->ptr_->match (
    filterable_data,
    result_to_set
    ACE_ENV_ARG_PARAMETER
  );
}

// TAO_IDL - Generated from 
// be/be_visitor_operation/tie_si.cpp:68

template <class T> ACE_INLINE
CORBA::Boolean POA_CosNotifyFilter::MappingFilter_tie<T>::match_structured  (
    const ::CosNotification::StructuredEvent & filterable_data,
    ::CORBA::Any_out result_to_set
    ACE_ENV_ARG_DECL
  )
  ACE_THROW_SPEC ((
    CORBA::SystemException,
    ::CosNotifyFilter::UnsupportedFilterableData
  ))
{
  return this->ptr_->match_structured (
    filterable_data,
    result_to_set
    ACE_ENV_ARG_PARAMETER
  );
}

// TAO_IDL - Generated from 
// be/be_visitor_operation/tie_si.cpp:68

template <class T> ACE_INLINE
CORBA::Boolean POA_CosNotifyFilter::MappingFilter_tie<T>::match_typed  (
    const ::CosNotification::PropertySeq & filterable_data,
    ::CORBA::Any_out result_to_set
    ACE_ENV_ARG_DECL
  )
  ACE_THROW_SPEC ((
    CORBA::SystemException,
    ::CosNotifyFilter::UnsupportedFilterableData
  ))
{
  return this->ptr_->match_typed (
    filterable_data,
    result_to_set
    ACE_ENV_ARG_PARAMETER
  );
}

#endif /* ACE_HAS_USING_KEYWORD */

// TAO_IDL - Generated from
// be/be_visitor_interface/tie_si.cpp:96

#if defined (ACE_HAS_USING_KEYWORD)

template <class T> ACE_INLINE
POA_CosNotifyFilter::FilterFactory_tie<T>::FilterFactory_tie (T &t)
	: ptr_ (&t),
	  poa_ (PortableServer::POA::_nil ()),
	  rel_ (0)
{}

template <class T> ACE_INLINE
POA_CosNotifyFilter::FilterFactory_tie<T>::FilterFactory_tie (T &t, PortableServer::POA_ptr poa)
	: ptr_ (&t),
	  poa_ (PortableServer::POA::_duplicate (poa)),
	  rel_ (0)
{}

template <class T> ACE_INLINE
POA_CosNotifyFilter::FilterFactory_tie<T>::FilterFactory_tie (T *tp, CORBA::Boolean release)
	: ptr_ (tp),
	  poa_ (PortableServer::POA::_nil ()),
	  rel_ (release)
{}

template <class T> ACE_INLINE
POA_CosNotifyFilter::FilterFactory_tie<T>::FilterFactory_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release)
	: ptr_ (tp),
	  poa_ (PortableServer::POA::_duplicate (poa)),
	  rel_ (release)
{}

template <class T> ACE_INLINE
POA_CosNotifyFilter::FilterFactory_tie<T>::~FilterFactory_tie (void)
{
  if (this->rel_)
    {
      delete this->ptr_;
    }
}

template <class T> ACE_INLINE T *
POA_CosNotifyFilter::FilterFactory_tie<T>::_tied_object (void)
{
  return this->ptr_;
}

template <class T> ACE_INLINE void
POA_CosNotifyFilter::FilterFactory_tie<T>::_tied_object (T &obj)
{
  if (this->rel_)
    {
      delete this->ptr_;
    }
  
  this->ptr_ = &obj;
  this->rel_ = 0;
}

template <class T> ACE_INLINE void
POA_CosNotifyFilter::FilterFactory_tie<T>::_tied_object (T *obj, CORBA::Boolean release)
{
  if (this->rel_)
    {
      delete this->ptr_;
    }
  
  this->ptr_ = obj;
  this->rel_ = release;
}

template <class T> ACE_INLINE CORBA::Boolean
POA_CosNotifyFilter::FilterFactory_tie<T>::_is_owner (void)
{
  return this->rel_;
}

template <class T> ACE_INLINE void
POA_CosNotifyFilter::FilterFactory_tie<T>::_is_owner (CORBA::Boolean b)
{
  this->rel_ = b;
}

template <class T> ACE_INLINE PortableServer::POA_ptr
POA_CosNotifyFilter::FilterFactory_tie<T>::_default_POA (ACE_ENV_SINGLE_ARG_DECL)
{
  if (!CORBA::is_nil (this->poa_.in ()))
    {
      return PortableServer::POA::_duplicate (this->poa_.in ());
    }
  
  return this->FilterFactory::_default_POA (ACE_ENV_SINGLE_ARG_PARAMETER);
}

// TAO_IDL - Generated from 
// be/be_visitor_operation/tie_si.cpp:68

template <class T> ACE_INLINE
::CosNotifyFilter::Filter_ptr POA_CosNotifyFilter::FilterFactory_tie<T>::create_filter  (
    const char * constraint_grammar
    ACE_ENV_ARG_DECL
  )
  ACE_THROW_SPEC ((
    CORBA::SystemException,
    ::CosNotifyFilter::InvalidGrammar
  ))
{
  return this->ptr_->create_filter (
    constraint_grammar
    ACE_ENV_ARG_PARAMETER
  );
}

// TAO_IDL - Generated from 
// be/be_visitor_operation/tie_si.cpp:68

template <class T> ACE_INLINE
::CosNotifyFilter::MappingFilter_ptr POA_CosNotifyFilter::FilterFactory_tie<T>::create_mapping_filter  (
    const char * constraint_grammar,
    const ::CORBA::Any & default_value
    ACE_ENV_ARG_DECL
  )
  ACE_THROW_SPEC ((
    CORBA::SystemException,
    ::CosNotifyFilter::InvalidGrammar
  ))
{
  return this->ptr_->create_mapping_filter (
    constraint_grammar,
    default_value
    ACE_ENV_ARG_PARAMETER
  );
}

#endif /* ACE_HAS_USING_KEYWORD */

// TAO_IDL - Generated from
// be/be_visitor_interface/tie_si.cpp:96

#if defined (ACE_HAS_USING_KEYWORD)

template <class T> ACE_INLINE
POA_CosNotifyFilter::FilterAdmin_tie<T>::FilterAdmin_tie (T &t)
	: ptr_ (&t),
	  poa_ (PortableServer::POA::_nil ()),
	  rel_ (0)
{}

template <class T> ACE_INLINE
POA_CosNotifyFilter::FilterAdmin_tie<T>::FilterAdmin_tie (T &t, PortableServer::POA_ptr poa)
	: ptr_ (&t),
	  poa_ (PortableServer::POA::_duplicate (poa)),
	  rel_ (0)
{}

template <class T> ACE_INLINE
POA_CosNotifyFilter::FilterAdmin_tie<T>::FilterAdmin_tie (T *tp, CORBA::Boolean release)
	: ptr_ (tp),
	  poa_ (PortableServer::POA::_nil ()),
	  rel_ (release)
{}

template <class T> ACE_INLINE
POA_CosNotifyFilter::FilterAdmin_tie<T>::FilterAdmin_tie (T *tp, PortableServer::POA_ptr poa, CORBA::Boolean release)
	: ptr_ (tp),
	  poa_ (PortableServer::POA::_duplicate (poa)),
	  rel_ (release)
{}

template <class T> ACE_INLINE
POA_CosNotifyFilter::FilterAdmin_tie<T>::~FilterAdmin_tie (void)
{
  if (this->rel_)
    {
      delete this->ptr_;
    }
}

template <class T> ACE_INLINE T *
POA_CosNotifyFilter::FilterAdmin_tie<T>::_tied_object (void)
{
  return this->ptr_;
}

template <class T> ACE_INLINE void
POA_CosNotifyFilter::FilterAdmin_tie<T>::_tied_object (T &obj)
{
  if (this->rel_)
    {
      delete this->ptr_;
    }
  
  this->ptr_ = &obj;
  this->rel_ = 0;
}

template <class T> ACE_INLINE void
POA_CosNotifyFilter::FilterAdmin_tie<T>::_tied_object (T *obj, CORBA::Boolean release)
{
  if (this->rel_)
    {
      delete this->ptr_;
    }
  
  this->ptr_ = obj;
  this->rel_ = release;
}

template <class T> ACE_INLINE CORBA::Boolean
POA_CosNotifyFilter::FilterAdmin_tie<T>::_is_owner (void)
{
  return this->rel_;
}

template <class T> ACE_INLINE void
POA_CosNotifyFilter::FilterAdmin_tie<T>::_is_owner (CORBA::Boolean b)
{
  this->rel_ = b;
}

template <class T> ACE_INLINE PortableServer::POA_ptr
POA_CosNotifyFilter::FilterAdmin_tie<T>::_default_POA (ACE_ENV_SINGLE_ARG_DECL)
{
  if (!CORBA::is_nil (this->poa_.in ()))
    {
      return PortableServer::POA::_duplicate (this->poa_.in ());
    }
  
  return this->FilterAdmin::_default_POA (ACE_ENV_SINGLE_ARG_PARAMETER);
}

// TAO_IDL - Generated from 
// be/be_visitor_operation/tie_si.cpp:68

template <class T> ACE_INLINE
CosNotifyFilter::FilterID POA_CosNotifyFilter::FilterAdmin_tie<T>::add_filter  (
    ::CosNotifyFilter::Filter_ptr new_filter
    ACE_ENV_ARG_DECL
  )
  ACE_THROW_SPEC ((
    CORBA::SystemException
  ))
{
  return this->ptr_->add_filter (
    new_filter
    ACE_ENV_ARG_PARAMETER
  );
}

// TAO_IDL - Generated from 
// be/be_visitor_operation/tie_si.cpp:68

template <class T> ACE_INLINE
void POA_CosNotifyFilter::FilterAdmin_tie<T>::remove_filter  (
    ::CosNotifyFilter::FilterID filter
    ACE_ENV_ARG_DECL
  )
  ACE_THROW_SPEC ((
    CORBA::SystemException,
    ::CosNotifyFilter::FilterNotFound
  ))
{
  this->ptr_->remove_filter (
    filter
    ACE_ENV_ARG_PARAMETER
  );
}

// TAO_IDL - Generated from 
// be/be_visitor_operation/tie_si.cpp:68

template <class T> ACE_INLINE
::CosNotifyFilter::Filter_ptr POA_CosNotifyFilter::FilterAdmin_tie<T>::get_filter  (
    ::CosNotifyFilter::FilterID filter
    ACE_ENV_ARG_DECL
  )
  ACE_THROW_SPEC ((
    CORBA::SystemException,
    ::CosNotifyFilter::FilterNotFound
  ))
{
  return this->ptr_->get_filter (
    filter
    ACE_ENV_ARG_PARAMETER
  );
}

// TAO_IDL - Generated from 
// be/be_visitor_operation/tie_si.cpp:68

template <class T> ACE_INLINE
::CosNotifyFilter::FilterIDSeq * POA_CosNotifyFilter::FilterAdmin_tie<T>::get_all_filters  (
    ACE_ENV_SINGLE_ARG_DECL
  )
  ACE_THROW_SPEC ((
    CORBA::SystemException
  ))
{
  return this->ptr_->get_all_filters (
    ACE_ENV_SINGLE_ARG_PARAMETER
  );
}

// TAO_IDL - Generated from 
// be/be_visitor_operation/tie_si.cpp:68

template <class T> ACE_INLINE
void POA_CosNotifyFilter::FilterAdmin_tie<T>::remove_all_filters  (
    ACE_ENV_SINGLE_ARG_DECL
  )
  ACE_THROW_SPEC ((
    CORBA::SystemException
  ))
{
  this->ptr_->remove_all_filters (
    ACE_ENV_SINGLE_ARG_PARAMETER
  );
}

#endif /* ACE_HAS_USING_KEYWORD */

