<div dir="ltr">Hi folks,<div><br></div><div>I'm looking for some advice on getting a patch to play nicely with the wrappers.</div><div><br></div><div>I have a vtkObject derived class that contains a nested struct:</div><div><br></div><div>class EXPORT_MACRO vtkTextRenderer : public vtkObject</div><div>{</div><div>public:</div><div>  struct Metrics;</div><div><br></div><div>  ...</div><div><br></div><div>  bool GetMetrics(..., Metrics &);</div><div>}</div><div><br></div><div>struct vtkTextRenderer::Metrics</div><div>{</div><div>  ...</div><div>}</div><div><br></div><div>It looks like the python wrappers aren't happy about this, see:</div><div><br></div><div><a href="https://open.cdash.org/viewBuildError.php?buildid=3651284">https://open.cdash.org/viewBuildError.php?buildid=3651284</a><br></div><div><br></div><div>Ben pointed out that I can use the __WRAP__ define to exclude these, but I'm interested in hearing more options. I see a couple of paths forward:</div><div><br></div><div>1) Exclude all usages of Metrics with __WRAP__</div><div><br></div><div>Cons: Functionality can't be used from wrapped languages. Maintenance would be a chore, as the Metrics struct is used in a number of text rendering related headers.</div><div><br></div><div>2) Change Metrics to a stand-alone vtkObject derived class.</div><div><br></div><div>Cons: It's a really lightweight object, I'd like to avoid having the overhead of vtkObject enter into this.</div><div><br></div><div>3) Special wrapping for the metrics class.</div><div><br></div><div>Cons: Work. Also, maintenance would be a headache as I expect this struct to have new members added over time.</div><div><br></div><div>Any options I'm missing? I'm leaning towards 2, but a more lightweight solution would be great, if it exists!</div><div><br></div><div>Thanks,</div><div>Dave</div></div>