// **********************************************************************
//
// Generated by the ORBacus IDL-to-C++ Translator
//
// Copyright (c) 2003
// IONA Technologies, Inc.
// Waltham, MA, USA
//
// All Rights Reserved
//
// **********************************************************************

// Version: 4.1.3

#ifndef __OB_OBPolicies_h__
#define __OB_OBPolicies_h__

#ifndef OB_IMPORT
#   ifdef OB_DLL
#      define OB_IMPORT __declspec(dllimport)
#   else
#      define OB_IMPORT /**/
#   endif
#endif


#include <OB/Policy.h>
#include <OB/OCITypes.h>
#include <OB/OBPolicies_fwd.h>

#ifndef OB_INTEGER_VERSION
#   error No ORBacus version defined! Is <OB/CORBA.h> included?
#endif

#ifndef OB_NO_VERSION_CHECK
#   if (OB_INTEGER_VERSION != 4010300L)
#       error ORBacus version mismatch!
#   endif
#endif

namespace OBStubImpl_OB
{

} // End of namespace OBStubImpl_OB

namespace OBStubImpl_OB
{

} // End of namespace OBStubImpl_OB

//
// IDL:ooc.com/OB:1.0
//
namespace OB
{

//
// IDL:ooc.com/OB/PROTOCOL_POLICY_ID:1.0
//
const ::CORBA::PolicyType PROTOCOL_POLICY_ID = 1330577410U;

//
// IDL:ooc.com/OB/ProtocolPolicy:1.0
//
class ProtocolPolicy : virtual public ::CORBA::Policy
{
    ProtocolPolicy(const ProtocolPolicy&);
    void operator=(const ProtocolPolicy&);

protected:

    static OB_IMPORT const char* ids_[];

public:

    ProtocolPolicy() { }
    virtual ~ProtocolPolicy() { }

    typedef ProtocolPolicy_ptr _ptr_type;
    typedef ProtocolPolicy_var _var_type;

    static inline ProtocolPolicy_ptr
    _duplicate(ProtocolPolicy_ptr p)
    {
        if(p)
            p -> _add_ref();
        return p;
    }

    static inline ProtocolPolicy_ptr
    _nil()
    {
        return 0;
    }

    static ProtocolPolicy_ptr _narrow(::CORBA::Object_ptr);

    static ProtocolPolicy_ptr _narrow(::CORBA::AbstractBase_ptr);


    //
    // IDL:ooc.com/OB/ProtocolPolicy/value:1.0
    //
    virtual ::OCI::PluginIdSeq* value() = 0;

    //
    // IDL:ooc.com/OB/ProtocolPolicy/contains:1.0
    //
    virtual ::CORBA::Boolean contains(const char* id) = 0;
};

//
// IDL:ooc.com/OB/CONNECTION_REUSE_POLICY_ID:1.0
//
const ::CORBA::PolicyType CONNECTION_REUSE_POLICY_ID = 1330577411U;

//
// IDL:ooc.com/OB/ConnectionReusePolicy:1.0
//
class ConnectionReusePolicy : virtual public ::CORBA::Policy
{
    ConnectionReusePolicy(const ConnectionReusePolicy&);
    void operator=(const ConnectionReusePolicy&);

protected:

    static OB_IMPORT const char* ids_[];

public:

    ConnectionReusePolicy() { }
    virtual ~ConnectionReusePolicy() { }

    typedef ConnectionReusePolicy_ptr _ptr_type;
    typedef ConnectionReusePolicy_var _var_type;

    static inline ConnectionReusePolicy_ptr
    _duplicate(ConnectionReusePolicy_ptr p)
    {
        if(p)
            p -> _add_ref();
        return p;
    }

    static inline ConnectionReusePolicy_ptr
    _nil()
    {
        return 0;
    }

    static ConnectionReusePolicy_ptr _narrow(::CORBA::Object_ptr);

    static ConnectionReusePolicy_ptr _narrow(::CORBA::AbstractBase_ptr);


    //
    // IDL:ooc.com/OB/ConnectionReusePolicy/value:1.0
    //
    virtual ::CORBA::Boolean value() = 0;
};

//
// IDL:ooc.com/OB/RETRY_NEVER:1.0
//
const ::CORBA::Short RETRY_NEVER = 0;

//
// IDL:ooc.com/OB/RETRY_STRICT:1.0
//
const ::CORBA::Short RETRY_STRICT = 1;

//
// IDL:ooc.com/OB/RETRY_ALWAYS:1.0
//
const ::CORBA::Short RETRY_ALWAYS = 2;

//
// IDL:ooc.com/OB/RetryAttributes:1.0
//
struct RetryAttributes;
typedef OB::FixVar< RetryAttributes > RetryAttributes_var;
typedef RetryAttributes& RetryAttributes_out;

struct RetryAttributes
{
    typedef RetryAttributes_var _var_type;

    ::CORBA::Short mode;
    ::CORBA::ULong interval;
    ::CORBA::ULong max;
    ::CORBA::Boolean remote;

    void _OB_marshal(OB::OutputStreamImpl*) const;
    static void _OB_unmarshal(RetryAttributes&, OB::InputStreamImpl*);
};

OB_IMPORT extern OB::TypeCodeConst _tc_RetryAttributes;

//
// IDL:ooc.com/OB/RETRY_POLICY_ID:1.0
//
const ::CORBA::PolicyType RETRY_POLICY_ID = 1330577412U;

//
// IDL:ooc.com/OB/RetryPolicy:1.0
//
class RetryPolicy : virtual public ::CORBA::Policy
{
    RetryPolicy(const RetryPolicy&);
    void operator=(const RetryPolicy&);

protected:

    static OB_IMPORT const char* ids_[];

public:

    RetryPolicy() { }
    virtual ~RetryPolicy() { }

    typedef RetryPolicy_ptr _ptr_type;
    typedef RetryPolicy_var _var_type;

    static inline RetryPolicy_ptr
    _duplicate(RetryPolicy_ptr p)
    {
        if(p)
            p -> _add_ref();
        return p;
    }

    static inline RetryPolicy_ptr
    _nil()
    {
        return 0;
    }

    static RetryPolicy_ptr _narrow(::CORBA::Object_ptr);

    static RetryPolicy_ptr _narrow(::CORBA::AbstractBase_ptr);


    //
    // IDL:ooc.com/OB/RetryPolicy/retry_mode:1.0
    //
    virtual ::CORBA::Short retry_mode() = 0;

    //
    // IDL:ooc.com/OB/RetryPolicy/retry_interval:1.0
    //
    virtual ::CORBA::ULong retry_interval() = 0;

    //
    // IDL:ooc.com/OB/RetryPolicy/retry_max:1.0
    //
    virtual ::CORBA::ULong retry_max() = 0;

    //
    // IDL:ooc.com/OB/RetryPolicy/retry_remote:1.0
    //
    virtual ::CORBA::Boolean retry_remote() = 0;
};

//
// IDL:ooc.com/OB/TIMEOUT_POLICY_ID:1.0
//
const ::CORBA::PolicyType TIMEOUT_POLICY_ID = 1330577413U;

//
// IDL:ooc.com/OB/TimeoutPolicy:1.0
//
class TimeoutPolicy : virtual public ::CORBA::Policy
{
    TimeoutPolicy(const TimeoutPolicy&);
    void operator=(const TimeoutPolicy&);

protected:

    static OB_IMPORT const char* ids_[];

public:

    TimeoutPolicy() { }
    virtual ~TimeoutPolicy() { }

    typedef TimeoutPolicy_ptr _ptr_type;
    typedef TimeoutPolicy_var _var_type;

    static inline TimeoutPolicy_ptr
    _duplicate(TimeoutPolicy_ptr p)
    {
        if(p)
            p -> _add_ref();
        return p;
    }

    static inline TimeoutPolicy_ptr
    _nil()
    {
        return 0;
    }

    static TimeoutPolicy_ptr _narrow(::CORBA::Object_ptr);

    static TimeoutPolicy_ptr _narrow(::CORBA::AbstractBase_ptr);


    //
    // IDL:ooc.com/OB/TimeoutPolicy/value:1.0
    //
    virtual ::CORBA::ULong value() = 0;
};

//
// IDL:ooc.com/OB/LOCATION_TRANSPARENCY_STRICT:1.0
//
const ::CORBA::Short LOCATION_TRANSPARENCY_STRICT = 0;

//
// IDL:ooc.com/OB/LOCATION_TRANSPARENCY_RELAXED:1.0
//
const ::CORBA::Short LOCATION_TRANSPARENCY_RELAXED = 1;

//
// IDL:ooc.com/OB/LOCATION_TRANSPARENCY_POLICY_ID:1.0
//
const ::CORBA::PolicyType LOCATION_TRANSPARENCY_POLICY_ID = 1330577414U;

//
// IDL:ooc.com/OB/LocationTransparencyPolicy:1.0
//
class LocationTransparencyPolicy : virtual public ::CORBA::Policy
{
    LocationTransparencyPolicy(const LocationTransparencyPolicy&);
    void operator=(const LocationTransparencyPolicy&);

protected:

    static OB_IMPORT const char* ids_[];

public:

    LocationTransparencyPolicy() { }
    virtual ~LocationTransparencyPolicy() { }

    typedef LocationTransparencyPolicy_ptr _ptr_type;
    typedef LocationTransparencyPolicy_var _var_type;

    static inline LocationTransparencyPolicy_ptr
    _duplicate(LocationTransparencyPolicy_ptr p)
    {
        if(p)
            p -> _add_ref();
        return p;
    }

    static inline LocationTransparencyPolicy_ptr
    _nil()
    {
        return 0;
    }

    static LocationTransparencyPolicy_ptr _narrow(::CORBA::Object_ptr);

    static LocationTransparencyPolicy_ptr _narrow(::CORBA::AbstractBase_ptr);


    //
    // IDL:ooc.com/OB/LocationTransparencyPolicy/value:1.0
    //
    virtual ::CORBA::Short value() = 0;
};

//
// IDL:ooc.com/OB/INTERCEPTOR_POLICY_ID:1.0
//
const ::CORBA::PolicyType INTERCEPTOR_POLICY_ID = 1330577415U;

//
// IDL:ooc.com/OB/InterceptorPolicy:1.0
//
class InterceptorPolicy : virtual public ::CORBA::Policy
{
    InterceptorPolicy(const InterceptorPolicy&);
    void operator=(const InterceptorPolicy&);

protected:

    static OB_IMPORT const char* ids_[];

public:

    InterceptorPolicy() { }
    virtual ~InterceptorPolicy() { }

    typedef InterceptorPolicy_ptr _ptr_type;
    typedef InterceptorPolicy_var _var_type;

    static inline InterceptorPolicy_ptr
    _duplicate(InterceptorPolicy_ptr p)
    {
        if(p)
            p -> _add_ref();
        return p;
    }

    static inline InterceptorPolicy_ptr
    _nil()
    {
        return 0;
    }

    static InterceptorPolicy_ptr _narrow(::CORBA::Object_ptr);

    static InterceptorPolicy_ptr _narrow(::CORBA::AbstractBase_ptr);


    //
    // IDL:ooc.com/OB/InterceptorPolicy/value:1.0
    //
    virtual ::CORBA::Boolean value() = 0;
};

//
// IDL:ooc.com/OB/CONNECT_TIMEOUT_POLICY_ID:1.0
//
const ::CORBA::PolicyType CONNECT_TIMEOUT_POLICY_ID = 1330577416U;

//
// IDL:ooc.com/OB/ConnectTimeoutPolicy:1.0
//
class ConnectTimeoutPolicy : virtual public ::CORBA::Policy
{
    ConnectTimeoutPolicy(const ConnectTimeoutPolicy&);
    void operator=(const ConnectTimeoutPolicy&);

protected:

    static OB_IMPORT const char* ids_[];

public:

    ConnectTimeoutPolicy() { }
    virtual ~ConnectTimeoutPolicy() { }

    typedef ConnectTimeoutPolicy_ptr _ptr_type;
    typedef ConnectTimeoutPolicy_var _var_type;

    static inline ConnectTimeoutPolicy_ptr
    _duplicate(ConnectTimeoutPolicy_ptr p)
    {
        if(p)
            p -> _add_ref();
        return p;
    }

    static inline ConnectTimeoutPolicy_ptr
    _nil()
    {
        return 0;
    }

    static ConnectTimeoutPolicy_ptr _narrow(::CORBA::Object_ptr);

    static ConnectTimeoutPolicy_ptr _narrow(::CORBA::AbstractBase_ptr);


    //
    // IDL:ooc.com/OB/ConnectTimeoutPolicy/value:1.0
    //
    virtual ::CORBA::ULong value() = 0;
};

//
// IDL:ooc.com/OB/REQUEST_TIMEOUT_POLICY_ID:1.0
//
const ::CORBA::PolicyType REQUEST_TIMEOUT_POLICY_ID = 1330577417U;

//
// IDL:ooc.com/OB/RequestTimeoutPolicy:1.0
//
class RequestTimeoutPolicy : virtual public ::CORBA::Policy
{
    RequestTimeoutPolicy(const RequestTimeoutPolicy&);
    void operator=(const RequestTimeoutPolicy&);

protected:

    static OB_IMPORT const char* ids_[];

public:

    RequestTimeoutPolicy() { }
    virtual ~RequestTimeoutPolicy() { }

    typedef RequestTimeoutPolicy_ptr _ptr_type;
    typedef RequestTimeoutPolicy_var _var_type;

    static inline RequestTimeoutPolicy_ptr
    _duplicate(RequestTimeoutPolicy_ptr p)
    {
        if(p)
            p -> _add_ref();
        return p;
    }

    static inline RequestTimeoutPolicy_ptr
    _nil()
    {
        return 0;
    }

    static RequestTimeoutPolicy_ptr _narrow(::CORBA::Object_ptr);

    static RequestTimeoutPolicy_ptr _narrow(::CORBA::AbstractBase_ptr);


    //
    // IDL:ooc.com/OB/RequestTimeoutPolicy/value:1.0
    //
    virtual ::CORBA::ULong value() = 0;
};

//
// IDL:ooc.com/OB/LOCATE_REQUEST_POLICY_ID:1.0
//
const ::CORBA::PolicyType LOCATE_REQUEST_POLICY_ID = 1330577418U;

//
// IDL:ooc.com/OB/LocateRequestPolicy:1.0
//
class LocateRequestPolicy : virtual public ::CORBA::Policy
{
    LocateRequestPolicy(const LocateRequestPolicy&);
    void operator=(const LocateRequestPolicy&);

protected:

    static OB_IMPORT const char* ids_[];

public:

    LocateRequestPolicy() { }
    virtual ~LocateRequestPolicy() { }

    typedef LocateRequestPolicy_ptr _ptr_type;
    typedef LocateRequestPolicy_var _var_type;

    static inline LocateRequestPolicy_ptr
    _duplicate(LocateRequestPolicy_ptr p)
    {
        if(p)
            p -> _add_ref();
        return p;
    }

    static inline LocateRequestPolicy_ptr
    _nil()
    {
        return 0;
    }

    static LocateRequestPolicy_ptr _narrow(::CORBA::Object_ptr);

    static LocateRequestPolicy_ptr _narrow(::CORBA::AbstractBase_ptr);


    //
    // IDL:ooc.com/OB/LocateRequestPolicy/value:1.0
    //
    virtual ::CORBA::Boolean value() = 0;
};

} // End of namespace OB

//
// IDL:ooc.com/OB:1.0
//
namespace OBProxy_OB
{

} // End of namespace OBProxy_OB

//
// IDL:ooc.com/OB:1.0
//
namespace OBStubImpl_OB
{

} // End of namespace OBStubImpl_OB

//
// IDL:ooc.com/OB:1.0
//
namespace OBMarshalStubImpl_OB
{

} // End of namespace OBMarshalStubImpl_OB

//
// IDL:ooc.com/OB:1.0
//
namespace OBV_OB
{

} // End of namespace OBV_OB

//
// IDL:ooc.com/OB/ProtocolPolicy:1.0
//
namespace CORBA
{

inline void
release(::OB::ProtocolPolicy_ptr p)
{
    if(p)
        p -> _remove_ref();
}

inline Boolean
is_nil(::OB::ProtocolPolicy_ptr p)
{
    return p == 0;
}

} // End of namespace CORBA

void operator<<=(::CORBA::Any&, OB::ProtocolPolicy_ptr*);
void operator<<=(::CORBA::Any&, OB::ProtocolPolicy_ptr);
CORBA::Boolean operator>>=(const ::CORBA::Any&, OB::ProtocolPolicy_ptr&);

inline void
operator<<=(::CORBA::Any_var& any, OB::ProtocolPolicy_ptr* val)
{
    any.inout() <<= val;
}

inline void
operator<<=(::CORBA::Any_var& any, OB::ProtocolPolicy_ptr val)
{
    any.inout() <<= val;
}

inline CORBA::Boolean
operator>>=(const ::CORBA::Any_var& any, OB::ProtocolPolicy_ptr& val)
{
    return any.in() >>= val;
}

//
// IDL:ooc.com/OB/ConnectionReusePolicy:1.0
//
namespace CORBA
{

inline void
release(::OB::ConnectionReusePolicy_ptr p)
{
    if(p)
        p -> _remove_ref();
}

inline Boolean
is_nil(::OB::ConnectionReusePolicy_ptr p)
{
    return p == 0;
}

} // End of namespace CORBA

void operator<<=(::CORBA::Any&, OB::ConnectionReusePolicy_ptr*);
void operator<<=(::CORBA::Any&, OB::ConnectionReusePolicy_ptr);
CORBA::Boolean operator>>=(const ::CORBA::Any&, OB::ConnectionReusePolicy_ptr&);

inline void
operator<<=(::CORBA::Any_var& any, OB::ConnectionReusePolicy_ptr* val)
{
    any.inout() <<= val;
}

inline void
operator<<=(::CORBA::Any_var& any, OB::ConnectionReusePolicy_ptr val)
{
    any.inout() <<= val;
}

inline CORBA::Boolean
operator>>=(const ::CORBA::Any_var& any, OB::ConnectionReusePolicy_ptr& val)
{
    return any.in() >>= val;
}

//
// IDL:ooc.com/OB/RetryAttributes:1.0
//
void operator<<=(::CORBA::Any&, OB::RetryAttributes*);
void operator<<=(::CORBA::Any&, const OB::RetryAttributes&);
CORBA::Boolean operator>>=(const ::CORBA::Any&, const OB::RetryAttributes*&);

inline void
operator<<=(::CORBA::Any_var& any, OB::RetryAttributes* val)
{
    any.inout() <<= val;
}

inline void
operator<<=(::CORBA::Any_var& any, const OB::RetryAttributes& val)
{
    any.inout() <<= val;
}

inline ::CORBA::Boolean
operator>>=(const ::CORBA::Any_var& any, const OB::RetryAttributes*& val)
{
    return any.in() >>= val;
}

//
// IDL:ooc.com/OB/RetryPolicy:1.0
//
namespace CORBA
{

inline void
release(::OB::RetryPolicy_ptr p)
{
    if(p)
        p -> _remove_ref();
}

inline Boolean
is_nil(::OB::RetryPolicy_ptr p)
{
    return p == 0;
}

} // End of namespace CORBA

void operator<<=(::CORBA::Any&, OB::RetryPolicy_ptr*);
void operator<<=(::CORBA::Any&, OB::RetryPolicy_ptr);
CORBA::Boolean operator>>=(const ::CORBA::Any&, OB::RetryPolicy_ptr&);

inline void
operator<<=(::CORBA::Any_var& any, OB::RetryPolicy_ptr* val)
{
    any.inout() <<= val;
}

inline void
operator<<=(::CORBA::Any_var& any, OB::RetryPolicy_ptr val)
{
    any.inout() <<= val;
}

inline CORBA::Boolean
operator>>=(const ::CORBA::Any_var& any, OB::RetryPolicy_ptr& val)
{
    return any.in() >>= val;
}

//
// IDL:ooc.com/OB/TimeoutPolicy:1.0
//
namespace CORBA
{

inline void
release(::OB::TimeoutPolicy_ptr p)
{
    if(p)
        p -> _remove_ref();
}

inline Boolean
is_nil(::OB::TimeoutPolicy_ptr p)
{
    return p == 0;
}

} // End of namespace CORBA

void operator<<=(::CORBA::Any&, OB::TimeoutPolicy_ptr*);
void operator<<=(::CORBA::Any&, OB::TimeoutPolicy_ptr);
CORBA::Boolean operator>>=(const ::CORBA::Any&, OB::TimeoutPolicy_ptr&);

inline void
operator<<=(::CORBA::Any_var& any, OB::TimeoutPolicy_ptr* val)
{
    any.inout() <<= val;
}

inline void
operator<<=(::CORBA::Any_var& any, OB::TimeoutPolicy_ptr val)
{
    any.inout() <<= val;
}

inline CORBA::Boolean
operator>>=(const ::CORBA::Any_var& any, OB::TimeoutPolicy_ptr& val)
{
    return any.in() >>= val;
}

//
// IDL:ooc.com/OB/LocationTransparencyPolicy:1.0
//
namespace CORBA
{

inline void
release(::OB::LocationTransparencyPolicy_ptr p)
{
    if(p)
        p -> _remove_ref();
}

inline Boolean
is_nil(::OB::LocationTransparencyPolicy_ptr p)
{
    return p == 0;
}

} // End of namespace CORBA

void operator<<=(::CORBA::Any&, OB::LocationTransparencyPolicy_ptr*);
void operator<<=(::CORBA::Any&, OB::LocationTransparencyPolicy_ptr);
CORBA::Boolean operator>>=(const ::CORBA::Any&, OB::LocationTransparencyPolicy_ptr&);

inline void
operator<<=(::CORBA::Any_var& any, OB::LocationTransparencyPolicy_ptr* val)
{
    any.inout() <<= val;
}

inline void
operator<<=(::CORBA::Any_var& any, OB::LocationTransparencyPolicy_ptr val)
{
    any.inout() <<= val;
}

inline CORBA::Boolean
operator>>=(const ::CORBA::Any_var& any, OB::LocationTransparencyPolicy_ptr& val)
{
    return any.in() >>= val;
}

//
// IDL:ooc.com/OB/InterceptorPolicy:1.0
//
namespace CORBA
{

inline void
release(::OB::InterceptorPolicy_ptr p)
{
    if(p)
        p -> _remove_ref();
}

inline Boolean
is_nil(::OB::InterceptorPolicy_ptr p)
{
    return p == 0;
}

} // End of namespace CORBA

void operator<<=(::CORBA::Any&, OB::InterceptorPolicy_ptr*);
void operator<<=(::CORBA::Any&, OB::InterceptorPolicy_ptr);
CORBA::Boolean operator>>=(const ::CORBA::Any&, OB::InterceptorPolicy_ptr&);

inline void
operator<<=(::CORBA::Any_var& any, OB::InterceptorPolicy_ptr* val)
{
    any.inout() <<= val;
}

inline void
operator<<=(::CORBA::Any_var& any, OB::InterceptorPolicy_ptr val)
{
    any.inout() <<= val;
}

inline CORBA::Boolean
operator>>=(const ::CORBA::Any_var& any, OB::InterceptorPolicy_ptr& val)
{
    return any.in() >>= val;
}

//
// IDL:ooc.com/OB/ConnectTimeoutPolicy:1.0
//
namespace CORBA
{

inline void
release(::OB::ConnectTimeoutPolicy_ptr p)
{
    if(p)
        p -> _remove_ref();
}

inline Boolean
is_nil(::OB::ConnectTimeoutPolicy_ptr p)
{
    return p == 0;
}

} // End of namespace CORBA

void operator<<=(::CORBA::Any&, OB::ConnectTimeoutPolicy_ptr*);
void operator<<=(::CORBA::Any&, OB::ConnectTimeoutPolicy_ptr);
CORBA::Boolean operator>>=(const ::CORBA::Any&, OB::ConnectTimeoutPolicy_ptr&);

inline void
operator<<=(::CORBA::Any_var& any, OB::ConnectTimeoutPolicy_ptr* val)
{
    any.inout() <<= val;
}

inline void
operator<<=(::CORBA::Any_var& any, OB::ConnectTimeoutPolicy_ptr val)
{
    any.inout() <<= val;
}

inline CORBA::Boolean
operator>>=(const ::CORBA::Any_var& any, OB::ConnectTimeoutPolicy_ptr& val)
{
    return any.in() >>= val;
}

//
// IDL:ooc.com/OB/RequestTimeoutPolicy:1.0
//
namespace CORBA
{

inline void
release(::OB::RequestTimeoutPolicy_ptr p)
{
    if(p)
        p -> _remove_ref();
}

inline Boolean
is_nil(::OB::RequestTimeoutPolicy_ptr p)
{
    return p == 0;
}

} // End of namespace CORBA

void operator<<=(::CORBA::Any&, OB::RequestTimeoutPolicy_ptr*);
void operator<<=(::CORBA::Any&, OB::RequestTimeoutPolicy_ptr);
CORBA::Boolean operator>>=(const ::CORBA::Any&, OB::RequestTimeoutPolicy_ptr&);

inline void
operator<<=(::CORBA::Any_var& any, OB::RequestTimeoutPolicy_ptr* val)
{
    any.inout() <<= val;
}

inline void
operator<<=(::CORBA::Any_var& any, OB::RequestTimeoutPolicy_ptr val)
{
    any.inout() <<= val;
}

inline CORBA::Boolean
operator>>=(const ::CORBA::Any_var& any, OB::RequestTimeoutPolicy_ptr& val)
{
    return any.in() >>= val;
}

//
// IDL:ooc.com/OB/LocateRequestPolicy:1.0
//
namespace CORBA
{

inline void
release(::OB::LocateRequestPolicy_ptr p)
{
    if(p)
        p -> _remove_ref();
}

inline Boolean
is_nil(::OB::LocateRequestPolicy_ptr p)
{
    return p == 0;
}

} // End of namespace CORBA

void operator<<=(::CORBA::Any&, OB::LocateRequestPolicy_ptr*);
void operator<<=(::CORBA::Any&, OB::LocateRequestPolicy_ptr);
CORBA::Boolean operator>>=(const ::CORBA::Any&, OB::LocateRequestPolicy_ptr&);

inline void
operator<<=(::CORBA::Any_var& any, OB::LocateRequestPolicy_ptr* val)
{
    any.inout() <<= val;
}

inline void
operator<<=(::CORBA::Any_var& any, OB::LocateRequestPolicy_ptr val)
{
    any.inout() <<= val;
}

inline CORBA::Boolean
operator>>=(const ::CORBA::Any_var& any, OB::LocateRequestPolicy_ptr& val)
{
    return any.in() >>= val;
}

#endif
