Vladimír Vondruš
104c337f10
python: drop containers binding helpers that are only for a single type.
...
Can just add those APIs directly without a helper.
3 years ago
Vladimír Vondruš
d6fec89dc5
python: workaround gl.Context.current blowing up during doc generation.
3 years ago
Vladimír Vondruš
b5557a94cd
package/archlinux: use Ninja Multi-Config for the dev PKGBUILD.
...
So I have at least some semi-convenient way to switch to a debug build
in order to debug a strange crash or assertion.
3 years ago
Vladimír Vondruš
b78d809d10
python: put PyPluginHolder into a public header as well.
...
Will need it for exposing Trade::AbstractImporter instances returned
from SceneTools.
3 years ago
Vladimír Vondruš
949820b01a
python: adapt to SceneTools and MeshTools changes.
...
Breaking changes, sorry. Also remade the SceneTools hierarchy test to
not be that much redundant -- the name- and ID-based overloads can be
tested together.
3 years ago
Vladimír Vondruš
ee284aa4aa
python: expose Application cursor setup and warping.
3 years ago
Vladimír Vondruš
8ee4ed882c
CMake: enter the Corrade/Containers directory unconditionally.
...
The Python-specific conditionals are inside as well.
3 years ago
Vladimír Vondruš
007fe23731
python: support bit field access in SceneData.
3 years ago
Vladimír Vondruš
0091fc97d4
python: haha whoops?
3 years ago
Vladimír Vondruš
94d26a25e5
python: expose all [Mutable][Strided]BitArray[View] APIs.
3 years ago
Vladimír Vondruš
fc716799b8
python: clarify a test comment.
...
I completely forgot out-of-bounds slices were silently accepted.
3 years ago
Vladimír Vondruš
4fe21deaaf
python: document and test error cases in "fancy" strided view APIs.
...
Changed those to be IndexError instead of ValueError, since those are
indexing dimensions. Plus added a new check for broadcasted dimension
size as otherwise it'd blow up on a C++ assert.
3 years ago
Vladimír Vondruš
16cb94a338
python: use flipped() instead of every() with a negative number.
...
That's the way to go forward, StridedBitArrayView doesn't accept signed
numbers in every() anymore. Also extracted the slicing code to external
helpers in order to avoid duplication. Those will get reused in
[Strided]BitArray[View] bindings as well.
3 years ago
Vladimír Vondruš
69f859a579
python: no need to prefix a test class with Test.
...
Only the functions need to be prefixed.
3 years ago
Vladimír Vondruš
b70001f6c0
python: don't be lazy and name container API arguments.
3 years ago
Vladimír Vondruš
ba1c92d7f0
python: reduce code duplication for StridedArrayView bindings.
...
It's made in a way that'll allow most of this to be reused for bit
arrays as well.
3 years ago
Vladimír Vondruš
6298ca29fd
python: add implicit DLL search paths on Windows, if they exist.
...
This should make self-contained builds *actually* working out-of-the
box, without having to fiddle with PATH or nasty copying of all DLLs
somewhere inside a Python installation.
3 years ago
Vladimír Vondruš
8b30876304
python: expose Corrade's utility.copy().
...
Because having to pull in the whole numpy just to efficiently copy some
data around is *silly*.
3 years ago
Vladimír Vondruš
1726086a80
python: add new trade.*Flag.QUIET.
3 years ago
Vladimír Vondruš
6a2fe6e677
package/ci: adapt to new Codecov dumpster fires.
3 years ago
Vladimír Vondruš
57ebae97c5
python: fix meshtools.filter_*_attributes() to reference the owner.
...
These don't copy the data but rather reference the original with
different metadata. That caused use-after-free originally (if the input
variable got deleted or overwritten), the previous commit made it
assert (which was the intention there). Now it works properly.
3 years ago
Vladimír Vondruš
557277e995
python: add an ability for referencing owner of trade.*Data memory.
...
This is important in case the data aren't owned by the instance but
instead referencing something else, for example the importer, a
memory-mapped file or another instance. Will get increasingly
important for zero-copy data import.
3 years ago
Vladimír Vondruš
bc6b67e2f9
python: adapt to Trade::DataFlags changes.
3 years ago
Vladimír Vondruš
f30c1c503f
python: expose meshtools.concatenate() as well.
...
Relies on the new custom Containers::Iterable constructor.
3 years ago
Vladimír Vondruš
13c5ad1ea6
python: huh, not sure why this generated file changed.
3 years ago
Vladimír Vondruš
0eabbebbae
python: expose almost all remaining mesh tools operating on a MeshData.
3 years ago
Vladimír Vondruš
54828bebca
python: fix naming of meshtools.CompileFlags.
...
Was CompileFlag, should be CompileFlags. I hope this is the last
occurence.
3 years ago
Vladimír Vondruš
c1f970139b
python: simplify argument naming in meshtools.
3 years ago
Vladimír Vondruš
bb77c2f25f
python: skip tests that use PrimitiveImporter scenes on static builds.
...
Hitting an assert due to non-owning array deleters. No idea how to fix
this easily without linking all plugins as static as well.
3 years ago
Vladimír Vondruš
8aa953c5f0
python: expose barebones scenetools library.
3 years ago
Vladimír Vondruš
938b551f07
python: further improve developer guide for adding new libraries.
3 years ago
Vladimír Vondruš
38896feb66
modules: update Find modules from Magnum repositories.
3 years ago
Vladimír Vondruš
513fbc547d
python: expose trade.TextureData and related importer APIs.
3 years ago
Vladimír Vondruš
55d5445ebf
python: typed access to Image*.pixels.
...
Basically mirroring what's done for MeshData and SceneData already.
3 years ago
Vladimír Vondruš
badc94c122
python: resolve a test TODO now that we have plugin metadata access.
3 years ago
Vladimír Vondruš
6b94109f9f
python: resolve a test TODO now that we can change plugin configuration.
3 years ago
Vladimír Vondruš
52fe802932
python: handle Windows paths in trade.AbstractSceneConverter.begin_file().
...
Consistently with convert_to_file() and other APIs elsewhere.
3 years ago
Vladimír Vondruš
e2642033b3
python: expose pluginmanager.AbstractManager.register_external_manager().
...
And *now* it's possible to use scene converter plugins.
3 years ago
Vladimír Vondruš
d508fd9c04
python: ability to set ConfigurationGroup values in all primitive types.
...
Not custom types like Magnum vectors yet, but at least the basics now.
3 years ago
Vladimír Vondruš
e319f098eb
python: expose trade.AbstractConverter.add*_importer_contents().
3 years ago
Vladimír Vondruš
d29c5554d8
python: expose trade.AbstractSceneConverter batch mode for files.
...
Just meshes for now.
3 years ago
Vladimír Vondruš
cdfd79571f
python: expose mesh-to-mesh and in-place mesh conversion.
...
Needs to fetch MeshOptimizer on the CIs for testing this as there's no
other plugin with these features right now.
3 years ago
Vladimír Vondruš
f12aabf788
python: expose trade.Abstract{Importer,Converter}.features and .flags.
...
Right now the importer/converter APIs are not checked against the
features so using them wrong will assert and make Python die. But there
are at least the enums exposed now so it's possible to prevent the
assert.
3 years ago
Vladimír Vondruš
2a2fa675b7
python: fix inconsistent naming of Trade enum sets.
...
They should be named after the plural EnumSet, not the C++ enum. That
was already done for the enums in the primitives library as well as all
shader flags, but not here. They should all also contain a NONE value
for an empty set.
Breaking change, sorry. To avoid similar mistakes in the future, this is
now documented in the API Conventions page.
3 years ago
Vladimír Vondruš
7de13ef7cb
python: drop a SceneConverter helper that's used exactly once.
3 years ago
Vladimír Vondruš
cf44cba1fb
python: stupid typo in a test name.
3 years ago
Vladimír Vondruš
58a163adf7
python: expose plugin configuration as well.
...
In both PluginMetadata and AbstractPlugin itself. This makes the
pluginmanager module depend on the utility module (which currently
contains just the Configuration bindings).
3 years ago
Vladimír Vondruš
1f75e4ea71
python: expose pluginmanager.PluginMetadata.
3 years ago
Vladimír Vondruš
2fb45a91f9
python: expose static AbstractPlugin properties as well.
3 years ago
Vladimír Vondruš
e78092a18e
python: explicitly test all pluginmanager.AbstractManager interfaces.
3 years ago