The problem, in short, is that I'm trying to call pack_rotamers_setup(). The final argument is an InteractionGraphBaseOP pointer which can't be instantiated directly in Python.
I can get a subclass of InteractionGraphBase that I'm interested in, such as ig = DensePDInteractionGraph(n). There doesn't seem to be any way to dereference this and pack_rotamers_setup() doesn't like anything but a pointer to the base class as the last argument.
I can create the correct object by calling ig = InteractionGraphFactory.create_interaction_graph(...), but in order to provide arguments to this method I need to do most of the computation of pack_rotamers_setup(). I'd like to avoid having to reimplement the function if possible.