// **********************************************************************
//
// Generated by the ORBacus IDL-to-C++ Translator
//
// Copyright (c) 1998
// Object-Oriented Concepts, Inc.
// Billerica, MA, USA
//
// Copyright (c) 1998
// Object-Oriented Concepts GmbH
// Ettlingen, Germany
//
// All Rights Reserved
//
// **********************************************************************

// Version: 3.0
// License: non-commercial

#ifndef __CosEventChannelAdmin_h__
#define __CosEventChannelAdmin_h__

#include <OB/CosEventComm.h>

//
// IDL:omg.org/CosEventComm:1.0
//

//
// IDL:omg.org/CosEventComm/PushConsumer:1.0
//
class CosEventComm_PushConsumer;
typedef CosEventComm_PushConsumer* CosEventComm_PushConsumer_ptr;
typedef CosEventComm_PushConsumer* CosEventComm_PushConsumerRef;
void OBDuplicate(CosEventComm_PushConsumer_ptr);
void OBRelease(CosEventComm_PushConsumer_ptr);
typedef OBObjVar< CosEventComm_PushConsumer > CosEventComm_PushConsumer_var;

//
// IDL:omg.org/CosEventComm/PushSupplier:1.0
//
class CosEventComm_PushSupplier;
typedef CosEventComm_PushSupplier* CosEventComm_PushSupplier_ptr;
typedef CosEventComm_PushSupplier* CosEventComm_PushSupplierRef;
void OBDuplicate(CosEventComm_PushSupplier_ptr);
void OBRelease(CosEventComm_PushSupplier_ptr);
typedef OBObjVar< CosEventComm_PushSupplier > CosEventComm_PushSupplier_var;

//
// IDL:omg.org/CosEventComm/PullSupplier:1.0
//
class CosEventComm_PullSupplier;
typedef CosEventComm_PullSupplier* CosEventComm_PullSupplier_ptr;
typedef CosEventComm_PullSupplier* CosEventComm_PullSupplierRef;
void OBDuplicate(CosEventComm_PullSupplier_ptr);
void OBRelease(CosEventComm_PullSupplier_ptr);
typedef OBObjVar< CosEventComm_PullSupplier > CosEventComm_PullSupplier_var;

//
// IDL:omg.org/CosEventComm/PullConsumer:1.0
//
class CosEventComm_PullConsumer;
typedef CosEventComm_PullConsumer* CosEventComm_PullConsumer_ptr;
typedef CosEventComm_PullConsumer* CosEventComm_PullConsumerRef;
void OBDuplicate(CosEventComm_PullConsumer_ptr);
void OBRelease(CosEventComm_PullConsumer_ptr);
typedef OBObjVar< CosEventComm_PullConsumer > CosEventComm_PullConsumer_var;

//
// IDL:omg.org/CosEventChannelAdmin:1.0
//

//
// IDL:omg.org/CosEventChannelAdmin/ProxyPushConsumer:1.0
//
class CosEventChannelAdmin_ProxyPushConsumer;
typedef CosEventChannelAdmin_ProxyPushConsumer* CosEventChannelAdmin_ProxyPushConsumer_ptr;
typedef CosEventChannelAdmin_ProxyPushConsumer* CosEventChannelAdmin_ProxyPushConsumerRef;
void OBDuplicate(CosEventChannelAdmin_ProxyPushConsumer_ptr);
void OBRelease(CosEventChannelAdmin_ProxyPushConsumer_ptr);
typedef OBObjVar< CosEventChannelAdmin_ProxyPushConsumer > CosEventChannelAdmin_ProxyPushConsumer_var;

//
// IDL:omg.org/CosEventChannelAdmin/ProxyPullSupplier:1.0
//
class CosEventChannelAdmin_ProxyPullSupplier;
typedef CosEventChannelAdmin_ProxyPullSupplier* CosEventChannelAdmin_ProxyPullSupplier_ptr;
typedef CosEventChannelAdmin_ProxyPullSupplier* CosEventChannelAdmin_ProxyPullSupplierRef;
void OBDuplicate(CosEventChannelAdmin_ProxyPullSupplier_ptr);
void OBRelease(CosEventChannelAdmin_ProxyPullSupplier_ptr);
typedef OBObjVar< CosEventChannelAdmin_ProxyPullSupplier > CosEventChannelAdmin_ProxyPullSupplier_var;

//
// IDL:omg.org/CosEventChannelAdmin/ProxyPullConsumer:1.0
//
class CosEventChannelAdmin_ProxyPullConsumer;
typedef CosEventChannelAdmin_ProxyPullConsumer* CosEventChannelAdmin_ProxyPullConsumer_ptr;
typedef CosEventChannelAdmin_ProxyPullConsumer* CosEventChannelAdmin_ProxyPullConsumerRef;
void OBDuplicate(CosEventChannelAdmin_ProxyPullConsumer_ptr);
void OBRelease(CosEventChannelAdmin_ProxyPullConsumer_ptr);
typedef OBObjVar< CosEventChannelAdmin_ProxyPullConsumer > CosEventChannelAdmin_ProxyPullConsumer_var;

//
// IDL:omg.org/CosEventChannelAdmin/ProxyPushSupplier:1.0
//
class CosEventChannelAdmin_ProxyPushSupplier;
typedef CosEventChannelAdmin_ProxyPushSupplier* CosEventChannelAdmin_ProxyPushSupplier_ptr;
typedef CosEventChannelAdmin_ProxyPushSupplier* CosEventChannelAdmin_ProxyPushSupplierRef;
void OBDuplicate(CosEventChannelAdmin_ProxyPushSupplier_ptr);
void OBRelease(CosEventChannelAdmin_ProxyPushSupplier_ptr);
typedef OBObjVar< CosEventChannelAdmin_ProxyPushSupplier > CosEventChannelAdmin_ProxyPushSupplier_var;

//
// IDL:omg.org/CosEventChannelAdmin/ConsumerAdmin:1.0
//
class CosEventChannelAdmin_ConsumerAdmin;
typedef CosEventChannelAdmin_ConsumerAdmin* CosEventChannelAdmin_ConsumerAdmin_ptr;
typedef CosEventChannelAdmin_ConsumerAdmin* CosEventChannelAdmin_ConsumerAdminRef;
void OBDuplicate(CosEventChannelAdmin_ConsumerAdmin_ptr);
void OBRelease(CosEventChannelAdmin_ConsumerAdmin_ptr);
typedef OBObjVar< CosEventChannelAdmin_ConsumerAdmin > CosEventChannelAdmin_ConsumerAdmin_var;

//
// IDL:omg.org/CosEventChannelAdmin/SupplierAdmin:1.0
//
class CosEventChannelAdmin_SupplierAdmin;
typedef CosEventChannelAdmin_SupplierAdmin* CosEventChannelAdmin_SupplierAdmin_ptr;
typedef CosEventChannelAdmin_SupplierAdmin* CosEventChannelAdmin_SupplierAdminRef;
void OBDuplicate(CosEventChannelAdmin_SupplierAdmin_ptr);
void OBRelease(CosEventChannelAdmin_SupplierAdmin_ptr);
typedef OBObjVar< CosEventChannelAdmin_SupplierAdmin > CosEventChannelAdmin_SupplierAdmin_var;

//
// IDL:omg.org/CosEventChannelAdmin/EventChannel:1.0
//
class CosEventChannelAdmin_EventChannel;
typedef CosEventChannelAdmin_EventChannel* CosEventChannelAdmin_EventChannel_ptr;
typedef CosEventChannelAdmin_EventChannel* CosEventChannelAdmin_EventChannelRef;
void OBDuplicate(CosEventChannelAdmin_EventChannel_ptr);
void OBRelease(CosEventChannelAdmin_EventChannel_ptr);
typedef OBObjVar< CosEventChannelAdmin_EventChannel > CosEventChannelAdmin_EventChannel_var;

//
// IDL:omg.org/CosEventChannelAdmin/AlreadyConnected:1.0
//
struct CosEventChannelAdmin_AlreadyConnected : public CORBA_UserException
{
    CosEventChannelAdmin_AlreadyConnected() { }
    CosEventChannelAdmin_AlreadyConnected(const CosEventChannelAdmin_AlreadyConnected&);
    virtual ~CosEventChannelAdmin_AlreadyConnected() { }
    CosEventChannelAdmin_AlreadyConnected& operator=(const CosEventChannelAdmin_AlreadyConnected&);

    static CosEventChannelAdmin_AlreadyConnected* _narrow(CORBA_Exception*);
#ifdef HAVE_NO_RTTI
    virtual void* _OB_narrowHelp(const char*) const;
#endif
    virtual const char* _OB_typeId() const;
    virtual CORBA_Exception* _OB_clone() const;
};

extern const OBTypeCodeConst CosEventChannelAdmin__tc_AlreadyConnected;

//
// IDL:omg.org/CosEventChannelAdmin/TypeError:1.0
//
struct CosEventChannelAdmin_TypeError : public CORBA_UserException
{
    CosEventChannelAdmin_TypeError() { }
    CosEventChannelAdmin_TypeError(const CosEventChannelAdmin_TypeError&);
    virtual ~CosEventChannelAdmin_TypeError() { }
    CosEventChannelAdmin_TypeError& operator=(const CosEventChannelAdmin_TypeError&);

    static CosEventChannelAdmin_TypeError* _narrow(CORBA_Exception*);
#ifdef HAVE_NO_RTTI
    virtual void* _OB_narrowHelp(const char*) const;
#endif
    virtual const char* _OB_typeId() const;
    virtual CORBA_Exception* _OB_clone() const;
};

extern const OBTypeCodeConst CosEventChannelAdmin__tc_TypeError;

//
// IDL:omg.org/CosEventChannelAdmin/ProxyPushConsumer:1.0
//
class CosEventChannelAdmin_ProxyPushConsumer : virtual public CosEventComm_PushConsumer
{
    CosEventChannelAdmin_ProxyPushConsumer(const CosEventChannelAdmin_ProxyPushConsumer&);
    void operator=(const CosEventChannelAdmin_ProxyPushConsumer&);

public:

    CosEventChannelAdmin_ProxyPushConsumer() { }

    static inline CosEventChannelAdmin_ProxyPushConsumer_ptr
    _duplicate(CosEventChannelAdmin_ProxyPushConsumer_ptr p)
    {
        if(p)
            p -> _OB_incRef();
        return p;
    }

    static inline CosEventChannelAdmin_ProxyPushConsumer_ptr
    _nil()
    {
        return 0;
    }

    static CosEventChannelAdmin_ProxyPushConsumer_ptr _narrow(CORBA_Object_ptr);
    virtual void* _OB_narrowHelp(const char*) const;
    virtual const char* _OB_typeId() const;

    friend void OBUnmarshal(CosEventChannelAdmin_ProxyPushConsumer_ptr&, const CORBA_Octet*&, bool);

    friend CORBA_Boolean operator>>=(const CORBA_Any&, CosEventChannelAdmin_ProxyPushConsumer_ptr&);

    //
    // IDL:omg.org/CosEventChannelAdmin/ProxyPushConsumer/connect_push_supplier:1.0
    //
    virtual void connect_push_supplier(CosEventComm_PushSupplier_ptr push_supplier);
};

extern const OBTypeCodeConst CosEventChannelAdmin__tc_ProxyPushConsumer;

//
// IDL:omg.org/CosEventChannelAdmin/ProxyPullSupplier:1.0
//
class CosEventChannelAdmin_ProxyPullSupplier : virtual public CosEventComm_PullSupplier
{
    CosEventChannelAdmin_ProxyPullSupplier(const CosEventChannelAdmin_ProxyPullSupplier&);
    void operator=(const CosEventChannelAdmin_ProxyPullSupplier&);

public:

    CosEventChannelAdmin_ProxyPullSupplier() { }

    static inline CosEventChannelAdmin_ProxyPullSupplier_ptr
    _duplicate(CosEventChannelAdmin_ProxyPullSupplier_ptr p)
    {
        if(p)
            p -> _OB_incRef();
        return p;
    }

    static inline CosEventChannelAdmin_ProxyPullSupplier_ptr
    _nil()
    {
        return 0;
    }

    static CosEventChannelAdmin_ProxyPullSupplier_ptr _narrow(CORBA_Object_ptr);
    virtual void* _OB_narrowHelp(const char*) const;
    virtual const char* _OB_typeId() const;

    friend void OBUnmarshal(CosEventChannelAdmin_ProxyPullSupplier_ptr&, const CORBA_Octet*&, bool);

    friend CORBA_Boolean operator>>=(const CORBA_Any&, CosEventChannelAdmin_ProxyPullSupplier_ptr&);

    //
    // IDL:omg.org/CosEventChannelAdmin/ProxyPullSupplier/connect_pull_consumer:1.0
    //
    virtual void connect_pull_consumer(CosEventComm_PullConsumer_ptr pull_consumer);
};

extern const OBTypeCodeConst CosEventChannelAdmin__tc_ProxyPullSupplier;

//
// IDL:omg.org/CosEventChannelAdmin/ProxyPullConsumer:1.0
//
class CosEventChannelAdmin_ProxyPullConsumer : virtual public CosEventComm_PullConsumer
{
    CosEventChannelAdmin_ProxyPullConsumer(const CosEventChannelAdmin_ProxyPullConsumer&);
    void operator=(const CosEventChannelAdmin_ProxyPullConsumer&);

public:

    CosEventChannelAdmin_ProxyPullConsumer() { }

    static inline CosEventChannelAdmin_ProxyPullConsumer_ptr
    _duplicate(CosEventChannelAdmin_ProxyPullConsumer_ptr p)
    {
        if(p)
            p -> _OB_incRef();
        return p;
    }

    static inline CosEventChannelAdmin_ProxyPullConsumer_ptr
    _nil()
    {
        return 0;
    }

    static CosEventChannelAdmin_ProxyPullConsumer_ptr _narrow(CORBA_Object_ptr);
    virtual void* _OB_narrowHelp(const char*) const;
    virtual const char* _OB_typeId() const;

    friend void OBUnmarshal(CosEventChannelAdmin_ProxyPullConsumer_ptr&, const CORBA_Octet*&, bool);

    friend CORBA_Boolean operator>>=(const CORBA_Any&, CosEventChannelAdmin_ProxyPullConsumer_ptr&);

    //
    // IDL:omg.org/CosEventChannelAdmin/ProxyPullConsumer/connect_pull_supplier:1.0
    //
    virtual void connect_pull_supplier(CosEventComm_PullSupplier_ptr pull_supplier);
};

extern const OBTypeCodeConst CosEventChannelAdmin__tc_ProxyPullConsumer;

//
// IDL:omg.org/CosEventChannelAdmin/ProxyPushSupplier:1.0
//
class CosEventChannelAdmin_ProxyPushSupplier : virtual public CosEventComm_PushSupplier
{
    CosEventChannelAdmin_ProxyPushSupplier(const CosEventChannelAdmin_ProxyPushSupplier&);
    void operator=(const CosEventChannelAdmin_ProxyPushSupplier&);

public:

    CosEventChannelAdmin_ProxyPushSupplier() { }

    static inline CosEventChannelAdmin_ProxyPushSupplier_ptr
    _duplicate(CosEventChannelAdmin_ProxyPushSupplier_ptr p)
    {
        if(p)
            p -> _OB_incRef();
        return p;
    }

    static inline CosEventChannelAdmin_ProxyPushSupplier_ptr
    _nil()
    {
        return 0;
    }

    static CosEventChannelAdmin_ProxyPushSupplier_ptr _narrow(CORBA_Object_ptr);
    virtual void* _OB_narrowHelp(const char*) const;
    virtual const char* _OB_typeId() const;

    friend void OBUnmarshal(CosEventChannelAdmin_ProxyPushSupplier_ptr&, const CORBA_Octet*&, bool);

    friend CORBA_Boolean operator>>=(const CORBA_Any&, CosEventChannelAdmin_ProxyPushSupplier_ptr&);

    //
    // IDL:omg.org/CosEventChannelAdmin/ProxyPushSupplier/connect_push_consumer:1.0
    //
    virtual void connect_push_consumer(CosEventComm_PushConsumer_ptr push_consumer);
};

extern const OBTypeCodeConst CosEventChannelAdmin__tc_ProxyPushSupplier;

//
// IDL:omg.org/CosEventChannelAdmin/ConsumerAdmin:1.0
//
class CosEventChannelAdmin_ConsumerAdmin : virtual public CORBA_Object
{
    CosEventChannelAdmin_ConsumerAdmin(const CosEventChannelAdmin_ConsumerAdmin&);
    void operator=(const CosEventChannelAdmin_ConsumerAdmin&);

public:

    CosEventChannelAdmin_ConsumerAdmin() { }

    static inline CosEventChannelAdmin_ConsumerAdmin_ptr
    _duplicate(CosEventChannelAdmin_ConsumerAdmin_ptr p)
    {
        if(p)
            p -> _OB_incRef();
        return p;
    }

    static inline CosEventChannelAdmin_ConsumerAdmin_ptr
    _nil()
    {
        return 0;
    }

    static CosEventChannelAdmin_ConsumerAdmin_ptr _narrow(CORBA_Object_ptr);
    virtual void* _OB_narrowHelp(const char*) const;
    virtual const char* _OB_typeId() const;

    friend void OBUnmarshal(CosEventChannelAdmin_ConsumerAdmin_ptr&, const CORBA_Octet*&, bool);

    friend CORBA_Boolean operator>>=(const CORBA_Any&, CosEventChannelAdmin_ConsumerAdmin_ptr&);

    //
    // IDL:omg.org/CosEventChannelAdmin/ConsumerAdmin/obtain_push_supplier:1.0
    //
    virtual CosEventChannelAdmin_ProxyPushSupplier_ptr obtain_push_supplier();

    //
    // IDL:omg.org/CosEventChannelAdmin/ConsumerAdmin/obtain_pull_supplier:1.0
    //
    virtual CosEventChannelAdmin_ProxyPullSupplier_ptr obtain_pull_supplier();
};

extern const OBTypeCodeConst CosEventChannelAdmin__tc_ConsumerAdmin;

//
// IDL:omg.org/CosEventChannelAdmin/SupplierAdmin:1.0
//
class CosEventChannelAdmin_SupplierAdmin : virtual public CORBA_Object
{
    CosEventChannelAdmin_SupplierAdmin(const CosEventChannelAdmin_SupplierAdmin&);
    void operator=(const CosEventChannelAdmin_SupplierAdmin&);

public:

    CosEventChannelAdmin_SupplierAdmin() { }

    static inline CosEventChannelAdmin_SupplierAdmin_ptr
    _duplicate(CosEventChannelAdmin_SupplierAdmin_ptr p)
    {
        if(p)
            p -> _OB_incRef();
        return p;
    }

    static inline CosEventChannelAdmin_SupplierAdmin_ptr
    _nil()
    {
        return 0;
    }

    static CosEventChannelAdmin_SupplierAdmin_ptr _narrow(CORBA_Object_ptr);
    virtual void* _OB_narrowHelp(const char*) const;
    virtual const char* _OB_typeId() const;

    friend void OBUnmarshal(CosEventChannelAdmin_SupplierAdmin_ptr&, const CORBA_Octet*&, bool);

    friend CORBA_Boolean operator>>=(const CORBA_Any&, CosEventChannelAdmin_SupplierAdmin_ptr&);

    //
    // IDL:omg.org/CosEventChannelAdmin/SupplierAdmin/obtain_push_consumer:1.0
    //
    virtual CosEventChannelAdmin_ProxyPushConsumer_ptr obtain_push_consumer();

    //
    // IDL:omg.org/CosEventChannelAdmin/SupplierAdmin/obtain_pull_consumer:1.0
    //
    virtual CosEventChannelAdmin_ProxyPullConsumer_ptr obtain_pull_consumer();
};

extern const OBTypeCodeConst CosEventChannelAdmin__tc_SupplierAdmin;

//
// IDL:omg.org/CosEventChannelAdmin/EventChannel:1.0
//
class CosEventChannelAdmin_EventChannel : virtual public CORBA_Object
{
    CosEventChannelAdmin_EventChannel(const CosEventChannelAdmin_EventChannel&);
    void operator=(const CosEventChannelAdmin_EventChannel&);

public:

    CosEventChannelAdmin_EventChannel() { }

    static inline CosEventChannelAdmin_EventChannel_ptr
    _duplicate(CosEventChannelAdmin_EventChannel_ptr p)
    {
        if(p)
            p -> _OB_incRef();
        return p;
    }

    static inline CosEventChannelAdmin_EventChannel_ptr
    _nil()
    {
        return 0;
    }

    static CosEventChannelAdmin_EventChannel_ptr _narrow(CORBA_Object_ptr);
    virtual void* _OB_narrowHelp(const char*) const;
    virtual const char* _OB_typeId() const;

    friend void OBUnmarshal(CosEventChannelAdmin_EventChannel_ptr&, const CORBA_Octet*&, bool);

    friend CORBA_Boolean operator>>=(const CORBA_Any&, CosEventChannelAdmin_EventChannel_ptr&);

    //
    // IDL:omg.org/CosEventChannelAdmin/EventChannel/for_consumers:1.0
    //
    virtual CosEventChannelAdmin_ConsumerAdmin_ptr for_consumers();

    //
    // IDL:omg.org/CosEventChannelAdmin/EventChannel/for_suppliers:1.0
    //
    virtual CosEventChannelAdmin_SupplierAdmin_ptr for_suppliers();

    //
    // IDL:omg.org/CosEventChannelAdmin/EventChannel/destroy:1.0
    //
    virtual void destroy();
};

extern const OBTypeCodeConst CosEventChannelAdmin__tc_EventChannel;

//
// IDL:omg.org/CosEventChannelAdmin/AlreadyConnected:1.0
//
void OBMarshal(const CosEventChannelAdmin_AlreadyConnected&, CORBA_Octet*&);
void OBMarshalCount(const CosEventChannelAdmin_AlreadyConnected&, CORBA_ULong&);
void OBUnmarshal(CosEventChannelAdmin_AlreadyConnected&, const CORBA_Octet*&, bool);

void operator<<=(CORBA_Any&, CosEventChannelAdmin_AlreadyConnected*);
void operator<<=(CORBA_Any&, const CosEventChannelAdmin_AlreadyConnected&);
CORBA_Boolean operator>>=(const CORBA_Any&, CosEventChannelAdmin_AlreadyConnected*&);

inline void
operator<<=(CORBA_Any_var& any, CosEventChannelAdmin_AlreadyConnected* val)
{
    any.inout() <<= val;
}

inline void
operator<<=(CORBA_Any_var& any, const CosEventChannelAdmin_AlreadyConnected& val)
{
    any.inout() <<= val;
}

inline CORBA_Boolean
operator>>=(const CORBA_Any_var& any, CosEventChannelAdmin_AlreadyConnected*& val)
{
    return any.in() >>= val;
}

//
// IDL:omg.org/CosEventChannelAdmin/TypeError:1.0
//
void OBMarshal(const CosEventChannelAdmin_TypeError&, CORBA_Octet*&);
void OBMarshalCount(const CosEventChannelAdmin_TypeError&, CORBA_ULong&);
void OBUnmarshal(CosEventChannelAdmin_TypeError&, const CORBA_Octet*&, bool);

void operator<<=(CORBA_Any&, CosEventChannelAdmin_TypeError*);
void operator<<=(CORBA_Any&, const CosEventChannelAdmin_TypeError&);
CORBA_Boolean operator>>=(const CORBA_Any&, CosEventChannelAdmin_TypeError*&);

inline void
operator<<=(CORBA_Any_var& any, CosEventChannelAdmin_TypeError* val)
{
    any.inout() <<= val;
}

inline void
operator<<=(CORBA_Any_var& any, const CosEventChannelAdmin_TypeError& val)
{
    any.inout() <<= val;
}

inline CORBA_Boolean
operator>>=(const CORBA_Any_var& any, CosEventChannelAdmin_TypeError*& val)
{
    return any.in() >>= val;
}

//
// IDL:omg.org/CosEventChannelAdmin/ProxyPushConsumer:1.0
//
inline void
CORBA_release(CosEventChannelAdmin_ProxyPushConsumer_ptr p)
{
    if(p)
        p -> _OB_decRef();
}

inline CORBA_Boolean
CORBA_is_nil(CosEventChannelAdmin_ProxyPushConsumer_ptr p)
{
    return p == 0;
}

inline void
OBMarshal(CosEventChannelAdmin_ProxyPushConsumer_ptr p, CORBA_Octet*& oct)
{
    OBMarshal((CORBA_Object_ptr)p, oct);
}

inline void
OBMarshalCount(CosEventChannelAdmin_ProxyPushConsumer_ptr p, CORBA_ULong& count)
{
    OBMarshalCount((CORBA_Object_ptr)p, count);
}

void OBUnmarshal(CosEventChannelAdmin_ProxyPushConsumer_ptr&, const CORBA_Octet*&, bool);

void operator<<=(CORBA_Any&, CosEventChannelAdmin_ProxyPushConsumer_ptr);
void operator<<=(CORBA_Any&, CosEventChannelAdmin_ProxyPushConsumer_ptr*);
CORBA_Boolean operator>>=(const CORBA_Any&, CosEventChannelAdmin_ProxyPushConsumer_ptr&);

inline void
operator<<=(CORBA_Any_var& any, CosEventChannelAdmin_ProxyPushConsumer_ptr val)
{
    any.inout() <<= val;
}

inline void
operator<<=(CORBA_Any_var& any, CosEventChannelAdmin_ProxyPushConsumer_ptr* val)
{
    any.inout() <<= val;
}

inline CORBA_Boolean
operator>>=(const CORBA_Any_var& any, CosEventChannelAdmin_ProxyPushConsumer_ptr& val)
{
    return any.in() >>= val;
}

//
// IDL:omg.org/CosEventChannelAdmin/ProxyPullSupplier:1.0
//
inline void
CORBA_release(CosEventChannelAdmin_ProxyPullSupplier_ptr p)
{
    if(p)
        p -> _OB_decRef();
}

inline CORBA_Boolean
CORBA_is_nil(CosEventChannelAdmin_ProxyPullSupplier_ptr p)
{
    return p == 0;
}

inline void
OBMarshal(CosEventChannelAdmin_ProxyPullSupplier_ptr p, CORBA_Octet*& oct)
{
    OBMarshal((CORBA_Object_ptr)p, oct);
}

inline void
OBMarshalCount(CosEventChannelAdmin_ProxyPullSupplier_ptr p, CORBA_ULong& count)
{
    OBMarshalCount((CORBA_Object_ptr)p, count);
}

void OBUnmarshal(CosEventChannelAdmin_ProxyPullSupplier_ptr&, const CORBA_Octet*&, bool);

void operator<<=(CORBA_Any&, CosEventChannelAdmin_ProxyPullSupplier_ptr);
void operator<<=(CORBA_Any&, CosEventChannelAdmin_ProxyPullSupplier_ptr*);
CORBA_Boolean operator>>=(const CORBA_Any&, CosEventChannelAdmin_ProxyPullSupplier_ptr&);

inline void
operator<<=(CORBA_Any_var& any, CosEventChannelAdmin_ProxyPullSupplier_ptr val)
{
    any.inout() <<= val;
}

inline void
operator<<=(CORBA_Any_var& any, CosEventChannelAdmin_ProxyPullSupplier_ptr* val)
{
    any.inout() <<= val;
}

inline CORBA_Boolean
operator>>=(const CORBA_Any_var& any, CosEventChannelAdmin_ProxyPullSupplier_ptr& val)
{
    return any.in() >>= val;
}

//
// IDL:omg.org/CosEventChannelAdmin/ProxyPullConsumer:1.0
//
inline void
CORBA_release(CosEventChannelAdmin_ProxyPullConsumer_ptr p)
{
    if(p)
        p -> _OB_decRef();
}

inline CORBA_Boolean
CORBA_is_nil(CosEventChannelAdmin_ProxyPullConsumer_ptr p)
{
    return p == 0;
}

inline void
OBMarshal(CosEventChannelAdmin_ProxyPullConsumer_ptr p, CORBA_Octet*& oct)
{
    OBMarshal((CORBA_Object_ptr)p, oct);
}

inline void
OBMarshalCount(CosEventChannelAdmin_ProxyPullConsumer_ptr p, CORBA_ULong& count)
{
    OBMarshalCount((CORBA_Object_ptr)p, count);
}

void OBUnmarshal(CosEventChannelAdmin_ProxyPullConsumer_ptr&, const CORBA_Octet*&, bool);

void operator<<=(CORBA_Any&, CosEventChannelAdmin_ProxyPullConsumer_ptr);
void operator<<=(CORBA_Any&, CosEventChannelAdmin_ProxyPullConsumer_ptr*);
CORBA_Boolean operator>>=(const CORBA_Any&, CosEventChannelAdmin_ProxyPullConsumer_ptr&);

inline void
operator<<=(CORBA_Any_var& any, CosEventChannelAdmin_ProxyPullConsumer_ptr val)
{
    any.inout() <<= val;
}

inline void
operator<<=(CORBA_Any_var& any, CosEventChannelAdmin_ProxyPullConsumer_ptr* val)
{
    any.inout() <<= val;
}

inline CORBA_Boolean
operator>>=(const CORBA_Any_var& any, CosEventChannelAdmin_ProxyPullConsumer_ptr& val)
{
    return any.in() >>= val;
}

//
// IDL:omg.org/CosEventChannelAdmin/ProxyPushSupplier:1.0
//
inline void
CORBA_release(CosEventChannelAdmin_ProxyPushSupplier_ptr p)
{
    if(p)
        p -> _OB_decRef();
}

inline CORBA_Boolean
CORBA_is_nil(CosEventChannelAdmin_ProxyPushSupplier_ptr p)
{
    return p == 0;
}

inline void
OBMarshal(CosEventChannelAdmin_ProxyPushSupplier_ptr p, CORBA_Octet*& oct)
{
    OBMarshal((CORBA_Object_ptr)p, oct);
}

inline void
OBMarshalCount(CosEventChannelAdmin_ProxyPushSupplier_ptr p, CORBA_ULong& count)
{
    OBMarshalCount((CORBA_Object_ptr)p, count);
}

void OBUnmarshal(CosEventChannelAdmin_ProxyPushSupplier_ptr&, const CORBA_Octet*&, bool);

void operator<<=(CORBA_Any&, CosEventChannelAdmin_ProxyPushSupplier_ptr);
void operator<<=(CORBA_Any&, CosEventChannelAdmin_ProxyPushSupplier_ptr*);
CORBA_Boolean operator>>=(const CORBA_Any&, CosEventChannelAdmin_ProxyPushSupplier_ptr&);

inline void
operator<<=(CORBA_Any_var& any, CosEventChannelAdmin_ProxyPushSupplier_ptr val)
{
    any.inout() <<= val;
}

inline void
operator<<=(CORBA_Any_var& any, CosEventChannelAdmin_ProxyPushSupplier_ptr* val)
{
    any.inout() <<= val;
}

inline CORBA_Boolean
operator>>=(const CORBA_Any_var& any, CosEventChannelAdmin_ProxyPushSupplier_ptr& val)
{
    return any.in() >>= val;
}

//
// IDL:omg.org/CosEventChannelAdmin/ConsumerAdmin:1.0
//
inline void
CORBA_release(CosEventChannelAdmin_ConsumerAdmin_ptr p)
{
    if(p)
        p -> _OB_decRef();
}

inline CORBA_Boolean
CORBA_is_nil(CosEventChannelAdmin_ConsumerAdmin_ptr p)
{
    return p == 0;
}

inline void
OBMarshal(CosEventChannelAdmin_ConsumerAdmin_ptr p, CORBA_Octet*& oct)
{
    OBMarshal((CORBA_Object_ptr)p, oct);
}

inline void
OBMarshalCount(CosEventChannelAdmin_ConsumerAdmin_ptr p, CORBA_ULong& count)
{
    OBMarshalCount((CORBA_Object_ptr)p, count);
}

void OBUnmarshal(CosEventChannelAdmin_ConsumerAdmin_ptr&, const CORBA_Octet*&, bool);

void operator<<=(CORBA_Any&, CosEventChannelAdmin_ConsumerAdmin_ptr);
void operator<<=(CORBA_Any&, CosEventChannelAdmin_ConsumerAdmin_ptr*);
CORBA_Boolean operator>>=(const CORBA_Any&, CosEventChannelAdmin_ConsumerAdmin_ptr&);

inline void
operator<<=(CORBA_Any_var& any, CosEventChannelAdmin_ConsumerAdmin_ptr val)
{
    any.inout() <<= val;
}

inline void
operator<<=(CORBA_Any_var& any, CosEventChannelAdmin_ConsumerAdmin_ptr* val)
{
    any.inout() <<= val;
}

inline CORBA_Boolean
operator>>=(const CORBA_Any_var& any, CosEventChannelAdmin_ConsumerAdmin_ptr& val)
{
    return any.in() >>= val;
}

//
// IDL:omg.org/CosEventChannelAdmin/SupplierAdmin:1.0
//
inline void
CORBA_release(CosEventChannelAdmin_SupplierAdmin_ptr p)
{
    if(p)
        p -> _OB_decRef();
}

inline CORBA_Boolean
CORBA_is_nil(CosEventChannelAdmin_SupplierAdmin_ptr p)
{
    return p == 0;
}

inline void
OBMarshal(CosEventChannelAdmin_SupplierAdmin_ptr p, CORBA_Octet*& oct)
{
    OBMarshal((CORBA_Object_ptr)p, oct);
}

inline void
OBMarshalCount(CosEventChannelAdmin_SupplierAdmin_ptr p, CORBA_ULong& count)
{
    OBMarshalCount((CORBA_Object_ptr)p, count);
}

void OBUnmarshal(CosEventChannelAdmin_SupplierAdmin_ptr&, const CORBA_Octet*&, bool);

void operator<<=(CORBA_Any&, CosEventChannelAdmin_SupplierAdmin_ptr);
void operator<<=(CORBA_Any&, CosEventChannelAdmin_SupplierAdmin_ptr*);
CORBA_Boolean operator>>=(const CORBA_Any&, CosEventChannelAdmin_SupplierAdmin_ptr&);

inline void
operator<<=(CORBA_Any_var& any, CosEventChannelAdmin_SupplierAdmin_ptr val)
{
    any.inout() <<= val;
}

inline void
operator<<=(CORBA_Any_var& any, CosEventChannelAdmin_SupplierAdmin_ptr* val)
{
    any.inout() <<= val;
}

inline CORBA_Boolean
operator>>=(const CORBA_Any_var& any, CosEventChannelAdmin_SupplierAdmin_ptr& val)
{
    return any.in() >>= val;
}

//
// IDL:omg.org/CosEventChannelAdmin/EventChannel:1.0
//
inline void
CORBA_release(CosEventChannelAdmin_EventChannel_ptr p)
{
    if(p)
        p -> _OB_decRef();
}

inline CORBA_Boolean
CORBA_is_nil(CosEventChannelAdmin_EventChannel_ptr p)
{
    return p == 0;
}

inline void
OBMarshal(CosEventChannelAdmin_EventChannel_ptr p, CORBA_Octet*& oct)
{
    OBMarshal((CORBA_Object_ptr)p, oct);
}

inline void
OBMarshalCount(CosEventChannelAdmin_EventChannel_ptr p, CORBA_ULong& count)
{
    OBMarshalCount((CORBA_Object_ptr)p, count);
}

void OBUnmarshal(CosEventChannelAdmin_EventChannel_ptr&, const CORBA_Octet*&, bool);

void operator<<=(CORBA_Any&, CosEventChannelAdmin_EventChannel_ptr);
void operator<<=(CORBA_Any&, CosEventChannelAdmin_EventChannel_ptr*);
CORBA_Boolean operator>>=(const CORBA_Any&, CosEventChannelAdmin_EventChannel_ptr&);

inline void
operator<<=(CORBA_Any_var& any, CosEventChannelAdmin_EventChannel_ptr val)
{
    any.inout() <<= val;
}

inline void
operator<<=(CORBA_Any_var& any, CosEventChannelAdmin_EventChannel_ptr* val)
{
    any.inout() <<= val;
}

inline CORBA_Boolean
operator>>=(const CORBA_Any_var& any, CosEventChannelAdmin_EventChannel_ptr& val)
{
    return any.in() >>= val;
}

#endif
