⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sipint.h

📁 这是关于RFC3261实现sip的源代码
💻 H
字号:
/* * This file defines the SIP library internal interfaces. * * Copyright (c) 2006 * 	Riverbank Computing Limited <info@riverbankcomputing.co.uk> *  * This file is part of SIP. *  * This copy of SIP is licensed for use under the terms of the SIP License * Agreement.  See the file LICENSE for more details. *  * SIP is supplied WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. */#ifndef _SIPINT_H#define	_SIPINT_H#ifdef __cplusplusextern "C" {#endif#undef	TRUE#define	TRUE		1#undef	FALSE#define	FALSE		0/* * This defines a single entry in an object map's hash table. */typedef struct{	void *key;			/* The C/C++ address. */	sipWrapper *first;		/* The first object at this address. */} sipHashEntry;/* * This defines the interface to a hash table class for mapping C/C++ addresses * to the corresponding wrapped Python object. */typedef struct{	int primeIdx;			/* Index into table sizes. */	unsigned long size;		/* Size of hash table. */	unsigned long unused;		/* Nr. unused in hash table. */	unsigned long stale;		/* Nr. stale in hash table. */	sipHashEntry *hash_array;	/* Current hash table. */} sipObjectMap;extern PyInterpreterState *sipInterpreter;	/* The interpreter. */extern sipQtAPI *sipQtSupport;		/* The Qt support API. */extern sipWrapperType *sipQObjectClass;	/* The Python QObject class. */void *sip_api_convert_rx(sipWrapper *txSelf, const char *sigargs,			 PyObject *rxObj, const char *slot,			 const char **memberp);void *sipGetRx(sipWrapper *txSelf,const char *sigargs,PyObject *rxObj,	       const char *slot,const char **memberp);int sip_api_emit_signal(PyObject *self,const char *sig,PyObject *sigargs);PyObject *sip_api_get_sender();PyObject *sip_api_connect_rx(PyObject *txObj,const char *sig,			     PyObject *rxObj,const char *slot, int type);PyObject *sip_api_disconnect_rx(PyObject *txObj,const char *sig,				PyObject *rxObj,const char *slot);/* * These are part of the SIP API but are also used within the SIP module. */void *sip_api_malloc(size_t nbytes);void sip_api_free(void *mem);void *sip_api_get_cpp_ptr(sipWrapper *w,sipWrapperType *type);PyObject *sip_api_convert_from_instance(void *cppPtr, sipWrapperType *type,					PyObject *transferObj);void sip_api_start_thread(void);void sip_api_end_thread(void);PyObject *sip_api_convert_from_void_ptr(void *val);PyObject *sip_api_convert_from_named_enum(int eval, PyTypeObject *et);int sip_api_wrapper_check(PyObject *o);void sip_api_free_connection(sipSlotConnection *conn);int sip_api_emit_to_slot(sipSlot *slot, PyObject *sigargs);int sip_api_same_connection(sipSlotConnection *conn, void *tx, const char *sig,			    PyObject *rxObj, const char *slot);/* * These are not part of the SIP API but are used within the SIP module. */void sipFreePySigRx(sipPySigRx *rx);void sipSaveMethod(sipPyMethod *pm,PyObject *meth);void *sipGetPending(sipWrapper **op, int *fp);PyObject *sipWrapSimpleInstance(void *cppPtr, sipWrapperType *type,		sipWrapper *owner, int initflags);void sipOMInit(sipObjectMap *om);void sipOMFinalise(sipObjectMap *om);sipWrapper *sipOMFindObject(sipObjectMap *om,void *key,sipWrapperType *type);void sipOMAddObject(sipObjectMap *om,sipWrapper *val);int sipOMRemoveObject(sipObjectMap *om,sipWrapper *val);void sipSetBool(void *ptr,int val);void *sipGetAddress(sipWrapper *w);void sipFindSigArgType(const char *name, size_t len, sipSigArg *at, int indir);#ifdef __cplusplus}#endif#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -