Skip to content

Commit 19afb57

Browse files
author
Roberto De Ioris
committed
added unreal_engine.get_package_filename()
1 parent c86285a commit 19afb57

File tree

3 files changed

+19
-2
lines changed

3 files changed

+19
-2
lines changed

Source/UnrealEnginePython/Private/UEPyEngine.cpp

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -320,6 +320,21 @@ PyObject *py_unreal_engine_unload_package(PyObject * self, PyObject * args)
320320

321321
Py_RETURN_NONE;
322322
}
323+
324+
PyObject *py_unreal_engine_get_package_filename(PyObject * self, PyObject * args)
325+
{
326+
char *name;
327+
if (!PyArg_ParseTuple(args, "s:get_package_filename", &name))
328+
{
329+
return NULL;
330+
}
331+
332+
FString Filename;
333+
if (!FPackageName::DoesPackageExist(FString(UTF8_TO_TCHAR(name)), nullptr, &Filename))
334+
return PyErr_Format(PyExc_Exception, "package does not exist");
335+
336+
return PyUnicode_FromString(TCHAR_TO_UTF8(*Filename));
337+
}
323338
#endif
324339

325340
PyObject *py_unreal_engine_load_class(PyObject * self, PyObject * args)
@@ -771,7 +786,7 @@ PyObject *py_unreal_engine_main_thread_call(PyObject * self, PyObject * args)
771786
unreal_engine_py_log_error();
772787
}
773788
Py_DECREF(py_callable);
774-
});
789+
});
775790
Py_END_ALLOW_THREADS;
776791

777792
Py_RETURN_NONE;
@@ -1313,7 +1328,7 @@ PyObject *py_unreal_engine_clipboard_copy(PyObject * self, PyObject * args)
13131328
FGenericPlatformMisc::ClipboardCopy(UTF8_TO_TCHAR(text));
13141329
#endif
13151330
Py_RETURN_NONE;
1316-
}
1331+
}
13171332

13181333
PyObject *py_unreal_engine_clipboard_paste(PyObject * self, PyObject * args)
13191334
{

Source/UnrealEnginePython/Private/UEPyEngine.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ PyObject *py_unreal_engine_load_enum(PyObject *, PyObject *);
3737
PyObject *py_unreal_engine_load_package(PyObject *, PyObject *);
3838
#if WITH_EDITOR
3939
PyObject *py_unreal_engine_unload_package(PyObject *, PyObject *);
40+
PyObject *py_unreal_engine_get_package_filename(PyObject *, PyObject *);
4041
#endif
4142

4243
PyObject *py_unreal_engine_string_to_guid(PyObject *, PyObject *);

Source/UnrealEnginePython/Private/UEPyModule.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -219,6 +219,7 @@ static PyMethodDef unreal_engine_methods[] = {
219219
{ "load_package", py_unreal_engine_load_package, METH_VARARGS, "" },
220220
#if WITH_EDITOR
221221
{ "unload_package", py_unreal_engine_unload_package, METH_VARARGS, "" },
222+
{ "get_package_filename", py_unreal_engine_get_package_filename, METH_VARARGS, "" },
222223
#endif
223224
{ "get_forward_vector", py_unreal_engine_get_forward_vector, METH_VARARGS, "" },
224225
{ "get_up_vector", py_unreal_engine_get_up_vector, METH_VARARGS, "" },

0 commit comments

Comments
 (0)