@hellais I recommend looking into each commit on it own. Detail of changes:
stop using the pattern where we have a class composed only of static method as this is typically something that is frowned upon by C++ programmers
rename the specific header so that it's more obviously discoverable by someone casually reading the code
use a more obvious pattern to guarantee that we're keeping alive the object: rather than having a self referencing pointer, use instead a dynamically allocated shared pointer passed to C code
Perhaps more refactoring can be implemented in the future, but for now this seems to me a good move forward to make the code in here more obvious.
After this is merged, I can move on with making sure we wrap all we need to wrap.
@hellais I recommend looking into each commit on it own. Detail of changes:
stop using the pattern where we have a class composed only of static method as this is typically something that is frowned upon by C++ programmers
rename the specific header so that it's more obviously discoverable by someone casually reading the code
use a more obvious pattern to guarantee that we're keeping alive the object: rather than having a self referencing pointer, use instead a dynamically allocated shared pointer passed to C code
Perhaps more refactoring can be implemented in the future, but for now this seems to me a good move forward to make the code in here more obvious.
After this is merged, I can move on with making sure we wrap all we need to wrap.