mirror of
https://github.com/baldurk/renderdoc.git
synced 2026-05-05 01:20:42 +00:00
768e812e45
* On windows it's strongly desired to be able to compile straight out of a clean checkout or source download. This means anyone can download the source and investigate something quickly, without having to worry about the hassle of figuring out how the project downloads 3rd party dependencies, fetching them, getting them registered in the right place. * This can't be put in a submodule as git submodules don't get downloaded by default so people new to git will get confusing compilation messages, and someone downloading the source from github directly without cloning via git won't get submodules included. * It does add some extra size to a fresh download/checkout which is unfortunate, but absolutely worth the cost. Shallow checkouts still aren't unfeasibly large, and it's only a one-off cost at clone time.
141 lines
4.1 KiB
C
141 lines
4.1 KiB
C
|
|
/* Module definition and import interface */
|
|
|
|
#ifndef Py_IMPORT_H
|
|
#define Py_IMPORT_H
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
#ifndef Py_LIMITED_API
|
|
PyAPI_FUNC(void) _PyImportZip_Init(void);
|
|
|
|
PyMODINIT_FUNC PyInit_imp(void);
|
|
#endif /* !Py_LIMITED_API */
|
|
PyAPI_FUNC(long) PyImport_GetMagicNumber(void);
|
|
PyAPI_FUNC(const char *) PyImport_GetMagicTag(void);
|
|
PyAPI_FUNC(PyObject *) PyImport_ExecCodeModule(
|
|
const char *name, /* UTF-8 encoded string */
|
|
PyObject *co
|
|
);
|
|
PyAPI_FUNC(PyObject *) PyImport_ExecCodeModuleEx(
|
|
const char *name, /* UTF-8 encoded string */
|
|
PyObject *co,
|
|
const char *pathname /* decoded from the filesystem encoding */
|
|
);
|
|
PyAPI_FUNC(PyObject *) PyImport_ExecCodeModuleWithPathnames(
|
|
const char *name, /* UTF-8 encoded string */
|
|
PyObject *co,
|
|
const char *pathname, /* decoded from the filesystem encoding */
|
|
const char *cpathname /* decoded from the filesystem encoding */
|
|
);
|
|
#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000
|
|
PyAPI_FUNC(PyObject *) PyImport_ExecCodeModuleObject(
|
|
PyObject *name,
|
|
PyObject *co,
|
|
PyObject *pathname,
|
|
PyObject *cpathname
|
|
);
|
|
#endif
|
|
PyAPI_FUNC(PyObject *) PyImport_GetModuleDict(void);
|
|
#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000
|
|
PyAPI_FUNC(PyObject *) PyImport_AddModuleObject(
|
|
PyObject *name
|
|
);
|
|
#endif
|
|
PyAPI_FUNC(PyObject *) PyImport_AddModule(
|
|
const char *name /* UTF-8 encoded string */
|
|
);
|
|
PyAPI_FUNC(PyObject *) PyImport_ImportModule(
|
|
const char *name /* UTF-8 encoded string */
|
|
);
|
|
PyAPI_FUNC(PyObject *) PyImport_ImportModuleNoBlock(
|
|
const char *name /* UTF-8 encoded string */
|
|
);
|
|
PyAPI_FUNC(PyObject *) PyImport_ImportModuleLevel(
|
|
const char *name, /* UTF-8 encoded string */
|
|
PyObject *globals,
|
|
PyObject *locals,
|
|
PyObject *fromlist,
|
|
int level
|
|
);
|
|
#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03050000
|
|
PyAPI_FUNC(PyObject *) PyImport_ImportModuleLevelObject(
|
|
PyObject *name,
|
|
PyObject *globals,
|
|
PyObject *locals,
|
|
PyObject *fromlist,
|
|
int level
|
|
);
|
|
#endif
|
|
|
|
#define PyImport_ImportModuleEx(n, g, l, f) \
|
|
PyImport_ImportModuleLevel(n, g, l, f, 0)
|
|
|
|
PyAPI_FUNC(PyObject *) PyImport_GetImporter(PyObject *path);
|
|
PyAPI_FUNC(PyObject *) PyImport_Import(PyObject *name);
|
|
PyAPI_FUNC(PyObject *) PyImport_ReloadModule(PyObject *m);
|
|
PyAPI_FUNC(void) PyImport_Cleanup(void);
|
|
#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03030000
|
|
PyAPI_FUNC(int) PyImport_ImportFrozenModuleObject(
|
|
PyObject *name
|
|
);
|
|
#endif
|
|
PyAPI_FUNC(int) PyImport_ImportFrozenModule(
|
|
const char *name /* UTF-8 encoded string */
|
|
);
|
|
|
|
#ifndef Py_LIMITED_API
|
|
#ifdef WITH_THREAD
|
|
PyAPI_FUNC(void) _PyImport_AcquireLock(void);
|
|
PyAPI_FUNC(int) _PyImport_ReleaseLock(void);
|
|
#else
|
|
#define _PyImport_AcquireLock()
|
|
#define _PyImport_ReleaseLock() 1
|
|
#endif
|
|
|
|
PyAPI_FUNC(void) _PyImport_ReInitLock(void);
|
|
|
|
PyAPI_FUNC(PyObject *) _PyImport_FindBuiltin(
|
|
const char *name /* UTF-8 encoded string */
|
|
);
|
|
PyAPI_FUNC(PyObject *) _PyImport_FindExtensionObject(PyObject *, PyObject *);
|
|
PyAPI_FUNC(int) _PyImport_FixupBuiltin(
|
|
PyObject *mod,
|
|
const char *name /* UTF-8 encoded string */
|
|
);
|
|
PyAPI_FUNC(int) _PyImport_FixupExtensionObject(PyObject*, PyObject *, PyObject *);
|
|
|
|
struct _inittab {
|
|
const char *name; /* ASCII encoded string */
|
|
PyObject* (*initfunc)(void);
|
|
};
|
|
PyAPI_DATA(struct _inittab *) PyImport_Inittab;
|
|
PyAPI_FUNC(int) PyImport_ExtendInittab(struct _inittab *newtab);
|
|
#endif /* Py_LIMITED_API */
|
|
|
|
PyAPI_DATA(PyTypeObject) PyNullImporter_Type;
|
|
|
|
PyAPI_FUNC(int) PyImport_AppendInittab(
|
|
const char *name, /* ASCII encoded string */
|
|
PyObject* (*initfunc)(void)
|
|
);
|
|
|
|
#ifndef Py_LIMITED_API
|
|
struct _frozen {
|
|
const char *name; /* ASCII encoded string */
|
|
const unsigned char *code;
|
|
int size;
|
|
};
|
|
|
|
/* Embedding apps may change this pointer to point to their favorite
|
|
collection of frozen modules: */
|
|
|
|
PyAPI_DATA(const struct _frozen *) PyImport_FrozenModules;
|
|
#endif
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
#endif /* !Py_IMPORT_H */
|