1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
|
//
// Copyright (c) ZeroC, Inc. All rights reserved.
//
#ifndef ICEPY_PROXY_H
#define ICEPY_PROXY_H
#include <Config.h>
#include <Ice/ProxyF.h>
#include <Ice/CommunicatorF.h>
namespace IcePy
{
extern PyTypeObject ProxyType;
bool initProxy(PyObject*);
PyObject* createProxy(const Ice::ObjectPrx&, const Ice::CommunicatorPtr&, PyObject* = 0);
//
// Verifies that the given Python object is a proxy. A value of None is not considered legal here.
//
bool checkProxy(PyObject*);
//
// Extracts a proxy from the given Python object. The Python object *must* be a proxy.
// None is not legal here.
//
Ice::ObjectPrx getProxy(PyObject*);
//
// Extracts a proxy argument from the given Python object. None is accepted here. If the Python
// object contains an invalid value, the function raises a ValueError exception and returns
// false. The optional trailing string provides the Python class name of a derived Slice
// interface that the caller requires.
//
bool getProxyArg(PyObject*, const std::string&, const std::string&, Ice::ObjectPrx&,
const std::string& = std::string());
//
// Gets the communicator associated with the proxy object.
//
Ice::CommunicatorPtr getProxyCommunicator(PyObject*);
}
#endif
|